SDK und CLI
exoCortex stellt drei Clients für die REST API v1 bereit. Sie laden sie direkt von der API herunter und fügen sie Ihrem Projekt hinzu:
| Client | Adresse | Voraussetzungen |
|---|---|---|
| JavaScript | https://exocortex-api.ai-exo-cortex.com/sdk/exocortex.js |
Eine Laufzeitumgebung mit fetch, zum Beispiel Node.js 18 oder höher |
| Python | https://exocortex-api.ai-exo-cortex.com/sdk/exocortex.py |
Das Paket requests |
| Bash-CLI | https://exocortex-api.ai-exo-cortex.com/sdk/exo-cli |
curl und jq |
Alle lesen den API-Schlüssel, den Sie ihnen übergeben; keiner speichert ihn. Beim Eröffnen eines Tickets erzeugen sie automatisch einen Idempotency-Key.
JavaScript
Abschnitt betitelt „JavaScript“import { ExoClient, ExoApiError } from './exocortex.js';
const exo = new ExoClient({ apiKey: process.env.EXO_API_KEY });
try { const created = await exo.tickets.create({ subject: 'Printer offline', description: 'Floor 2, room 204', priority: 'Medium', }); const { ticket } = await exo.tickets.get(created.ticket_key); await exo.tickets.comment(ticket.key, 'Toner replaced.');} catch (err) { if (err instanceof ExoApiError && err.code === 'rate_limited') { // nach err.retryAfter Sekunden erneut versuchen } else throw err;}ExoApiError stellt status, code, retryAfter und den Body der Antwort in body bereit.
import osfrom exocortex import ExoClient, ExoApiError
exo = ExoClient(api_key=os.environ['EXO_API_KEY'])
try: created = exo.tickets.create(subject='Printer offline', description='Floor 2, room 204') ticket = exo.tickets.get(created['ticket_key'])['ticket'] exo.tickets.comment(ticket['key'], 'Toner replaced.')except ExoApiError as err: print(err.status, err.code, err.retry_after)curl -fsSL https://exocortex-api.ai-exo-cortex.com/sdk/exo-cli -o exo-cli && chmod +x exo-cliexport EXO_API_KEY='nhk.<keyid>.<secret>'
./exo-cli ticket-create "Printer offline" "Floor 2, room 204" Medium./exo-cli ticket-get ACME-1042./exo-cli ticket-comment ACME-1042 "Toner replaced."Mit EXO_BASE_URL richten Sie die CLI auf eine andere Adresse der API aus.
Vom alten SDK migrieren
Abschnitt betitelt „Vom alten SDK migrieren“Die Klassen NHClient und NHError sind veraltete Aliase von ExoClient und ExoApiError. Das neue SDK sendet den Schlüssel in Authorization: Bearer und sendet den Tenant nicht mehr, da die API ihn aus dem Schlüssel ableitet. Die Helfer widgets und mapping wurden entfernt.