Argo website screenshot

Argo

Argo is a collection of open-source Kubernetes-native tools for workflows, events, CI/CD, and progressive delivery. The project includes Argo Workflows (container-native workflow engine), Argo CD (declarative GitOps continuous delivery), Argo Events (event-driven automation framework), and Argo Rollouts (progressive delivery with canary and blue-green strategies). Argo is a CNCF graduated project governed by the Linux Foundation.

4 APIs 6 Features
CNCFCI/CDGitOpsKubernetesOpen SourceProgressive DeliveryWorkflow Engine

APIs

Argo Workflows API

REST API for managing Argo Workflows, workflow templates, cron workflows, archived workflow records, events, and sensors on Kubernetes clusters. Authentication uses JWT bearer t...

Argo CD API

REST API for managing Argo CD GitOps applications, projects, repositories, clusters, and sync operations for Kubernetes declarative continuous delivery. Authentication uses JWT ...

Argo Events API

Kubernetes-native API for the Argo Events event-driven automation framework. Exposes CRD-based resources including EventSource, EventBus, and Sensor for triggering Argo Workflow...

Argo Rollouts API

Kubernetes CRD-based API for Argo Rollouts progressive delivery controller. Provides Rollout and AnalysisTemplate resources for managing canary and blue-green deployment strateg...

Collections

Pricing Plans

Argo Plans Pricing

3 plans

PLANS

Rate Limits

Argo Rate Limits

5 limits

RATE LIMITS

FinOps

Argo Finops

FINOPS

Features

Argo Workflows

Container-native workflow engine for orchestrating parallel jobs and ML pipelines on Kubernetes.

Argo CD

Declarative GitOps continuous delivery tool that syncs Kubernetes application state from Git.

Argo Events

Event-driven automation framework supporting 20+ event sources to trigger Kubernetes workflows.

Argo Rollouts

Progressive delivery controller with canary, blue-green, and experiment strategies for Kubernetes.

CNCF Graduated

All four Argo projects are CNCF graduated, ensuring production-quality governance and stability.

Kubernetes-Native

All tools are implemented as Kubernetes CRDs and controllers, integrating natively with the platform.

Use Cases

GitOps Platform

Combine Argo CD and Argo Workflows for a complete Git-driven DevOps platform on Kubernetes.

Machine Learning Pipelines

Use Argo Workflows to orchestrate multi-step ML training, evaluation, and deployment pipelines.

Event-Driven Automation

Use Argo Events to trigger workflows based on webhooks, schedules, messaging, and cloud events.

Progressive Delivery

Use Argo Rollouts for safe canary and blue-green deployments with automated analysis and rollback.

CI/CD on Kubernetes

Build complete CI/CD pipelines natively on Kubernetes using Argo Workflows and Argo CD together.

Integrations

Helm

Argo CD natively renders Helm charts; Argo Workflows can execute Helm operations as steps.

Kustomize

Argo CD supports Kustomize overlays for environment-specific application configuration.

Prometheus

All Argo tools expose Prometheus metrics for monitoring workflow and deployment health.

Slack

Argo CD and Argo Workflows support Slack notifications for deployment and workflow events.

GitHub

Deep integration with GitHub webhooks for triggering workflows and CD syncs.

Amazon S3

Argo Workflows uses S3 as an artifact repository for passing data between workflow steps.

Event Specifications

Argo Events

Argo Events is a Kubernetes-native event-driven automation framework that listens to over 20 event sources and triggers Argo Workflows, Kubernetes objects, HTTP requests, and ot...

ASYNCAPI

Semantic Vocabularies

Argo Context

4 classes · 37 properties

JSON-LD

API Governance Rules

Argo API Rules

9 rules · 6 errors 2 warnings 1 info

SPECTRAL

JSON Structure

Argo Application Structure

4 properties

JSON STRUCTURE

Argo Cd App Project Structure

2 properties

JSON STRUCTURE

Argo Cd Application Destination Structure

3 properties

JSON STRUCTURE

Argo Cd Application List Structure

1 properties

