curl --location --request POST 'https://api.safetykit.com/v1/batches' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <api_key>' \
--data-raw '{
  "type": "product_review"
}'
{
  "batch_id": "batch_01hexzqs3n8hx83psy4ernj2zz",
  "batch_status": "WATING_FOR_UPLOAD",
  "upload_url": "https://safetykit-batch-uploads-production.s3.us-west-2.amazonaws.com/53ee3a58-73c6-4b3d-9d57-e6fe277c8dba/01HEXZQW6B07FKNV1D8P2M7F4B?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAV3FEZKTSHU6LLIVX%2F20231111%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20231111T012532Z&X-Amz-Expires=300&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEML%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLXdlc3QtMiJGMEQCIHrwT6ugghsz9p7QznjbUO0%2BHEfSA9cvyneyqiWI6a%2FDAiAaxJpo%2FjrslPXp4vkZn4MNHkpJ8leOtHmJ5zbiRFWhKSrCAwj7%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F8BEAAaDDQwMTkyNTAzNTIzNiIM1v63CzqKSQkZwEj%2BKpYDM8OEn67XXbI7kUAgMqBz9U79hhD4klNVpxZy5JxBrhf4wcw9qyGg2m6w9vLOEpGndu0SUXfwfP8jUf7AUfC6R49Wg%2FVJ%2F%2F12mU56E5w9Tp8uBRf2JXkE6h57uhB1Or9Y4cdAObX1oG%2BUlp9PT2YxXaXYKeSoRGWISs%2Fanh2W5PWWO5F0%2Fm7dW1A58VQotcEugy8tzfQmNPy6davV91GTBJcdINzACxPstrcJuaDjVGI9kitanNqt8sSAGgfN72G7XVh1ZWX6T8TgbFepNSvRqQJBeB1HOdC80WSDFut16%2FGK%2BOlUup%2FalL8uQQXF%2FkDr8qcEhWiJxfY7NZAoOyJB3xFIJcxdVxPYoYTTFlkJqDoWIOMDN%2FHqotvMXbxRF8bc5%2BUWN%2Babf4SPnM1FXOq%2Fi30rqHShJUr7jlzxrwzkcV%2B3zK%2BbOifUlbK0xCnsUv%2FU475jHKsy0GqPnSEAN%2BFiT5HVaW4GBF0ryJGTnPlmWwC%2BaEWMmjFSlMUIR1pdPqEQiIm%2BlhjGLD7QDcke4G0tkQ%2F%2FIcFS8jDsr7uqBjqfAc%2FzA%2B9w04gM3QjaA0H0LcT8y8zj84I1AG0Jq7X4upXrFlGf0UbwbmfrnNBn8Czr0p3rMoi3DTKRnT%2BoeYZqckB6CmlzSaaK7%2F5xgPmWzUI5kVkPbjnUreQ8YezhlAL8EtKRi4yb8iQUDduj%2Fj2I%2BvMMDiAFijQpf5iHEiyiEfPmVrg0V6HmLHHxUIYlT2BGfo7476E8OK3jej5Dt%2FHnwQ%3D%3D&X-Amz-Signature=a034345bf24b89f2b126e30543c91e73961e5ecb3d339ae899e7c6bca1149ffc&X-Amz-SignedHeaders=host&x-amz-meta-batch_id=batch_01hexzqs3n8hx83psy4ernj2zz&x-amz-meta-policy_id=policy_01herrj84e9cqs23szv4z2nv7m&x-amz-meta-team_id=53ee3a58-73c6-4b3d-9d57-e6fe277c8dba&x-amz-meta-team_name=SafetyKit&x-id=PutObject",
  "download_url": null
}

Body

type
string

The type of content to review.

Response

batch_id
string

Unique ID of the batch, used to retrieve the results

type
string

The type of content to review

batch_status
string

Status of the batch ( “WAITING_FOR_UPLOAD”, “PENDING”, “SUCCESS”, or “ERROR)

upload_url
string

Presigned S3 Upload URL (valid for 1 hour)

download_url
null

Presigned S3 Download URL (always null)

