Pull Request Statuses - Create

Cree un estado de solicitud de incorporación de cambios.

El único campo necesario para el estado es Context.Name que identifica de forma única el estado. Tenga en cuenta que puede especificar iteraciónId en el cuerpo de la solicitud para publicar el estado en la iteración.

POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/statuses?api-version=7.1-preview.1

Parámetros de identificador URI

Nombre En Requerido Tipo Description
organization
path True

string

El nombre de la organización de Azure DevOps.

pullRequestId
path True

integer

int32

Id. de la PR.

repositoryId
path True

string

Identificador del repositorio de la rama de destino de la solicitud de incorporación de cambios.

project
path

string

Id. de proyecto o nombre del proyecto

api-version
query True

string

Versión de la API que se va a usar. Debe establecerse en "7.1-preview.1" para usar esta versión de la API.

Cuerpo de la solicitud

Nombre Tipo Description
_links

ReferenceLinks

Vínculos de referencia.

context

GitStatusContext

Contexto del estado.

createdBy

IdentityRef

Identidad que creó el estado.

creationDate

string

Fecha y hora de creación del estado.

description

string

Descripción del estado. Normalmente se describe el estado actual del estado.

id

integer

Identificador de estado.

iterationId

integer

Identificador de la iteración a la que se va a asociar el estado. El valor mínimo es 1.

properties

PropertiesCollection

Propiedades personalizadas del estado.

state

GitStatusState

Estado del estado.

targetUrl

string

Dirección URL con detalles de estado.

updatedDate

string

Fecha y hora de la última actualización del estado.

Respuestas

Nombre Tipo Description
200 OK

GitPullRequestStatus

operación correcta

Seguridad

oauth2

Type: oauth2
Flow: accessCode
Authorization URL: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token URL: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

Scopes

Nombre Description
vso.code_write Concede la capacidad de leer, actualizar y eliminar código fuente, acceder a los metadatos sobre confirmaciones, conjuntos de cambios, ramas y otros artefactos de control de versiones. También concede la capacidad de crear y administrar solicitudes de incorporación de cambios y revisiones de código y recibir notificaciones sobre eventos de control de versiones a través de enlaces de servicio.
vso.code_status Concede la capacidad de leer y escribir el estado de la solicitud de incorporación de cambios y confirmación.

Ejemplos

On iteration
On pull request
With properties

On iteration

Sample Request

POST https://dev.azure.com/fabrikam/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/statuses?api-version=7.1-preview.1

{
  "iterationId": 1,
  "state": "succeeded",
  "description": "Sample status succeeded",
  "context": {
    "name": "sample-status-2",
    "genre": "vsts-samples"
  },
  "targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1"
}

Sample Response

{
  "iterationId": 1,
  "id": 1,
  "state": "succeeded",
  "description": "Sample status succeeded",
  "context": {
    "name": "sample-status-2",
    "genre": "vsts-samples"
  },
  "creationDate": "2017-09-19T14:50:26.4429056Z",
  "updatedDate": "2017-09-19T14:50:26.4429056Z",
  "createdBy": {
    "id": "6f168adb-59d4-4fc0-be3b-fb21b939b2a6",
    "displayName": "Normal Paulk",
    "uniqueName": "fabrikamfiber16@hotmail.com",
    "url": "https://dev.azure.com/fabrikam/_apis/Identities/6f168adb-59d4-4fc0-be3b-fb21b939b2a6",
    "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=6f168adb-59d4-4fc0-be3b-fb21b939b2a6"
  },
  "targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1",
  "_links": {
    "self": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/b92c8408-a0c9-4292-88af-bc005a1b8272/pullRequests/2/statuses/1"
    },
    "repository": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/b92c8408-a0c9-4292-88af-bc005a1b8272"
    }
  }
}

On pull request

Sample Request

POST https://dev.azure.com/fabrikam/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/statuses?api-version=7.1-preview.1

{
  "state": "succeeded",
  "description": "Sample status succeeded",
  "context": {
    "name": "sample-status-4",
    "genre": "vsts-samples"
  },
  "targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1"
}

Sample Response

