Dela via


InvokeRESTAPI@0 – Anropa REST API v0-uppgift

Använd den här uppgiften för att anropa ett REST-API som en del av din pipeline.

Syntax

# Invoke REST API v0
# Invoke REST API as a part of your process.
- task: InvokeRESTAPI@0
  inputs:
    serviceConnection: # string. Alias: connectedServiceName. Required. Generic endpoint. 
    method: 'POST' # 'OPTIONS' | 'GET' | 'HEAD' | 'POST' | 'PUT' | 'DELETE' | 'TRACE' | 'PATCH'. Required. Method. Default: POST.
    #headers: # string. Headers. 
    #body: '{"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}' # string. Optional. Use when method != GET && method != HEAD. Body. Default: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.
    #urlSuffix: # string. Url suffix string. 
  # Completion Options
    waitForCompletion: 'false' # 'true' | 'false'. Required. Complete based on. Default: false.
    #successCriteria: # string. Optional. Use when waitForCompletion = false. Success criteria.

Indata

serviceConnection - Allmän slutpunkt
Indataalias: connectedServiceName. string. Krävs.

Anger den allmänna tjänstanslutningen baseURL som tillhandahåller för anropet och auktoriseringen som ska användas för uppgiften.


method - Metod
string. Krävs. Tillåtna värden: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, PATCH. Standardvärde: POST.

Anger den HTTP-metod som anropar API:et.


headers - Headers
string. Standardvärde: {\n"Content-Type":"application/json"\n}.

Definierar rubriken i JSON-format. Rubriken bifogas med begäran som skickas till API:et.


body - Kroppen
string. Valfritt. Använd när method != GET && method != HEAD. Standardvärde: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.

Anger begärandetexten för funktionsanropet i JSON-format.


urlSuffix - Url-suffixsträng
string.

Anger strängen som ska läggas till i baseUrl från den allmänna tjänstanslutningen när HTTP-anropet upprättas.

Exempel: Om tjänstanslutnings-URL:en är https:...TestProj/_apis/Release/releases och URL-suffixet är /2/environments/1blir https:.../TestProj/_apis/Release/releases/2/environments/1tjänstanslutnings-URL:en . Om URL-suffixet är ?definitionId=1&releaseCount=1blir https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1tjänstanslutnings-URL:en .


waitForCompletion - Slutför baserat på
string. Krävs. Tillåtna värden: true (Motringning), false (ApiResponse). Standardvärde: false.

Anger hur uppgiften rapporterar slutförande. De tillåtna värdena är:

  • false - API-svar: Rapporterar slutförande när funktionen returnerar framgång inom 20 sekunder och framgångskriterierna utvärderas till sant.
  • true - Motringning: Rapporterar slutförande när den externa tjänsten gör ett återanrop för att uppdatera tidslinjeposten.

successCriteria - Framgångsvillkor
string. Valfritt. Använd när waitForCompletion = false.

Anger uppgiftens villkor för att lyckas. Svarsinnehållet påverkar inte resultatet om inga kriterier har definierats. Som standard skickas uppgiften när anropet returnerar 200 OK.

Exempel: För svar {"status" : "successful"}kan uttrycket vara eq(root['status'], 'successful'). Läs mer om att ange villkor.


Kontrollalternativ för aktivitet

Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.

Utdatavariabler

Inga.

Kommentarer

Anteckning

Den här uppgiften kan endast användas i ett agentlöst jobb.

Lyckas om API:et returnerar lyckat resultat och parsningen av svarstexten lyckas, eller när API:et uppdaterar tidslinjeposten med framgång.

Aktiviteten Anropa REST API utför inte distributionsåtgärder direkt. I stället kan du anropa alla generiska HTTP REST API som en del av den automatiserade pipelinen och eventuellt vänta tills det har slutförts.

Konfigurera en ANROPA REST API-uppgift

Mer information om hur du använder den här uppgiften finns i Översikt över godkännanden och grindar.

Vilka grundläggande URL:er används vid anrop av Azure Management-API:er?

Azure-hanterings-API:er anropas med ResourceManagerEndpoint för den valda miljön. Används till exempel https://management.Azure.com när prenumerationen finns i en AzureCloud-miljö .

Var ska en aktivitetssignal slutföras när återanrop väljs som slutförandehändelse?

För att signalera slutförande ska den externa tjänsten POST-slutförandedata till följande REST-slutpunkt för pipelines.

{planUri}/{projectId}/_apis/distributedtask/hubs/{hubName}/plans/{planId}/events?api-version=2.0-preview.1

**Request Body**
 { "name": "TaskCompleted", "taskId": "taskInstanceId", "jobId": "jobId", "result": "succeeded" }

Mer information finns i det här enkla cmdline-programmet .

Dessutom finns ett C#-hjälpbibliotek tillgängligt för att aktivera liveloggning och hantera aktivitetsstatus för agentlösa aktiviteter. Läs mer

Kan jag använda svarstexten som indata för en annan uppgift?

Nej, eftersom den här aktiviteten är en agentlös uppgift och använder TFS interna HttpRequest, som inte returnerar innehållet i HTTP-begäran.

Krav

Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Server, ServerGate
Krav Ingen
Funktioner Den här aktiviteten uppfyller inte några krav för efterföljande uppgifter i jobbet.
Kommandobegränsningar Valfri
Inställningsbara variabler Valfri
Agentversion Alla agentversioner som stöds.
Uppgiftskategori Distribuera