Редактирование шаблонов#
Редактирование шаблона#
PUT https://direct.i-dgtl.ru/api/v1/templates/{template_id}
Метод позволяет отредактировать некоторые параметры шаблона.
Path Parameters#
Name |
Type |
Description |
|---|---|---|
template_id* |
string |
Идентификатор шаблона |
Headers#
Name |
Type |
Description |
|---|---|---|
Authorization* |
string |
|
Content-Type* |
string |
|
Request Body#
Name |
Type |
Description |
|---|---|---|
dateFrom |
string |
Новая дата начала действия шаблона. Редактирование допускается для SMS-шаблонов в статусах: |
pattern |
string |
Новый текст шаблона. Редактирование допускается для SMS-шаблонов в статусах: |
dateTo |
string |
Дата окончания действия шаблонов. Допускается для SMS и VIBER-шаблонов в статусе |
{
"id": 1234,
"channelType": "SMS",
"templateType": "SERVICE",
"pattern": "привет, %w",
"dateFrom": "2020-07-07T21:00:00Z",
"dateTo": "2020-10-10T00:00:00Z",
"senderNameId": 1234,
"senderName": "testsend",
"brand": "BEELINE",
"managerComment": "комментарий менеджера",
"status": "CLOSED",
"createdAt": "2020-06-01T21:00:00Z",
"rejectedAt": "2020-06-07T21:00:00Z"
}
Возвращается объект отредактированного шаблона.
Использование невалидного токена / отсутствие заголовка авторизации.
{
"error": {
"code": 4012,
"msg": "Bad credentials"
}
}
{
"error": {
"code": 4010,
"msg": "Not Authenticated"
}
}
Использование неподходящего токена.
{
"error": {
"code": 4012,
"msg": "Access Denied"
}
}
Попытка редактирования недоступных при данном статусе параметров или невалидный текст шаблона; ниже приведены несколько примеров ответа.
{
"error": {
"code": 4220,
"msg": "Forbidden to edit dateTo now"
}
}
-----------------------------------------------------------------------------
{
"error": {
"code": 4221,
"msg": "Invalid pattern",
"correct-example": "%w{1,2} pattern"
}
}
Пример запроса
PUT /api/v1/templates/{template_id}
Content-Type: application/json
Content-Length: 116
{
"dateFrom": "2026-06-01T21:00:00Z",
"dateTo": "2026-12-31T21:00:00Z",
"pattern": "Новый текст шаблона: %d"
}
curl --location --globoff --request PUT 'https://direct.i-dgtl.ru/api/v1/templates/{template_id}' \
--header 'Content-Type: application/json' \
--data '{
"dateFrom": "2026-06-01T21:00:00Z",
"dateTo": "2026-12-31T21:00:00Z",
"pattern": "Новый текст шаблона: %d"
}'
import requests
import json
url = "https://direct.i-dgtl.ru/api/v1/templates/{template_id}"
payload = json.dumps({
"dateFrom": "2026-06-01T21:00:00Z",
"dateTo": "2026-12-31T21:00:00Z",
"pattern": "Новый текст шаблона: %d"
})
headers = {
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, data=payload)
print(response.text)
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
const raw = JSON.stringify({
"dateFrom": "2026-06-01T21:00:00Z",
"dateTo": "2026-12-31T21:00:00Z",
"pattern": "Новый текст шаблона: %d"
});
const requestOptions = {
method: "PUT",
headers: myHeaders,
body: raw,
redirect: "follow"
};
fetch("https://direct.i-dgtl.ru/api/v1/templates/{template_id}", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n \"dateFrom\": \"2026-06-01T21:00:00Z\",\n \"dateTo\": \"2026-12-31T21:00:00Z\",\n \"pattern\": \"Новый текст шаблона: %d\"\n}");
Request request = new Request.Builder()
.url("https://direct.i-dgtl.ru/api/v1/templates/{template_id}")
.method("PUT", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
<?php
$client = new Client();
$headers = [
'Content-Type' => 'application/json'
];
$body = '{
"dateFrom": "2026-06-01T21:00:00Z",
"dateTo": "2026-12-31T21:00:00Z",
"pattern": "Новый текст шаблона: %d"
}';
$request = new Request('PUT', 'https://direct.i-dgtl.ru/api/v1/templates/{template_id}', $headers, $body);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://direct.i-dgtl.ru/api/v1/templates/{template_id}"
method := "PUT"
payload := strings.NewReader(`{
"dateFrom": "2026-06-01T21:00:00Z",
"dateTo": "2026-12-31T21:00:00Z",
"pattern": "Новый текст шаблона: %d"
}`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}