{
  "id": 1,
  "state": "succeeded",
  "description": "Sample status succeeded",
  "context": {
    "name": "sample-status-4",
    "genre": "vsts-samples"
  },
  "creationDate": "2017-09-19T14:50:25.1680228Z",
  "updatedDate": "2017-09-19T14:50:25.1680228Z",
  "createdBy": {
    "id": "6f168adb-59d4-4fc0-be3b-fb21b939b2a6",
    "displayName": "Normal Paulk",
    "uniqueName": "fabrikamfiber16@hotmail.com",
    "url": "https://dev.azure.com/fabrikam/_apis/Identities/6f168adb-59d4-4fc0-be3b-fb21b939b2a6",
    "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=6f168adb-59d4-4fc0-be3b-fb21b939b2a6"
  },
  "targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1",
  "_links": {
    "self": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/b92c8408-a0c9-4292-88af-bc005a1b8272/pullRequests/1/statuses/1"
    },
    "repository": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/b92c8408-a0c9-4292-88af-bc005a1b8272"
    }
  }
}

With properties

Sample Request

POST https://dev.azure.com/fabrikam/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/statuses?api-version=7.1-preview.1

{
  "properties": {
    "sampleId": 7,
    "customInfo": "Custom status information",
    "startedDateTime": {
      "$type": "System.DateTime",
      "$value": "2017-09-19T14:50:26.7410146Z"
    },
    "weight": {
      "$type": "System.Double",
      "$value": 1.75
    },
    "bytes": {
      "$type": "System.Byte[]",
      "$value": "dGhpcyBpcyBzYW1wbGUgYmFzZTY0IGVuY29kZWQgc3RyaW5n"
    },
    "globalId": {
      "$type": "System.Guid",
      "$value": "1e788cb9-9d3d-4dc6-ac05-822092d17f90"
    }
  },
  "state": "succeeded",
  "description": "Sample status succeeded",
  "context": {
    "name": "sample-status-1",
    "genre": "vsts-samples"
  },
  "targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1"
}

Sample Response

{
  "properties": {
    "bytes": {
      "$type": "System.Byte[]",
      "$value": "dGhpcyBpcyBzYW1wbGUgYmFzZTY0IGVuY29kZWQgc3RyaW5n"
    },
    "customInfo": {
      "$type": "System.String",
      "$value": "Custom status information"
    },
    "globalId": {
      "$type": "System.String",
      "$value": "1e788cb99d3d4dc6ac05822092d17f90"
    },
    "sampleId": {
      "$type": "System.Int32",
      "$value": 7
    },
    "startedDateTime": {
      "$type": "System.DateTime",
      "$value": "2017-09-19T14:50:26.74Z"
    },
    "weight": {
      "$type": "System.Double",
      "$value": 1.75
    }
  },
  "id": 1,
  "state": "succeeded",
  "description": "Sample status succeeded",
  "context": {
    "name": "sample-status-1",
    "genre": "vsts-samples"
  },
  "creationDate": "2017-09-19T14:50:26.7780242Z",
  "updatedDate": "2017-09-19T14:50:26.7780242Z",
  "createdBy": {
    "id": "6f168adb-59d4-4fc0-be3b-fb21b939b2a6",
    "displayName": "Normal Paulk",
    "uniqueName": "fabrikamfiber16@hotmail.com",
    "url": "https://dev.azure.com/fabrikam/_apis/Identities/6f168adb-59d4-4fc0-be3b-fb21b939b2a6",
    "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=6f168adb-59d4-4fc0-be3b-fb21b939b2a6"
  },
  "targetUrl": "http://fabrikam-fiber-inc.com/CI/builds/1",
  "_links": {
    "self": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/b92c8408-a0c9-4292-88af-bc005a1b8272/pullRequests/3/statuses/1"
    },
    "repository": {
      "href": "https://dev.azure.com/fabrikam/_apis/git/repositories/b92c8408-a0c9-4292-88af-bc005a1b8272"
    }
  }
}

Definiciones

Nombre Description
GitPullRequestStatus

Esta clase contiene los metadatos de un estado de solicitud de incorporación de cambios de publicación de servicio o extensión. El estado se puede asociar a una solicitud de incorporación de cambios o a una iteración.

GitStatusContext

Contexto de estado que identifica de forma única el estado.

GitStatusState

Estado del estado.

IdentityRef
PropertiesCollection

