# Створення одноразового розкладу

Зберегти хмарний телефон після запланованого завдання.
Специфікація параметра templateParameter
1. **Джерело параметра**
Ключі параметрів мають бути вилучені з поля `parameter`, що повертається такими API:

- Отримати сторінки шаблонів ринку
- Отримати сторінки персональних шаблонів

1. **Структура даних**

- Надсилати параметри у форматі об'єкта JSON: `{"key1": "value1", "key2": "value2"}`
- Кінцеві значення параметрів мають бути десеріалізовані відповідно до бізнес-логіки перед використанням

1. **Параметри загального типу**
Для наступних типів параметрів передайте значення безпосередньо у відповідному форматі:

- рядок: `{"name": "John"}`
- десяткове / число: `{"amount": 100.50}`
- логічний: `{"enabled": true}`

1. **Параметри типу медіа**
Для медіа-параметрів, таких як зображення (pic) або відео (video), окрім основної інформації, необхідно включити фіксований ключ `__Extra__"`. Приклад формату:


```json
{
"__Extra__": {
"pic": {
"name": "pic_name",
"size": 204800
},
"video": {
"name": "video_name",
"size": 204800000
}
},
"pic": "https://get.morelogin.com/prod/cloudPhoneTaskVideo/1556061681934880/1c62314c7e2b4d298abe8d5452d7c050/test.png",
"video": "morelogin://cloudfile?ids=1,2"
}
```
1. **Приклад налаштування параметра**
У наступному прикладі показано, як налаштувати параметр `templateParameter` під час збереження плану за допомогою шаблону ринку:

- **Крок 1: Отримання параметрів шаблону**
Виклик API шаблону ринку:
`GET /api/cloudphone/rpa/template/market/page`
Витягніть поле `parameter` з відповіді, наприклад:


```json
"parameter": "{\"videoDownloadUrl\":{\"type\":\"video\",\"extra\":{\"name\":\"Select Відео", "тип": "відео", "обов'язкове": "правда", "значення за замовчуванням": "увімкнено": "false", "індекс": 1, "ліміт розміру": "значення": 200, "одиниця": "МБ"}, "тип формату": [mp4", "mov"]}}, "опис відео": "тип": "рядок", "додаткове": "ім'я": "Відео" Підпис\",\"тип\":\"рядок\",\"обов'язковий\":false,\"допустимий символ\":{\"увімкнено\":true,\"значення\":1000},\"багаторядковий\":{\"увімкнено\":true,\"значення\":3},\"значення за замовчуванням\":{\"увімкнено\":false},\"індекс\":2}},\"управління_обкладинкою\":{\"тип\":\"зображення\",\"додатковий\":{\"назва\":\"Обкладинка Зображення\", "тип\":\"зображення\", "обов'язкове\":false, "значення за замовчуванням\":{\"увімкнено\":false}, "індекс\":3, "ліміт розміру\":{\"значення\":5, "одиниця\":\"МБ\"}, "тип формату\":[\"jpg\",\"png\",\"jpeg\"]}}, "enableAIGC\":{\"тип\":\"логічне\",\"додаткове\":{\"назва\":\"Мітка ШІ\",\"тип\":\"логічне\",\"обов'язкове\":false, "значення за замовчуванням\":{\"увімкнено\":false},\"індекс\":4}}, "ідентифікатор_продукту\":{\"тип\":\"рядок\",\"додаткове\":{\"назва\":\"Продукт ID\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":50},\"placeholder\":\"Ідентифікатор продукту підтримує лише цифри, максимум 50 символів.\",\"defaultValue\":{\"enabled\":false},\"index\":5}},\"productTitle\":{\"type\":\"string\",\"extra\":{\"name\":\"Назва продукту\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":30},\"defaultValue\":{\"enabled\":false},\"index\":6}},\"getLeads\":{\"type\":\"boolean\",\"extra\":{\"name\":\"Отримати Leads\",\"type\":\"boolean\",\"required\":false,\"defaultValue\":{\"enabled\":false},\"index\":7}},\"comment\":{\"type\":\"string\",\"extra\":{\"name\":\"Comment\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":200},\"multiline\":{\"enabled\":true,\"value\":3},\"defaultValue\":{\"enabled\":false},\"index\":8}}}"
```
- **Крок 2: Створення параметра JSON**
Створіть об'єкт JSON відповідно до вимог до параметра:


```json
{
"__Extra__": {
"videoDownloadUrl": {
"name": "video_name.mp4",
"size": 204800000
}
},
"videoDownloadUrl": "morelogin://cloudfile?ids=1,2"
}
```
- **Крок 3: Екранування рядка JSON**
Конвертуйте об'єкт JSON у формат екранованого рядка:


```json
"{\"__Extra__\": {\"videoDownloadUrl\": {\"name\": \"video_name.mp4\",\"size\": 204800000}},\"videoDownloadUrl\": \"morelogin://cloudfile?ids=1,2\"}"
```
- **Крок 4: Виклик API**
Передайте екранований рядок як значення параметра `templateParameter` до цільового API.

Задокументовані бізнес-помилки: `33814`, `33818`. Значення кодів див. у [Error Codes](../Getting%20Started/error-codes.md). Будь-яка операція може додатково повернути загальні коди.

Endpoint: POST /api/cloudphone/rpa/onceTask/save
Version: 2026-09-05

## Request fields (application/json):

  - `cloudPhoneId` (string, required)
    Ідентифікатор хмарного телефону

  - `scheduleName` (string, required)
    Назва розкладу

  - `templateId` (string, required)
    Ідентифікатор шаблону, персональний шаблон або ідентифікатор ринкового шаблону

  - `templateParameter` (string)
    Параметри шаблону визначено в особистих шаблонах або шаблонах ринку. Параметри в шаблоні визначено так:{"Test":{"extra":{"type":"string","required":true,"multiline":{"enabled":false},"name":"Test","index":1},"type":"string"}}. Під час запиту параметрів передається параметр:{"Test":"xxxx"}

  - `description` (string)
    Опис розкладу

## Response 200:

  - `200` (unknown)
    Успіх. `data` — одне значення типу integer.

## Response 200 fields (application/json):

  - `code` (integer, required)
    Код відповіді, 0 означає успіх, >0 означає невдачу

  - `msg` (string | null, required)
    Повідомлення про помилку

  - `requestId` (string, required)
    Ідентифікатор трасування запиту

  - `data` (integer, required)
    Ідентифікатор розкладу

