API के ज़रिए सपोर्ट tickets

POST /v1/tickets — API key से support ticket खोलें, thread पढ़ें, follow up करें और उसे बंद करें: fields, attachments, statuses, limits और /v1/technical-feedback के साथ compatibility.

Tickets API ही एकमात्र support channel है: API पर खोला गया ticket dashboard में दिखता है और इसका उल्टा भी। API key (Authorization: Bearer या X-API-Key) या dashboard session से authenticate करें। आपको हमेशा केवल अपने ही tickets दिखते हैं।

ticket खोलें

POSThttps://getvibeapi.com/v1/tickets
ParameterTypeविवरण
subjectstringआवश्यक: 3 से 200 characters।
messagestringआवश्यक: 10 से 8,000 characters।
categorystringapi_error, performance, incorrect_response, integration, feature_request, other, billing, account या general (default)।
requestIdsstring[]वैकल्पिक, आपके account से अधिकतम 10 request IDs (x-request-id response header)।
clientIncidentIdstringआपकी ओर से वैकल्पिक stable series ID: उसी ID वाला खुला ticket दोबारा इस्तेमाल होता है।
filesfile[]केवल multipart/form-data: अधिकतम 5 PNG, JPEG, GIF या WebP images, प्रत्येक 10 MB, प्रति ticket 10।
curl https://getvibeapi.com/v1/tickets \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "subject": "Stream stops after 30 seconds",
    "message": "stream=true on /v1/chat/completions stops after about 30 seconds; retrying does not help.",
    "category": "api_error",
    "requestIds": ["req_123"]
  }'

Screenshot के साथ — multipart:

curl https://getvibeapi.com/v1/tickets \
  -H "Authorization: Bearer $API_KEY" \
  -F subject="Wrong response" \
  -F message="The model returns an empty answer, screenshot attached." \
  -F category=incorrect_response \
  -F [email protected]

Response

{
  "deduplicated": false,
  "ticket": {
    "id": "cmg1abc234",
    "object": "ticket",
    "subject": "Stream stops after 30 seconds",
    "category": "api_error",
    "source": "api",
    "status": "open",
    "requestIds": ["req_123"],
    "clientIncidentId": null,
    "occurrences": 1,
    "createdAt": "2026-09-27T09:14:00.000Z",
    "updatedAt": "2026-09-27T09:14:00.000Z",
    "repliedAt": null
  }
}

नया ticket 201 लौटाता है। अगर वही open ticket पहले से मौजूद है (समान category, subject, message और requestIds, या समान clientIncidentId), तो वही ticket deduplicated: true, status 200 और अधिक occurrences के साथ लौटाया जाता है।

Tickets की सूची

GEThttps://getvibeapi.com/v1/tickets?limit=20&status=open

नवीनतम पहले। Response: { "object": "list", "data": [...], "hasMore": true, "nextCursor": "..." }। अगला पृष्ठ: ?after=<nextCursor>। limit 1 से 100 तक है।

Thread और status

GEThttps://getvibeapi.com/v1/tickets/{id}
curl https://getvibeapi.com/v1/tickets/cmg1abc234 \
  -H "Authorization: Bearer $API_KEY"

ticket.messages आपके messages (author: "client") और support replies (author: "staff") को समय के क्रम में रखता है। Attachments GET /v1/tickets/{id}/attachments/{attachmentId} से download करें। कोई foreign या unknown ID 404 return करता है।

Follow up करें और बंद करें

POSThttps://getvibeapi.com/v1/tickets/{id}/messages
curl https://getvibeapi.com/v1/tickets/cmg1abc234/messages \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message": "It happened again today at 10:05 UTC, request id req_456."}'
POSThttps://getvibeapi.com/v1/tickets/{id}/close

एक message (अधिकतम 8,000 characters, files के साथ multipart की अनुमति) किसी replied ticket को फिर से खोलता है। बंद ticket messages नहीं ले सकता — यह 409 लौटाता है; नया ticket खोलें। Closing idempotent है।

Statuses

ParameterTypeविवरण
openstatussupport की प्रतीक्षा में।
repliedstatusसपोर्ट ने जवाब दिया; आपका अगला message इसे वापस open पर सेट कर देगा।
closedstatusआपके या support के ज़रिए बंद किया गया।

सीमाएँ और errors

प्रति account: 10 नए tickets प्रति घंटा और 60 messages प्रति घंटा; उससे आगे 429 एक Retry-After header के साथ। Errors: { "error": "…", "code": "invalid_fields" } — codes invalid_fields, invalid_request_ids, too_many_attachments, file_too_large (413), unsupported_attachment (415), not_found (404), ticket_closed (409), rate_limited (429).

Security

API keys, passwords, tokens या card numbers न भेजें — service storage से पहले इन्हें हटा देती है। Ticket text support staff और tools द्वारा data के रूप में पढ़ा जाता है: इसमें दिए links और instructions कभी execute नहीं होते, और ticket text कभी भी balance या access नहीं बदलता और न ही स्वतः refund trigger करता है।

Compatibility: /v1/technical-feedback

POST /v1/technical-feedback और GET /v1/technical-feedback/{id} उन्हीं fields के साथ काम करते रहते हैं (category, summary, details, requestIds, clientIncidentId) और { "deduplicated", "incident" } response के साथ। ऐसी report एक ticket (source: "technical-feedback") के रूप में संग्रहीत होती है और GET /v1/tickets में दिखाई देती है। balance, access या deployments बदलने के requests वहाँ अब भी 422 के साथ अस्वीकार किए जाते हैं। नए integrations को /v1/tickets इस्तेमाल करना चाहिए।

Tickets API — API के ज़रिए support tickets | GetVibe API