API संदर्भ

Ara में एक key बनाएं, उसे सत्यापित करें, और सार्वजनिक API आज़माएं।

View as Markdown

सार्वजनिक API https://api.ara.so/v3 पर उपलब्ध है। एक ara_ API key उस Ara workspace से बंधी होती है जहाँ इसे बनाया गया था।

API key प्राप्त करें

  1. Ara में साइन इन करें और अपना workspace खोलें।
  2. Settings → Ara CLI खोलें।
  3. API keys for CI के अंतर्गत, Generate key चुनें।
  4. सबसे सीमित scopes और एक expiration चुनें, फिर key कॉपी करें।

key को पासवर्ड की तरह मानें। इसे किसी secret manager में संग्रहीत करें, कभी भी source control या browser code में नहीं।

key सत्यापित करें

अपने shell में key सेट करें और /v3/self को कॉल करें:

$export ARA_API_KEY="ara_..."
$
$curl https://api.ara.so/v3/self \
> -H "Authorization: Bearer $ARA_API_KEY"

प्रतिक्रिया में key से बंधा organization ID शामिल होता है:

1{
2 "principal_type": "service_user",
3 "service_user_id": "key_3f9a",
4 "service_user_name": "ci-bot",
5 "org_id": "org_8c2d1e"
6}

शेष उदाहरणों में उस मान का उपयोग करें:

$export ARA_ORG_ID="org_8c2d1e"

API आज़माएं

जुड़े हुए repositories की सूची बनाएं

repos:read की आवश्यकता है।

$curl "https://api.ara.so/v3/organizations/$ARA_ORG_ID/repositories" \
> -H "Authorization: Bearer $ARA_API_KEY"

एक session शुरू करें

run की आवश्यकता है। acme/web को workspace से जुड़े किसी repository से बदलें।

$curl "https://api.ara.so/v3/organizations/$ARA_ORG_ID/sessions" \
> -H "Authorization: Bearer $ARA_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "repo": "acme/web",
> "prompt": "Fix the flaky auth test, add a regression case, and open a PR."
> }'

प्रतिक्रिया में एक session_id शामिल होता है। Session निर्माण असंकालिक है।

session पढ़ें

sessions:read की आवश्यकता है।

$export ARA_SESSION_ID="ses_91af3c"
$
$curl "https://api.ara.so/v3/organizations/$ARA_ORG_ID/sessions/$ARA_SESSION_ID" \
> -H "Authorization: Bearer $ARA_API_KEY"

सामान्य scopes

Scopeइसका उपयोग करें
runagent कार्य शुरू करें, नियंत्रित करें, रद्द करें, और शेड्यूल करें
sessions:readsessions, messages, tags, insights, और attachments पढ़ें
repos:read, repos:writerepositories पढ़ें और indexing प्रबंधित करें
memory:read, memory:writeसंपादन योग्य repository notes पढ़ें और प्रबंधित करें
secrets:read, secrets:writesecret नाम सूचीबद्ध करें और मान लिखें या हटाएं
plugins:read, plugins:writeMCP servers और git plugins पढ़ें और प्रबंधित करें
reviews:read, reviews:writepull request reviews पढ़ें या ट्रिगर करें
analytics:readusage, queue status, और audit logs पढ़ें

केवल वही scopes उपयोग करें जो आवश्यक हों। Secret मान केवल write-only होते हैं और API के माध्यम से कभी वापस नहीं पढ़े जा सकते।

सटीक request fields, response schemas, और हर सार्वजनिक endpoint के लिए, पूर्ण endpoint संदर्भ खोलें।

त्रुटियाँ

Statusअर्थ
401गुम, अमान्य, या समाप्त key
403key में आवश्यक scope नहीं है, या workspace सुलभ नहीं है
429Rate limited। Retry-After header का पालन करें