A request allows to follow the progress of a user request and identify a possible failure.
Most requests to the system return a requestId in the response body, which may be used to inquire on the status of the request.
It is also possible and encouraged to provide a user-defined requestId using the requestId HTTP header when submitting intents or when approving/refusing them, this has several advantages:
- If the connection is interrupted between the request and the response the
requestIdwill still be known by the caller, which can then check if the request has been submitted to Harmonize or not - If the caller retries to submit another request with an already-used
requestId, Harmonize will prevent this by returning an error, in order to avoid the involuntary replay of a request
Users satisfying any of the below conditions are allowed to read a request status:
- user is the originator of the request (even if it does not have a read access to
requests) - user is in the originator domain and has a role granting him read access to
requests - user is in the target domain and has a role granting him read access to
requests
A request will return, in particular, the following fields:
lastModifiedAt, which tracks the last update timestamp of the request;status, which may beProcessing,SucceededorFailed; aFailedstatus also exposes an additional field detailing the failure reason.history, which tracks all the intermediate steps of the user request, with details regarding the source component, the status, an eventual hint in case of failure, and a timestamp;
Security
httpAuth
- Mock serverhttps://docs.ripple.com/_mock/products/custody/devbox/v1/domains/{domainId}/requests/{requestId}
curl -i -X GET \
'https://docs.ripple.com/_mock/products/custody/devbox/v1/domains/{domainId}/requests/{requestId}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'Response
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "requester": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "domainId": "8a0b02c3-fdd8-452e-bc6e-ef07a335ec7e" }, "status": "Processing", "history": [ { … } ], "lastModifiedAt": "2019-08-24T14:15:22Z", "intent": { "domainId": "8a0b02c3-fdd8-452e-bc6e-ef07a335ec7e", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08" } }