Начинаем перенос my.1msg.ioЕщё
1msg official logo

API

1MSG SDK: вызывайте WhatsApp API из своего кода

Клиент 1MSG для TypeScript, Python, Go, Java, C# и других языков. Тот же WhatsApp API: ставите пакет из реестра, вызываете методы и не пишете HTTP-запросы руками.

Nikita L ·

Если уже вызываете 1MSG по HTTP, ничего не меняется: те же эндпоинты, токены и формат ответов. Новое одно: собирать запросы руками больше не нужно.

Зачем это нужно

Без SDK каждый вызов — это HTTP-запрос, который пишут руками: URL, токен, JSON-тело, свои типы и обработка ошибок. Запрос копируют из документации API и потом сами поддерживают. SDK — тот же слой, только готовым пакетом под нужный язык: вызываете методы, а API остаётся тем же.

Клиенты генерируются из того же контракта OpenAPI, что и сервер, поэтому не отстают от API — в отличие от скопированного когда-то curl. Ради этого и затевалась пересборка бэкенда.

С чего начать

Понадобятся три значения со страницы канала: baseUrl, instanceId и token. Дальше вызываете метод, а не URL. Если канала ещё нет, раздел «Быстрый старт» проведёт через создание аккаунта, тестовый канал и первое сообщение.

TypeScript — самый короткий путь. Пакет ставится командой npm install @1msg/sdk, дальше так:

import { createClient } from '@1msg/sdk';

const client = createClient({
  baseUrl: 'https://api.1msg.io',
  instanceId: 'YOUR_INSTANCE_ID',
  token: process.env.MSG_API_TOKEN!,
});

await client.sendMessage({ body: 'Hello', chatId: '[email protected]' });

В остальных языках всё так же: те же три параметра, тот же вызов sendMessage. Команды установки и репозитории — ниже.

Установка

Для большинства языков пакет ставится из реестра. PHP и C++ пока только из исходников.

ЯзыкУстановкаИсходники
TypeScriptnpm install @1msg/sdkhttps://github.com/1msg/1msg-sdk/tree/main/typescript
Pythonpip install one-msg-sdkhttps://github.com/1msg/1msg-sdk/tree/main/python
Javaimplementation("io.1msg:sdk")https://github.com/1msg/1msg-sdk/tree/main/java
Kotlinimplementation("io.1msg:sdk-kotlin")https://github.com/1msg/1msg-sdk/tree/main/kotlin
Scala"io.1msg" %% "sdk-scala"https://github.com/1msg/1msg-sdk/tree/main/scala
C#dotnet add package OneMsg.Sdkhttps://github.com/1msg/1msg-sdk/tree/main/csharp
Rubygem install one_msg_sdkhttps://github.com/1msg/1msg-sdk/tree/main/ruby
Rustcargo add one-msg-sdkhttps://github.com/1msg/1msg-sdk/tree/main/rust
Gogo get github.com/1msg/1msg-sdk-gohttps://github.com/1msg/1msg-sdk-go
SwiftSwiftPM: 1msg-sdk-swifthttps://github.com/1msg/1msg-sdk-swift
PHPcomposer require 1msg/sdk с GitHub (в Packagist пока не опубликован)https://github.com/1msg/1msg-sdk-php
C++git clone + CMake (реестра пока нет)https://github.com/1msg/1msg-sdk-cpp

PHP — с GitHub:

composer config repositories.1msg vcs https://github.com/1msg/1msg-sdk-php
composer require 1msg/sdk

C++: git clone https://github.com/1msg/1msg-sdk-cpp.git

Выберите язык, установите пакет и отправьте первое сообщение — понадобятся baseUrl, instanceId и token со страницы канала. Обычный HTTP никуда не делся: SDK — это тот же API, только в виде клиента.

Интегрируйте WhatsApp за часы
без проблем с инфраструктурой