версия от 2023-02-13
Группа методов позволяет получать информацию по акциям и активировать промокоды.
Адрес: https://restapi.plusofon.ru
GET
api/v1/promotions
Метод позволяет получить список активированных акций.
Не имеет параметров.
curl -X GET \
-G "https://restapi.plusofon.ru/api/v1/promotions" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Client: 10553" \
-H "Authorization: Bearer {token}"
const url = new URL(
"https://restapi.plusofon.ru/api/v1/promotions"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"Client": "10553",
"Authorization": "Bearer {token}",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://restapi.plusofon.ru/api/v1/promotions',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Client' => '10553',
'Authorization' => 'Bearer {token}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://restapi.plusofon.ru/api/v1/promotions'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Client': '10553',
'Authorization': 'Bearer {token}'
}
response = requests.request('GET', url, headers=headers)
response.json()
В ответе возвращается массив data
:
id
string
ИД акции
name
string
название акции
info
string
описании акции
activated_at
string
дата активации
end_date
string
дата окончания акции
status
object
объект со статусом акции
/ name
string
код статуса
/ title
string
название статуса
description
string
комментарий
Получен список акций:
{
"current_page": 1,
"data": [
{
"id": "1a801bac-e859-350b-c17a-62d96d70ba11",
"name": "NUMBER10",
"info": "Промо-код позволяет приобрести один телефонный номер за 1 рубль.",
"activated_at": "2022-07-21 15:14:39",
"end_date": null,
"status": {
"name": "Closed Won",
"title": "Акция применена"
},
"description": " номер за 1 рубль"
}
],
"first_page_url": "http:\/\/localhost\/api\/v1\/promotions?page=1",
"from": 1,
"next_page_url": null,
"path": "http:\/\/localhost\/api\/v1\/promotions",
"per_page": 15,
"prev_page_url": null,
"to": 1
}
Пользователь не найден:
{
"message": "User not found.",
"code": 500
}
POST
api/v1/promotions
Метод позволяет применить промокод для активации акции.
Body
promo_code
stringcurl -X POST \
"https://restapi.plusofon.ru/api/v1/promotions" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Client: 10553" \
-H "Authorization: Bearer {token}" \
-d '{"promo_code":"hic"}'
const url = new URL(
"https://restapi.plusofon.ru/api/v1/promotions"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"Client": "10553",
"Authorization": "Bearer {token}",
};
let body = {
"promo_code": "hic"
}
fetch(url, {
method: "POST",
headers: headers,
body: body
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://restapi.plusofon.ru/api/v1/promotions',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Client' => '10553',
'Authorization' => 'Bearer {token}',
],
'json' => [
'promo_code' => 'hic',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://restapi.plusofon.ru/api/v1/promotions'
payload = {
"promo_code": "hic"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Client': '10553',
'Authorization': 'Bearer {token}'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
В ответе может возвращаться:
success
признак успешно выполненного запроса
message
сообщение об ошибке
Акция успешно активирована:
{
"success": true
}
Пользователь не найден:
{
"message": "User not found.",
"code": 500
}