Документация
API
Справочник
Вебхуки
Вебхуки Эндпоинты вебхуков Slicer API — добавить адрес и получить секрет подписи, изменить, удалить, отправить проверочное событие и посмотреть журнал доставок.
На этой странице Вебхуки сообщают вашему серверу о событиях: готова загрузка, закончился монтаж или экспорт, опубликован ролик. Нужна
область webhooks. Формат событий, подпись и её проверка — в руководстве Вебхуки .
Добавить вебхук# POST /v1/webhooks
Лимит обычный Тело запроса CreateWebhookRequest Поле Тип Описание urlобязательное string (uri)≤ 2048 eventsобязательное string[]descriptionstring≤ 200
Запрос Скопировать curl -X POST "https://api.slicer.media/v1/webhooks" \
-H "Authorization: Bearer $SLICER_TOKEN " \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/hook","events":["upload.ready"]}' Скопировать const response = await fetch ( 'https://api.slicer.media/v1/webhooks' , {
method: 'POST' ,
headers: {
Authorization: `Bearer ${ process . env . SLICER_TOKEN }` ,
'Content-Type' : 'application/json' ,
},
body: JSON . stringify ({
"url" : "https://example.com/hook" ,
"events" : [
"upload.ready"
]
}),
});
const { ok , data , error } = await response. json (); Скопировать import os
import requests
response = requests.post(
"https://api.slicer.media/v1/webhooks" ,
headers = { "Authorization" : f "Bearer { os.environ[ 'SLICER_TOKEN' ] } " },
json = {
"url" : "https://example.com/hook" ,
"events" : [ "upload.ready" ],
},
)
body = response.json() Ответ Поля ответа: CreatedWebhook (2) Поле Тип Описание webhookобязательное Webhooksecretобязательное stringСекрет подписи whsec_… — показывается один раз
Пример ответа Скопировать {
"ok" : true ,
"data" : {
"webhook" : {
"id" : "6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
"url" : "https://example.com/hook" ,
"events" : [
"upload.ready"
],
"description" : "string" ,
"enabled" : true ,
"disabledReason" : "string" ,
"failures" : 1 ,
"lastDeliveryAt" : "2026-10-16T09:30:00Z" ,
"createdAt" : "2026-10-16T09:30:00Z"
},
"secret" : "whsec_…"
}
}
Список вебхуков# GET /v1/webhooks
Лимит обычный Запрос Скопировать curl "https://api.slicer.media/v1/webhooks" \
-H "Authorization: Bearer $SLICER_TOKEN " Скопировать const response = await fetch ( 'https://api.slicer.media/v1/webhooks' , {
headers: {
Authorization: `Bearer ${ process . env . SLICER_TOKEN }` ,
},
});
const { ok , data , error } = await response. json (); Скопировать import os
import requests
response = requests.get(
"https://api.slicer.media/v1/webhooks" ,
headers = { "Authorization" : f "Bearer { os.environ[ 'SLICER_TOKEN' ] } " },
)
body = response.json() Ответ Пример ответа Скопировать {
"ok" : true ,
"data" : [
{
"id" : "6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
"url" : "https://example.com/hook" ,
"events" : [
"upload.ready"
],
"description" : "string" ,
"enabled" : true ,
"disabledReason" : "string" ,
"failures" : 1 ,
"lastDeliveryAt" : "2026-10-16T09:30:00Z" ,
"createdAt" : "2026-10-16T09:30:00Z"
}
]
}
Вебхук# GET /v1/webhooks/{id}
Лимит обычный Параметры пути Поле Тип Описание idобязательное string (uuid)
Запрос Скопировать curl "https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" \
-H "Authorization: Bearer $SLICER_TOKEN " Скопировать const response = await fetch ( 'https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20' , {
headers: {
Authorization: `Bearer ${ process . env . SLICER_TOKEN }` ,
},
});
const { ok , data , error } = await response. json (); Скопировать import os
import requests
response = requests.get(
"https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
headers = { "Authorization" : f "Bearer { os.environ[ 'SLICER_TOKEN' ] } " },
)
body = response.json() Ответ Поля ответа: Webhook (9) Поле Тип Описание idобязательное string (uuid)urlобязательное string (uri)eventsобязательное string[]descriptionобязательное string | nullenabledобязательное booleandisabledReasonобязательное string | nullfailuresобязательное integerНеудачных доставок подряд lastDeliveryAtобязательное string | nullcreatedAtобязательное stringДата и время ISO 8601, UTC
Пример ответа Скопировать {
"ok" : true ,
"data" : {
"id" : "6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
"url" : "https://example.com/hook" ,
"events" : [
"upload.ready"
],
"description" : "string" ,
"enabled" : true ,
"disabledReason" : "string" ,
"failures" : 1 ,
"lastDeliveryAt" : "2026-10-16T09:30:00Z" ,
"createdAt" : "2026-10-16T09:30:00Z"
}
}
Изменить вебхук# PATCH /v1/webhooks/{id}
Лимит обычный Параметры пути Поле Тип Описание idобязательное string (uuid)
Тело запроса UpdateWebhookRequest Поле Тип Описание urlstring (uri)≤ 2048 eventsstring[]descriptionstring | null≤ 200 enabledboolean
Запрос Скопировать curl -X PATCH "https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" \
-H "Authorization: Bearer $SLICER_TOKEN " \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/hook","events":["upload.ready"]}' Скопировать const response = await fetch ( 'https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20' , {
method: 'PATCH' ,
headers: {
Authorization: `Bearer ${ process . env . SLICER_TOKEN }` ,
'Content-Type' : 'application/json' ,
},
body: JSON . stringify ({
"url" : "https://example.com/hook" ,
"events" : [
"upload.ready"
]
}),
});
const { ok , data , error } = await response. json (); Скопировать import os
import requests
response = requests.patch(
"https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
headers = { "Authorization" : f "Bearer { os.environ[ 'SLICER_TOKEN' ] } " },
json = {
"url" : "https://example.com/hook" ,
"events" : [ "upload.ready" ],
},
)
body = response.json() Ответ Поля ответа: Webhook (9) Поле Тип Описание idобязательное string (uuid)urlобязательное string (uri)eventsобязательное string[]descriptionобязательное string | nullenabledобязательное booleandisabledReasonобязательное string | nullfailuresобязательное integerНеудачных доставок подряд lastDeliveryAtобязательное string | nullcreatedAtобязательное stringДата и время ISO 8601, UTC
Пример ответа Скопировать {
"ok" : true ,
"data" : {
"id" : "6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
"url" : "https://example.com/hook" ,
"events" : [
"upload.ready"
],
"description" : "string" ,
"enabled" : true ,
"disabledReason" : "string" ,
"failures" : 1 ,
"lastDeliveryAt" : "2026-10-16T09:30:00Z" ,
"createdAt" : "2026-10-16T09:30:00Z"
}
}
Удалить вебхук# DELETE /v1/webhooks/{id}
Лимит обычный Параметры пути Поле Тип Описание idобязательное string (uuid)
Запрос Скопировать curl -X DELETE "https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" \
-H "Authorization: Bearer $SLICER_TOKEN " Скопировать const response = await fetch ( 'https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20' , {
method: 'DELETE' ,
headers: {
Authorization: `Bearer ${ process . env . SLICER_TOKEN }` ,
},
});
const { ok , data , error } = await response. json (); Скопировать import os
import requests
response = requests.delete(
"https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
headers = { "Authorization" : f "Bearer { os.environ[ 'SLICER_TOKEN' ] } " },
)
body = response.json() Ответ Поля ответа: object (2) Поле Тип Описание idобязательное string (uuid)deletedобязательное boolean
Пример ответа Скопировать {
"ok" : true ,
"data" : {
"id" : "6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20" ,
"deleted" : true
}
}
Отправить проверочное событие `ping`# POST /v1/webhooks/{id}/test
Лимит обычный Параметры пути Поле Тип Описание idобязательное string (uuid)
Запрос Скопировать curl -X POST "https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20/test" \
-H "Authorization: Bearer $SLICER_TOKEN " Скопировать const response = await fetch ( 'https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20/test' , {
method: 'POST' ,
headers: {
Authorization: `Bearer ${ process . env . SLICER_TOKEN }` ,
},
});
const { ok , data , error } = await response. json (); Скопировать import os
import requests
response = requests.post(
"https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20/test" ,
headers = { "Authorization" : f "Bearer { os.environ[ 'SLICER_TOKEN' ] } " },
)
body = response.json() Ответ Поля ответа: WebhookDelivery (9) Поле Тип Описание idобязательное integereventIdобязательное stringtypeобязательное stringstatusобязательное stringpending · succeeded · failedattemptsобязательное integerresponseStatusобязательное integer | nullerrorобязательное string | nullcreatedAtобязательное stringДата и время ISO 8601, UTC deliveredAtобязательное string | null
Пример ответа Скопировать {
"ok" : true ,
"data" : {
"id" : 42 ,
"eventId" : "string" ,
"type" : "string" ,
"status" : "pending" ,
"attempts" : 1 ,
"responseStatus" : 1 ,
"error" : "string" ,
"createdAt" : "2026-10-16T09:30:00Z" ,
"deliveredAt" : "2026-10-16T09:30:00Z"
}
}
Последние 100 доставок# GET /v1/webhooks/{id}/deliveries
Лимит обычный Параметры пути Поле Тип Описание idобязательное string (uuid)
Запрос Скопировать curl "https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20/deliveries" \
-H "Authorization: Bearer $SLICER_TOKEN " Скопировать const response = await fetch ( 'https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20/deliveries' , {
headers: {
Authorization: `Bearer ${ process . env . SLICER_TOKEN }` ,
},
});
const { ok , data , error } = await response. json (); Скопировать import os
import requests
response = requests.get(
"https://api.slicer.media/v1/webhooks/6f1c2a4e-8b3d-4c1a-9e2f-3b5d7a9c1e20/deliveries" ,
headers = { "Authorization" : f "Bearer { os.environ[ 'SLICER_TOKEN' ] } " },
)
body = response.json() Ответ Пример ответа Скопировать {
"ok" : true ,
"data" : [
{
"id" : 42 ,
"eventId" : "string" ,
"type" : "string" ,
"status" : "pending" ,
"attempts" : 1 ,
"responseStatus" : 1 ,
"error" : "string" ,
"createdAt" : "2026-10-16T09:30:00Z" ,
"deliveredAt" : "2026-10-16T09:30:00Z"
}
]
}
Схемы#
Webhook
Поле Тип Описание idобязательное string (uuid)urlобязательное string (uri)eventsобязательное string[]descriptionобязательное string | nullenabledобязательное booleandisabledReasonобязательное string | nullfailuresобязательное integerНеудачных доставок подряд lastDeliveryAtобязательное string | nullcreatedAtобязательное stringДата и время ISO 8601, UTC
CreatedWebhook
Поле Тип Описание webhookобязательное Webhooksecretобязательное stringСекрет подписи whsec_… — показывается один раз
WebhookDelivery
Поле Тип Описание idобязательное integereventIdобязательное stringtypeобязательное stringstatusобязательное stringpending · succeeded · failedattemptsобязательное integerresponseStatusобязательное integer | nullerrorобязательное string | nullcreatedAtобязательное stringДата и время ISO 8601, UTC deliveredAtобязательное string | null