xml

Method Description

Invoked with a POST request. Operation name and input fields can be 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 it it’s mandatory}

<operation>
  <customer>
    <authenticationTicket>{secret ticket}</authenticationTicket>
    <ids>
      <webSiteUserId>{customer ID}</webSiteUserId>
    </ids>
    <email>{customer email}</email>
    <mobilePhone>{mobile phone}</mobilePhone>
    <lastName>{customer last name}</lastName>
    <firstName>{customer first name}</firstName>
    <birthDate>{date of birth as YYYY-MM-DD}</birthDate>
    <password>{password}</password>
    <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>
  </customer>
</operation>

Secret ticket is required, if the service is invoked from the client side directly without a secret key. You can create it yourself, using the algorithm outlined here
Also, you may need it when the customer didn't pass authenticaion but instead navigated by a secret link from an email. In this case, the ticket comes from the link.

Sample Operations

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

Accept: application/xml
Content-Type: application/xml
Authorization: SecretKey X9mxK5N

<operation>
  <customer>
    <ids>
      <bitrixId>346257</bitrixId>
    </ids>
    <email>[email protected]<</email>
    <mobilePhone>5552368</mobilePhone>
    <lastName>Smith</lastName>
    <firstName>John</firstName>
    <password>Qwerty</password>
    <customFields>
      <city>Austin</city>
      <b2b>true</b2b>
    </customFields>
    <subscriptions>
      <subscription>
        <pointOfContact>Sms</pointOfContact>
        <topic>Recommendation</topic>
        <isSubscribed>false</isSubscribed>
      </subscription>
      <subscription>
        <pointOfContact>Email</pointOfContact>
        <topic>Recommendation</topic>
        <isSubscribed>true</isSubscribed>
      </subscription>
    </subscriptions>
  </customer>
</operation>
POST https://api.maestra.io/v3/operations/async?endpointId=Maestra&operation=EditCustomer

Accept: application/xml
Content-Type: application/xml

<operation>
  <customer>
    <authenticationTicket>
      56D6169641757468656E74696361746|CA49A96250AB940A81C1E48BEF66BC48B8711
    </authenticationTicket>
    <email>[email protected]</email>
    <mobilePhone>5552368</mobilePhone>
    <lastName>Smith</lastName>
    <firstName>John</firstName>
    <customFields>
      <city>Austin</city>
      <b2b>true</b2b>
    </customFields>
    <subscriptions>
      <subscription>
        <pointOfContact>Sms</pointOfContact>
        <topic>Recommendation</topic>
        <isSubscribed>false</isSubscribed>
      </subscription>
      <subscription>
        <pointOfContact>Email</pointOfContact>
        <topic>Recommendation</topic>
        <isSubscribed>true</isSubscribed>
      </subscription>
    </subscriptions>
  </customer>
</operation>
POST https://api.maestra.io/v3/operations/async?endpointId=Maestra&operation=EditCustomer

Accept: application/xml
Content-Type: application/xml

<operation>
  <customer>
    <authenticationTicket>
      56D6169641757468656E74696361746|CA49A96250AB940A81C1E48BEF66BC48B8711
    </authenticationTicket>
    <password>Qwerty123</password>
  </customer>
</operation>