Freigeben über


InvokeRESTAPI@0 – Rest-API v0-Aufgabe aufrufen

Verwenden Sie diese Aufgabe, um eine REST-API als Teil Ihrer Pipeline aufzurufen.

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.

Eingänge

serviceConnection - generischen Endpunkt-
Eingabealias: connectedServiceName. string. Erforderlich.

Gibt die generische Dienstverbindung an, die die baseURL für den Aufruf und die Autorisierung für die Aufgabe bereitstellt.


method - -Methode
string. Erforderlich. Zulässige Werte: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, PATCH. Standardwert: POST.

Gibt die HTTP-Methode an, die die API aufruft.


headers - Kopfzeilen
string. Standardwert: {\n"Content-Type":"application/json"\n}.

Definiert den Header im JSON-Format. Der Header wird mit der an die API gesendeten Anforderung angefügt.


body - Body-
string. Wahlfrei. Wird verwendet, wenn method != GET && method != HEAD. Standardwert: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.

Gibt den Anforderungstext für den Funktionsaufruf im JSON-Format an.


urlSuffix - URL-Suffixzeichenfolge
string.

Gibt die Zeichenfolge an, die an die baseUrl von der generischen Dienstverbindung angefügt werden soll, während der HTTP-Aufruf ausgeführt wird.

Beispiel: Wenn die Dienstverbindungs-URL https:...TestProj/_apis/Release/releases ist und das URL-Suffix /2/environments/1ist, wird die Dienstverbindungs-URL https:.../TestProj/_apis/Release/releases/2/environments/1. Wenn das URL-Suffix ?definitionId=1&releaseCount=1ist, wird die Dienstverbindungs-URL https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1.


waitForCompletion - abgeschlossen basierend auf
string. Erforderlich. Zulässige Werte: true (Rückruf), false (ApiResponse). Standardwert: false.

Gibt an, wie der Abschluss der Aufgabenberichte abgeschlossen wird. Die zulässigen Werte sind:

  • false - API-Antwort: Meldet den Abschluss, wenn die Funktion den Erfolg innerhalb von 20 Sekunden zurückgibt, und die Erfolgskriterien werden als "true" ausgewertet.
  • true - Rückruf: Meldet den Abschluss, wenn der externe Dienst einen Rückruf zum Aktualisieren des Zeitachsendatensatzes vorfertigt.

successCriteria - Erfolgskriterien
string. Wahlfrei. Wird verwendet, wenn waitForCompletion = false.

Gibt die Kriterien des Vorgangs für den Erfolg an. Der Antwortinhalt beeinflusst das Ergebnis nicht, wenn keine Kriterien definiert sind. Standardmäßig wird die Aufgabe übergeben, wenn der Aufruf 200 OKzurückgibt.

Beispiel: Für antwort {"status" : "successful"}kann der Ausdruck eq(root['status'], 'successful')werden. Erfahren Sie mehr über Angeben von Bedingungen.


Aufgabensteuerungsoptionen

Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.

Ausgabevariablen

Keiner.

Bemerkungen

Hinweis

Diese Aufgabe kann nur in einem agentenlosen Jobverwendet werden.

Erfolgreich, wenn die API Erfolg zurückgibt und die Analyse des Antworttexts erfolgreich ist oder wenn die API den Zeitachsendatensatz erfolgreich aktualisiert.

Die AUFRUFEN der REST-API-Aufgabe führt keine Bereitstellungsaktionen direkt aus. Stattdessen können Sie eine generische HTTP-REST-API als Teil der automatisierten Pipeline aufrufen und optional warten, bis sie abgeschlossen ist.

Konfigurieren einer Aufruf-REST-API-Aufgabe

Weitere Informationen zur Verwendung dieser Aufgabe finden Sie Übersicht über Genehmigungen und Gates.

Welche Basis-URLs werden beim Aufrufen von Azure Management-APIs verwendet?

Azure-Verwaltungs-APIs werden mithilfe ResourceManagerEndpoint- der ausgewählten Umgebung aufgerufen. Beispielsweise wird https://management.Azure.com verwendet, wenn sich das Abonnement in einer AzureCloud--Umgebung befindet.

Wo sollte ein Aufgabensignal abgeschlossen werden, wenn Callback- als Abschlussereignis ausgewählt wird?

Um den Abschluss zu signalisieren, sollte der externe Dienst POST-Abschlussdaten an den folgenden Pipelines-REST-Endpunkt senden.

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

Weitere Informationen finden Sie in dieser einfachen cmdline-Anwendung.

Darüber hinaus ist eine C#-Hilfsbibliothek verfügbar, um die Liveprotokollierung und das Verwalten des Aufgabenstatus für agentlose Aufgaben zu ermöglichen. Weitere Informationen

Kann ich den Antworttext als Eingabe für eine andere Aufgabe verwenden?

Nein, da es sich bei dieser Aufgabe um eine agentlose Aufgabe handelt und die interne HttpRequest von TFS verwendet, die den Inhalt der HTTP-Anforderung nicht zurückgibt.

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Classic Build, Classic Release
Läuft auf Server, ServerGate
Anforderungen Nichts
Funktionen Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag.
Befehlseinschränkungen Jegliche
Settable-Variablen Jegliche
Agentversion Alle unterstützten Agentversionen.
Vorgangskategorie Einsetzen