Choose what's switched on
Two separate lists matter here. Your plan decides which datasets and features you have access to. Your capabilities decide which analysis endpoints you've chosen to use. We set the first. You control the second.
What your plan includes
curl -H "x-api-key: YOUR-API-KEY" https://api.thedogapi.com/v1/accounts/features
["full_breed_schema", "enable_health_tips", "exercise_by_lifestage", "clinical_history"]
These are the features enabled on your account. To add one, contact us.
Capabilities
Every analysis capability is on unless you switch it off. Switching one off makes its endpoints return 403 for your account, which is useful when a tool is included in your plan but doesn't fit your product, or when several teams share a key.
curl -H "x-api-key: YOUR-API-KEY" https://api.thedogapi.com/v1/accounts/capabilities
[
{
"id": "body_condition",
"name": "Body condition score",
"description": "WSAVA 1-9 body condition from photos, with vet review when the model is not confident.",
"endpoints": [
"POST /pets/{petId}/body-condition-score",
"GET /pets/{petId}/body-condition-score/reviews"
],
"enabled": true,
"updated_at": null
},
{
"id": "portraits",
"name": "Pet portraits",
"description": "Stylised artwork generated from the pet's photos.",
"endpoints": ["POST /pets/{petId}/portrait", "GET /pets/{petId}/portraits"],
"enabled": false,
"updated_at": "2026-09-30T02:00:00.000Z"
}
]
id | Endpoints it covers |
|---|---|
body_condition | Body condition score and its vet reviews |
muscle_condition | Muscle condition score (beta) |
breed_identification | Breed identification |
estimated_age | Estimated age |
estimated_weight | Estimated weight |
portraits | Portrait generation and listing |
pet_health_tips | Health tips for a specific pet |
Switch one off
curl -X PATCH -H "x-api-key: YOUR-API-KEY" -H "Content-Type: application/json" \
-d '{"enabled": false}' \
https://api.thedogapi.com/v1/accounts/capabilities/portraits
Calls to a switched-off capability get:
{
"statusCode": 403,
"timestamp": "2026-09-30T02:05:11.000Z",
"path": "/v1/pets/Mhq3zCuduT/portrait",
"error": "Forbidden",
"message": "The portraits capability is switched off for this account. Switch it on with PATCH /accounts/capabilities/portraits."
}
The response is the updated capability. Send {"enabled": true} to switch it back on. Changes take effect on the next request.
Switching a capability off only ever removes access. It can't give your account anything your plan doesn't include, and results already generated stay on your pets.
Staging and production accounts have separate settings, so switch things off in both.