Audit
Modified on: 2025-07-29 19:00
The Audit API allows GO to push reservation audit data to GO Distributors, providing real-time updates on guest stay status, including check-ins, check-outs, and no-shows. This API ensures that distributors receive accurate and timely information about the status of each reservation. However, please note that only a limited number of hotel suppliers support the provision of audit data to GO. Before implementing the Audit API, it is recommended to check with us to confirm whether your hotel suppliers offer this functionality.
POST /reservation/audit/push HTTP/1.1 URL: {RES-Audit-Endpoint}/reservation/audit/push Authorization: 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc Accept-Encoding: gzip Content-Encoding: gzip Content-Type: application/json;charset=utf-8
Audit Request Schema
Request(METHOD: POST) | |||||
---|---|---|---|---|---|
Level | Field Name | Data Type | Required | Description | Example |
1 | header | object | Y | / | / |
2 | @distributorId | string | Y | The ID of the distributor in DerbySoft's system MaxLength: 32 | HUAWEI |
2 | @supplierId | string | Y | The ID of the hotel supplier in DerbySoft's system. Max Length: 32 | HUAZHU |
2 | @token | string | Y | / | / |
1 | hotelId | string | Y | Supplier Hotel ID | 100001 |
1 | reservationId | object | Y | / | / |
2 | @distributorResId | string | Y | Reservation ID of Distributor | C2084DFL0 |
2 | @derbyResId | string | Y | Reservation ID of DerbySoft | D15F893D34DF |
2 | @supplierResId | string | Y | Reservation ID of Hotel Supplier | 89389494,89389495 |
1 | auditId | string | Y | Audit record ID | 9f1925cc888c438d |
1 | auditDateTime | string | Y | The time when GO received the request from Hotel Suppliers | 2023-06-04T08:12:23.123Z |
1 | currency | string | Y | Currency Code【ISO-4217】 | USD |
1 | roomDetails | array[object] | Y | There would be multiple rooms | / |
2 | @roomId | string | Y | Room ID | 10000101 |
2 | @rateId | string | Y | Rate Plan ID | 123456 |
2 | @roomStatus | enum | Y | Eunm: [NO_SHOW, CHECK_IN, CHECK_OUT] | / |
2 | @hotelComments | string | N | Comments by Hotel Supplier | / |
2 | @supplierResId | string | If the supplier has split the order for multiple rooms, here it represents the sub-order number for the supplier. | 89389494 | |
2 | stayDateRange | object | N | Actual time of check-in/check-out | / |
3 | @checkInDateTime | string | Y | Guest check-in datetime | 2023-06-04T08:12:23.123Z |
3 | @checkOutDateTime | string | Y | Guest check-in datetime | 2023-06-04T08:12:23.123Z |
3 | @timeZone | string | N | Time Zone | / |
2 | roomRevenue | object | N | Room cost | / |
3 | @amountBeforeTax | number | N | Amount Before tax | / |
3 | @amountAfterTax | number | N | Amount After tax | / |
2 | otherFees | array[object] | N | / | / |
3 | @amountBeforeTax | number | N | Amount Before Tax | / |
3 | @amountAfterTax | number | N | Amount After Tax | / |
3 | @description | string | N | Description of Fees | / |
1 | total | object | N | / | / |
2 | roomRevenue | object | N | Total Order Cost | / |
2 | @amountBeforeTax | number | N | Amount Before Tax | / |
2 | @amountAfterTax | number | N | Amount After Tax | / |
2 | otherFees | array[object] | N | Other fees | / |
3 | @amountBeforeTax | number | N | Amount Before Tax | / |
3 | @amountAfterTax | number | N | Amount After Tax | / |
3 | @description | string | N | Description of Fees | / |
Audit Request Example
{ "header": { "distributorId": "xxx", "supplierId": "xxx", "token": "xxx" }, "hotelId": "hotelCode", "reservationId": { "distributorResId": "xxx", "derbyResId": "xxx", "supplierResId": "supplierResId1,supplierResId2" }, "auditId": "xx", "auditDateTime": "2023-06-04T08:12:23.123Z", "currency": "CNY", "roomDetails": [ { "roomId": "100001", "rateId": "123456", "stayDateRange": { "checkInDateTime": "2023-06-01 08:12:23", "checkOutDateTime": "2023-06-03 08:12:23", "timeZone": "" }, "roomStatus": "CHECK_IN", "roomRevenue": { "amountBeforeTax": 250, "amountAfterTax": 450 }, "otherFees": [ { "amountBeforeTax": 3, "amountAfterTax": 5, "description": "Drink" } ], "hotelComments": "Comments from hotel side", "supplierResId": "supplierResID1" } ], "total": { "roomRevenue": { "amountBeforeTax": 250, "amountAfterTax": 450 }, "otherFees": [ { "amountBeforeTax": 20, "amountAfterTax": 40, "description": "Drink Fee" }, { "amountBeforeTax": 50, "amountAfterTax": 70, "description": "Penalty" }, { "amountBeforeTax": 40, "amountAfterTax": 50, "description": "ServiceCharge" } ] } }
Audit Response Schema
Response | |||||
---|---|---|---|---|---|
Level | Field Name | Required | Data Type | Description | Example |
1 | header | object | Y | / | / |
2 | @supplierId | string | Y | The ID of the hotel supplier in DerbySoft's system. Max Length: 32 | HUAZHU |
2 | @distributorId | string | Y | The ID of the distributor in DerbySoft's system MaxLength: 32 | HUAWEI |
2 | @token | string | Y | Max Length: 64 It is recommended to use a Universally Unique Identifier (UUID) as a unique identifier for requests and responses. This will ensure that each request and response is uniquely identified and can be tracked efficiently. | 18393849028490234 |
1 | result | string | Y | / | Success |
Audit Response Example
{ "header": { "distributorId": "xxx", "supplierId": "xxx", "token": "xxx" }, "result": "Success" }
{ "errorCode": "InvalidIdentityCredential", "errorMessage": "Invalid Identity Credential" }
{ "errorCode": "InternalError", "errorMessage": "error message with details of the error" }
Did you find it helpful? Yes No
Send feedback