JSON STRUCTURE

Argo Cd Application Source Structure

6 properties

JSON STRUCTURE

Argo Cd Application Spec Structure

5 properties

JSON STRUCTURE

Argo Cd Application Status Structure

3 properties

JSON STRUCTURE

Argo Cd Application Structure

5 properties

JSON STRUCTURE

Argo Cd Cluster List Structure

1 properties

JSON STRUCTURE

Argo Cd Cluster Structure

4 properties

JSON STRUCTURE

Argo Cd Project List Structure

1 properties

JSON STRUCTURE

Argo Cd Repository List Structure

1 properties

JSON STRUCTURE

Argo Cd Repository Structure

4 properties

JSON STRUCTURE

Argo Cd Settings Structure

6 properties

JSON STRUCTURE

Argo Cd Sync Policy Structure

3 properties

JSON STRUCTURE

Argo Cd Sync Request Structure

5 properties

JSON STRUCTURE

Argo Cd Version Message Structure

5 properties

JSON STRUCTURE

Argo Rollout Structure

5 properties

JSON STRUCTURE

Argo Workflow Structure

4 properties

JSON STRUCTURE

Argo Workflows Arguments Structure

2 properties

JSON STRUCTURE

Argo Workflows Artifact Structure

7 properties

JSON STRUCTURE

Argo Workflows Cron Workflow List Structure

3 properties

JSON STRUCTURE

Argo Workflows Cron Workflow Spec Structure

9 properties

JSON STRUCTURE

Argo Workflows Cron Workflow Status Structure

3 properties

JSON STRUCTURE

Argo Workflows Cron Workflow Structure

5 properties

JSON STRUCTURE

Argo Workflows Dag Task Structure

8 properties

JSON STRUCTURE

Argo Workflows Info Response Structure

2 properties

JSON STRUCTURE

Argo Workflows Inputs Structure

2 properties

JSON STRUCTURE

Argo Workflows Log Entry Structure

2 properties

JSON STRUCTURE

Argo Workflows Node Status Structure

12 properties

JSON STRUCTURE

Argo Workflows Object Meta Structure

9 properties

JSON STRUCTURE

Argo Workflows Outputs Structure

4 properties

JSON STRUCTURE

Argo Workflows Parameter Structure

6 properties

JSON STRUCTURE

Argo Workflows Retry Strategy Structure

3 properties

JSON STRUCTURE

Argo Workflows Template Structure

13 properties

JSON STRUCTURE

Argo Workflows Version Structure

8 properties

JSON STRUCTURE

Argo Workflows Workflow List Structure

3 properties

JSON STRUCTURE

Argo Workflows Workflow Spec Structure

16 properties

JSON STRUCTURE

Argo Workflows Workflow Status Structure

11 properties

JSON STRUCTURE

Argo Workflows Workflow Step Structure

7 properties

JSON STRUCTURE

Argo Workflows Workflow Structure

5 properties

JSON STRUCTURE

Argo Workflows Workflow Template Structure

4 properties

JSON STRUCTURE

Example Payloads

Argo Application Example

4 fields

EXAMPLE

Argo Cd App Project Example

2 fields

EXAMPLE

Argo Cd Application Example

5 fields

EXAMPLE

Argo Cd Cluster Example

4 fields

EXAMPLE

Argo Cd Cluster List Example

1 fields

EXAMPLE

Argo Cd Project List Example

1 fields

EXAMPLE

Argo Cd Repository Example

4 fields

EXAMPLE

Argo Cd Settings Example

6 fields

EXAMPLE

Argo Cd Sync Policy Example

3 fields

EXAMPLE

Argo Cd Sync Request Example

5 fields

EXAMPLE

Argo Rollout Example

5 fields

EXAMPLE

Argo Workflow Example

4 fields

EXAMPLE

Resources

🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
👥
GitHubOrganization
GitHubOrganization
👥
GitHubRepository
GitHubRepository
📰
Blog
Blog
💬
Support
Support
🔗
JSONLD
JSONLD
🔗
SpectralRules
SpectralRules
🔗
Vocabulary
Vocabulary

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Argo Workflows API
  version: 3.5.0
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Info
    type: folder
  items:
  - info:
      name: Argo Workflows Argo Get Server Info
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/info
    docs: Returns information about the Argo Workflows server including version and managed namespace.
  - info:
      name: Argo Workflows Argo Get Server Version
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/version
    docs: Returns the version of the Argo Workflows server.
- info:
    name: Workflows
    type: folder
  items:
  - info:
      name: Argo Workflows Argo List Workflows
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/workflows/:namespace
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: listOptions.labelSelector
        value: ''
        type: query
        description: Label selector to filter workflows
      - name: listOptions.fieldSelector
        value: ''
        type: query
        description: Field selector to filter workflows
      - name: listOptions.limit
        value: ''
        type: query
        description: Maximum number of workflows to return
      - name: listOptions.continue
        value: ''
        type: query
        description: Continue token for pagination
      - name: fields
        value: ''
        type: query
        description: Fields to include in the response
    docs: Returns a list of workflows in the specified namespace.
  - info:
      name: Argo Workflows Argo Create a Workflow
      type: http
    http:
      method: POST
      url: https://{host}:{port}/api/v1/workflows/:namespace
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      body:
        type: json
        data: '{}'
    docs: Creates a new workflow in the specified namespace.
  - info:
      name: Argo Workflows Argo Get a Workflow
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      - name: getOptions.resourceVersion
        value: ''
        type: query
        description: Resource version for optimistic concurrency
      - name: fields
        value: ''
        type: query
        description: Fields to include in the response
    docs: Returns a specific workflow by name in the specified namespace.
  - info:
      name: Argo Workflows Argo Delete a Workflow
      type: http
    http:
      method: DELETE
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      - name: deleteOptions.gracePeriodSeconds
        value: ''
        type: query
        description: Grace period for deletion in seconds
      - name: force
        value: ''
        type: query
        description: Force deletion of the workflow
    docs: Deletes a specific workflow by name in the specified namespace.
  - info:
      name: Argo Workflows Argo Retry a Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name/retry
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      body:
        type: json
        data: '{}'
    docs: Retries a failed or errored workflow.
  - info:
      name: Argo Workflows Argo Resubmit a Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name/resubmit
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      body:
        type: json
        data: '{}'
    docs: Resubmits a completed workflow as a new workflow.
  - info:
      name: Argo Workflows Argo Resume a Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name/resume
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      body:
        type: json
        data: '{}'
    docs: Resumes a suspended workflow.
  - info:
      name: Argo Workflows Argo Suspend a Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name/suspend
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      body:
        type: json
        data: '{}'
    docs: Suspends a running workflow.
  - info:
      name: Argo Workflows Argo Stop a Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name/stop
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      body:
        type: json
        data: '{}'
    docs: Stops a running workflow.
  - info:
      name: Argo Workflows Argo Terminate a Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name/terminate
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      body:
        type: json
        data: '{}'
    docs: Terminates a running workflow immediately.
  - info:
      name: Argo Workflows Argo Get Workflow Logs
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/workflows/:namespace/:name/log
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow
      - name: podName
        value: ''
        type: query
        description: Name of the pod to get logs from
      - name: logOptions.container
        value: ''
        type: query
        description: Container name to get logs from
      - name: logOptions.follow
        value: ''
        type: query
        description: Follow the log stream
      - name: logOptions.sinceSeconds
        value: ''
        type: query
        description: Relative time in seconds to start streaming logs
      - name: logOptions.tailLines
        value: ''
        type: query
        description: Number of lines from the end of the logs to show
      - name: grep
        value: ''
        type: query
        description: Grep pattern to filter log lines
    docs: Returns logs for a specific workflow.