curl --location --request POST 'https://api.safetykit.com/v1/batches' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <api_key>' \
--data-raw '{
  "type": "product_review"
}'
{
  "batch_id": "batch_01hexzqs3n8hx83psy4ernj2zz",
  "batch_status": "WATING_FOR_UPLOAD",
  "upload_url": "https://safetykit-batch-uploads-production.s3.us-west-2.amazonaws.com/53ee3a58-73c6-4b3d-9d57-e6fe277c8dba/01HEXZQW6B07FKNV1D8P2M7F4B?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAV3FEZKTSHU6LLIVX%2F20231111%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20231111T012532Z&X-Amz-Expires=300&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEML%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLXdlc3QtMiJGMEQCIHrwT6ugghsz9p7QznjbUO0%2BHEfSA9cvyneyqiWI6a%2FDAiAaxJpo%2FjrslPXp4vkZn4MNHkpJ8leOtHmJ5zbiRFWhKSrCAwj7%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F8BEAAaDDQwMTkyNTAzNTIzNiIM1v63CzqKSQkZwEj%2BKpYDM8OEn67XXbI7kUAgMqBz9U79hhD4klNVpxZy5JxBrhf4wcw9qyGg2m6w9vLOEpGndu0SUXfwfP8jUf7AUfC6R49Wg%2FVJ%2F%2F12mU56E5w9Tp8uBRf2JXkE6h57uhB1Or9Y4cdAObX1oG%2BUlp9PT2YxXaXYKeSoRGWISs%2Fanh2W5PWWO5F0%2Fm7dW1A58VQotcEugy8tzfQmNPy6davV91GTBJcdINzACxPstrcJuaDjVGI9kitanNqt8sSAGgfN72G7XVh1ZWX6T8TgbFepNSvRqQJBeB1HOdC80WSDFut16%2FGK%2BOlUup%2FalL8uQQXF%2FkDr8qcEhWiJxfY7NZAoOyJB3xFIJcxdVxPYoYTTFlkJqDoWIOMDN%2FHqotvMXbxRF8bc5%2BUWN%2Babf4SPnM1FXOq%2Fi30rqHShJUr7jlzxrwzkcV%2B3zK%2BbOifUlbK0xCnsUv%2FU475jHKsy0GqPnSEAN%2BFiT5HVaW4GBF0ryJGTnPlmWwC%2BaEWMmjFSlMUIR1pdPqEQiIm%2BlhjGLD7QDcke4G0tkQ%2F%2FIcFS8jDsr7uqBjqfAc%2FzA%2B9w04gM3QjaA0H0LcT8y8zj84I1AG0Jq7X4upXrFlGf0UbwbmfrnNBn8Czr0p3rMoi3DTKRnT%2BoeYZqckB6CmlzSaaK7%2F5xgPmWzUI5kVkPbjnUreQ8YezhlAL8EtKRi4yb8iQUDduj%2Fj2I%2BvMMDiAFijQpf5iHEiyiEfPmVrg0V6HmLHHxUIYlT2BGfo7476E8OK3jej5Dt%2FHnwQ%3D%3D&X-Amz-Signature=a034345bf24b89f2b126e30543c91e73961e5ecb3d339ae899e7c6bca1149ffc&X-Amz-SignedHeaders=host&x-amz-meta-batch_id=batch_01hexzqs3n8hx83psy4ernj2zz&x-amz-meta-policy_id=policy_01herrj84e9cqs23szv4z2nv7m&x-amz-meta-team_id=53ee3a58-73c6-4b3d-9d57-e6fe277c8dba&x-amz-meta-team_name=SafetyKit&x-id=PutObject",
  "download_url": null
}

Uploading the Batch File

After creating a batch, you will need to upload a CSV file to the provided pre-signed S3 URL. The format of the CSV file is important for correct processing.

CSV File Format

  • The CSV file must have headers.
  • The Content column is required and should contain the content to be reviewed.
  • Any additional columns in the CSV will be considered as metadata and associated with each content item.

Example CSV Format

Content,Metadata1,Metadata2
"Text or URL to review","Value1","Value2"
...

Uploading the CSV file

Here is an example of how to upload the csv file to the pre-signed S3 URL:

curl -X PUT -T "<Path to your CSV file>" "<Your Pre-Signed URL Here>" -H "Content-Type: text/csv"