Создание и обновление
Эти эндпоинты создают и редактируют определение Journey: его название, настройки и точки на холсте. Они не запускают Journey. Для этого используйте Lifecycle.
Оба эндпоинта принимают и возвращают объект Journey.
Создание
Anchor link toPOST https://journey-api.svc-nue.pushwoosh.com/api/v3/journeygateway
Создает новое Journey в состоянии STATUS_DRAFT.
Запрос
Anchor link to| Поле | Обязательно | Тип | Описание |
|---|---|---|---|
title | Да | string | Название Journey. |
params | Да | JourneyParams | Общие настройки Journey. params.application_code является обязательным. |
points | Нет | array of Point | Элементы Journey на холсте и их связи. |
comments | Нет | array of JourneyComment | Комментарии на холсте. |
Пример запроса
Anchor link tocurl -X POST https://journey-api.svc-nue.pushwoosh.com/api/v3/journeygateway \ -H "Authorization: Api YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "Welcome series", "params": { "application_code": "XXXXX-XXXXX" }, "points": [], "comments": [] }'Ответ
Anchor link toВозвращает новый объект Journey. Считайте UUID Journey из info.uuid и используйте его для последующих вызовов обновления и управления жизненным циклом.
Пример ответа
Anchor link to{ "info": { "uuid": "11111111-2222-3333-4444-555555555555", "title": "Welcome series", "status": "STATUS_DRAFT", "params": { "application_code": "XXXXX-XXXXX" } }, "points": [], "comments": []}Пример полного Journey
Anchor link toПолное тело запроса Create для небольшого приветственного сценария. Граф выглядит так:
Start by segment ──default──▶ Send push ──default──▶ Wait 1 day ──default──▶ Boolean splitter ──output1──▶ Send email ──default──▶ Exit └──default───────────────────────────▶ ExitТочки связаны между собой через info.next_point_uuid каждого выхода. Обратите внимание на ключи выходов: каждая точка использует default, за исключением логического разделителя, который добавляет output1 для ветви с совпавшим условием (default является его запасным вариантом). Точка выхода не имеет выходов.
{ "title": "Welcome series", "params": { "application_code": "XXXXX-XXXXX", "user_id_track_change_policy": "TRACK" }, "points": [ { "uuid": "11111111-1111-1111-1111-111111111111", "title": "New signups", "point_type": "POINT_TYPE_START_BY_SEGMENT", "position": { "x": 80, "y": 200 }, "outputs": [ { "identity": { "key": "default", "order": 0 }, "info": { "title": "", "next_point_uuid": "22222222-2222-2222-2222-222222222222" } } ], "point_data": { "start_by_segment": { "application_code": "XXXXX-XXXXX", "filter_code": "AAAAA-BBBBB" } } }, { "uuid": "22222222-2222-2222-2222-222222222222", "title": "Welcome push", "point_type": "POINT_TYPE_SEND_PUSH", "position": { "x": 340, "y": 200 }, "outputs": [ { "identity": { "key": "default", "order": 0 }, "info": { "title": "", "next_point_uuid": "33333333-3333-3333-3333-333333333333" } } ], "point_data": { "send_push": { "application_code": "XXXXX-XXXXX", "title": "Welcome!", "content": "Thanks for joining — here's how to get started." } } }, { "uuid": "33333333-3333-3333-3333-333333333333", "title": "Wait 1 day", "point_type": "POINT_TYPE_WAIT", "position": { "x": 600, "y": 200 }, "outputs": [ { "identity": { "key": "default", "order": 0 }, "info": { "title": "", "next_point_uuid": "44444444-4444-4444-4444-444444444444" } } ], "point_data": { "delay": { "sec": 86400 } } }, { "uuid": "44444444-4444-4444-4444-444444444444", "title": "Opened the push?", "point_type": "POINT_TYPE_BOOLEAN_SPLITTER", "position": { "x": 860, "y": 200 }, "outputs": [ { "identity": { "key": "output1", "order": 1 }, "info": { "title": "Matched", "next_point_uuid": "55555555-5555-5555-5555-555555555555" } }, { "identity": { "key": "default", "order": 0 }, "info": { "title": "Everyone else", "next_point_uuid": "66666666-6666-6666-6666-666666666666" } } ], "point_data": { "boolean_splitter": { "split_strategy": "SPLIT_FILTER", "load_policy": "ALL", "filter_code": "CCCCC-DDDDD" } } }, { "uuid": "55555555-5555-5555-5555-555555555555", "title": "Follow-up email", "point_type": "POINT_TYPE_SEND_EMAIL", "position": { "x": 1120, "y": 120 }, "outputs": [ { "identity": { "key": "default", "order": 0 }, "info": { "title": "", "next_point_uuid": "66666666-6666-6666-6666-666666666666" } } ], "point_data": { "send_email": { "application_code": "XXXXX-XXXXX", "preset_code": "12345-67890" } } }, { "uuid": "66666666-6666-6666-6666-666666666666", "title": "Exit", "point_type": "POINT_TYPE_EXIT", "position": { "x": 1380, "y": 200 }, "outputs": [], "point_data": { "terminator": {} } } ], "comments": []}Обновление
Anchor link toPUT https://journey-api.svc-nue.pushwoosh.com/api/v3/journeygateway/{uuid}
Заменяет определение существующего Journey. Отправьте полное определение. Точки и комментарии, которые вы отправляете, заменяют текущие.
Параметры пути
Anchor link to| Имя | Тип | Описание |
|---|---|---|
uuid | string | ID Journey для обновления. |
Запрос
Anchor link to| Поле | Тип | Описание |
|---|---|---|
title | string | Новое название Journey. |
params | JourneyParams | Новые общие настройки Journey. |
points | array of Point | Новый полный набор точек. |
comments | array of JourneyComment | Новый полный набор комментариев. |
autosave | bool | Если true, изменение рассматривается как автосохранение в редакторе. По умолчанию false. |
Пример запроса
Anchor link tocurl -X PUT https://journey-api.svc-nue.pushwoosh.com/api/v3/journeygateway/11111111-2222-3333-4444-555555555555 \ -H "Authorization: Api YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "Welcome series v2", "params": { "application_code": "XXXXX-XXXXX" }, "points": [], "comments": [] }'Ответ
Anchor link toВозвращает обновленный объект Journey.
Обновление и возобновление
Anchor link toPOST https://journey-api.svc-nue.pushwoosh.com/api/v3/journeygateway/{uuid}/resume
Применяет изменения к Journey и возобновляет его одним вызовом. Это эквивалентно обновлению с последующим запуском жизненного цикла. Тело запроса соответствует обновлению. Используйте этот метод при редактировании приостановленного Journey, которое вы хотите вернуть в состояние STATUS_RUNNING.
Переименование
Anchor link toPOST https://journey-api.svc-nue.pushwoosh.com/api/v3/journeygateway/{uuid}/rename
Изменяет только название Journey, не затрагивая его точки или настройки.
| Поле | Обязательно | Тип | Описание |
|---|---|---|---|
title | Да | string | Новое название Journey. |
Пример запроса
Anchor link tocurl -X POST https://journey-api.svc-nue.pushwoosh.com/api/v3/journeygateway/11111111-2222-3333-4444-555555555555/rename \ -H "Authorization: Api YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "Welcome series (Q3)" }'