Partilhar via


Pull Request Statuses - Create

Crie uma status de solicitação de pull.

O único campo necessário para o status é Context.Name que identifica exclusivamente o status. Observe que você pode especificar iterationId no corpo da solicitação para postar o status na iteração.

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

Parâmetros de URI

Nome Em Obrigatório Tipo Description
organization
path True

string

O nome da organização do Azure DevOps.

pullRequestId
path True

integer

int32

ID da solicitação de pull.

repositoryId
path True

string

A ID do repositório do branch de destino da solicitação de pull.

project
path

string

ID do projeto ou nome do projeto

api-version
query True

string

Versão da API a ser usada. Isso deve ser definido como '7.1-preview.1' para usar essa versão da API.

Corpo da solicitação

Nome Tipo Description
_links

ReferenceLinks

Links de referência.

context

GitStatusContext

Contexto do status.

createdBy

IdentityRef

Identidade que criou o status.

creationDate

string

Data e hora de criação do status.

description

string

Descrição do status. Normalmente descreve o estado atual do status.

id

integer

Identificador de status.

iterationId

integer

ID da iteração à qual associar status. O valor mínimo é 1.

properties

PropertiesCollection

Propriedades personalizadas do status.

state

GitStatusState

Estado do status.

targetUrl

string

URL com status detalhes.

updatedDate

string

Data e hora da última atualização do status.

Respostas

Nome Tipo Description
200 OK

GitPullRequestStatus

operação bem-sucedida

Segurança

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

Nome Description
vso.code_write Concede a capacidade de ler, atualizar e excluir o código-fonte, acessar metadados sobre commits, conjuntos de alterações, branches e outros artefatos de controle de versão. Também concede a capacidade de criar e gerenciar solicitações de pull e revisões de código e receber notificações sobre eventos de controle de versão por meio de ganchos de serviço.
vso.code_status Concede a capacidade de ler e gravar status de solicitação de pull e confirmação.

Exemplos

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"
    }
  }
}

Definições

Nome Description
GitPullRequestStatus

Essa classe contém os metadados de uma solicitação de pull de postagem de serviço/extensão status. O status pode ser associado a uma solicitação de pull ou uma iteração.

GitStatusContext

Contexto de status que identifica exclusivamente o status.

GitStatusState

Estado do status.

IdentityRef
PropertiesCollection

A classe representa um recipiente de propriedades como uma coleção de pares chave-valor. Valores de todos os tipos primitivos (qualquer tipo com um TypeCode != TypeCode.Object) exceto para DBNull são aceitos. Valores do tipo Byte[], Int32, Double, DateType e String preservam seu tipo, outros primitivos são reajustados como uma Cadeia de Caracteres. Byte[] esperado como cadeia de caracteres codificada em base64.

ReferenceLinks

A classe para representar uma coleção de links de referência REST.

GitPullRequestStatus

Essa classe contém os metadados de uma solicitação de pull de postagem de serviço/extensão status. O status pode ser associado a uma solicitação de pull ou uma iteração.

Nome Tipo Description
_links

ReferenceLinks

Links de referência.

context

GitStatusContext

Contexto do status.

createdBy

IdentityRef

Identidade que criou o status.

creationDate

string

Data e hora de criação do status.

description

string

Descrição do status. Normalmente descreve o estado atual do status.

id

integer

Identificador de status.

iterationId

integer

ID da iteração à qual associar status. O valor mínimo é 1.

properties

PropertiesCollection

Propriedades personalizadas do status.

state

GitStatusState

Estado do status.

targetUrl

string

URL com status detalhes.

updatedDate

string

Data e hora da última atualização do status.

GitStatusContext

Contexto de status que identifica exclusivamente o status.

Nome Tipo Description
genre

string

Gênero da status. Normalmente, o nome do serviço/ferramenta que gera o status pode estar vazio.

name

string

O identificador de nome do status não pode ser nulo ou vazio.

GitStatusState

Estado do status.

Nome Tipo Description
error

string

Status com um erro.

failed

string

Falha no status.

notApplicable

string

O status não é aplicável ao objeto de destino.

notSet

string

Estado de status não definido. Estado padrão.

pending

string

Status pendente.

succeeded

string

Status bem-sucedido.

IdentityRef

Nome Tipo Description
_links

ReferenceLinks

Esse campo contém zero ou mais links interessantes sobre o assunto do grafo. Esses links podem ser invocados para obter relações adicionais ou informações mais detalhadas sobre esse assunto do grafo.

descriptor

string

O descritor é a principal maneira de referenciar o assunto do grafo enquanto o sistema está em execução. Esse campo identificará exclusivamente o mesmo assunto do grafo entre contas e organizações.

directoryAlias

string

Preterido – pode ser recuperado consultando o usuário do Graph referenciado na entrada "self" do dicionário "_links" identityRef

displayName

string

Este é o nome de exibição não exclusivo do assunto do grafo. Para alterar esse campo, você deve alterar seu valor no provedor de origem.

id

string

imageUrl

string

Preterido - Disponível na entrada "avatar" do dicionário "_links" IdentityRef

inactive

boolean

Preterido – pode ser recuperado consultando o estado de associação do Graph referenciado na entrada "membershipState" do dicionário "_links" do GraphUser

isAadIdentity

boolean

Preterido – pode ser inferido do tipo de assunto do descritor (Descriptor.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

Preterido – pode ser inferido do tipo de assunto do descritor (Descriptor.IsGroupType)

isDeletedInOrigin

boolean

profileUrl

string

Preterido – não em uso na maioria das implementações preexistidas de ToIdentityRef

uniqueName

string

Preterido – use Domain+PrincipalName

url

string

Essa URL é a rota completa para o recurso de origem desta entidade de grafo.

PropertiesCollection

A classe representa um recipiente de propriedades como uma coleção de pares chave-valor. Valores de todos os tipos primitivos (qualquer tipo com um TypeCode != TypeCode.Object) exceto para DBNull são aceitos. Valores do tipo Byte[], Int32, Double, DateType e String preservam seu tipo, outros primitivos são reajustados como uma Cadeia de Caracteres. Byte[] esperado como cadeia de caracteres codificada em base64.

Nome Tipo Description
count

integer

A contagem de propriedades na coleção.

item

object

keys

string[]

O conjunto de chaves na coleção.

values

string[]

O conjunto de valores na coleção.

A classe para representar uma coleção de links de referência REST.

Nome Tipo Description
links

object

A exibição somente leitura dos links. Como os links de referência são somente leitura, só queremos expô-los como somente leitura.