Aller au contenu

Obtenir le détail d'un profil client (RGPD — résidence + contacts inclus)

GET
/v1/guests/{id}
curl --request GET \
--url https://example.com/v1/guests/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'X-API-Key: <X-API-Key>'
id
required
string format: uuid

Identifiant du profil client

Détail du profil (identité complète, fidélité, résidence, contacts, facturation, préférences, santé, tags)

Media type application/json
object
data
required
object
id
string format: uuid
firstName
string
nullable
lastName
string
nullable
birthDate
string format: date
nullable
birthCity

Ville de naissance (fichier voyageurs R611-42)

string
nullable
birthCountryCode

Pays de naissance ISO alpha-2

string
nullable
nationality
string
nullable
vipStatus
string
Allowed values: none silver gold platinum
preferredLanguage
string
nullable
customerType
string
isAnonymized
boolean
loyalty

Fidélité interne + externe + carte ACSI camping

object
memberId
string
nullable
externalProgram

Ex. accor_all

string
nullable
externalId
string
nullable
acsiCard

Numéro carte ACSI (camping)

string
nullable
createdAt

Date de création du profil

string format: date-time
nullable
residence

Adresse de résidence (null si non renseignée ou profil anonymisé — RGPD art.17)

object
line1
required
string
city
required
string
postalCode
required
string
countryCode
required

ISO 3166-1 alpha-2

string
emails

Emails du profil (liste vide si profil anonymisé — RGPD art.17)

Array<object>
object
address
required
string format: email
isPrimary
required
boolean
phones

Téléphones du profil en format E.164 (liste vide si profil anonymisé — RGPD art.17)

Array<object>
object
number
required

Format E.164 (ex. +33612345678)

string
isPrimary
required
boolean
preferences

Préférences CRM (liste vide si profil anonymisé — RGPD art.17). ADR-00D99 GP-Pref 1.

Array<object>
object
preferenceKeyId
required
string format: uuid
category
required
string
Allowed values: stay accessibility arrival camping
code
required
string
label
required
string
displayValue
required

Valeur sérialisée en string pour l’affichage

string
dietary

Projection minimisée de santé (ADR-00D99 GP-Health 1). false si profil anonymisé (RGPD art.17). Le détail est sur GET /v1/guests/:id/dietary (RBAC guest.dietary).

object
hasRestrictions
required

True si le profil a au moins une restriction alimentaire enregistrée

boolean
tags

Tags/segments client (ADR-00D99 GP-Tags 1). Les tags de kind=risk sont inclus UNIQUEMENT si l’appelant a guest.tag.risk. Liste vide si profil anonymisé (RGPD art.17).

Array<object>
object
tagId
required
string format: uuid
code
required
string
label
required
string
kind
required
string
Allowed values: operational marketing loyalty group risk
colorHex

Couleur #RRGGBB (null si non définie)

string
nullable
Example
{
"data": {
"vipStatus": "none",
"preferences": [
{
"category": "stay"
}
],
"tags": [
{
"kind": "operational"
}
]
}
}

Profil introuvable

Media type application/json
object
code
required

Code machine de l’erreur

string
message
required

Message lisible

string
origin

Origine domaine de l’erreur (optionnel)

object
boundedContext
string
module
string
status
required
integer
traceId
required

Identifiant de corrélation pour le support

string
Example
{
"code": "RESERVATION_NOT_FOUND",
"message": "Réservation introuvable",
"status": 404
}