Grant offer
curl --request POST \
--url https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"create_order": false
}
'import requests
url = "https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}"
payload = { "create_order": False }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({create_order: false})
};
fetch('https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'create_order' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}"
payload := strings.NewReader("{\n \"create_order\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"create_order\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"create_order\": false\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"user_id": 123,
"first_name": "<string>",
"last_name": "<string>",
"username": "<string>",
"phone": "<string>",
"email": "<string>",
"notes": "<string>",
"tags": "<string>",
"is_active": true,
"is_blocked": true,
"last_active_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"utm_tags": {},
"custom_fields": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}Тарифи
Видати тариф
Видає підписнику тариф, за потреби створюючи замовлення
POST
/
api
/
v1
/
bot
/
{bot}
/
subscribers
/
{student}
/
offers
/
{offer}
Grant offer
curl --request POST \
--url https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"create_order": false
}
'import requests
url = "https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}"
payload = { "create_order": False }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({create_order: false})
};
fetch('https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'create_order' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}"
payload := strings.NewReader("{\n \"create_order\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"create_order\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.zenedu.io/api/v1/bot/{bot}/subscribers/{student}/offers/{offer}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"create_order\": false\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"user_id": 123,
"first_name": "<string>",
"last_name": "<string>",
"username": "<string>",
"phone": "<string>",
"email": "<string>",
"notes": "<string>",
"tags": "<string>",
"is_active": true,
"is_blocked": true,
"last_active_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"utm_tags": {},
"custom_fields": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}{
"message": "<string>",
"errors": {}
}Авторизації
API token from the Zenedu dashboard
Параметри шляху
Bot ID
Subscriber ID
Offer ID
Тіло
application/json
Create an order for the grant
Відповідь
Updated subscriber
Subscriber ID
Telegram user ID
First name
Last name
Telegram username
Phone number
Email address
Notes about the subscriber
Comma-separated list of tag names, empty string if none
Whether the subscriber is active
Whether the subscriber is blocked
Last activity timestamp
Subscription timestamp
UTM tags keyed by type
Show child attributes
Show child attributes
Custom field values keyed by field name
Show child attributes
Show child attributes