POST /reservations/{reservationId}/cancel
Summary: 予約を取消す
予約者本人または管理者が、開始前の確定予約を版つきで取消します。取消と取消履歴は同じtransactionで確定します。
Headers
なし
Path Parameters
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
reservationId |
string |
yes | 予約を一意に識別するIDです。 | minLength=1, maxLength=36 |
Query Parameters
なし
Data
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
version |
integer |
yes | 取消前に取得した予約の版です。 | minimum=1.0 |
Responses
| Status | 説明 | Media type | Body |
|---|---|---|---|
200 |
Successful Response | application/json |
8 field(s) |
401 |
認証情報が未指定、期限切れ、または検証できない場合。 | application/json |
13 field(s) |
403 |
呼び出し元が予約者本人でも管理者でもない場合。 | application/json |
13 field(s) |
404 |
指定された予約が存在しない場合。 | application/json |
13 field(s) |
409 |
予約の版が古い、取消済み、または開始済みの場合。 | application/json |
13 field(s) |
422 |
pathまたはbodyがOpenAPIスキーマの型や制約に一致しない場合。 | application/json |
13 field(s) |
429 |
呼び出し頻度が許可された上限を超えた場合。 | application/json |
13 field(s) |
500 |
SlotKeeper内部で想定外のエラーが発生した場合。 | application/json |
13 field(s) |
503 |
DBの競合や接続障害が再試行上限を超えた場合。 | application/json |
13 field(s) |
200 Successful Response
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
reservationId |
string |
yes | 予約を一意に識別するIDです。 | minLength=1, maxLength=36 |
resourceId |
string |
yes | 予約対象の資源を一意に識別するIDです。 | minLength=1, maxLength=36 |
ownerPrincipalId |
string |
yes | 予約者を表す認証主体IDです。 | minLength=1, maxLength=200 |
startAt |
string |
yes | 予約開始日時です。 | - |
endAt |
string |
yes | 予約終了日時です。この時刻を含みません。 | - |
purpose |
string |
yes | 予約目的です。本人と管理者だけに返します。 | minLength=1, maxLength=200 |
status |
string(confirmed, cancelled) |
yes | 予約の状態を表す列挙値です。 | confirmed=確定済みで重複判定の対象になる予約です。 cancelled=取消済みで重複判定から除く予約です。 |
version |
integer |
yes | 予約取消の楽観ロックに使う版です。 | minimum=1.0 |
401 認証情報が未指定、期限切れ、または検証できない場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
403 呼び出し元が予約者本人でも管理者でもない場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
404 指定された予約が存在しない場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
409 予約の版が古い、取消済み、または開始済みの場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
422 pathまたはbodyがOpenAPIスキーマの型や制約に一致しない場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
429 呼び出し頻度が許可された上限を超えた場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
500 SlotKeeper内部で想定外のエラーが発生した場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
503 DBの競合や接続障害が再試行上限を超えた場合。
Media type: application/json
| 項目 | 型 | 必須 | 説明 | 制約 |
|---|---|---|---|---|
error |
ErrorBody |
yes | エラーコード、メッセージ、追跡IDを含む共通エラー本文です。 | - |
error.code |
string |
yes | エラー種別を機械的に判定するためのコードです。 | minLength=1, maxLength=100 |
error.message |
string |
yes | 利用者が次に確認・修正・再試行・問い合わせすべき内容を示すメッセージです。 | maxLength=1000 |
error.details |
array<ErrorDetail> |
no | リトライ可否、問い合わせ時に伝える追跡ID、確認対象リソースなどの詳細一覧です。 | - |
error.details[].field |
string | null |
no | 入力検証エラーが発生したリクエスト項目です。 | minLength=1, maxLength=256 |
error.details[].reason |
string | null |
no | 入力検証エラー、再試行判断、または問い合わせ時に確認する具体的な理由です。 | minLength=1 |
error.details[].statusCode |
integer | null |
no | 返却されたHTTPステータスコードです。 | minimum=400.0, maximum=599.0 |
error.details[].retryable |
boolean | null |
no | 同じリクエストを再実行して解消する可能性があるかどうかです。 | - |
error.details[].reference |
string | null |
no | 問い合わせ時に伝える追跡IDまたは相関IDです。 | minLength=1, maxLength=128 |
error.details[].resource |
ErrorResource | null |
no | 再送、状態確認、問い合わせ時に確認する対象リソースです。 | - |
error.details[].resource.reservationId |
string | null |
no | 取消対象予約の存在確認、再取得、問い合わせに使用する予約IDです。 | minLength=1, maxLength=36 |
error.details[].resource.version |
integer | null |
no | 取消要求で指定した予約の版です。 | minimum=1 |
error.traceId |
string |
yes | 障害調査でログとレスポンスを対応付ける追跡IDです。 | minLength=1, maxLength=128 |
Samples
HTTP 200
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"resourceId": "00000000-0000-0000-0000-000000000001",
"ownerPrincipalId": "alice",
"startAt": "2026-09-26T01:00:00Z",
"endAt": "2026-09-26T02:00:00Z",
"purpose": "定例会議",
"status": "cancelled",
"version": 2
}
HTTP 401
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "UNAUTHORIZED",
"message": "認証情報を確認し、有効な認証情報で再送してください。",
"details": [
{
"reason": "認証情報が未指定、期限切れ、または検証できない場合。",
"statusCode": 401,
"retryable": false,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}
HTTP 403
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "FORBIDDEN",
"message": "操作権限を確認し、必要な権限を持つ利用者で再送してください。",
"details": [
{
"reason": "呼び出し元が予約者本人でも管理者でもない場合。",
"statusCode": 403,
"retryable": false,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}
HTTP 404
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "NOT_FOUND",
"message": "指定したリソースIDが正しいか確認してから再送してください。",
"details": [
{
"reason": "指定された予約が存在しない場合。",
"statusCode": 404,
"retryable": false,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}
HTTP 409
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "CONFLICT",
"message": "リソースの最新状態またはIdempotency-Keyを確認してから再送してください。理由: 予約の版が古い、取消済み、または開始済みの場合。",
"details": [
{
"reason": "予約の版が古い、取消済み、または開始済みの場合。",
"statusCode": 409,
"retryable": false,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}
HTTP 422
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "VALIDATION_ERROR",
"message": "リクエストの型、必須項目、制約をOpenAPI仕様に合わせて修正してください。",
"details": [
{
"reason": "pathまたはbodyがOpenAPIスキーマの型や制約に一致しない場合。",
"statusCode": 422,
"retryable": false,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}
HTTP 429
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "TOO_MANY_REQUESTS",
"message": "呼び出し頻度を下げ、時間をおいてから再送してください。",
"details": [
{
"reason": "呼び出し頻度が許可された上限を超えた場合。",
"statusCode": 429,
"retryable": true,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}
HTTP 500
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "INTERNAL_SERVER_ERROR",
"message": "想定外のエラーが発生しました。追跡IDを添えて問い合わせてください。",
"details": [
{
"reason": "SlotKeeper内部で想定外のエラーが発生した場合。",
"statusCode": 500,
"retryable": false,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}
HTTP 503
Request
{
"path": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001"
},
"headers": {
"Authorization": "Bearer <access-token>"
},
"body": {
"version": 1
}
}
Response
{
"error": {
"code": "SERVICE_UNAVAILABLE",
"message": "一時的に処理できません。時間をおいて同じリクエストを再送してください。",
"details": [
{
"reason": "DBの競合や接続障害が再試行上限を超えた場合。",
"statusCode": 503,
"retryable": true,
"reference": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S",
"resource": {
"reservationId": "5d2c7f3e-0000-0000-0000-000000000001",
"version": 1
}
}
],
"traceId": "trc_01HZY6WJ7X4W9A0V7P9N2Q3R4S"
}
}