Developer Docs

Identity Market API

Generate images using governed AI identities through a hosted API with authenticated access and usage tracking.

Errors

The Identity Market API uses standard HTTP status codes and returns consistent error objects.

Error Response Format
{
  "error": "Human-readable error message",
  "code": "MACHINE_READABLE_CODE"
}

HTTP Status Codes

StatusMeaning
200Success
400Bad Request - invalid JSON, missing identityId, or invalid generation parameters
401Unauthorized - invalid API key or key not authorized for the requested identity
404Not Found - requested identity or generation request does not exist
429Too Many Requests - route limit or monthly credit limit exceeded
500Server Error - generation failed after the request started
503Service Unavailable - inference backend or identity runtime temporarily unavailable
504Gateway Timeout - generation timed out

Common Error Codes

CodeStatusMeaning
INVALID_API_KEY401API key missing, invalid, expired, or revoked
INVALID_BODY400Request body could not be parsed as JSON
MISSING_IDENTITY400identityId was not provided
IDENTITY_NOT_FOUND404The requested identity ID does not exist
IDENTITY_MISMATCH401Key valid but not authorized for the requested identity
INVALID_PARAMETERS400Prompt or generation parameters failed validation
TIER_LIMIT400Requested resolution or outputs exceed the active tier
CREDIT_LIMIT_EXCEEDED429Monthly credit limit reached for this access record
IDENTITY_UNAVAILABLE503No active inference model is available for that identity
SERVICE_UNAVAILABLE503The inference backend is temporarily degraded
TIMEOUT504Generation timed out after starting
GENERATION_FAILED500Generation failed after the request was accepted

Rate Limits

  • Generate submits: 10 requests/minute per API key.
  • Status checks: 60 requests/minute.
  • Usage dashboard queries: 30 requests/minute with account session auth.
  • Starter monthly credits: 500 (credits are usage units, and model costs vary by workflow).
  • Standard monthly credits: 1,500.
  • Enterprise: custom contract-defined usage.

When rate limited, the response may include a Retry-After hint. Back off and retry instead of hammering the endpoint.