Документация

API
DOCS

REST API для интеграции с сервисом коротких ссылок. Базовый URL: https://mshrt.com/api/v1

Версия 1.0
REST / JSON
JWT Bearer
Обновлено: март 2026
ОБЗОР

MSHRT API — REST-интерфейс для создания и управления короткими ссылками. Все запросы и ответы используют формат JSON. Все защищённые эндпоинты требуют Bearer-токен в заголовке Authorization.

Все временные метки возвращаются в формате ISO 8601 (UTC). Для нумерации используются целые числа.

Base URL
https://mshrt.com/api/v1

# Все эндпоинты возвращают JSON
Content-Type: application/json

# Защищённые эндпоинты требуют:
Authorization: Bearer <access_token>

АУТЕНТИФИКАЦИЯ

API использует JWT Bearer-токены. После логина вы получаете два токена: access_token (живёт 24ч) и refresh_token (7 дней). Передавайте access_token в каждом запросе.

Header
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Обновление токена: когда access_token истекает, используйте POST /auth/refresh с refresh_token для получения новой пары. Хранить refresh_token в httpOnly Cookie — наилучшая практика.

КОДЫ ОТВЕТОВ
КодЗначениеКогда возникает
200OKЗапрос выполнен успешно
201CreatedРесурс создан (register, create link)
400Bad RequestНевалидные данные, неверный URL
401UnauthorizedНет токена, токен истёк или неверный
403ForbiddenНет доступа к чужому ресурсу
404Not FoundРесурс не найден
409ConflictEmail или алиас уже заняты
500Server ErrorВнутренняя ошибка сервера
Error Response
{
  "error": "email already registered"
}

RATE LIMITING

Лимиты применяются по IP-адресу. Заголовки ответа содержат информацию об оставшихся запросах.

ТарифЗапросов / часСсылок / месяц
Free10050
Pro1 000
Business10 000
429 Too Many Requests — при превышении лимита. Заголовок Retry-After укажет время ожидания в секундах.

AUTH
POST /auth/register Регистрация нового пользователя
Request Body
ПолеТипОбязательностьОписание
namestringrequiredИмя пользователя (2–100 символов)
emailstringrequiredEmail-адрес
passwordstringrequiredПароль, минимум 6 символов
curl
curl -X POST https://mshrt.com/api/v1/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Иван Петров",
    "email": "user@example.com",
    "password": "secret123"
  }'
Response 201
{
  "access_token":  "eyJhbGci...",
  "refresh_token": "a3f9c2...",
  "user": {
    "id":         1,
    "name":       "Иван Петров",
    "email":      "user@example.com",
    "plan":       "free",
    "created_at": "2025-01-15T10:00:00Z"
  }
}
POST /auth/login Вход в аккаунт
curl
curl -X POST https://mshrt.com/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email":"user@example.com","password":"secret123"}'
POST /auth/refresh Обновить токены
Body
{ "refresh_token": "a3f9c2..." }
POST /auth/logout Выход (инвалидация refresh токенов) 🔒 AUTH
Передайте Bearer токен в заголовке. Тело запроса не нужно.

USER
GET /user/me Профиль текущего пользователя 🔒 AUTH
Response 200
{
  "id": 1, "name": "Иван",
  "email": "user@example.com",
  "plan": "free",
  "created_at": "2025-01-15T10:00:00Z"
}
PUT /user/password Сменить пароль 🔒 AUTH
ПолеТип
old_passwordstringrequired
new_passwordstringrequired, min 6
DELETE /user Удалить аккаунт 🔒 AUTH
Необратимо. Удаляет пользователя и все его ссылки. Подтвердите действие на стороне клиента перед вызовом.


REDIRECT
GET /r/:code Редирект на исходный URL
Возвращает 301 Moved Permanently. Клик фиксируется асинхронно — IP, User-Agent, Referer. Токен не нужен, эндпоинт публичный.
Example
GET /r/abc123

← 301 Moved Permanently
Location: https://original-very-long-url.ru/some/path

API ДЛЯ СОКРАЩЕНИЯ ССЫЛОК

MSHRT API подходит для сценариев, где нужно автоматически создавать короткие ссылки из CRM, CMS, рекламных кабинетов, внутренних админок и SaaS-продуктов. Вместо ручной работы команда получает единый REST API коротких ссылок с JWT-аутентификацией и понятной структурой ответов.

Через API можно регистрировать пользователей, выпускать короткие URL, получать список ссылок, редактировать алиасы, удалять записи и отслеживать статистику переходов. Это закрывает и продуктовые задачи, и SEO-задачи, когда нужен предсказуемый домен редиректа, контроль кликов и прозрачная аналитика по каждому short link.

СценарийЧто дает API
Маркетинг и paid trafficБыстрое создание коротких ссылок под кампании, UTM-метки и отдельные креативы.
Продукт и supportГенерация short URL из backoffice, писем, чат-ботов и dashboard без ручной рутины.
Партнерские сетиКонтроль редиректов, алиасов и кликов по источникам в едином API.
Практический результат: один API для сокращения ссылок, брендированных URL и статистики переходов, который можно встроить в существующую инфраструктуру без отдельного сервиса-посредника.