V3 API
Operation Invocation Methods
POST https://api.maestra.io/v3/operations/sync?endpointId={unique ID of site/mobile app/etc.}&operation={operation name}&deviceUUID={unique device ID}
Accept: application/xml
Content-Type: application/xml
Authorization: Authorization: SecretKey {Secret Key, check with the manager if it’s mandatory}"
X-Customer-IP: {IP of customer device, check with the manager if it’s mandatory}
POST https://api.mindbox.cloud/v3/operations/async?endpointId={unique ID of site/mobile app/etc.}&operation={operation name}&deviceUUID={unique device ID}
Accept: application/xml
Content-Type: application/xml
Authorization: Mindbox secretKey="{secret key, check with the manager if it’s mandatory}"
X-Customer-IP: {IP of customer device, check with the manager if it’s mandatory}
EndpointId
- Unique ID of site/store/mobile app/etc.
- The value can be obtained from the manager.
Authorization header
- 'Authorization' can be required, depending on operation type.
- Check with the manager if it’s mandatory.
- Each EndpointId corresponds to its own secretKey; check the value with the manager.
Operation
- Operation name at Maestra. Each type of site/store/mobile app action has a corresponding operation.
- Operation list is set up internally.
- Request/response body format depends on operation type.
DeviceUUID
- Check with the manager if it’s mandatory.
- At the website: pass DeviceUUID from the maestraDeviceUUID cookie.
- At Android KitKat and higher: pass Advertising Id
- At iOS 6 and higher: pass IDFA
Error Handling
<result>
<status>Success</status>
{data returned by the operation}
</result>
<result>
<status>ValidationError</status>
<validationMessages>
<validationMessage>
<message>Incorrect last name</message>
<location>/customer/lastName</location>
</validationMessage>
<validationMessage> ...</validationMessage>
</validationMessages>
</result>
<result>
<status>ProtocolError</status>
<errorMessage>{error text}</errorMessage>
<errorId>{error UUID}</errorId>
<httpStatusCode>{error HTTP code}</httpStatusCode>
</result>
<result>
<status>InternalServerError</status>
<errorMessage>{error text}</errorMessage>
<errorId>{error UUID}</errorId>
<httpStatusCode>{error HTTP code}</httpStatusCode>
</result>
<result>
<status>TransactionAlreadyProcessed</status>
</result>
- Validation error: Show the message to customer
- Incorrect operation invocation: Check with the manager
- Maestra unavailable: Check with the manager and/or repeat request later.
- Transaction already processed: A translaction with this UUID was already processed. If you maintain a request queue and repeat a request until it's processed, it’s a normal scenario. If you don't usually repeat requests, this response means that you’ve provided a non-unique transaction ID.
Updated 17 days ago