- GraphQL — full reference and cURL examples in Developers → GraphQL API → DinoAI Programmable Agents API.
- Python SDK — full reference and Python examples in Developers → Python SDK → DinoAI Programmable Agents.
Prerequisites:
- An agent defined under .dinoai/agents/.yml in your repository — see YAML Configuration.
- An API key with DinoAI Agent capabilities.
GraphQL — quick example
Authenticate with an Account API Key (recommended): passAuthorization: Bearer <token> and X-Paradime-Workspace: <workspace_uid>. Legacy Workspace API Keys still work with X-API-KEY / X-API-SECRET headers instead. See Authentication.
agentSessionId and poll with dinoaiAgentRun(agentSessionId: $id) until status reaches a terminal state: COMPLETED, FAILED, or EXPIRED (the agent pod never started). The poll response also returns messages, childSessionIds, and workspaceUid. See the full GraphQL reference for the trigger, poll, and follow-up operations.
Python SDK — quick example
trigger_run, trigger_run_and_wait, send_message, and get_run.
Use the SDK methods rather than posting raw GraphQL yourself.
trigger_run accepts optional slack_channel / slack_thread (both required together) and base_branch, and raises ValueError if neither agent nor message is set. trigger_run_and_wait takes timeout (default 3600) and poll_interval (default 10) and raises DinoaiAgentRunFailedException on a failed run.Related
- Quick Start — End-to-end first-run walkthrough
- Triggering from Bolt — Alternative invocation path via a Bolt schedule
- Agent-to-Agent Delegation — Multi-agent workflows