Вексал
Разработчикам

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

Интегрируйте платформу Вексал в ваши корпоративные системы. RESTful API, поддержка OAuth 2.0 и готовые SDK.

Введение

Принципы архитектуры

API Вексал спроектировано для предсказуемости и безопасности. Мы используем стандартный HTTP-статусный код, JSON для сериализации данных и строгую пагинацию для больших массивов.

Базовый URL для всех запросов:
https://api.veksal.ru/v1

  • Полная синхронизация пользователей (LMS/HRM)
  • Управление доступами к курсам в реальном времени
  • Экспорт метрик и аналитики в формате CSV/JSON
Схема архитектуры API платформы Вексал
Безопасность

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

API Keys

Для серверных интеграций используйте Secret Key. Передавайте его в заголовке запроса:
Authorization: Bearer YOUR_API_KEY

OAuth 2.0

Для клиентских приложений и SSO входа. Поддерживаем стандартный Authorization Code Flow с PKCE для мобильных и SPA приложений.

Rate Limiting

Ограничение: 120 запросов в минуту на один IP. При превышении возвращается код 429 Too Many Requests. Заголовки `X-RateLimit-Remaining` показывают текущий статус.

Методы

Основные эндпоинты

GET /users
Получить список сотрудников

Возвращает пагинированный список пользователей организации. Поддерживает фильтрацию по департаментам и ролям.

POST /courses/{id}/enrollments
Зачислить на курс

Создает новую запись о прохождении курса. В теле запроса необходимо передать массив ID пользователей и ID курса.

PUT /users/{id}/profile
Обновить профиль

Синхронизация данных профиля (ФИО, должность, email) из внешней HR-системы.

Посмотреть полную спецификацию Swagger
Быстрый старт

Примеры кода

Python
import requests

url = "https://api.veksal.ru/v1/users"
headers = {
    "Authorization": "Bearer vk_live_592a...",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
print(response.json())
cURL
curl -X GET "https://api.veksal.ru/v1/users" \
  -H "Authorization: Bearer vk_live_592a..." \
  -H "Content-Type: application/json"
JavaScript
fetch('https://api.veksal.ru/v1/users', {
  headers: {
    'Authorization': 'Bearer vk_live_592a...'
  }
})
.then(res => res.json())
.then(data => console.log(data));

Нужна помощь с интеграцией?

Наша техническая поддержка доступна 24/7 для корпоративных клиентов. Мы поможем настроить вебхуки и протестировать запросы в песочнице.

Написать в техподдержку Войти в Sandbox
FAQ

Вопросы разработчикам

Есть ли SDK для PHP? +

Да, официальный пакет для Laravel и Symfony доступен на Packagist: `composer require veksal/sdk-php`.

Как работают вебхуки? +

Вы можете зарегистрировать URL для получения событий (например, `course.completed`). Вексал будет отправлять POST-запросы с подписью HMAC256.

Можно ли использовать API бесплатно? +

API доступно на всех тарифах, начиная от "Стартап". На бесплатном тарифе действуют ограничения по количеству запросов (1000/мес).