Guest Profile Service
Overview
The Guest Profile Service is used to push guest identity and contact profile data from PMS to external systems. This helps keep guest master data synchronized across connected platforms.
Request Specification
API Specification
- HTTP Method:
POST - Secure URL Path:
{{external_base_url}}/api/guest-profile
Request Headers
x-api-key:{{api_key}}Authorization token assigned to the connecting system. The API key is provided by GuestPro.Content-Type:application/jsonExplicitly defines the payload structure.
Payload Construction and Schema Definition
Primary Request Body
The root object contains guest profile information.
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
id | string | Yes | Guest profile ID. | bc0479c0-f6bf-11f0-974b-9fa33e3f5d61 |
address | string | No | Guest address. | Jl. Wisma Udayana |
phone | string | Yes | Guest phone number. | +6281 |
email | string | Yes | Guest email address. | am**@g***l.com |
countrycode | string | Yes | Country name or country code as configured in PMS. | Australia |
first_name | string | Yes | Guest first name. | Manda |
last_name | string | Yes | Guest last name. | Gagoda |
city | string | No | Guest city. | Sydney |
zipcode | string | No | Guest zip/postal code. | 80511 |
Expected System Responses
Successful Execution
The external system must respond with an HTTP 200 OK or 201 Created.
{
"status": "success",
"message": "Guest profile bc0479c0-f6bf-11f0-974b-9fa33e3f5d61 has been successfully ingested."
}
Failure Execution
When the external system provides a response other than success codes (200, 201), the external system delivers the following error response structure.
{
"status": "error",
"message": "<<error_detail>>"
}
Full Request Body
{
"id": "bc0479c0-f6bf-11f0-974b-9fa33e3f5d61",
"address": "Jl. Wisma Udayana",
"phone": "+6281",
"email": "am**@g***l.com",
"countrycode": "Australia",
"first_name": "Manda",
"last_name": "Gagoda",
"city": "Sydney",
"zipcode": "80511"
}