La clase representa un contenedor de propiedades como una colección de pares clave-valor. Se aceptan valores de todos los tipos primitivos (cualquier tipo con un TypeCode != TypeCode.Object) excepto DBNull . Los valores de tipo Byte[], Int32, Double, DateType y String conservan su tipo; otros primitivos se vuelven a ajustar como string. Byte[] se esperaba como cadena codificada en base64.

ReferenceLinks

Clase que representa una colección de vínculos de referencia de REST.

GitPullRequestStatus

Esta clase contiene los metadatos de un estado de solicitud de incorporación de cambios de publicación de servicio o extensión. El estado se puede asociar a una solicitud de incorporación de cambios o a una iteración.

Nombre Tipo Description
_links

ReferenceLinks

Vínculos de referencia.

context

GitStatusContext

Contexto del estado.

createdBy

IdentityRef

Identidad que creó el estado.

creationDate

string

Fecha y hora de creación del estado.

description

string

Descripción del estado. Normalmente se describe el estado actual del estado.

id

integer

Identificador de estado.

iterationId

integer

Identificador de la iteración a la que se va a asociar el estado. El valor mínimo es 1.

properties

PropertiesCollection

Propiedades personalizadas del estado.

state

GitStatusState

Estado del estado.

targetUrl

string

Dirección URL con detalles de estado.

updatedDate

string

Fecha y hora de la última actualización del estado.

GitStatusContext

Contexto de estado que identifica de forma única el estado.

Nombre Tipo Description
genre

string

Género del estado. Normalmente, el nombre del servicio o la herramienta que genera el estado puede estar vacío.

name

string

El identificador de nombre del estado no puede ser nulo ni estar vacío.

GitStatusState

Estado del estado.

Nombre Tipo Description
error

string

Estado con un error.

failed

string

Error de estado.

notApplicable

string

El estado no es aplicable al objeto de destino.

notSet

string

Estado de estado no establecido. Estado predeterminado.

pending

string

Estado pendiente.

succeeded

string

El estado se realizó correctamente.

IdentityRef

Nombre Tipo Description
_links

ReferenceLinks

Este campo contiene cero o más vínculos interesantes sobre el tema del grafo. Estos vínculos se pueden invocar para obtener relaciones adicionales o información más detallada sobre este tema del grafo.

descriptor

string

El descriptor es la forma principal de hacer referencia al asunto del grafo mientras se ejecuta el sistema. Este campo identificará de forma única el mismo asunto del grafo en cuentas y organizaciones.

directoryAlias

string

En desuso: se puede recuperar consultando el usuario de Graph al que se hace referencia en la entrada "self" del diccionario IdentityRef "_links".

displayName

string

Este es el nombre para mostrar no único del asunto del grafo. Para cambiar este campo, debe modificar su valor en el proveedor de origen.

id

string

imageUrl

string

En desuso: disponible en la entrada "avatar" del diccionario "_links" de IdentityRef

inactive

boolean

En desuso: se puede recuperar consultando el estado de pertenencia de Graph al que se hace referencia en la entrada "membershipState" del diccionario GraphUser "_links".

isAadIdentity

boolean

En desuso: se puede deducir del tipo de asunto del descriptor (Descriptor.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

En desuso: se puede deducir del tipo de sujeto del descriptor (Descriptor.IsGroupType)

isDeletedInOrigin

boolean

profileUrl

string

En desuso: no en uso en la mayoría de las implementaciones preexistentes de ToIdentityRef

uniqueName

string

En desuso: use Domain+PrincipalName en su lugar.

url

string

Esta dirección URL es la ruta completa al recurso de origen de este tema del grafo.

PropertiesCollection

La clase representa un contenedor de propiedades como una colección de pares clave-valor. Se aceptan valores de todos los tipos primitivos (cualquier tipo con un TypeCode != TypeCode.Object) excepto DBNull . Los valores de tipo Byte[], Int32, Double, DateType y String conservan su tipo; otros primitivos se vuelven a ajustar como string. Byte[] se esperaba como cadena codificada en base64.

Nombre Tipo Description
count

integer

Recuento de propiedades de la colección.

item

object

keys

string[]

Conjunto de claves de la colección.

values

string[]

Conjunto de valores de la colección.

Clase que representa una colección de vínculos de referencia de REST.

Nombre Tipo Description
links

object

Vista de solo lectura de los vínculos. Dado que los vínculos de referencia son de solo lectura, solo queremos exponerlos como de solo lectura.