- info:
    name: Workflow Templates
    type: folder
  items:
  - info:
      name: Argo Workflows Argo List Workflow Templates
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/workflow-templates/:namespace
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: listOptions.labelSelector
        value: ''
        type: query
        description: Label selector to filter templates
    docs: Returns a list of workflow templates in the specified namespace.
  - info:
      name: Argo Workflows Argo Create a Workflow Template
      type: http
    http:
      method: POST
      url: https://{host}:{port}/api/v1/workflow-templates/:namespace
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      body:
        type: json
        data: '{}'
    docs: Creates a new workflow template in the specified namespace.
  - info:
      name: Argo Workflows Argo Get a Workflow Template
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/workflow-templates/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow template
    docs: Returns a specific workflow template by name.
  - info:
      name: Argo Workflows Argo Update a Workflow Template
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/workflow-templates/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow template
      body:
        type: json
        data: '{}'
    docs: Updates an existing workflow template.
  - info:
      name: Argo Workflows Argo Delete a Workflow Template
      type: http
    http:
      method: DELETE
      url: https://{host}:{port}/api/v1/workflow-templates/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the workflow template
    docs: Deletes a specific workflow template by name.
- info:
    name: Cron Workflows
    type: folder
  items:
  - info:
      name: Argo Workflows Argo List Cron Workflows
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/cron-workflows/:namespace
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: listOptions.labelSelector
        value: ''
        type: query
        description: Label selector to filter cron workflows
    docs: Returns a list of cron workflows in the specified namespace.
  - info:
      name: Argo Workflows Argo Create a Cron Workflow
      type: http
    http:
      method: POST
      url: https://{host}:{port}/api/v1/cron-workflows/:namespace
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      body:
        type: json
        data: '{}'
    docs: Creates a new cron workflow in the specified namespace.
  - info:
      name: Argo Workflows Argo Get a Cron Workflow
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/cron-workflows/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the cron workflow
    docs: Returns a specific cron workflow by name.
  - info:
      name: Argo Workflows Argo Update a Cron Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/cron-workflows/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the cron workflow
      body:
        type: json
        data: '{}'
    docs: Updates an existing cron workflow.
  - info:
      name: Argo Workflows Argo Delete a Cron Workflow
      type: http
    http:
      method: DELETE
      url: https://{host}:{port}/api/v1/cron-workflows/:namespace/:name
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the cron workflow
    docs: Deletes a specific cron workflow by name.
  - info:
      name: Argo Workflows Argo Resume a Cron Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/cron-workflows/:namespace/:name/resume
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the cron workflow
    docs: Resumes a previously suspended cron workflow.
  - info:
      name: Argo Workflows Argo Suspend a Cron Workflow
      type: http
    http:
      method: PUT
      url: https://{host}:{port}/api/v1/cron-workflows/:namespace/:name/suspend
      params:
      - name: namespace
        value: ''
        type: path
        description: Kubernetes namespace
      - name: name
        value: ''
        type: path
        description: Name of the cron workflow
    docs: Suspends an active cron workflow.
- info:
    name: Workflow Archives
    type: folder
  items:
  - info:
      name: Argo Workflows Argo List Archived Workflows
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/archived-workflows
      params:
      - name: listOptions.labelSelector
        value: ''
        type: query
        description: Label selector to filter archived workflows
      - name: listOptions.limit
        value: ''
        type: query
        description: Maximum number of results to return
      - name: listOptions.continue
        value: ''
        type: query
        description: Continue token for pagination
      - name: namespace
        value: ''
        type: query
        description: Namespace to filter archived workflows
    docs: Returns a list of archived workflows.
  - info:
      name: Argo Workflows Argo Get an Archived Workflow
      type: http
    http:
      method: GET
      url: https://{host}:{port}/api/v1/archived-workflows/:uid
      params:
      - name: uid
        value: ''
        type: path
        description: UID of the archived workflow
    docs: Returns a specific archived workflow by UID.
  - info:
      name: Argo Workflows Argo Delete an Archived Workflow
      type: http
    http:
      method: DELETE
      url: https://{host}:{port}/api/v1/archived-workflows/:uid
      params:
      - name: uid
        value: ''
        type: path
        description: UID of the archived workflow
    docs: Deletes a specific archived workflow by UID.
bundled: true