Перейти к основному содержанию
POST
/
v2
/
b2b
/
fulfilment
/
esims
Создание eSIM
curl --request POST \
  --url https://api.phoenixpass.space/v2/b2b/fulfilment/esims \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '
{
  "package_template_id": 132,
  "validity_period": 30
}
'
{
  "iccid": "8948010000000000000",
  "activation_code": "K1-1JL898-DKUTDC",
  "qr": "LPA:1$smdp.io$K1-1JL898-DKUTDC",
  "smdp": "smdp.io"
}
Берёт свободную eSIM из пула партнёра и назначает ей начальный пакет трафика по package_template_id одной атомарной операцией. В ответ возвращаются данные для активации выпущенной eSIM: iccid, код активации, QR-код в формате LPA и адрес SM-DP+ сервера. Параметры active_period и validity_period опциональны и переопределяют стандартный срок действия пакета из шаблона.
Вызов расходует eSIM из пула. Всегда передавайте заголовок Idempotency-Key, чтобы исключить повторный выпуск на одну операцию при повторной отправке запроса. Остаток пула можно проверить через Остаток eSIM в пуле.

Заголовки

X-Request-ID
string

Уникальный идентификатор для трассировки запроса. Не влияет на логику исполнения запроса.

Idempotency-Key
string
обязательно

Уникальный ключ идемпотентности запроса (строка длиной до 256 символов), TTL 72ч.

См. раздел "Идемпотентные запросы"

Уникальный ключ идемпотентности запроса. Может быть любой строкой длиной до 256 символов. Рекомендуется использовать UUID для обеспечения глобальной уникальности.

Maximum string length: 256
Пример:

"550e8400-e29b-41d4-a716-446655440000"

Тело

application/json

Обратите внимание, что active_period и validity_period переопределяют стандартную механику срока действия пакета из шаблона.

При указании validity_period пакет начинает быть активным с момента его привязывание к симкарте. При указании active_period указывается окно его действия с определенной даты по определенную.

package_template_id
integer
обязательно

Шаблон пакета

Пример:

132

active_period
object

Точный период действия.

validity_period
integer

Срок действия пакета в днях от момента вызова.

Пример:

30

Ответ

eSIM создана, возвращены данные для активации

Данные активации выпущенной eSIM. Возвращается в ответ на успешное создание eSIM через POST /v2/b2b/fulfilment/esims.

iccid
string
обязательно

ICCID — серийный номер eSIM-профиля (19–20 цифр)

Required string length: 19 - 20
Pattern: ^[0-9]+$
Пример:

"8948010000000000000"

activation_code
string
обязательно

Уникальный идентификатор профиля на SM-DP+ сервере

Пример:

"K1-1JL898-DKUTDC"

qr
string
обязательно

Строка активации eSIM в нотации LPA: LPA:version$smdp_address$activation_code.

  • LPA: — префикс, указывающий, что строка предназначена для Local Profile Assistant (компонент eSIM на устройстве).
  • version — версия формата кода активации.
  • smdp_address — адрес SM-DP+ сервера (Subscription Manager Data Preparation).
  • activation_code — уникальный идентификатор конкретного профиля на SM-DP+ сервере.
Пример:

"LPA:1$smdp.io$K1-1JL898-DKUTDC"

smdp
string<hostname>
обязательно

Адрес SM-DP+ сервера, на котором размещён профиль eSIM

Пример:

"smdp.io"