Node.js SDK Relaya: первое сообщение через MAX без ручного fetch
Быстрый старт для @relaya/sdk-node: установка, accessToken, IntegrationsApi и отправка сообщения в MAX-профиль.
Установка
Пакет публикуется как @relaya/sdk-node. Это самый прямой вариант для TypeScript-бэкенда, background workers и Next.js API routes.
npm i @relaya/sdk-nodeИсходники и README лежат в публичном репозитории relaya-ru/sdk-node.
Первый клиент
В Node SDK у API-классов одинаковая модель: задаёте базовый URL, потом прокидываете токен через свойствоaccessToken. Для profile-token сценария можно вызвать setApiKey, но для quickstart обычно хватает Bearer-токена.
import { IntegrationsApi } from "@relaya/sdk-node";
const api = new IntegrationsApi("https://api.relaya.ru/v1");
api.accessToken = process.env.RELAYA_API_TOKEN || "";Отправка сообщения
Для MAX-профиля ключевой метод называется так же, как и в autogenerated-доках: postProfilesProfileIdIntegrationsIntegrationMessages. Он принимает profileId, тип интеграции и типизированный payload.
import { IntegrationsApi, SendMessageInputBody } from "@relaya/sdk-node";
const api = new IntegrationsApi("https://api.relaya.ru/v1");
api.accessToken = process.env.RELAYA_API_TOKEN || "";
const payload: SendMessageInputBody = {
phone: "+79991234567",
message: "Ваш заказ #1234 готов",
clientId: "order_1234_ready",
};
const { body } =
await api.postProfilesProfileIdIntegrationsIntegrationMessages(
"prof_abc123",
"max",
payload,
);
console.log(body);Если дальше понадобится профильный токен вместо Bearer, переход делается без переписывания клиента: отдельно посмотрите схемы авторизации в SDK.
Когда Node SDK особенно полезен
- Когда у вас уже есть TypeScript backend и не хочется держать рядом ручной HTTP-клиент.
- Когда нужны типы моделей вроде
SendMessageInputBodyбез ручного описания интерфейсов. - Когда команда хочет быстро перейти от MVP к более широкому покрытию API.
Если вы параллельно сравниваете разные языки, рядом лежат статьи про Python SDK и PHP SDK.
Создайте бесплатный MAX-профиль
Если хочется не просто читать, а сразу проверить сценарий руками: подключите MAX, отправьте себе тестовое сообщение и уже потом решайте, нужны ли другие каналы.