Удалить SMS
Удаляет запись об SMS из истории по её ID.
Метод: DELETE
Эндпоинт: /api/ext/v1/sms/{id}
Требуемое разрешение: sms:delete
INFO
Удаление убирает запись из истории в базе данных. На физическую отправку SMS это не влияет — если SMS уже отправлено, оно останется у получателя.
Параметры пути
| Параметр | Тип | Описание |
|---|---|---|
id | string (UUID) | ID SMS, который нужно удалить |
Ответ — 204 No Content
При успешном удалении сервер возвращает статус 204 без тела ответа.
Ошибки
| Статус | Причина |
|---|---|
400 Bad Request | Неверный формат UUID |
404 Not Found | SMS с таким ID не найден или принадлежит другому пользователю |
Примеры
curl
bash
curl -X DELETE \
"https://api.gosms.ru/api/ext/v1/sms/550e8400-e29b-41d4-a716-446655440001" \
-H "Authorization: Bearer ВАШ_КЛЮЧ"При успехе — пустой ответ со статусом 204.
Python
python
import requests
def delete_sms(sms_id: str):
response = requests.delete(
f"https://api.gosms.ru/api/ext/v1/sms/{sms_id}",
headers={"Authorization": "Bearer ВАШ_КЛЮЧ"},
)
if response.status_code == 404:
print(f"SMS {sms_id} не найден")
return False
response.raise_for_status()
return True # 204 — успешно удалено
deleted = delete_sms("550e8400-e29b-41d4-a716-446655440001")
print("Удалено:" if deleted else "Не найдено")JavaScript
javascript
async function deleteSMS(smsId) {
const response = await fetch(
`https://api.gosms.ru/api/ext/v1/sms/${smsId}`,
{
method: 'DELETE',
headers: { 'Authorization': 'Bearer ВАШ_КЛЮЧ' },
}
);
if (response.status === 204) {
console.log('SMS удалён');
return true;
}
if (response.status === 404) {
console.log('SMS не найден');
return false;
}
const err = await response.json();
throw new Error(err.error.message);
}Удаление всех SMS по фильтру
python
import requests
API_KEY = "ВАШ_КЛЮЧ"
headers = {"Authorization": f"Bearer {API_KEY}"}
def delete_all_sms_by_status(status: str):
"""Удаляет все SMS с указанным статусом."""
deleted = 0
page = 1
while True:
# Получаем страницу SMS
resp = requests.get(
"https://api.gosms.ru/api/ext/v1/sms",
headers=headers,
params={"status": status, "page": page, "per_page": 100},
)
resp.raise_for_status()
data = resp.json()
if not data["items"]:
break
# Удаляем каждый
for sms in data["items"]:
del_resp = requests.delete(
f"https://api.gosms.ru/api/ext/v1/sms/{sms['id']}",
headers=headers,
)
if del_resp.status_code == 204:
deleted += 1
# Если удалили всё на странице и записей больше нет
if len(data["items"]) < 100:
break
return deleted
# Удалить все недоставленные SMS
count = delete_all_sms_by_status("undelivered")
print(f"Удалено недоставленных SMS: {count}")