GET - Get request
The GDPR API allows you to create GDPR requests and get their status. This page documents the request
endpoint.
Request structure
Route
The GDPR API exposes a GET endpoint to get the status of a single GDPR request:
https://api.batch.com/1.0/BATCH_API_KEY/gdpr/request/REQUEST_ID
Here is a valid cURL example:
curl -H "Content-Type: application/json" \
-H "X-Authorization: BATCH_REST_API_KEY" \
-X GET "https://api.batch.com/1.0/BATCH_API_KEY/gdpr/request/REQUEST_ID"
The REQUEST_ID
value is the token you get when creating the request.
The BATCH_API_KEY
value is either your Live, Dev or SDK Batch API key from the settings page of your app within the dashboard (⚙ Settings → General).
Headers
In order to authenticate with the API, you need to provide your company REST API Key as the value of the X-Authorization
header. You can find it in ⚙ Settings → General.
Responses
Success
If the GET to the API endpoint is successful you will receive an HTTP 200 confirmation and information about the GDPR request.
Fields breakdown
Following is the detail about each possible field in the response object.
Id | Description | |
---|---|---|
request_date | String - The date at which the request was made (always in UTC). | |
status | String - Indicates the status of the request. There are two possible states, `pending` which means the request is currently being processed, `done` which means the request has been processed. | |
request_type | String - Indicates if the request is to either `review` or `remove` the data. This is the same thing you provide when calling the API to create a request. | |
trigger_type | String - Indicates if the request was created via the Batch dashboard or via the public API. Possible values are `dashboard` or `api`. | |
error | String - Indicates if there was an error processing the request. | |
data_url | String - Only present if the `request_type` is `review`. This is a link to a zip file containing the data. | |
id | Object - An object describing the identifier of a user concerned by this request. This is the same object you provide when calling the API to create a request. |
Details about the error field
The error
field is a generic field indicating something went wrong while processing the request.
Right now only the user not found
error is possible.
Examples
- Finished review request :
{
"request_date": "2021-01-03T16:52:16.051",
"status": "done",
"request_type": "review",
"trigger_type": "api",
"id": {
"type": "custom_id",
"value": "john.doe"
},
"data_url": "https://api.batch.com/1.0/[APIKEY]/gdpr/request/[REQUEST_ID]/results/[RESULT_ID].zip"
}
- Pending request :
{
"request_date": "2020-12-24T06:16:00.000",
"status": "pending",
"request_type": "review",
"trigger_type": "api",
"id": {
"type": "custom_id",
"value": "john.doe"
}
}
- Finished remove request :
{
"request_date": "2020-09-05T11:32:48.204",
"status": "done",
"request_type": "remove",
"trigger_type": "api",
"id": {
"type": "custom_id",
"value": "john.doe"
}
}
- Request in error :
{
"request_date": "2020-05-15T01:28:22.588",
"status": "done",
"request_type": "remove",
"trigger_type": "api",
"id": {
"type": "custom_id",
"value": "john.doe"
},
"error": "user not found"
}
Note: Expired requests are not returned by this API.
Failure
If the POST data does not meet the API requirements you will receive an actionable error message. Contact us at support@batch.com if you need further support.
AUTHENTICATION_INVALID
(Http status code: 401, Error code: 10)API_MISUSE
(Http status code: 403, Error code: 12)ROUTE_NOT_FOUND
(HTTP status code: 404, Error code: 20)MISSING_PARAMETER
(HTTP status code: 400, Error code: 30)MALFORMED_PARAMETER
(HTTP status code: 400, Error code: 31)SERVER_ERROR
(HTTP status code: 500, Error code: 1)MAINTENANCE_ERROR
(HTTP status code: 503, Error code: 2)