Overview
The Application Service API provides comprehensive CRUD operations for Application resources. Applications represent the desired state of a Kubernetes application managed by Argo CD. Base Path:/api/v1/applications
gRPC Service: application.ApplicationService
Application Resource
An Application defines the source repository, destination cluster, and sync policies.Application Spec
ApplicationSource
Reference to the location of manifests or chart (single-source)
ApplicationSource[]
Multiple sources for multi-source applications
ApplicationDestination
required
Target Kubernetes cluster and namespace
string
required
Project name (use “default” if not specified)
SyncPolicy
Sync policy configuration
Example Application
API Operations
List Applications
Retrieve a list of applications.string[]
Filter by project names
string
Label selector (e.g.,
app=myapp,env=prod)string
Filter by repository URL
string
Filter by application namespace
Get Application
Retrieve a specific application by name.string
required
Application name
string
Force refresh from Git (“normal” or “hard”)
string
Project filter for validation
string
Application namespace
Create Application
Create a new application.Application
required
Complete Application resource definition
boolean
Update if already exists (default: false)
boolean
Validate before creating (default: true)
Update Application
Update an existing application.Application
required
Updated Application resource
boolean
Validate before updating
Update Application Spec
Update only the application spec.string
required
Application name
ApplicationSpec
required
Updated specification
Patch Application
Partially update an application.string
required
Application name
string
required
JSON patch or merge patch content
string
required
Patch type: “json”, “merge”, or “strategic”
Delete Application
Delete an application.string
required
Application name
boolean
Delete application resources (default: true)
string
Kubernetes propagation policy: “foreground”, “background”, or “orphan”
string
Application namespace
Sync Operations
Sync Application
Trigger a sync operation to deploy the application.string
required
Application name
string
Target revision to sync (default: spec.targetRevision)
boolean
Delete resources not in Git
boolean
Preview sync without applying changes
SyncStrategy
Sync strategy (hook, apply)
SyncOperationResource[]
Specific resources to sync
string[]
Sync options (e.g., “PruneLast=true”)
Terminate Operation
Cancel a running sync operation.Rollback Application
Rollback to a previous revision.string
required
Application name
int64
required
History ID to rollback to
boolean
Prune resources during rollback
boolean
Preview rollback
Resource Operations
Get Resource
Get a specific resource managed by the application.string
Resource namespace
string
required
Resource name
string
required
API version (e.g., “v1”)
string
API group (empty for core)
string
required
Resource kind (e.g., “Deployment”)
Delete Resource
Delete a specific resource.Patch Resource
Patch a specific resource.Monitoring & Observability
Get Resource Tree
Get the application’s resource hierarchy.Watch Resource Tree
Stream resource tree updates.Get Pod Logs
Stream logs from application pods.string
Container name
boolean
Stream logs
int64
Number of lines to tail
int64
Logs from last N seconds
Watch Applications
Stream application change events.Next Steps
ApplicationSet API
Manage ApplicationSets
Project API
Configure projects for applications