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 iterazioneId 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=7.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 progetto

api-version
query True

string

Versione dell'API da usare. Questa opzione deve essere impostata su '7.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. In genere viene descritto 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 dettagli sullo stato.

updatedDate

string

Ultima data e ora di 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 codice sorgente, accedere ai metadati relativi ai commit, ai set di modifiche, ai rami e ad 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 gli hook del servizio.
vso.code_status Concede la possibilità di leggere e scrivere lo stato della richiesta di commit e 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=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"
    }
  }
}

Definizioni

Nome Descrizione
GitPullRequestStatus

Questa classe contiene i metadati di uno stato della richiesta pull di registrazione del servizio/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 sono accettati. I valori di tipo Byte[], Int32, Double, DateType e String mantengono il tipo, altre primitive vengono ritunate come String. Byte[] previsto come stringa codificata base64.

ReferenceLinks

Classe da rappresentare una raccolta di collegamenti di riferimento REST.

GitPullRequestStatus

Questa classe contiene i metadati di uno stato della richiesta pull di registrazione del servizio/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. In genere viene descritto 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 dettagli sullo stato.

updatedDate

string

Ultima data e ora di 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 grafico. Questi collegamenti possono essere richiamati per ottenere relazioni aggiuntive o informazioni più dettagliate su questo argomento grafico.

descriptor

string

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

directoryAlias

string

Deprecato: può essere recuperato eseguendo query sull'utente Graph a cui si fa riferimento nella voce "self" del dizionario IdentityRef "_links"

displayName

string

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

id

string

imageUrl

string

Deprecato - Disponibile nella voce "avatar" del dizionario IdentityRef "_links"

inactive

boolean

Deprecato: può essere recuperato eseguendo una query sullo stato di appartenenza Graph a cui fa riferimento nella voce "membershipState" del dizionario GraphUser "_links"

isAadIdentity

boolean

Deprecato: può essere dedotto dal tipo di soggetto del descrittore (Descrittore.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

Deprecato: può essere dedotto dal tipo di soggetto del descrittore (Descriptor.IsGroupType)

isDeletedInOrigin

boolean

profileUrl

string

Deprecato : non in uso nella maggior parte delle implementazioni preesistenti di ToIdentityRef

uniqueName

string

Deprecato: usare invece Domain+PrincipalName

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 sono accettati. I valori di tipo Byte[], Int32, Double, DateType e String mantengono il tipo, altre primitive vengono ritunate come String. Byte[] previsto come stringa codificata base64.

Nome Tipo Descrizione
count

integer

Numero di proprietà nell'insieme.

item

object

keys

string[]

Set di chiavi nella raccolta.

values

string[]

Set di valori nella raccolta.

Classe da rappresentare una raccolta di collegamenti di riferimento REST.

Nome Tipo Descrizione
links

object

Visualizzazione di lettura dei collegamenti. Poiché i collegamenti di riferimento sono in sola lettura, si vuole esporre solo i collegamenti di riferimento come sola lettura.