Update User Profile
const url = 'https://api.wink.travel/api/profile';const options = { method: 'PUT', headers: { 'Wink-Version': '2.0', Authorization: 'Bearer <token>', 'Content-Type': 'application/json' }, body: 'null'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://api.wink.travel/api/profile \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Wink-Version: 2.0' \ --data nullUpdates the authenticated user’s profile with the provided information. Persists personal details, preferences, and sharing settings. Returns the updated profile.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”User profile data to update
Request payload for creating or updating the authenticated user’s profile
object
Detailed customer information for this profile
object
Primary address line
Example
123 Petchburi RoadSecondary address line
Example
Ratchathewi DistrictDate of birth in ISO 8601 format
Example
1985-06-15Number of children
Example
2Country of citizenship
Example
ThailandCity name
Example
BangkokArray of emergency contact information for the customer
object
Contact first name
Example
AlexandraFirst and last name
Example
Alexandra BeaumontContact last name
Example
BeaumontContact phone number
Example
+12125551212Example
{ "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phoneNumber": "+12125551212",}Country code (ISO 3166-1 alpha-2)
Example
THIdentifies the gender of the customer.
Example
FEMALEPrimary language (ISO 639-1 code)
Example
enMarital status of the traveler
Example
MARRIEDArray of customer’s pets
object
Pet name
Example
LunaPet type
Example
Golden RetrieverExample
{ "name": "Luna", "type": "Golden Retriever"}Postal code
Example
10400Preferred currency for monetary values (ISO 4217 code)
Example
USDState or province
Example
BangkokExample
{ "address1": "123 Petchburi Road", "address2": "Ratchathewi District", "birthDate": "1985-06-15", "childQuantity": 2, "citizenship": "Thailand", "city": "Bangkok", "contactPerson": [ { "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phoneNumber": "+12125551212", } ], "country": "TH", "gender": "FEMALE", "language": "en", "maritalStatus": "MARRIED", "petInfo": [ { "name": "Luna", "type": "Golden Retriever" } ], "postalCode": "10400", "preferredCurrency": "USD", "state": "Bangkok"}Customer preferences
object
Known allergies
Preferred hotel bed type
Example
King bedBeverage preferences
Preferred business services
Cuisine preference
Example
ThaiFood preferences
Preferred food service facilities
Example
In-room diningGuest type classification
Example
Business travelerPreferred hotel chain name
Example
Mandarin OrientalInterest preferences
Meal preference
Example
Continental breakfastPet-friendly preferences
Preferred accessibility features
Example
Wheelchair accessible roomsPreferred hotel property amenities
Preferred hotel property locations
Example
BeachfrontPreferred hotel property types
Example
Luxury ResortPreferred recreation services
Preferred hotel room amenities
Preferred hotel room locations
Example
High floor with city viewPreferred security features
Preference for smoking allowed rooms
Example
falseExample
{ "bedTypePref": "King bed", "cuisinePref": "Thai", "foodSrvcPref": "In-room dining", "guestType": "Business traveler", "hotelChainPref": "Mandarin Oriental", "mealPref": "Continental breakfast", "physChalFeaturePref": "Wheelchair accessible rooms", "propertyLocationPref": "Beachfront", "propertyTypePref": "Luxury Resort", "roomLocationPref": "High floor with city view", "smokingAllowed": false}Whether the user wants to share this profile with hotels
Example
trueUser details
object
User first name
Example
AlexandraFull name
Example
Alexandra BeaumontUser last name
Example
BeaumontUser phone number
Example
+66212658866Profile picture URL
Example
https://res.cloudinary.com/wink/image/upload/v1/user/alexandra-beaumont.jpgExample
{ "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phone": "+66212658866", "profilePictureUrl": "https://res.cloudinary.com/wink/image/upload/v1/user/alexandra-beaumont.jpg"}Example
{ "personal": { "address1": "123 Petchburi Road", "address2": "Ratchathewi District", "birthDate": "1985-06-15", "childQuantity": 2, "citizenship": "Thailand", "city": "Bangkok", "contactPerson": [ { "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phoneNumber": "+12125551212", } ], "country": "TH", "gender": "FEMALE", "language": "en", "maritalStatus": "MARRIED", "petInfo": [ { "name": "Luna", "type": "Golden Retriever" } ], "postalCode": "10400", "preferredCurrency": "USD", "state": "Bangkok" }, "preferences": { "bedTypePref": "King bed", "cuisinePref": "Thai", "foodSrvcPref": "In-room dining", "guestType": "Business traveler", "hotelChainPref": "Mandarin Oriental", "mealPref": "Continental breakfast", "physChalFeaturePref": "Wheelchair accessible rooms", "propertyLocationPref": "Beachfront", "propertyTypePref": "Luxury Resort", "roomLocationPref": "High floor with city view", "smokingAllowed": false }, "share": true, "user": { "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phone": "+66212658866", "profilePictureUrl": "https://res.cloudinary.com/wink/image/upload/v1/user/alexandra-beaumont.jpg" }}Responses
Section titled “Responses”Profile updated successfully
object
Datetime this record was first created
Unique identifier for this record.
Datetime this record was last updated
Detailed customer information for this profile
object
Primary address line
Secondary address line
Date of birth in ISO 8601 format
Number of children
Country of citizenship
City name
Array of emergency contact information for the customer
object
Contact E-mail
Contact first name
First and last name
Contact last name
Contact phone number
Contact secondary Email
Summary
Country code (ISO 3166-1 alpha-2)
Identifies the gender of the customer.
Primary language (ISO 639-1 code)
Marital status of the traveler
Array of customer’s pets
object
Pet name
Pet type
Postal code
Preferred currency for monetary values (ISO 4217 code)
State or province
Customer preferences
object
Known allergies
Preferred hotel bed type
Beverage preferences
Preferred business services
Cuisine preference
Food preferences
Preferred food service facilities
Guest type classification
Preferred hotel chain name
Interest preferences
Meal preference
Pet-friendly preferences
Preferred accessibility features
Preferred hotel property amenities
Preferred hotel property locations
Preferred hotel property types
Preferred recreation services
Preferred hotel room amenities
Preferred hotel room locations
Preferred security features
Preference for smoking allowed rooms
Profile identifier
Indicates whether the user wants to share this profile of themselves with hotel(s)
User details
object
User email address
User first name
Full name
User last name
User phone number
Profile picture URL
User identifier
Optimistic-locking version. Echo this value back as an If-Match request header on a conditional update; the server responds 409 if the record changed in the meantime. Null when this projection has no backing versioned document, in which case no conditional update is possible.
Example
{ "createdDate": "2026-01-14T09:30:00", "id": "b7e4c1a2-3f5d-4e8a-9c21-6f0b5d8e3a47", "lastUpdate": "2026-02-03T16:45:12", "personal": { "address1": "123 Petchburi Road", "address2": "Ratchathewi District", "birthDate": "1985-06-15", "childQuantity": 2, "citizenship": "Thailand", "city": "Bangkok", "contactPerson": [ { "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phoneNumber": "+12125551212", } ], "country": "TH", "gender": "FEMALE", "language": "en", "maritalStatus": "MARRIED", "petInfo": [ { "name": "Luna", "type": "Golden Retriever" } ], "postalCode": "10400", "preferredCurrency": "USD", "state": "Bangkok" }, "preferences": { "bedTypePref": "King bed", "cuisinePref": "Thai", "foodSrvcPref": "In-room dining", "guestType": "Business traveler", "hotelChainPref": "Mandarin Oriental", "mealPref": "Continental breakfast", "physChalFeaturePref": "Wheelchair accessible rooms", "propertyLocationPref": "Beachfront", "propertyTypePref": "Luxury Resort", "roomLocationPref": "High floor with city view", "smokingAllowed": false }, "profileIdentifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51", "share": true, "user": { "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phone": "+66212658866", "profilePictureUrl": "https://res.cloudinary.com/wink/image/upload/v1/user/alexandra-beaumont.jpg" }, "userIdentifier": "c3a9f2e1-8b4d-4c7a-a1e2-5f0b6d9e2c84", "version": 3}Bad Request — missing or invalid request parameter or body
object
object
Example
Unauthorized — authentication is required or the session has expired
object
object
Example
Forbidden — authenticated but lacking the required permission or scope
object
object
Example
Not Found — the requested resource does not exist
object
object
Example
Method Not Allowed — the HTTP verb is not supported on this endpoint
object
object
Example
Conflict — the resource was modified by someone else since you read it; re-read it and retry with the new version
object
object
Example
Unsupported Media Type — use application/json
object
object
Example
Internal Server Error — an unexpected failure occurred on the server
object
object
Example
Service Unavailable — a downstream dependency is unreachable
