Перейти к основному содержимому
Signex

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

Быстрый старт

REST API Signex позволяет получать данные о сертификатах пользователя. Аутентификация — через cookie-сессию. Все эндпоинты защищены антифоргери-токеном.

Базовый URL

Все запросы идут на:

https://signex.kz/api

1. Аутентификация

Войдите через POST /api/auth/login. Сервер вернёт __Host-Signex.Auth cookie. Включайте её во все последующие запросы вместе с X-XSRF-TOKEN.

curl

# Войти и сохранить cookie
curl -c cookies.txt -X POST https://signex.kz/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email":"you@example.com","password":"your-password"}'

TypeScript (fetch)

const res = await fetch("https://signex.kz/api/auth/login", {
  method: "POST",
  credentials: "include",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ email: "you@example.com", password: "your-password" }),
});
if (!res.ok) throw new Error(`Login failed: ${res.status}`);

2. Получить список сертификатов

GET /api/cert/mine возвращает все сертификаты текущего пользователя.

curl

curl -b cookies.txt https://signex.kz/api/cert/mine

TypeScript (fetch)

const res = await fetch("https://signex.kz/api/cert/mine", {
  credentials: "include",
});
const { items } = await res.json();
// items: CertSummary[]

Пример ответа

{
  "items": [
    {
      "id": "8f7b25d8-4e1a-4c3d-9b12-aef301234567",
      "iin": "123456******",
      "fullName": "АХМЕТОВА АЙГУЛЬ ЕРКИНОВНА",
      "thumbprint": "a1b2c3d4e5f6...",
      "algorithm": "GOST3410-2022",
      "isPrimary": true,
      "validity": {
        "notBeforeUtc": "2024-03-14T10:32:11Z",
        "notAfterUtc":  "2027-03-14T10:32:11Z"
      },
      "status": "valid",
      "template": "Физическое лицо",
      "linkedAt": "2025-01-10T08:45:00Z"
    }
  ],
  "total": 1
}

3. Подробные сведения о сертификате

GET /api/cert/{id} возвращает полные данные, включая OID-расширения.

curl -b cookies.txt \
  https://signex.kz/api/cert/8f7b25d8-4e1a-4c3d-9b12-aef301234567

Лимиты запросов

Эндпоинт Лимит
POST /api/auth/login 10 запросов / 5 мин / IP
GET /api/cert/mine 60 запросов / мин / пользователь
POST /api/cert/link 10 запросов / мин / пользователь; 30 запросов / час / IP

Следующие шаги