canonical: https://jentic.com/apis/airops.com/airops

# AirOps API

Jentic publishes the only available OpenAPI specification for AirOps API, keeping it validated and agent-ready. AirOps is a workflow and agent platform that lets teams build LLM-powered pipelines without writing infrastructure code. The API runs workflows, agents, and legacy apps with synchronous or streaming execution, polls execution status, and supports conversation-style chat with deployed agents. Each workflow or agent is identified by an opaque ID and accepts a JSON inputs payload.

## For AI agents

Trigger AirOps workflows, run conversational agents, and poll long-running execution jobs from a single REST surface.

## Scope

Does not host or train models, manage prompt versioning, or replace a vector database - use for executing already-deployed AirOps workflows and agents only.

## Capabilities

- Execute a workflow by ID with a JSON inputs payload via POST /v1/workflows/{workflow_id}/execute
- Send conversational messages to a deployed agent via POST /v1/agents/{agent_id}/chat
- Poll execution status to retrieve outputs once a long-running job completes
- Cancel an in-flight execution mid-run via POST /v1/executions/{execution_id}/cancel
- List available workflows and agents under the authenticated organisation
- Run legacy AirOps apps via the /v1/apps/{app_id}/execute endpoint for backward compatibility

## Use cases

### Programmatic Workflow Execution

Trigger AirOps workflows from external apps, schedulers, or upstream agents. POST /v1/workflows/{workflow_id}/execute accepts a JSON inputs payload and returns an execution_id for status polling. Use the matching GET endpoint to retrieve outputs once the run completes. Supports both synchronous and async execution modes.

Example prompt: Execute workflow ID 'wf_abc123' with inputs {"product_name": "Acme Widget"}, then poll execution status until status is 'completed'

### Conversational Agent Chat

Embed an AirOps-deployed agent into a chat surface by relaying user messages through POST /v1/agents/{agent_id}/chat. The endpoint maintains conversation context server-side and returns the agent's reply along with execution metadata. Suitable for support copilots, internal Q&A assistants, and lead-qualification bots.

Example prompt: Send the message 'What plans do you offer?' to agent 'agt_xyz789' and return the assistant reply

### Long-Running Job Orchestration

Coordinate multi-step LLM jobs that exceed typical request timeouts by submitting them async, polling the execution endpoint, and reading outputs when status flips to completed. The /v1/workflows/{workflow_id}/executions/{execution_id} GET returns status, outputs, and any error trace, while POST /v1/executions/{execution_id}/cancel aborts runaway runs.

Example prompt: Execute workflow 'wf_research_001', poll execution status every 5 seconds, and return the outputs when complete or cancel after 60 seconds

### Agent-Triggered AirOps via Jentic

An upstream agent can chain into a specialised AirOps workflow without hard-coding workflow IDs by searching Jentic for the right operation, loading its input schema, and executing with a bearer token managed by Jentic. Removes the need for the agent to inspect AirOps documentation at runtime.

Example prompt: Search Jentic for 'execute an airops workflow', load the operation, and run workflow_id 'wf_classify' with inputs from the parent agent's context

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /v1/workflows/{workflow_id}/execute | Execute a workflow with JSON inputs |
| GET | /v1/workflows/{workflow_id}/executions/{execution_id} | Retrieve workflow execution status and outputs |
| POST | /v1/agents/{agent_id}/execute | Run an agent against an inputs payload |
| POST | /v1/agents/{agent_id}/chat | Send a chat message to a deployed agent |
| POST | /v1/executions/{execution_id}/cancel | Cancel an in-flight execution |
| GET | /v1/workflows | List available workflows |
| GET | /v1/agents | List available agents |

## Key resources

- **Workflows** — Execute, list, and inspect deployed AirOps workflows
- **Agents** — Run agents synchronously or via chat, and poll execution status
- **Apps** — Legacy AirOps apps for backward-compatible execution
- **Executions** — Cancel in-flight executions and check job status

## Why Jentic

- **Setup:** Wiring AirOps by hand means handling its bearer token, launching executions and polling their status, and writing your own retry logic. Through Jentic you install once, import AirOps from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** AirOps puts the workflow and agent ids in the URL path (/workflows/{workflow_id}/execute, /agents/{agent_id}/execute), so a rule can pin your agent to one workflow or agent. You choose the operations it may call, so cancelling an execution is only included if you add it.
- **Credential handling:** Your AirOps bearer token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'run an airops workflow', and Jentic returns the AirOps execute operation with its workflow_id and inputs schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **OpenAI API** — Direct LLM access without the workflow orchestration layer AirOps provides
- **Anthropic Messages API** — Direct Claude model API without prebuilt agent or workflow primitives
- **n8n** — General-purpose workflow automation that can trigger AirOps workflows on schedule or webhook

## FAQ

### Why is there no official OpenAPI spec for AirOps API?

AirOps does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call AirOps API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the AirOps API use?

AirOps uses HTTP bearer tokens. Pass an API key via the Authorization: Bearer <token> header on every request. Through Jentic, tokens are stored encrypted and the header is injected at execution time so agents never receive the raw secret.

### Can I run an AirOps workflow asynchronously?

Yes. POST /v1/workflows/{workflow_id}/execute returns an execution_id immediately when running in async mode. Poll GET /v1/workflows/{workflow_id}/executions/{execution_id} until status is 'completed' to retrieve the outputs.

### What are the rate limits for the AirOps API?

AirOps applies plan-based rate limits enforced via HTTP 429 responses. Production tiers are higher than free; consult docs.airops.com for current limits. Treat 429 as a backoff-and-retry signal in agent code.

### How do I trigger an AirOps workflow through Jentic?

Install with pip install jentic, then use the async client to search for 'execute an airops workflow', load the schema, and execute with the workflow_id and inputs payload. Jentic handles the bearer token at execution time.

### Can I cancel a running AirOps execution?

Yes. POST /v1/executions/{execution_id}/cancel aborts an in-flight run. Useful for stopping runaway LLM chains or jobs that exceed a time budget set by the calling agent.

### Can I limit what my agent is allowed to do with the AirOps API?

Yes. Because you run Jentic One yourself, your own rules decide which AirOps operations and credentials the agent may use. Since AirOps puts the workflow and agent IDs in the URL path (POST /v1/workflows/{workflow_id}/execute and POST /v1/agents/{agent_id}/execute), you can pin an agent to a single workflow or agent and let it call only those. You also choose the operation set, so cancelling a run via POST /v1/executions/{execution_id}/cancel is available to the agent only if you include it.
