/api/v1/products/{id}Окончателно изтриване на продукт
Окончателно и необратимо. Премахва записа за продукта + всички качени документи, чиято единствена референция е този продукт (документи, свързани с други продукти/паспорти, остават, само със зачистен productId). Съхранените файлове, принадлежащи само на този продукт, също се изтриват.
Само продукти със НУЛА паспорти от какъвто и да е статус отговарят на условията — включително архивирани. Връща 409 Conflict с активния брой паспорти в reason, когато не отговаря. Правилото запазва одитната история: архивиран паспорт носи регулаторната история ("публикувахме това, после го оттеглихме"), която би била осиротяла, ако родителският продукт изчезне.
Функция за платени планове. Връща 403 Forbidden на Free планове; използвайте POST /api/v1/products/{id}/archive вместо това — архивирането запазва записа за одит и работи на всеки план.
Брои се като едно v1 записване. Поддържа Idempotency-Key. Без webhook; изтриването се записва в одитната следа на акаунта ви.
Параметри в пътя
- idзадължително
string (24 hex chars)
ID на продукта.
Хедъри
- Authorizationзадължително
string
Bearer <token>— илиtp_API ключ (Developer → API Keys; най-просто, за server-to-server), или OAuth 2.0 access token (Developer → OAuth Apps; за приложения, авторизирани от потребител, scoped и отзоваеми). Страницата Authentication съдържа пълния OAuth поток и списъка със scopes.e.g. Bearer tp_REDACTED_xxxxxxxxxxxx
- Idempotency-Key
string
UUID v4.
Заявка
curl -sS -X DELETE \
https://app.tracepass.eu/api/v1/products/6650b2c3d4e5f6a7b8c9d0e1 \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"Отговор
{
"message": "Product permanently deleted",
"summary": {
"productId": "6650b2c3d4e5f6a7b8c9d0e1",
"name": "Demo product",
"deletedCounts": {
"documentRefsUnlinked": 2,
"documentsDeleted": 1,
"filesDeleted": 4
}
}
}