Update Customer Account
Update Customer in our Booking Platform when any of their details change.
Headers
X-API-KEY
must be provided when making the request to update a Customer.
Request
POST https://book.imin.co/api/v2/customer-accounts/:customerIdentifier/actions
This request must be made Server-side. Otherwise, it would be possible to view the secret API key with a browser.
Body (example):
{
"@context": "https://openactive.io/",
"@type": "CustomerUpdateAction",
"object": { // Includes all properties that are attempted to be updated
"@type": "Person",
"email": "[email protected]",
"telephone": "020 811 8055",
"givenName": "Geoff",
"familyName": "Capes",
"birthDate": "1970-01-01",
"gender": "https://schema.org/Female",
"address": {
"@type": "PostalAddress",
"streetAddress": "Raynes Park High School, 46A West Barnes Lane",
"addressLocality": "New Malden",
"addressRegion": "London",
"postalCode": "NW5 3DU",
"addressCountry": "GB"
},
"emergencyContact": {
"@type": "Person",
"name": "Ralph Capes",
"telephone": "020 811 8055"
}
},
"seller": [
"https://id.bookingsystem.example.com/organizers/1"
]
}
All fields are optional for this request, but at least one is needed.
seller
List of Seller IDs. If this is included, then the updates (e.g. new givenName
) won't only update the imin system, but imin will also send the updates to each of the Sellers specified.
This list should only include IDs of Sellers that this Customer has a connected Linked Account with.
Response
A successful HTTP 200 response contains:
The Customer (with newly updated values)
Any errors which may occurred in updating details in connected Linked Accounts (
error
).
{
"@context": "https://openactive.io/",
"@type": "CustomerUpdateAction",
"actionStatus": "https://schema.org/CompletedActionStatus"
"object": { // Contains only the properties that were successfully updated
"@type": "Person",
"email": "[email protected]",
"telephone": "020 811 8055",
"givenName": "Geoff",
"familyName": "Capes",
"birthDate": "1970-01-01",
"gender": "https://schema.org/Female",
"address": {
"@type": "PostalAddress",
"streetAddress": "Raynes Park High School, 46A West Barnes Lane",
"addressLocality": "New Malden",
"addressRegion": "London",
"postalCode": "NW5 3DU",
"addressCountry": "GB"
},
"emergencyContact": {
"@type": "Person",
"name": "Ralph Capes",
"telephone": "020 811 8055"
}
},
"seller": [
"https://id.bookingsystem.example.com/organizers/1"
],
// 👇 This part only included when `seller` was included and
// there were errors updating Linked Accounts.
"error": [
{
"@type": "NotSupportedError",
"instance": "https://schema.org/email",
"description": "Updating email address outside of the booking system is not supported",
"seller": { ... }
},
{
"@type": "PropertyInvalidError",
"instance": "https://schema.org/telephone",
"description": "The phone number supplied was not valid",
"seller": { ... }
},
{
"@type": "AccessDeniedError",
"instance": "https://schema.org/birthDate",
"description": "Permission was not granted to update the date of birth",
"seller": { ... }
}
]
]
Last updated