Submit to Thorn API
Thorn Overview
Hive's partnership with Thorn allows Hive customers to easily integrate Thorn's API to match against other known CSAM (Child Sexual Abuse Material) or SE (Sexual Exploitation) examples in Thorn's database along with our proprietary CSAM detection API, which uses embeddings to detect novel child sexual abuse material (CSAM) content.
The Detection API along with the Matching API are both available to use on the Moderation Dashboard. Please reach out to sales at [email protected] to get access to both APIs and have them mapped to your Moderation Dashboard.
Submit to Thorn
Include Thorn flag in your API Request (Async Only)
Once your application is set up with Thorn, you can enable the thorn flag in your Async API request. Please refer to the API documentation below:
https://api.hivemoderation.com/api/v2/task/async
If you are using the v1 endpoint, you can also submit to Thorn.
https://api.hivemoderation.com/api/v1/task/async
Field (* required) | Type | Description |
---|---|---|
thorn_enabled | Boolean | If enabled, the Dashboard will first submit your media to the Thorn APIs. If the results include CSAM, the Dashboard will not submit to the other model(s) specified in the request. If the results are clean, the Dashboard will resume submission to the other model(s) specified in the request. |
Thorn Responses
Thorn responses are separate from the model responses. The Dashboard will return a separate callback with just Thorn results. Please refer to the sample responses below:
Initial API Response
{
"task_ids": [
"task_id_1",
"task_id_2"
],
"post_id": "jan7-4",
"user_id": "jan7-4",
"project_status_map": {
"32952": {
"moderation_type": "visual",
"status": "awaiting_thorn"
},
"42913": {
"moderation_type": "demographic",
"status": "awaiting_thorn"
},
"103021708": {
"moderation_type": "thorn_matching",
"task_id": "task_id_1",
"status": "pending"
},
"104408158": {
"moderation_type": "thorn_detection",
"task_id": "task_id_2",
"status": "pending"
}
},
"message": "We received your submission."
}
Callback API Response (CSAM DETECTED)
{
"task_ids": [
"97c6dfe1-c250-11ef-8763-637c0a853f6c123214",
"97c706f0-c250-11ef-8b28-35b4e9d11bff123241"
],
"thorn_results": "csam",
"post_id": "dec24-1-1",
"user_id": "dec24-1-1",
"project_status_map": {
"103021708": {
"moderation_type": "thorn_matching",
"task_id": "97c6dfe1-c250-11ef-8763-637c0a853f6c123214",
"status": "success"
},
"104408158": {
"moderation_type": "thorn_detection",
"task_id": "97c706f0-c250-11ef-8b28-35b4e9d11bff123241",
"status": "success"
}
},
"content_id": "2GutgpFiNETBp5fLzDlxPj_2024-12-24T23:44:40.911Z_0U0TVGlciG0X2elhbKOSb8",
"triggered_rules": [],
"triggered_background_rules": []
}
Thorn Callback API Response (NO CSAM)
{
"task_ids": [
"task_1",
"task_2",
"task_3",
"task_4"
],
"post_id": "jan7-7",
"user_id": "jan7-7",
"project_status_map": {
"32952": {
"moderation_type": "visual",
"task_id": "task_1,
"status": "pending"
},
"42913": {
"moderation_type": "demographic",
"task_id": “task_2",
"status": "pending"
},
"103021708": {
"moderation_type": "thorn_matching",
"task_id": "task_3",
"status": "success"
},
"104408158": {
"moderation_type": "thorn_detection",
"task_id": "task_4",
"status": "success"
}
}
}
Full Callback API Response with Thorn Results (NO CSAM)
{
"task_ids": [
"task_1",
"task_2",
"task_3",
"task_4"
],
"post_id": "jan7-7",
"user_id": "jan7-7",
"project_status_map": {
"32952": {
"moderation_type": "visual",
"task_id": "task_1",
"status": "success"
},
"42913": {
"moderation_type": "demographic",
"task_id": "task_2",
"status": "success"
},
"103021708": {
"moderation_type": "thorn_matching",
"task_id": "task_3",
"status": "success"
},
"104408158": {
"moderation_type": "thorn_detection",
"task_id": "task_4",
"status": "success"
}
},
"content_id": "4A8UGOc2Y8YF36WUf5EyvH_2025-01-08T06:20:15.446Z_0U0TVGlciG0X2elhbKOSb8",
"triggered_rules": [],
"triggered_background_rules": []
}
CSAM Review Feed
On the Settings page, you can enable the NCMEC Review Feed. This will display only CSAM in the Review Feed for images flagged by Thorn. CSAM images will automatically be sent to the Review Feed for Review.
Displaying CSAM Content
The Dashboard will never display CSAM content in the Review Feed. Instead, each task will surface a link that the moderator can click on. Once clicked, the media will open in a new browser tab for the moderator to review.
Updated 15 days ago