API 経由のサポートチケット
POST /v1/tickets — API キーでサポートチケットを開き、スレッドを読み、フォローアップし、クローズします: フィールド、添付ファイル、ステータス、制限、/v1/technical-feedback との互換性。
Tickets API は唯一のサポートチャネルです。API で開いたチケットはダッシュボードにも表示され、その逆も同様です。API キー(Authorization: Bearer または X-API-Key)またはダッシュボードセッションで認証します。表示できるのは自分のチケットのみです。
チケットを開く
| パラメーター | タイプ | 説明 |
|---|---|---|
subject | string | 必須: 3〜200 文字。 |
message | string | 必須: 10〜8,000 文字。 |
category | string | api_error、performance、incorrect_response、integration、feature_request、other、billing、account、または general(デフォルト)。 |
requestIds | string[] | 省略可能。お客様のアカウントのリクエスト ID を最大 10 件まで指定できます (x-request-id レスポンスヘッダー)。 |
clientIncidentId | string | お客様側で任意に指定できる安定したシリーズ ID: 同じ ID の未クローズチケットは再利用されます。 |
files | file[] | multipart/form-data のみ: PNG、JPEG、GIF、WebP を最大 5 枚、各 10 MB、チケットあたり 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"]
}'スクリーンショットを使う場合 — 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]レスポンス
{
"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
}
}新しいチケットは 201 を返します。同じ開いているチケットがすでに存在する場合(同じカテゴリ、件名、メッセージ、requestIds、または同じ clientIncidentId)、そのチケットが deduplicated: true、ステータス 200、およびより高い occurrences とともに返されます。
チケット一覧
新しい順。レスポンス: { "object": "list", "data": [...], "hasMore": true, "nextCursor": "..." }。次のページ: ?after=<nextCursor>。limitは1〜100です。
スレッドとステータス
curl https://getvibeapi.com/v1/tickets/cmg1abc234 \
-H "Authorization: Bearer $API_KEY"ticket.messages はあなたのメッセージ(author: "client")とサポートの返信(author: "staff")を時系列で保持します。添付ファイルは GET /v1/tickets/{id}/attachments/{attachmentId} でダウンロードできます。他者の ID や不明な ID は 404 を返します。
フォローアップしてクローズ
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."}'メッセージ(最大 8,000 文字、files を使用した multipart が可能)は、返信済みのチケットを再オープンします。クローズされたチケットはメッセージを受け付けません — 409 を返します。新しいチケットを開いてください。クローズは冪等です。
ステータス
| パラメーター | タイプ | 説明 |
|---|---|---|
open | status | サポートを待っています。 |
replied | status | サポートが返信しました。次にメッセージを送るとステータスが open に戻ります。 |
closed | status | あなたまたはサポートによってクローズされました。 |
制限とエラー
アカウントごと: 1 時間あたり新規チケット 10 件、1 時間あたりメッセージ 60 件。それを超えると 429 を Retry-After ヘッダーとともに返します。エラー: { "error": "…", "code": "invalid_fields" } — コードは invalid_fields、invalid_request_ids、too_many_attachments、file_too_large (413)、unsupported_attachment (415)、not_found (404)、ticket_closed (409)、rate_limited (429)。
セキュリティ
Compatibility: /v1/technical-feedback
POST /v1/technical-feedback と GET /v1/technical-feedback/{id} は同じフィールド(category、summary、details、requestIds、clientIncidentId)と { "deduplicated", "incident" } レスポンスで引き続き動作します。そのようなレポートはチケット(source: "technical-feedback")として保存され、 GET /v1/tickets に表示されます。残高、アクセス、デプロイメントの変更を求めるリクエストは、そこでも 422 で拒否されます。新しい統合では /v1/tickets を使用してください。