Tickets
Create tickets, read their status and add comments (REST API v1).
Créer un ticket
Section intitulée « Créer un ticket »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.
Authentification: Clé API : Authorization: Bearer nhk.<keyid>.<secret>, ou clé API dans X-NH-API-Key
Paramètres
Section intitulée « Paramètres »| Nom | Emplacement | Type | Obligatoire | Description |
|---|---|---|---|---|
Idempotency-Key |
en-tête | string | non | Unique key per logical operation (UUID recommended). A retry with the same key returns the first result. |
Corps de la requête
Section intitulée « Corps de la requête »application/json
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
subject |
string | non | Ticket title. Required (alias: summary). |
summary |
string | non | déprécié Alias of subject. |
description |
string | non | Body text (alias: body). |
priority |
string | non | Priority name. The tenant’s priority scheme may define more values. |
category |
string | non | Category hint used by routing. |
issuetype |
string | non | Issue-type override, for example IT-INC or IT-SR. |
country |
string | non | ISO 3166-1 alpha-2 country, if your tenant routes by country. |
sender_email |
string (email) | non | Requester. Defaults to the key’s contact. |
sender_name |
string | non | |
sender_phone |
string | non | |
company |
string | non | |
external_id |
string | non | Your system’s id, kept for correlation. |
tags |
array<string> | non | |
attachments |
array<object> | non | Attachments by reference (URL). Binary upload is not part of v1. |
attachments[].name |
string | oui | |
attachments[].url |
string (uri) | non | |
attachments[].size |
integer | non | |
attachments[].mime |
string | non |
{ "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" ]}Réponses
Section intitulée « Réponses »| Statut | Description |
|---|---|
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. |
Exemple 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}Exemple avec curl
Section intitulée « Exemple avec 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"]}'Consulter un ticket
Section intitulée « Consulter un ticket »GET /api/v1/tickets/{key}
Returns the current status of a ticket in the API key’s tenant. Tickets of other tenants return 404.
Authentification: Clé API : Authorization: Bearer nhk.<keyid>.<secret>, ou clé API dans X-NH-API-Key
Paramètres
Section intitulée « Paramètres »| Nom | Emplacement | Type | Obligatoire | Description |
|---|---|---|---|---|
key |
chemin | string | oui | Ticket key. |
Réponses
Section intitulée « Réponses »| Statut | Description |
|---|---|
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. |
Exemple 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" }}Exemple avec curl
Section intitulée « Exemple avec curl »curl -X GET "https://exocortex-api.ai-exo-cortex.com/api/v1/tickets/ACME-1042" \ -H "Authorization: Bearer $EXO_API_KEY"Ajouter un commentaire
Section intitulée « Ajouter un commentaire »POST /api/v1/tickets/{key}/comment
Authentification: Clé API : Authorization: Bearer nhk.<keyid>.<secret>, ou clé API dans X-NH-API-Key
Paramètres
Section intitulée « Paramètres »| Nom | Emplacement | Type | Obligatoire | Description |
|---|---|---|---|---|
key |
chemin | string | oui | Ticket key. |
Idempotency-Key |
en-tête | string | non | Unique key per logical operation (UUID recommended). A retry with the same key returns the first result. |
Corps de la requête
Section intitulée « Corps de la requête »application/json
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
comment |
string | non | Comment text. Required (alias: text). |
text |
string | non | déprécié Alias of comment. |
sender_email |
string (email) | non | |
sender_name |
string | non |
{ "comment": "Rollback of release 4.18.2 completed; error rate back to baseline.",}Réponses
Section intitulée « Réponses »| Statut | Description |
|---|---|
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. |
Exemple 200
{ "ok": true, "ticket_key": "ACME-1042", "ingestion_id": "ing_91be04d2"}Exemple avec curl
Section intitulée « Exemple avec 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]"}'Page générée à partir de la spécification OpenAPI de l’API d’intégration, version 1.1.0.