Getting Customer Details

Method Description

Invoked with a POST request. Operation name is set up via Maestra framework. Details of method invocation can be found here.

POST https://api.maestra.io/v3/operations/{synch/asynch operation}?endpointId={unique ID of site/mobile app/etc.}&operation={operation name}&deviceUUID={unique device ID}


Accept: application/xml
Content-Type: application/xml
Authorization: SecretKey {Secret Key, check with the manager if it's mandatory}

<operation>
  <customer>
    <ids>
      <webSiteUserId>{customer ID}</webSiteUserId>
    </ids>
  </customer>
</operation>
  • Response contains non-empty customer fields only

Sample Operation

POST https://api.maestra.io/v3/operations/sync?endpointId=Maestra&operation=getCustomer

Accept: application/xml
Content-Type: application/xml
Authorization: SecretKey 2a4wVO


<operation>
  <customer>
    <ids>
      <webSiteUserId>5384275</webSiteUserId>
    </ids>
  </customer>
</operation>

Response

<result>
  <status>Success</status>
  <customer>
    <processingStatus>Found</processingStatus>
    <ids>
      <customerId>{Maestra id}</customerId>
      <myWebSiteId>{website customer ID}</myWebSiteId>
    </ids>
    <sex>{gender, male/female}</sex>
    <email>{customer email}</email>
    <isEmailInvalid>{is customer email invalid, true/false}</isEmailInvalid>
    <isEmailConfirmed>{is customer email confirmed, true/false}</isEmailConfirmed>
    <pendingEmail>{email pending confirmation after update}</pendingEmail>
    <mobilePhone>{mobile phone}</mobilePhone>
    <isMobilePhoneInvalid>{is mobile phone invalid, true/false}</isMobilePhoneInvalid>
    <isMobilePhoneConfirmed>{is mobile phone confirmed, true/false}</isMobilePhoneConfirmed>
    <pendingMobilePhone>{mobile phone pending confirmation after update}</pendingMobilePhone>
    <lastName>{сustomer last name}</lastName>
    <firstName>{сustomer first name}</firstName>
    <birthDate>{date of birth as YYYY-MM-DD}</birthDate>
    <subscriptions>
      <subscription>
        <pointOfContact>{communication channel, email/SMS/etc}</pointOfContact>
        <topic>{emailing topic}</topic>
        <isSubscribed>{subscription status, true/false}</isSubscribed>        
      </subscription>
    </subscriptions>
    <customFields>
      <custom field>{custom field value}</custom field>
    </customFields>
    <changeDateTimeUtc>{sign-up/update date as YYYY-MM-DD hh:mm:ss.fff}</changeDateTimeUtc>
  </customer>
</result>
<result>
  <status>Success</status>
  <customer>
    <processingStatus>NotFound</processingStatus>
  </customer>
</result>