Отправка VIBER#
Отправка VIBER-сообщений#
POST https://direct.i-dgtl.ru/api/v1/message
Метод позволяет отправлять массив одиночных сообщений (от 1 до 1000)
Headers#
Name |
Type |
Description |
|---|---|---|
Authorization* |
string |
|
Content-Type* |
string |
|
Request Body#
Name |
Type |
Description |
|---|---|---|
channelType* |
string |
Канал отправки ( |
senderName* |
string |
Имя отправителя. Допускаются VIBER-имена в статусе «Одобрено» |
destination* |
string |
Номер абонента |
content* |
object |
Контент сообщения. Ниже описаны возможные варианты содержимого. |
tags |
array |
Теги сообщения (массив строк). Каждый тег должен соответствовать выражению |
useLocalTime |
boolean |
Флаг, отвечающий за таймзону, в которой будет отправлено сообщение: |
localSendTime |
string |
Нижняя граница допустимого времени отправки сообщения (с учетом значения |
localCompletionTime |
string |
Верхняя граница допустимого времени отправки сообщения (с учетом |
ttl |
integer |
Время жизни сообщения в секундах. По истечении ttl сообщению устанавливается финальный статус. |
hours |
array |
Допустимые часы отправки (массив чисел). В массиве могут быть переданы целые числа от 0 до 23, каждое из которых соответствует разрешенному для отправки интервалу с учетом |
days |
array |
Допустимые дни отправки (массив чисел). В массиве могут быть переданы целые числа от 1 (пн) до 7 (вс), каждое из которых соответствует разрешенному для отправки дню недели; значения должны быть уникальны. |
shortUrl |
boolean |
Флаг, отвечающий за сокращение ссылок в сообщении: |
callbackUrl |
string |
Адрес для отправки callback |
callbackEvents |
array |
События, по которым будут отправлены callback (массив строк). При наличии |
externalMessageId |
string |
Внутренний id сообщения в вашей системе. До 100 символов. |
В случае успешного запроса возвращается ответ, в котором перечислены идентификаторы сообщений и коды результата. При значении errors = false гарантируется, что все переданные сообщения успешно созданы.
{
"errors": false,
"items": [
{
"messageUuid": "063474ec-a34f-4558-90c5-984395000004",
"code": 201
},
{
"messageUuid": "063564ec-a34f-4558-90c5-984395000005",
"code": 201
}
]
}
Использование невалидного токена / отсутствие заголовка авторизации.
{
"error": {
"code": 4012,
"msg": "Bad credentials"
}
}
{
"error": {
"code": 4010,
"msg": "Not Authenticated"
}
}
Использование неподходящего токена.
{
"error": {
"code": 4030,
"msg": "Access Denied"
}
}
Невалидные параметры в теле запроса; ниже приведены несколько примеров ответа.
{
"error": {
"code": 4220,
"msg": "Invalid msisdn"
}
}
-----------------------------------------------------------------------------
{
"error": {
"code": 4220,
"msg": "Invalid text length in viber content (0)"
}
}
-----------------------------------------------------------------------------
{
"error": {
"code": 4220,
"msg": "Invalid caption length in viber content (3)"
}
}
-----------------------------------------------------------------------------
{
"error": {
"code": 4220,
"msg": "Invalid caption length in viber content (3)"
}
}
Payment Required. Недостаточно средств на балансе.
{
"error": {
"code": 402,
"msg": "Insufficient funds"
}
}
Совет
Рекомендуемое время ожидания ответа: 70 секунд.
Как правило, ответ на запрос возвращается не более чем за несколько секунд, но таймаут величиной в 70 секунд позволяет гарантированно получить ответ на запрос, в том числе в ситуациях повышенной нагрузки.
Совет
Для использования личного домена в сокращенных ссылках необходимо обратиться в поддержку
Возможные варианты перечислений:
Параметр |
Варианты |
|---|---|
callbackEvents |
Текстовое сообщение #
Для отправки текстового VIBER-сообщения используется следующий объект content:
{
"contentType": "text",
"text": "текст viber-сообщения"
}
Параметр |
Тип |
Описание |
|---|---|---|
contentType |
string required |
Тип контента ( |
text |
string required |
Текст сообщения; строка в кодировке UTF-8 без Byte Order Mark От 1 до 1000 символов |
Сообщение с графическим вложением #
Для отправки VIBER-сообщения с картинкой используется следующий объект content:
{
"contentType": "image",
"imageUrl": "<ссылка на изображение>"
}
Параметр |
Тип |
Описание |
|---|---|---|
contentType |
string required |
Тип контента ( |
imageUrl |
string required |
Ссылка на изображение |
Сообщение с интерактивными элементами #
Для отправки VIBER-сообщения с интерактивными элементами (кнопкой и опционально изображением) используется следующий объект content:
{
"contentType": "button",
"text": "текст viber-сообщения",
"caption": "текст кнопки",
"action": "<ссылка на кнопке>",
"imageUrl": "<ссылка на изображение>"
}
Параметр |
Тип |
Описание |
|---|---|---|
contentType |
string required |
Тип контента ( |
text |
string required |
Текст сообщения; строка в кодировке UTF-8 без Byte Order Mark От 1 до 1000 символов |
caption |
string required |
Текст для кнопки От 1 до 30 символов |
action |
string required |
Ссылка для кнопки |
imageUrl |
string optional |
Ссылка на изображение |
Пример запроса с минимальным набором параметров #
В примере ниже указан минимально необходимый набор параметров для отправки VIBER-сообщения.
POST https://direct.i-dgtl.ru/api/v1/message
Authorization: Basic QWxhZGRpbjpvc...
Content-Type: application/json
[
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"content": {
"contentType": "text",
"text": "Текст VIBER-сообщения"
}
}
]
curl -X POST 'https://direct.i-dgtl.ru/api/v1/message' \
-H 'Content-Type: application/json' \
-H 'Authorization: Basic QWxhZGRpbjpvc...' \
-d '[{"senderName":"SENDER","channelType":"VIBER","content":{"contentType":"text","text":"текст сообщения"},"destination":"7818242882"}]
import requests
import json
url = "https://direct.i-dgtl.ru/api/v1/message"
payload = json.dumps([
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"content": {
"contentType": "text",
"text": "Текст VIBER-сообщения"
}
}
])
headers = {
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
const raw = JSON.stringify([
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"content": {
"contentType": "text",
"text": "Текст VIBER-сообщения"
}
}
]);
const requestOptions = {
method: "POST",
headers: myHeaders,
body: raw,
redirect: "follow"
};
fetch("https://direct.i-dgtl.ru/api/v1/message", 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 {\n \"senderName\": \"SENDER\",\n \"channelType\": \"VIBER\",\n \"destination\": \"7818242882\",\n \"content\": {\n \"contentType\": \"text\",\n \"text\": \"Текст VIBER-сообщения\"\n }\n }\n]");
Request request = new Request.Builder()
.url("https://direct.i-dgtl.ru/api/v1/message")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
<?php
$client = new Client();
$headers = [
'Content-Type' => 'application/json'
];
$body = '[
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"content": {
"contentType": "text",
"text": "Текст VIBER-сообщения"
}
}
]';
$request = new Request('POST', 'https://direct.i-dgtl.ru/api/v1/message', $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/message"
method := "POST"
payload := strings.NewReader(`[
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"content": {
"contentType": "text",
"text": "Текст VIBER-сообщения"
}
}
]`)
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))
}
Пример запроса со всеми параметрами #
В примере присутствуют объекты VIBER-сообщений со всеми возможными типами содержимого. В данном примере буду отправлены 3 вида VIBER-сообщений.
POST https://direct.i-dgtl.ru/api/v1/message
Authorization: Basic QWxhZGRpbjpvc...
Content-Type: application/json
[
{
"senderName": "SENDER",
"channelType": "VIBER",
"content": {
"contentType": "text",
"text": "текст сообщения https://domain.com"
},
"destination": "7818242882",
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"shortUrl": true,
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read",
"click"
],
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"content": {
"contentType": "button",
"text": "текст сообщения",
"caption": "текст кнопки",
"action": "<ссылка на кнопке>",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"destination": "7818242882",
"content": {
"contentType": "image",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"externalMessageId": "10898",
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
}
]
curl -X POST 'https://direct.i-dgtl.ru/api/v1/message' \
-H 'Content-Type: application/json' \
-H 'Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==' \
-d '[{"senderName":"SENDER","channelType":"VIBER","content":{"contentType":"text","text":"текст сообщения"},"destination":"7818242882","localSendTime":"2020-06-15 18:00:00","localCompletionTime":"2020-06-16 21:00:00","callbackUrl":"https://company.com/callback","callbackEvents":["delivered","read"],"useLocalTime":true,"ttl":43200,"hours":[12,13,14],"days":[1,2],"tags":["tag1","tag2"]},{"senderName":"SENDER","channelType":"VIBER","destination":"7818242882","callbackUrl":"https://company.com/callback","callbackEvents":["delivered","read"],"content":{"contentType":"button","text":"текст сообщения","caption":"текст кнопки","action":"<ссылка на кнопке>","imageUrl":"<ссылка на изображение>"},"localSendTime":"2020-06-15 18:00:00","localCompletionTime":"2020-06-16 21:00:00","useLocalTime":true,"ttl":43200,"hours":[12,13,14],"days":[1,2],"tags":["tag1","tag2"]},{"senderName":"SENDER","channelType":"VIBER","callbackUrl":"https://company.com/callback","callbackEvents":["delivered","read"],"destination":"7818242882","content":{"contentType":"image","imageUrl":"<ссылка на изображение>"},"localSendTime":"2020-06-15 18:00:00","localCompletionTime":"2020-06-16 21:00:00","useLocalTime":true,"ttl":43200,"hours":[12,13,14],"days":[1,2],"tags":["tag1","tag2"]}]'
import requests
import json
url = "https://direct.i-dgtl.ru/api/v1/message"
payload = json.dumps([
{
"senderName": "SENDER",
"channelType": "VIBER",
"content": {
"contentType": "text",
"text": "текст сообщения https://domain.com"
},
"destination": "7818242882",
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"shortUrl": True,
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read",
"click"
],
"useLocalTime": True,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"content": {
"contentType": "button",
"text": "текст сообщения",
"caption": "текст кнопки",
"action": "<ссылка на кнопке>",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": True,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"destination": "7818242882",
"content": {
"contentType": "image",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": True,
"ttl": 43200,
"externalMessageId": "10898",
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
}
])
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer MTY3MDQ6c1FOa3BmOTYxdkdJeW9QRHJ6U0Rhaw=='
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Bearer MTY3MDQ6c1FOa3BmOTYxdkdJeW9QRHJ6U0Rhaw==");
const raw = JSON.stringify([
{
"senderName": "SENDER",
"channelType": "VIBER",
"content": {
"contentType": "text",
"text": "текст сообщения https://domain.com"
},
"destination": "7818242882",
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"shortUrl": true,
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read",
"click"
],
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"content": {
"contentType": "button",
"text": "текст сообщения",
"caption": "текст кнопки",
"action": "<ссылка на кнопке>",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"destination": "7818242882",
"content": {
"contentType": "image",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"externalMessageId": "10898",
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
}
]);
const requestOptions = {
method: "POST",
headers: myHeaders,
body: raw,
redirect: "follow"
};
fetch("https://direct.i-dgtl.ru/api/v1/message", 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 {\n \"senderName\": \"SENDER\",\n \"channelType\": \"VIBER\",\n \"content\": {\n \"contentType\": \"text\",\n \"text\": \"текст сообщения https://domain.com\"\n },\n \"destination\": \"7818242882\",\n \"localSendTime\": \"2020-06-15 18:00:00\",\n \"localCompletionTime\": \"2020-06-16 21:00:00\",\n \"shortUrl\": true,\n \"callbackUrl\": \"https://company.com/callback\",\n \"callbackEvents\": [\n \"delivered\",\n \"read\",\n \"click\"\n ],\n \"useLocalTime\": true,\n \"ttl\": 43200,\n \"hours\": [\n 12,\n 13,\n 14\n ],\n \"days\": [\n 1,\n 2\n ],\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ]\n },\n {\n \"senderName\": \"SENDER\",\n \"channelType\": \"VIBER\",\n \"destination\": \"7818242882\",\n \"callbackUrl\": \"https://company.com/callback\",\n \"callbackEvents\": [\n \"delivered\",\n \"read\"\n ],\n \"content\": {\n \"contentType\": \"button\",\n \"text\": \"текст сообщения\",\n \"caption\": \"текст кнопки\",\n \"action\": \"<ссылка на кнопке>\",\n \"imageUrl\": \"<ссылка на изображение>\"\n },\n \"localSendTime\": \"2020-06-15 18:00:00\",\n \"localCompletionTime\": \"2020-06-16 21:00:00\",\n \"useLocalTime\": true,\n \"ttl\": 43200,\n \"hours\": [\n 12,\n 13,\n 14\n ],\n \"days\": [\n 1,\n 2\n ],\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ]\n },\n {\n \"senderName\": \"SENDER\",\n \"channelType\": \"VIBER\",\n \"callbackUrl\": \"https://company.com/callback\",\n \"callbackEvents\": [\n \"delivered\",\n \"read\"\n ],\n \"destination\": \"7818242882\",\n \"content\": {\n \"contentType\": \"image\",\n \"imageUrl\": \"<ссылка на изображение>\"\n },\n \"localSendTime\": \"2020-06-15 18:00:00\",\n \"localCompletionTime\": \"2020-06-16 21:00:00\",\n \"useLocalTime\": true,\n \"ttl\": 43200,\n \"externalMessageId\": \"10898\",\n \"hours\": [\n 12,\n 13,\n 14\n ],\n \"days\": [\n 1,\n 2\n ],\n \"tags\": [\n \"tag1\",\n \"tag2\"\n ]\n }\n]");
Request request = new Request.Builder()
.url("https://direct.i-dgtl.ru/api/v1/message")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "Bearer MTY3MDQ6c1FOa3BmOTYxdkdJeW9QRHJ6U0Rhaw==")
.build();
Response response = client.newCall(request).execute();
<?php
$client = new Client();
$headers = [
'Content-Type' => 'application/json',
'Authorization' => 'Bearer MTY3MDQ6c1FOa3BmOTYxdkdJeW9QRHJ6U0Rhaw=='
];
$body = '[
{
"senderName": "SENDER",
"channelType": "VIBER",
"content": {
"contentType": "text",
"text": "текст сообщения https://domain.com"
},
"destination": "7818242882",
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"shortUrl": true,
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read",
"click"
],
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"content": {
"contentType": "button",
"text": "текст сообщения",
"caption": "текст кнопки",
"action": "<ссылка на кнопке>",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"destination": "7818242882",
"content": {
"contentType": "image",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"externalMessageId": "10898",
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
}
]';
$request = new Request('POST', 'https://direct.i-dgtl.ru/api/v1/message', $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/message"
method := "POST"
payload := strings.NewReader(`[
{
"senderName": "SENDER",
"channelType": "VIBER",
"content": {
"contentType": "text",
"text": "текст сообщения https://domain.com"
},
"destination": "7818242882",
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"shortUrl": true,
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read",
"click"
],
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"destination": "7818242882",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"content": {
"contentType": "button",
"text": "текст сообщения",
"caption": "текст кнопки",
"action": "<ссылка на кнопке>",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
},
{
"senderName": "SENDER",
"channelType": "VIBER",
"callbackUrl": "https://company.com/callback",
"callbackEvents": [
"delivered",
"read"
],
"destination": "7818242882",
"content": {
"contentType": "image",
"imageUrl": "<ссылка на изображение>"
},
"localSendTime": "2020-06-15 18:00:00",
"localCompletionTime": "2020-06-16 21:00:00",
"useLocalTime": true,
"ttl": 43200,
"externalMessageId": "10898",
"hours": [
12,
13,
14
],
"days": [
1,
2
],
"tags": [
"tag1",
"tag2"
]
}
]`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Authorization", "Bearer MTY3MDQ6c1FOa3BmOTYxdkdJeW9QRHJ6U0Rhaw==")
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))
}