Tickets
Create tickets, read their status and add comments (REST API v1).
Ticket erstellen
Abschnitt betitelt „Ticket erstellen“POST /api/v1/tickets
Creates a ticket in the tenant bound to the API key. Send an Idempotency-Key header
so retries don’t create duplicates: a repeated key returns the original result
with action: deduplicated.
Authentifizierung: API-Schlüssel: Authorization: Bearer nhk.<keyid>.<secret>, oder API-Schlüssel in X-NH-API-Key
Parameter
Abschnitt betitelt „Parameter“| Name | Ort | Typ | Pflicht | Beschreibung |
|---|---|---|---|---|
Idempotency-Key |
Header | string | nein | Unique key per logical operation (UUID recommended). A retry with the same key returns the first result. |
Request-Body
Abschnitt betitelt „Request-Body“application/json
| Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
subject |
string | nein | Ticket title. Required (alias: summary). |
summary |
string | nein | veraltet Alias of subject. |
description |
string | nein | Body text (alias: body). |
priority |
string | nein | Priority name. The tenant’s priority scheme may define more values. |
category |
string | nein | Category hint used by routing. |
issuetype |
string | nein | Issue-type override, for example IT-INC or IT-SR. |
country |
string | nein | ISO 3166-1 alpha-2 country, if your tenant routes by country. |
sender_email |
string (email) | nein | Requester. Defaults to the key’s contact. |
sender_name |
string | nein | |
sender_phone |
string | nein | |
company |
string | nein | |
external_id |
string | nein | Your system’s id, kept for correlation. |
tags |
array<string> | nein | |
attachments |
array<object> | nein | Attachments by reference (URL). Binary upload is not part of v1. |
attachments[].name |
string | ja | |
attachments[].url |
string (uri) | nein | |
attachments[].size |
integer | nein | |
attachments[].mime |
string | nein |
{ "subject": "Payment gateway returns HTTP 502", "description": "Checkout fails for all EU customers since 09:12 UTC.", "priority": "High", "category": "Application", "sender_name": "ACME On-call", "external_id": "INC-88231", "tags": [ "checkout", "eu-west" ]}Antworten
Abschnitt betitelt „Antworten“| Status | Beschreibung |
|---|---|
200 |
Ticket created (or deduplicated by Idempotency-Key). |
400 |
Invalid request. |
401 |
API key missing, invalid or revoked. |
403 |
Key disabled or missing the required scope. |
429 |
Rate limit exceeded for this API key. |
500 |
Unexpected server error. Retry with the same Idempotency-Key. |
Beispiel 200
{ "ok": true, "ticket_key": "ACME-1042", "ingestion_id": "ing_7f3c2a91", "action": "created", "status_url": "/api/v1/tickets/ACME-1042", "skipped": null, "backend_status": null, "backend_error": null, "error": null, "post_routing": null}Beispiel mit curl
Abschnitt betitelt „Beispiel mit curl“curl -X POST "https://exocortex-api.ai-exo-cortex.com/api/v1/tickets" \ -H "Authorization: Bearer $EXO_API_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Content-Type: application/json" \ --data '{"subject":"Payment gateway returns HTTP 502","description":"Checkout fails for all EU customers since 09:12 UTC.","priority":"High","category":"Application","sender_email":"[email protected]","sender_name":"ACME On-call","external_id":"INC-88231","tags":["checkout","eu-west"]}'Ticket abrufen
Abschnitt betitelt „Ticket abrufen“GET /api/v1/tickets/{key}
Returns the current status of a ticket in the API key’s tenant. Tickets of other tenants return 404.
Authentifizierung: API-Schlüssel: Authorization: Bearer nhk.<keyid>.<secret>, oder API-Schlüssel in X-NH-API-Key
Parameter
Abschnitt betitelt „Parameter“| Name | Ort | Typ | Pflicht | Beschreibung |
|---|---|---|---|---|
key |
Pfad | string | ja | Ticket key. |
Antworten
Abschnitt betitelt „Antworten“| Status | Beschreibung |
|---|---|
200 |
Ticket found. |
401 |
API key missing, invalid or revoked. |
403 |
Key disabled or missing the required scope. |
404 |
Ticket not found in the API key’s tenant. |
429 |
Rate limit exceeded for this API key. |
500 |
Unexpected server error. Retry with the same Idempotency-Key. |
Beispiel 200
{ "ok": true, "ticket": { "key": "ACME-1042", "summary": "Payment gateway returns HTTP 502", "status": "In Progress", "priority": "High", "assignee": "Jane Doe", "created": "2026-11-01T09:14:05.000Z", "updated": "2026-11-01T09:31:47.000Z" }}Beispiel mit curl
Abschnitt betitelt „Beispiel mit curl“curl -X GET "https://exocortex-api.ai-exo-cortex.com/api/v1/tickets/ACME-1042" \ -H "Authorization: Bearer $EXO_API_KEY"Kommentar hinzufügen
Abschnitt betitelt „Kommentar hinzufügen“POST /api/v1/tickets/{key}/comment
Authentifizierung: API-Schlüssel: Authorization: Bearer nhk.<keyid>.<secret>, oder API-Schlüssel in X-NH-API-Key
Parameter
Abschnitt betitelt „Parameter“| Name | Ort | Typ | Pflicht | Beschreibung |
|---|---|---|---|---|
key |
Pfad | string | ja | Ticket key. |
Idempotency-Key |
Header | string | nein | Unique key per logical operation (UUID recommended). A retry with the same key returns the first result. |
Request-Body
Abschnitt betitelt „Request-Body“application/json
| Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
comment |
string | nein | Comment text. Required (alias: text). |
text |
string | nein | veraltet Alias of comment. |
sender_email |
string (email) | nein | |
sender_name |
string | nein |
{ "comment": "Rollback of release 4.18.2 completed; error rate back to baseline.",}Antworten
Abschnitt betitelt „Antworten“| Status | Beschreibung |
|---|---|
200 |
Comment accepted. |
400 |
Invalid request. |
401 |
API key missing, invalid or revoked. |
403 |
Key disabled or missing the required scope. |
404 |
Ticket not found in the API key’s tenant. |
429 |
Rate limit exceeded for this API key. |
500 |
Unexpected server error. Retry with the same Idempotency-Key. |
Beispiel 200
{ "ok": true, "ticket_key": "ACME-1042", "ingestion_id": "ing_91be04d2"}Beispiel mit curl
Abschnitt betitelt „Beispiel mit curl“curl -X POST "https://exocortex-api.ai-exo-cortex.com/api/v1/tickets/ACME-1042/comment" \ -H "Authorization: Bearer $EXO_API_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Content-Type: application/json" \ --data '{"comment":"Rollback of release 4.18.2 completed; error rate back to baseline.","sender_email":"[email protected]"}'Seite generiert aus der OpenAPI-Spezifikation der Integrations-API, Version 1.1.0.