API Reference
Full programmatic access to trigger analyses, retrieve results, and integrate ARI into your release toolchain. All endpoints require a valid API key.
https://api.ari.shAuthentication
All API requests must include your API key in the Authorization header as a Bearer token. You can generate an API key from Dashboard → Settings → API Keys.
curl https://api.ari.sh/v1/projects \
-H "Authorization: Bearer ari_live_xxxxxxxxxxxxxxxxxxxx"POST /v1/analyze
Trigger a new release-risk analysis for a project. Returns an analysis_id you can use to poll status or receive via webhook on completion.
REQUEST
POST /v1/analyze
Content-Type: application/json
Authorization: Bearer ari_live_xxxx
{
"project_id": "proj_01j9xkz2p4m8v",
"url": "https://staging.myapp.com",
"label": "v2.4.1-rc1"
}PARAMETERS
project_idrequiredstringThe unique identifier of the project to analyze.
urlrequiredstringThe staging or preview URL to analyze. Must be publicly reachable.
labelstringOptional human-readable label for this analysis, e.g. a version or branch name.
RESPONSE (202 Accepted)
{
"analysis_id": "anlys_01jaz87kp9m3t",
"project_id": "proj_01j9xkz2p4m8v",
"status": "pending",
"label": "v2.4.1-rc1",
"created_at": "2026-04-09T14:30:00Z",
"estimated_completion_seconds": 90
}GET /v1/analyze/:analysis_id — POLL STATUS
{
"analysis_id": "anlys_01jaz87kp9m3t",
"status": "complete",
"verdict": "WARNING",
"risk_score": 62,
"confirmed_bugs": 3,
"completed_at": "2026-04-09T14:31:28Z",
"report_url": "https://app.ari.sh/dashboard/reports/anlys_01jaz87kp9m3t"
}STATUS VALUES
pendingAnalysis is queued and has not yet started.
runningAnalysis is actively probing and collecting evidence.
completeAnalysis finished successfully. Report is available.
failedAnalysis could not complete. Check that the URL is reachable.
Rate Limits
Rate limits are enforced per API key. Limits vary by plan. When you exceed a limit, the API returns a 429 Too Many Requests response.
The /v1/analyze endpoint is additionally limited to 12 requests per 10-minute window per API key, regardless of plan.