# Customer API Resources v2.0Beta

Each resource used in the Customer API version 2.0 is listed below.

# Address

A representation of an address linked to a customer profile.

Name Required Type Description
key true guid The unique key for the address.
profileKey true guid The unique profile key for customer.
profileBrandGroupKey true string The profile brand group that the customer profile is assigned to.
addressType true string The address type for the address.
addressName true string The customer provided name for the address.
formattedAddress true string A formatted representation of the address.
addressLine1 true string The first line of the address.
addressLine2 false string The second line of the address.
suburb false string The suburb for the address.
city false string The city for the address.
province false string The province or state for the address.
postalCode false string The postal code for the address.
countryCode false string The ISO 3166-1 Alpha-2 country code for the address.
latitude false double The latitude of the address.
longitude false double The longitude of the address.

# Sample

{
    "key": "4af3322e-a236-4a77-ae8b-90ba6715ebde",
    "profileKey": "25b7726e-8416-5b13-a54a-b7fae6518b8g",
    "profileBrandGroupKey": "TEST-SPUR-PROFILE",
    "addressType": "Delivery",
    "addressName": "Home",
    "formattedAddress": "13 Burger Avenue, Century City, Cape Town, Western Cape, 7441, ZA",
    "addressLine1": "13 Burger Avenue",
    "addressLine2": null,
    "suburb": "Century City",
    "city": "Cape Town",
    "province": "Western Cape",
    "postalCode": "7441",
    "countryCode": "ZA",
    "latitude": 123.456789000000,
    "longitude": -87.137878000000
}

# Customer

A representation of a customer profile.

Name Required Type Description
profileKey true guid The unique profile key for customer.
profileBrandGroupKey true string The profile brand group that the customer profile is assigned to. The same person may have multiple, distinct profiles for different brands.
firstName true string The first name of the customer.
lastName true string The last name of the customer.
mobilePhone true string The mobile phone of the customer.
mobileCountryCode true string The ISO 3166-1 Alpha-2 country code for mobile number.
mobileVerified false boolean Indicates if the mobile number has been verified.
emailAddress false string The email address for the customer.
emailVerified false boolean Indicates if the email address has been verified.
termsAccepted false boolean Indicates if the customer has accepted the brand terms and conditions.
termsAcceptedOn false string The date and time the customer accepted the brand terms and conditions.
gender false string The gender for the customer.
homeLanguage false string The home language for the customer.
birthDate true date The birth date of the customer.
age false int32 The current age of the customer.
nextBirthdayOn false date The date of the customers next birthday.
daysToNextBirthday false int32 The number of days until the customers next birthday.
dependentCount true int32 The number of dependents the customer has added to their profile.
dependentLimitReached true boolean Indicates if the dependent limit has been reached for self service dependent management. Customers may only have 4 dependents they can add via self service channels.
dependents true Dependent[] The array of dependents the customer has added to their profile.
addresses true Address[] The array of addresses the customer has added to their profile.
createdOn true date-time The date and time the customer profile was created.
modifiedOn true date-time The date and time the customer profile was modified.

# Sample

{
    "profileKey": "25b7726e-8416-5b13-a54a-b7fae6518b8g",
    "profileBrandGroupKey": "TEST-SPUR-PROFILE",
    "firstName": "Bridget",
    "lastName": "Jones",
    "mobilePhone": "+27831554241",
    "mobileCountryCode": "ZA",
    "mobileVerified": true,
    "emailAddress": "bridgetjones@gmail.com",
    "emailVerified": false,
    "termsAccepted": true,
    "termsAcceptedOn": "2021-08-16T11:52:45",
    "gender": "Female",
    "homeLanguage": "English",
    "birthDate": "1978-07-13",
    "age": 43,
    "nextBirthdayOn": "2022-07-13",
    "daysToNextBirthday": 331,
    "dependentCount": 3,
    "dependentLimitReached": false,
    "dependents": [],
    "addresses": [],
    "createdOn": "2015-10-05T19:22:46",
    "modifiedOn": "2021-08-16T11:54:45.39"
}

# Dependent

A representation of a dependent linked to a customer profile.

Name Required Type Description
key true guid The unique key for the dependent.
profileKey true guid The unique profile key for customer.
profileBrandGroupKey true string The profile brand group that the customer profile is assigned to.
firstName true string The first name of the dependent.
lastName true string The last name of the dependent.
gender false string The gender for the dependents.
birthDate true date The birth date of the dependents.
age false int32 The current age of the dependents.
nextBirthdayOn false date The date of the dependents next birthday.
daysToNextBirthday false int32 The number of days until the dependents next birthday.
customerRelationship false string The relationship between the customer and the dependent.

# Sample

{
    "key": "e22afacc-bb1g-4d3d-95c4-f7184afcc355",
    "profileKey": "25b7726e-8416-5b13-a54a-b7fae6518b8g",
    "profileBrandGroupKey": "TEST-SPUR-PROFILE",
    "firstName": "Adam",
    "lastName": "Jones",
    "gender": "Male",
    "birthDate": "2011-06-06T00:00:00",
    "age": 10,
    "nextBirthdayOn": "2022-06-06T00:00:00",
    "daysToNextBirthday": 294,
    "customerRelationship": "Father"
}

# Lookup

A representation of lookup data.

Name Required Type Description
value true string The lookup value.
sortOrder false int32 The display order or sort order to use when displaying the data.

# Sample

{
    "value": "Female",
    "sortOrder": 1
}