--- title: "Overview" description: "Interact with Dograh programmatically via the REST API" --- ## Base URL All API requests are made to: ``` https://your-dograh-instance/api/v1 ``` If you are using the hosted version, the base URL is `https://app.dograh.com/api/v1`. ## Versioning The current API version is `v1`. The version is included in the URL path. ## Request format All request bodies must be sent as JSON with the `Content-Type: application/json` header. ```bash curl -X POST https://your-dograh-instance/api/v1/workflow/create/definition \ -H "Content-Type: application/json" \ -H "X-API-Key: dg_your_api_key" \ -d '{"name": "My Agent", "workflow_definition": {}}' ``` ## Response format All responses are JSON. Successful responses return the relevant resource object. Error responses follow a consistent shape: ```json { "detail": "Error message describing what went wrong" } ``` For validation errors (422), the detail may be a list: ```json { "detail": [ { "loc": ["body", "name"], "msg": "field required", "type": "value_error.missing" } ] } ``` ## Health check Verify your instance is reachable before making API calls. ```bash curl https://your-dograh-instance/api/v1/health ``` ```json { "status": "ok", "version": "1.0.0", "backend_api_endpoint": "https://your-dograh-instance", "deployment_mode": "oss", "auth_provider": "local" } ```