Condividi tramite


Pull Request Statuses - Create

Creare uno stato della richiesta pull.

L'unico campo obbligatorio per lo stato è Context.Name che identifica in modo univoco lo stato. Si noti che è possibile specificare iterationId nel corpo della richiesta per pubblicare lo stato nell'iterazione.

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

Parametri dell'URI

Nome In Necessario Tipo Descrizione
organization
path True

string

Nome dell'organizzazione di Azure DevOps.

pullRequestId
path True

integer

int32

ID della richiesta pull.

repositoryId
path True

string

ID repository del ramo di destinazione della richiesta pull.

project
path

string

ID progetto o nome del progetto

api-version
query True

string

Versione dell'API da usare. Deve essere impostato su '4.1-preview.1' per usare questa versione dell'API.

Corpo della richiesta

Nome Tipo Descrizione
_links

ReferenceLinks

Collegamenti di riferimento.

context

GitStatusContext

Contesto dello stato.

createdBy

IdentityRef

Identità che ha creato lo stato.

creationDate

string

Data e ora di creazione dello stato.

description

string

Descrizione dello stato. Descrive in genere lo stato corrente dello stato.

id

integer

Identificatore di stato.

iterationId

integer

ID dell'iterazione a cui associare lo stato. Il valore minimo è 1.

properties

PropertiesCollection

Proprietà personalizzate dello stato.

state

GitStatusState

Stato dello stato.

targetUrl

string

URL con i dettagli sullo stato.

updatedDate

string

Data e ora dell'ultimo aggiornamento dello stato.

Risposte

Nome Tipo Descrizione
200 OK

GitPullRequestStatus

operazione riuscita

Sicurezza

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 Descrizione
vso.code_write Concede la possibilità di leggere, aggiornare ed eliminare il codice sorgente, accedere ai metadati relativi a commit, insiemi di modifiche, rami e altri artefatti del controllo della versione. Concede inoltre la possibilità di creare e gestire richieste pull e revisioni del codice e di ricevere notifiche sugli eventi di controllo della versione tramite hook del servizio.
vso.code_status Concede la possibilità di leggere e scrivere lo stato del commit e della richiesta pull.

Esempio

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=4.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=4.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=4.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"
    }
  }
}

Definizioni

Nome Descrizione
GitPullRequestStatus

Questa classe contiene i metadati di uno stato di richiesta pull di registrazione di un servizio o di un'estensione. Lo stato può essere associato a una richiesta pull o a un'iterazione.

GitStatusContext

Contesto di stato che identifica in modo univoco lo stato.

GitStatusState

Stato dello stato.

IdentityRef
PropertiesCollection

La classe rappresenta un contenitore di proprietà come raccolta di coppie chiave-valore. I valori di tutti i tipi primitivi (qualsiasi tipo con un TypeCode != TypeCode.Object) ad eccezione DBNull di vengono accettati. I valori di tipo Byte[], Int32, Double, DateType e String mantengono il tipo, le altre primitive vengono riattivate come String. Byte[] previsto come stringa con codifica Base64.

ReferenceLinks

Classe per rappresentare una raccolta di collegamenti di riferimento REST.

GitPullRequestStatus

Questa classe contiene i metadati di uno stato di richiesta pull di registrazione di un servizio o di un'estensione. Lo stato può essere associato a una richiesta pull o a un'iterazione.

Nome Tipo Descrizione
_links

ReferenceLinks

Collegamenti di riferimento.

context

GitStatusContext

Contesto dello stato.

createdBy

IdentityRef

Identità che ha creato lo stato.

creationDate

string

Data e ora di creazione dello stato.

description

string

Descrizione dello stato. Descrive in genere lo stato corrente dello stato.

id

integer

Identificatore di stato.

iterationId

integer

ID dell'iterazione a cui associare lo stato. Il valore minimo è 1.

properties

PropertiesCollection

Proprietà personalizzate dello stato.

state

GitStatusState

Stato dello stato.

targetUrl

string

URL con i dettagli sullo stato.

updatedDate

string

Data e ora dell'ultimo aggiornamento dello stato.

GitStatusContext

Contesto di stato che identifica in modo univoco lo stato.

Nome Tipo Descrizione
genre

string

Genere dello stato. In genere, il nome del servizio o dello strumento che genera lo stato può essere vuoto.

name

string

L'identificatore del nome dello stato non può essere null o vuoto.

GitStatusState

Stato dello stato.

Nome Tipo Descrizione
error

string

Stato con un errore.

failed

string

Stato non riuscito.

notApplicable

string

Lo stato non è applicabile all'oggetto di destinazione.

notSet

string

Stato non impostato. Stato predefinito.

pending

string

Stato in sospeso.

succeeded

string

Stato completato.

IdentityRef

Nome Tipo Descrizione
_links

ReferenceLinks

Questo campo contiene zero o più collegamenti interessanti sull'oggetto del grafico. Questi collegamenti possono essere richiamati per ottenere relazioni aggiuntive o informazioni più dettagliate su questo oggetto grafico.

descriptor

string

Il descrittore è il modo principale per fare riferimento all'oggetto del grafo mentre il sistema è in esecuzione. Questo campo identificherà in modo univoco lo stesso oggetto grafico in account e organizzazioni.

directoryAlias

string

displayName

string

Si tratta del nome visualizzato non univoco dell'oggetto del grafico. Per modificare questo campo, è necessario modificarne il valore nel provider di origine.

id

string

imageUrl

string

inactive

boolean

isAadIdentity

boolean

isContainer

boolean

profileUrl

string

uniqueName

string

url

string

Questo URL è la route completa alla risorsa di origine di questo oggetto grafico.

PropertiesCollection

La classe rappresenta un contenitore di proprietà come raccolta di coppie chiave-valore. I valori di tutti i tipi primitivi (qualsiasi tipo con un TypeCode != TypeCode.Object) ad eccezione DBNull di vengono accettati. I valori di tipo Byte[], Int32, Double, DateType e String mantengono il tipo, le altre primitive vengono riattivate come String. Byte[] previsto come stringa con codifica Base64.

Nome Tipo Descrizione
count

integer

Conteggio delle proprietà nell'insieme.

item

object

keys

string[]

Set di chiavi nell'insieme.

values

string[]

Set di valori nell'insieme.

Classe per rappresentare una raccolta di collegamenti di riferimento REST.

Nome Tipo Descrizione
links

object

Visualizzazione di sola lettura dei collegamenti. Poiché i collegamenti di riferimento sono di sola lettura, è consigliabile esporli solo come di sola lettura.