Developers
Справочник по API для разработчиков
An API key is required for requests to be processed by the system. Once a user registers, an API key is automatically generated for this user.
Начало работы
Ключ API необходим для обработки запросов системой. Как только пользователь регистрируется, для него автоматически генерируется ключ API. Ключ API должен отправляться с каждым запросом (см. полный пример ниже). Если ключ API не отправлен или срок его действия истек, произойдет ошибка. Пожалуйста, держите свой ключ API в секрете, чтобы предотвратить злоупотребление.
Аутентификация
Чтобы пройти аутентификацию в системе API, вам нужно отправлять свой ключ API в виде токена авторизации с каждым запросом. Вы можете увидеть пример кода ниже.
curl --location --request POST 'https://urlkai.com/api/account' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/account",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/account',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: ''
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/account"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/account");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ограничение скорости
Наш API имеет ограничитель скорости для защиты от пиковых запросов для обеспечения максимальной стабильности. В настоящее время наш ограничитель скорости ограничен 30 запросами в 1 минуту. Обратите внимание, что тариф может меняться в зависимости от подписанного плана.
Вместе с ответом будет отправлено несколько заголовков, которые можно будет изучить, чтобы определить различную информацию о запросе.
X-RateLimit-Limit: 30X-RateLimit-Remaining: 29X-RateLimit-Reset: TIMESTAMP
Обработка ответов
По умолчанию все ответы API возвращаются в формате JSON. Чтобы преобразовать их в пригодные для использования данные, необходимо использовать соответствующую функцию в соответствии с языком. В PHP функция json_decode() может использоваться для преобразования данных либо в объект (по умолчанию), либо в массив (установите второй параметр в true). Очень важно проверить ключ ошибки, так как он предоставляет информацию о том, была ли ошибка или нет. Вы также можете проверить код заголовка.
{
"error": 1,
"message": "An error occurred"
}
Получить аккаунт
https://urlkai.com/api/account
Чтобы получить информацию по аккаунту, вы можете отправить запрос в этот эндпоинт и он вернет данные по аккаунту.
curl --location --request GET 'https://urlkai.com/api/account' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/account",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/account',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/account"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/account");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"data": {
"id": 1,
"email": "[email protected]",
"username": "sampleuser",
"avatar": "https:\/\/domain.com\/content\/avatar.png",
"status": "pro",
"expires": "2022-11-15 15:00:00",
"registered": "2020-11-10 18:01:43"
}
}
Обновить учетную запись
https://urlkai.com/api/account/update
Чтобы обновить информацию по аккаунту, вы можете отправить запрос на этот эндпоинт и он обновит данные по аккаунту.
curl --location --request PUT 'https://urlkai.com/api/account/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"email": "[email protected]",
"password": "NewPassword1"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/account/update",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"email": "[email protected]",
"password": "NewPassword1"
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'PUT',
'url': 'https://urlkai.com/api/account/update',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"email": "[email protected]",
"password": "NewPassword1"
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/account/update"
payload = {
"email": "[email protected]",
"password": "NewPassword1"
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/account/update");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"email": "[email protected]",
"password": "NewPassword1"
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Account has been successfully updated."
}
Список брендированных доменов
https://urlkai.com/api/domains?limit=2&page=1
Чтобы получить свои брендированные домены через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/domains?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/domains?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/domains?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/domains?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/domains?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"domains": [
{
"id": 1,
"domain": "https:\/\/domain1.com",
"redirectroot": "https:\/\/rootdomain.com",
"redirect404": "https:\/\/rootdomain.com\/404"
},
{
"id": 2,
"domain": "https:\/\/domain2.com",
"redirectroot": "https:\/\/rootdomain2.com",
"redirect404": "https:\/\/rootdomain2.com\/404"
}
]
}
}
Создание брендированного домена
https://urlkai.com/api/domain/add
Домен может быть добавлен с помощью этой конечной точки. Пожалуйста, убедитесь, что домен правильно указан на наш сервер.
| Параметр | Описание |
|---|---|
| домен | (обязательно) Брендированный домен, включающий http или https |
| redirectroot | (необязательно) Корневая переадресация при посещении вашего домена |
| редирект404 | (необязательно) Пользовательский редирект 404 |
curl --location --request POST 'https://urlkai.com/api/domain/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"domain": "https:\/\/domain1.com",
"redirectroot": "https:\/\/rootdomain.com",
"redirect404": "https:\/\/rootdomain.com\/404"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/domain/add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"domain": "https:\/\/domain1.com",
"redirectroot": "https:\/\/rootdomain.com",
"redirect404": "https:\/\/rootdomain.com\/404"
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/domain/add',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"domain": "https:\/\/domain1.com",
"redirectroot": "https:\/\/rootdomain.com",
"redirect404": "https:\/\/rootdomain.com\/404"
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/domain/add"
payload = {
"domain": "https://domain1.com",
"redirectroot": "https://rootdomain.com",
"redirect404": "https://rootdomain.com/404"
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/domain/add");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"domain": "https:\/\/domain1.com",
"redirectroot": "https:\/\/rootdomain.com",
"redirect404": "https:\/\/rootdomain.com\/404"
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 1
}
Обновить домен
https://urlkai.com/api/domain/:id/update
Чтобы обновить брендированный домен, нужно отправить валидные данные в формате JSON через PUT-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| redirectroot | (необязательно) Корневая переадресация при посещении вашего домена |
| редирект404 | (необязательно) Пользовательский редирект 404 |
curl --location --request PUT 'https://urlkai.com/api/domain/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"redirectroot": "https:\/\/rootdomain-new.com",
"redirect404": "https:\/\/rootdomain-new.com\/404"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/domain/:id/update",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"redirectroot": "https:\/\/rootdomain-new.com",
"redirect404": "https:\/\/rootdomain-new.com\/404"
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'PUT',
'url': 'https://urlkai.com/api/domain/:id/update',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"redirectroot": "https:\/\/rootdomain-new.com",
"redirect404": "https:\/\/rootdomain-new.com\/404"
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/domain/:id/update"
payload = {
"redirectroot": "https://rootdomain-new.com",
"redirect404": "https://rootdomain-new.com/404"
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/domain/:id/update");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"redirectroot": "https:\/\/rootdomain-new.com",
"redirect404": "https:\/\/rootdomain-new.com\/404"
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Domain has been updated successfully."
}
Удалить домен
https://urlkai.com/api/domain/:id/delete
Чтобы удалить домен, необходимо отправить запрос DELETE.
curl --location --request DELETE 'https://urlkai.com/api/domain/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/domain/:id/delete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'DELETE',
'url': 'https://urlkai.com/api/domain/:id/delete',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/domain/:id/delete"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("DELETE", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/domain/:id/delete");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Domain has been deleted successfully."
}
Список оверлеев CTA
https://urlkai.com/api/overlay?limit=2&page=1
Чтобы получить оверлеи cta через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/overlay?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/overlay?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/overlay?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/overlay?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/overlay?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"cta": [
{
"id": 1,
"type": "message",
"name": "Product 1 Promo",
"date": "2020-11-10 18:00:00"
},
{
"id": 2,
"type": "contact",
"name": "Contact Page",
"date": "2020-11-10 18:10:00"
}
]
}
}
Список кампаний
https://urlkai.com/api/campaigns?limit=2&page=1
Чтобы получать свои рассылки через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/campaigns?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/campaigns?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/campaigns?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/campaigns?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/campaigns?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"campaigns": [
{
"id": 1,
"name": "Sample Campaign",
"public": false,
"rotator": false,
"list": "https:\/\/domain.com\/u\/admin\/list-1"
},
{
"id": 2,
"domain": "Facebook Campaign",
"public": true,
"rotator": "https:\/\/domain.com\/r\/test",
"list": "https:\/\/domain.com\/u\/admin\/test-2"
}
]
}
}
Создать кампанию
https://urlkai.com/api/campaign/add
С помощью этой конечной точки можно добавить кампанию.
| Параметр | Описание |
|---|---|
| имя | (необязательно) Название кампании |
| слизняк | (необязательно) Вращательный слаг |
| общественный | (необязательно) Доступ |
curl --location --request POST 'https://urlkai.com/api/campaign/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "New Campaign",
"slug": "new-campaign",
"public": true
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/campaign/add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"name": "New Campaign",
"slug": "new-campaign",
"public": true
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/campaign/add',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"name": "New Campaign",
"slug": "new-campaign",
"public": true
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/campaign/add"
payload = {
"name": "New Campaign",
"slug": "new-campaign",
"public": true
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/campaign/add");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"name": "New Campaign",
"slug": "new-campaign",
"public": true
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 3,
"domain": "New Campaign",
"public": true,
"rotator": "https:\/\/domain.com\/r\/new-campaign",
"list": "https:\/\/domain.com\/u\/admin\/new-campaign-3"
}
Назначение ссылки на кампанию
https://urlkai.com/api/campaign/:campaignid/assign/:linkid
С помощью этой конечной точки кампании можно назначить короткую ссылку. Для конечной точки требуется идентификатор кампании и идентификатор короткой ссылки.
curl --location --request POST 'https://urlkai.com/api/campaign/:campaignid/assign/:linkid' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/campaign/:campaignid/assign/:linkid",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/campaign/:campaignid/assign/:linkid',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/campaign/:campaignid/assign/:linkid"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/campaign/:campaignid/assign/:linkid");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Link successfully added to the campaign."
}
Кампания по обновлению
https://urlkai.com/api/campaign/:id/update
Чтобы обновить кампанию, нужно отправить валидные данные в формате JSON через PUT-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| имя | (обязательно) Название кампании |
| слизняк | (необязательно) Вращательный слаг |
| общественный | (необязательно) Доступ |
curl --location --request PUT 'https://urlkai.com/api/campaign/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Twitter Campaign",
"slug": "twitter-campaign",
"public": true
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/campaign/:id/update",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"name": "Twitter Campaign",
"slug": "twitter-campaign",
"public": true
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'PUT',
'url': 'https://urlkai.com/api/campaign/:id/update',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"name": "Twitter Campaign",
"slug": "twitter-campaign",
"public": true
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/campaign/:id/update"
payload = {
"name": "Twitter Campaign",
"slug": "twitter-campaign",
"public": true
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/campaign/:id/update");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"name": "Twitter Campaign",
"slug": "twitter-campaign",
"public": true
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 3,
"domain": "Twitter Campaign",
"public": true,
"rotator": "https:\/\/domain.com\/r\/twitter-campaign",
"list": "https:\/\/domain.com\/u\/admin\/twitter-campaign-3"
}
Удалить кампанию
https://urlkai.com/api/campaign/:id/delete
Чтобы удалить рассылку, нужно отправить запрос DELETE.
curl --location --request DELETE 'https://urlkai.com/api/campaign/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/campaign/:id/delete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'DELETE',
'url': 'https://urlkai.com/api/campaign/:id/delete',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/campaign/:id/delete"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("DELETE", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/campaign/:id/delete");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Campaign has been deleted successfully."
}
Список каналов
https://urlkai.com/api/channels?limit=2&page=1
Чтобы получить свои каналы через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/channels?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/channels?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/channels?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/channels?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/channels?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"channels": [
{
"id": 1,
"name": "Channel 1",
"description": "Description of channel 1",
"color": "#000000",
"starred": true
},
{
"id": 2,
"name": "Channel 2",
"description": "Description of channel 2",
"color": "#FF0000",
"starred": false
}
]
}
}
Список элементов канала
https://urlkai.com/api/channel/:id?limit=1&page=1
Чтобы получить элементы в выбранных каналах через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/channel/:id?limit=1&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/channel/:id?limit=1&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/channel/:id?limit=1&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/channel/:id?limit=1&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/channel/:id?limit=1&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"items": [
{
"type": "links",
"id": 1,
"title": "My Sample Link",
"preview": "https:\/\/google.com",
"link": "https:\/\/urlkai.com\/google",
"date": "2022-05-12"
},
{
"type": "bio",
"id": 1,
"title": "My Sample Bio",
"preview": "https:\/\/urlkai.com\/mybio",
"link": "https:\/\/urlkai.com\/mybio",
"date": "2022-06-01"
}
]
}
}
Создание канала
https://urlkai.com/api/channel/add
С помощью этой конечной точки можно добавить канал.
| Параметр | Описание |
|---|---|
| имя | (обязательно) Название канала |
| описание | (необязательно) Описание канала |
| Цвет | (необязательно) Цвет значка канала (HEX) |
| усеянный | (необязательно) Помечать канал звездочкой или нет (верно или ложно) |
curl --location --request POST 'https://urlkai.com/api/channel/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/channel/add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/channel/add',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/channel/add"
payload = {
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/channel/add");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 3,
"name": "New Channel",
"description": "my new channel",
"color": "#000000",
"starred": true
}
Назначение элемента каналу
https://urlkai.com/api/channel/:channelid/assign/:type/:itemid
Элемент может быть назначен любому каналу, отправив запрос с идентификатором канала, типом элемента (ссылки, биография или qr) и идентификатором элемента.
| Параметр | Описание |
|---|---|
| :channelid | (обязательно) Идентификатор канала |
| :тип | (обязательные) ссылки или биография или QR |
| :itemid | (обязательно) ID элемента |
curl --location --request POST 'https://urlkai.com/api/channel/:channelid/assign/:type/:itemid' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/channel/:channelid/assign/:type/:itemid",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/channel/:channelid/assign/:type/:itemid',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/channel/:channelid/assign/:type/:itemid"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/channel/:channelid/assign/:type/:itemid");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Item successfully added to the channel."
}
Канал обновлений
https://urlkai.com/api/channel/:id/update
Чтобы обновить канал, нужно отправить валидные данные в формате JSON через PUT-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| имя | (необязательно) Название канала |
| описание | (необязательно) Описание канала |
| Цвет | (необязательно) Цвет значка канала (HEX) |
| усеянный | (необязательно) Помечать канал звездочкой или нет (верно или ложно) |
curl --location --request PUT 'https://urlkai.com/api/channel/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Acme Corp",
"description": "channel for items for Acme Corp",
"color": "#FFFFFF",
"starred": false
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/channel/:id/update",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"name": "Acme Corp",
"description": "channel for items for Acme Corp",
"color": "#FFFFFF",
"starred": false
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'PUT',
'url': 'https://urlkai.com/api/channel/:id/update',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"name": "Acme Corp",
"description": "channel for items for Acme Corp",
"color": "#FFFFFF",
"starred": false
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/channel/:id/update"
payload = {
"name": "Acme Corp",
"description": "channel for items for Acme Corp",
"color": "#FFFFFF",
"starred": false
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/channel/:id/update");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"name": "Acme Corp",
"description": "channel for items for Acme Corp",
"color": "#FFFFFF",
"starred": false
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Channel has been updated successfully."
}
Удалить канал
https://urlkai.com/api/channel/:id/delete
Чтобы удалить канал, нужно отправить запрос DELETE. Все предметы также будут неназначены.
curl --location --request DELETE 'https://urlkai.com/api/channel/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/channel/:id/delete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'DELETE',
'url': 'https://urlkai.com/api/channel/:id/delete',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/channel/:id/delete"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("DELETE", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/channel/:id/delete");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Channel has been deleted successfully."
}
Список пользовательских заставок
https://urlkai.com/api/splash?limit=2&page=1
To get Splash Pages via the API, you can use this endpoint. You can also filter data (See table for more info).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/splash?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/splash?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/splash?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/splash?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/splash?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"splash": [
{
"id": 1,
"name": "Product 1 Promo",
"date": "2020-11-10 18:00:00"
},
{
"id": 2,
"name": "Product 2 Promo",
"date": "2020-11-10 18:10:00"
}
]
}
}
Список файлов
https://urlkai.com/api/files?limit=2&page=1
Получите все свои файлы. Вы также можете искать по имени.
| Параметр | Описание |
|---|---|
| имя | (необязательно) Поиск файла по имени |
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/files?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/files?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/files?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/files?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/files?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"result": 3,
"perpage": 15,
"currentpage": 1,
"nextpage": null,
"maxpage": 1,
"list": [
{
"id": 1,
"name": "My Photo",
"downloads": 10,
"shorturl": "https:\/\/urlkai.com\/ZWCmY",
"date": "2022-08-09 17:00:00"
},
{
"id": 2,
"name": "My Documents",
"downloads": 15,
"shorturl": "https:\/\/urlkai.com\/TOgDG",
"date": "2022-08-10 17:01:00"
},
{
"id": 3,
"name": "My Files",
"downloads": 5,
"shorturl": "https:\/\/urlkai.com\/pvvYY",
"date": "2022-08-11 19:01:00"
}
]
}
Загрузить файл
https://urlkai.com/api/files/upload/:filename?name=My+File
Загрузите файл, отправив двоичные данные в качестве тела сообщения. Вам нужно отправить имя файла с расширением вместо :filename в URL (например, brandkit.zip). Вы можете задать параметры, отправив следующие параметры.
| Параметр | Описание |
|---|---|
| имя | (необязательно) Имя файла |
| обычай | (необязательно) Пользовательский псевдоним вместо случайного псевдонима. |
| домен | (необязательно) Пользовательский домен |
| пароль | (необязательно) Защита паролем |
| истечение | (необязательно) Срок действия примера для скачивания 2021-09-28 |
| максзагрузок | (необязательно) Максимальное количество загрузок |
curl --location --request POST 'https://urlkai.com/api/files/upload/:filename?name=My+File' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '"BINARY DATA"'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/files/upload/:filename?name=My+File",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'"BINARY DATA"',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/files/upload/:filename?name=My+File',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify("BINARY DATA"),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/files/upload/:filename?name=My+File"
payload = "BINARY DATA"
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/files/upload/:filename?name=My+File");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent(""BINARY DATA"", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 1,
"shorturl": "https:\/\/urlkai.com\/vgtjd"
}
Список ссылок
https://urlkai.com/api/urls?limit=2&page=1&order=date
Чтобы получить свои ссылки через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
| порядок | (необязательно) Сортировка данных по дате или клику |
| короткий | (необязательно) Поиск по короткому URL. Обратите внимание, что при использовании параметра short все остальные параметры игнорируются, и в случае совпадения будет возвращен ответ Single Link. |
| q | (необязательно) Поиск ссылок по ключевому слову |
curl --location --request GET 'https://urlkai.com/api/urls?limit=2&page=1&order=date' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/urls?limit=2&page=1&order=date",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/urls?limit=2&page=1&order=date',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/urls?limit=2&page=1&order=date"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/urls?limit=2&page=1&order=date");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"urls": [
{
"id": 2,
"alias": "google",
"shorturl": "https:\/\/urlkai.com\/google",
"longurl": "https:\/\/google.com",
"clicks": 0,
"title": "Google",
"description": "",
"date": "2020-11-10 18:01:43"
},
{
"id": 1,
"alias": "googlecanada",
"shorturl": "https:\/\/urlkai.com\/googlecanada",
"longurl": "https:\/\/google.ca",
"clicks": 0,
"title": "Google Canada",
"description": "",
"date": "2020-11-10 18:00:25"
}
]
}
}
Получите одну ссылку
https://urlkai.com/api/url/:id
Чтобы получить сведения об одной ссылке через API, вы можете использовать эту конечную точку.
curl --location --request GET 'https://urlkai.com/api/url/:id' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/url/:id",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/url/:id',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/url/:id"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/url/:id");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 1,
"details": {
"id": 1,
"shorturl": "https:\/\/urlkai.com\/googlecanada",
"longurl": "https:\/\/google.com",
"title": "Google",
"description": "",
"location": {
"canada": "https:\/\/google.ca",
"united states": "https:\/\/google.us"
},
"device": {
"iphone": "https:\/\/google.com",
"android": "https:\/\/google.com"
},
"expiry": null,
"date": "2020-11-10 18:01:43"
},
"data": {
"clicks": 0,
"uniqueClicks": 0,
"topCountries": 0,
"topReferrers": 0,
"topBrowsers": 0,
"topOs": 0,
"socialCount": {
"facebook": 0,
"twitter": 0,
"google": 0
}
}
}
Сокращение ссылки
https://urlkai.com/api/url/add
Чтобы сократить ссылку, вам нужно отправить действительные данные в формате JSON через POST-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| URL-адрес | (обязательно) Длинный URL для сокращения. |
| обычай | (необязательно) Пользовательский псевдоним вместо случайного псевдонима. |
| тип | (необязательно) Тип перенаправления [direct, frame, splash], только идентификатор для пользовательской заставки или Оверлей-ID для CTA страниц |
| пароль | (необязательно) Защита паролем |
| домен | (необязательно) Пользовательский домен |
| истечение | (необязательно) Срок действия для примера ссылки: 2021-09-28 23:11:16 |
| геотаргет | (необязательно) Данные геотаргетинга |
| DeviceTarget | (необязательно) Данные таргетинга на устройства |
| languagetarget | (необязательно) Данные языкового таргетинга |
| Метазаголовок | (необязательно) Мета-титул |
| метаописание | (необязательно) Мета-описание |
| Метаобраз | (необязательно) Ссылка на изображение в формате jpg или png |
| описание | (необязательно) Примечание или описание |
| Пикселей | (необязательно) Массив идентификаторов пикселей |
| канал | (необязательно) Идентификатор канала |
| кампания | (необязательно) Идентификатор кампании |
| Deeplink | (по выбору) Объект, содержащий ссылки из магазина приложений. При использовании этого важно также установить таргетирование устройств. (Новое) Теперь можно установить параметр «auto» на true, чтобы автоматически генерировать глубокие ссылки из предоставленной длинной ссылки. |
| статус | (необязательно) общественный или Приватный (по умолчанию) |
curl --location --request POST 'https://urlkai.com/api/url/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"url": "https:\/\/google.com",
"status": "private",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"metatitle": "Not Google",
"metadescription": "Not Google description",
"metaimage": "https:\/\/www.mozilla.org\/media\/protocol\/img\/logos\/firefox\/browser\/og.4ad05d4125a5.png",
"description": "For facebook",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"campaign": 1,
"deeplink": {
"auto": true,
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"languagetarget": [
{
"language": "en",
"link": "https:\/\/google.com"
},
{
"language": "fr",
"link": "https:\/\/google.ca"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/url/add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"url": "https:\/\/google.com",
"status": "private",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"metatitle": "Not Google",
"metadescription": "Not Google description",
"metaimage": "https:\/\/www.mozilla.org\/media\/protocol\/img\/logos\/firefox\/browser\/og.4ad05d4125a5.png",
"description": "For facebook",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"campaign": 1,
"deeplink": {
"auto": true,
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"languagetarget": [
{
"language": "en",
"link": "https:\/\/google.com"
},
{
"language": "fr",
"link": "https:\/\/google.ca"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/url/add',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"url": "https:\/\/google.com",
"status": "private",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"metatitle": "Not Google",
"metadescription": "Not Google description",
"metaimage": "https:\/\/www.mozilla.org\/media\/protocol\/img\/logos\/firefox\/browser\/og.4ad05d4125a5.png",
"description": "For facebook",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"campaign": 1,
"deeplink": {
"auto": true,
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"languagetarget": [
{
"language": "en",
"link": "https:\/\/google.com"
},
{
"language": "fr",
"link": "https:\/\/google.ca"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/url/add"
payload = {
"url": "https://google.com",
"status": "private",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"metatitle": "Not Google",
"metadescription": "Not Google description",
"metaimage": "https://www.mozilla.org/media/protocol/img/logos/firefox/browser/og.4ad05d4125a5.png",
"description": "For facebook",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"campaign": 1,
"deeplink": {
"auto": true,
"apple": "https://apps.apple.com/us/app/google/id284815942",
"google": "https://play.google.com/store/apps/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https://google.ca"
},
{
"location": "United States",
"link": "https://google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https://google.com"
},
{
"device": "Android",
"link": "https://google.com"
}
],
"languagetarget": [
{
"language": "en",
"link": "https://google.com"
},
{
"language": "fr",
"link": "https://google.ca"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/url/add");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"url": "https:\/\/google.com",
"status": "private",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"metatitle": "Not Google",
"metadescription": "Not Google description",
"metaimage": "https:\/\/www.mozilla.org\/media\/protocol\/img\/logos\/firefox\/browser\/og.4ad05d4125a5.png",
"description": "For facebook",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"campaign": 1,
"deeplink": {
"auto": true,
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"languagetarget": [
{
"language": "en",
"link": "https:\/\/google.com"
},
{
"language": "fr",
"link": "https:\/\/google.ca"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 3,
"shorturl": "https:\/\/urlkai.com\/google"
}
Ссылка на обновление
https://urlkai.com/api/url/:id/update
Чтобы обновить ссылку, нужно отправить валидные данные в формате JSON через PUT-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| URL-адрес | (обязательно) Длинный URL для сокращения. |
| обычай | (необязательно) Пользовательский псевдоним вместо случайного псевдонима. |
| тип | (необязательно) Тип перенаправления [прямой, кадровый, заставка] |
| пароль | (необязательно) Защита паролем |
| домен | (необязательно) Пользовательский домен |
| истечение | (необязательно) Срок действия для примера ссылки: 2021-09-28 23:11:16 |
| геотаргет | (необязательно) Данные геотаргетинга |
| DeviceTarget | (необязательно) Данные таргетинга на устройства |
| languagetarget | (необязательно) Данные языкового таргетинга |
| Метазаголовок | (необязательно) Мета-титул |
| метаописание | (необязательно) Мета-описание |
| Метаобраз | (необязательно) Ссылка на изображение в формате jpg или png |
| Пикселей | (необязательно) Массив идентификаторов пикселей |
| канал | (необязательно) Идентификатор канала |
| кампания | (необязательно) Идентификатор кампании |
| Deeplink | (необязательно) Объект, содержащий ссылки на магазин приложений. При использовании этого параметра важно также настроить таргетинг на устройство. |
curl --location --request PUT 'https://urlkai.com/api/url/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"url": "https:\/\/google.com",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"deeplink": {
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/url/:id/update",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"url": "https:\/\/google.com",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"deeplink": {
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'PUT',
'url': 'https://urlkai.com/api/url/:id/update',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"url": "https:\/\/google.com",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"deeplink": {
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/url/:id/update"
payload = {
"url": "https://google.com",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"deeplink": {
"apple": "https://apps.apple.com/us/app/google/id284815942",
"google": "https://play.google.com/store/apps/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https://google.ca"
},
{
"location": "United States",
"link": "https://google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https://google.com"
},
{
"device": "Android",
"link": "https://google.com"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/url/:id/update");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"url": "https:\/\/google.com",
"custom": "google",
"password": "mypass",
"expiry": "2020-11-11 12:00:00",
"type": "splash",
"pixels": [
1,
2,
3,
4
],
"channel": 1,
"deeplink": {
"apple": "https:\/\/apps.apple.com\/us\/app\/google\/id284815942",
"google": "https:\/\/play.google.com\/store\/apps\/details?id=com.google.android.googlequicksearchbox&hl=en_CA&gl=US"
},
"geotarget": [
{
"location": "Canada",
"link": "https:\/\/google.ca"
},
{
"location": "United States",
"link": "https:\/\/google.us"
}
],
"devicetarget": [
{
"device": "iPhone",
"link": "https:\/\/google.com"
},
{
"device": "Android",
"link": "https:\/\/google.com"
}
],
"parameters": [
{
"name": "aff",
"value": "3"
},
{
"device": "gtm_source",
"link": "api"
}
]
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 3,
"short": "https:\/\/urlkai.com\/google"
}
Удаление ссылки
https://urlkai.com/api/url/:id/delete
Чтобы удалить ссылку, нужно отправить запрос DELETE.
curl --location --request DELETE 'https://urlkai.com/api/url/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/url/:id/delete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'DELETE',
'url': 'https://urlkai.com/api/url/:id/delete',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/url/:id/delete"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("DELETE", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/url/:id/delete");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Link has been deleted successfully"
}
Список пикселей
https://urlkai.com/api/pixels?limit=2&page=1
Чтобы получить коды пикселей через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/pixels?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/pixels?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/pixels?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/pixels?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/pixels?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"pixels": [
{
"id": 1,
"type": "gtmpixel",
"name": "GTM Pixel",
"tag": "GA-123456789",
"date": "2020-11-10 18:00:00"
},
{
"id": 2,
"type": "twitterpixel",
"name": "Twitter Pixel",
"tag": "1234567",
"date": "2020-11-10 18:10:00"
}
]
}
}
Создание пикселя
https://urlkai.com/api/pixel/add
С помощью этой конечной точки можно создать пиксель. Вам нужно отправить тип пикселя и тег.
| Параметр | Описание |
|---|---|
| тип | (обязательно) gtmpixel | Гапиксель | FBPIXEL | adwordspixel | linkedinpixel | Твиттерпиксель | adrollpixel | Кворапиксель | Пинтерест | Бинг | Снэпчат | Реддит | Тикток |
| имя | (обязательно) Пользовательское имя для пикселя |
| ярлык | (обязательно) Тег для пикселя |
curl --location --request POST 'https://urlkai.com/api/pixel/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"type": "gtmpixel",
"name": "My GTM",
"tag": "GTM-ABCDE"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/pixel/add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"type": "gtmpixel",
"name": "My GTM",
"tag": "GTM-ABCDE"
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/pixel/add',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"type": "gtmpixel",
"name": "My GTM",
"tag": "GTM-ABCDE"
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/pixel/add"
payload = {
"type": "gtmpixel",
"name": "My GTM",
"tag": "GTM-ABCDE"
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/pixel/add");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"type": "gtmpixel",
"name": "My GTM",
"tag": "GTM-ABCDE"
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 1
}
Обновление пикселя
https://urlkai.com/api/pixel/:id/update
Чтобы обновить пиксель, нужно отправить валидные данные в формате JSON через PUT-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| имя | (необязательно) Пользовательское имя для пикселя |
| ярлык | (обязательно) Тег для пикселя |
curl --location --request PUT 'https://urlkai.com/api/pixel/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "My GTM",
"tag": "GTM-ABCDE"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/pixel/:id/update",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"name": "My GTM",
"tag": "GTM-ABCDE"
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'PUT',
'url': 'https://urlkai.com/api/pixel/:id/update',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"name": "My GTM",
"tag": "GTM-ABCDE"
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/pixel/:id/update"
payload = {
"name": "My GTM",
"tag": "GTM-ABCDE"
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/pixel/:id/update");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"name": "My GTM",
"tag": "GTM-ABCDE"
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Pixel has been updated successfully."
}
Удалить пиксель
https://urlkai.com/api/pixel/:id/delete
Чтобы удалить пиксель, нужно отправить запрос DELETE.
curl --location --request DELETE 'https://urlkai.com/api/pixel/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/pixel/:id/delete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'DELETE',
'url': 'https://urlkai.com/api/pixel/:id/delete',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/pixel/:id/delete"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("DELETE", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/pixel/:id/delete");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "Pixel has been deleted successfully."
}
Список QR-кодов
https://urlkai.com/api/qr?limit=2&page=1
Чтобы получить QR-коды через API, вы можете использовать эту конечную точку. Вы также можете фильтровать данные (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| предел | (необязательно) Постраничный результат данных |
| страница | (необязательно) Запрос текущей страницы |
curl --location --request GET 'https://urlkai.com/api/qr?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/qr?limit=2&page=1",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/qr?limit=2&page=1',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/qr?limit=2&page=1"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/qr?limit=2&page=1");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": "0",
"data": {
"result": 2,
"perpage": 2,
"currentpage": 1,
"nextpage": 1,
"maxpage": 1,
"qrs": [
{
"id": 2,
"link": "https:\/\/urlkai.com\/qr\/a2d5e",
"scans": 0,
"name": "Google",
"date": "2020-11-10 18:01:43"
},
{
"id": 1,
"link": "https:\/\/urlkai.com\/qr\/b9edfe",
"scans": 5,
"name": "Google Canada",
"date": "2020-11-10 18:00:25"
}
]
}
}
Получите один QR-код
https://urlkai.com/api/qr/:id
Чтобы получить сведения об одном QR-коде через API, вы можете использовать эту конечную точку.
curl --location --request GET 'https://urlkai.com/api/qr/:id' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/qr/:id",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://urlkai.com/api/qr/:id',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/qr/:id"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/qr/:id");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"details": {
"id": 1,
"link": "https:\/\/urlkai.com\/qr\/b9edfe",
"scans": 5,
"name": "Google Canada",
"date": "2020-11-10 18:00:25"
},
"data": {
"clicks": 1,
"uniqueClicks": 1,
"topCountries": {
"Unknown": "1"
},
"topReferrers": {
"Direct, email and other": "1"
},
"topBrowsers": {
"Chrome": "1"
},
"topOs": {
"Windows 10": "1"
},
"socialCount": {
"facebook": 0,
"twitter": 0,
"instagram": 0
}
}
}
Создание QR-кода
https://urlkai.com/api/qr/add
Чтобы создать QR-код, вам нужно отправить действительные данные в формате JSON через POST-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| тип | (обязательный) текст | VCARD | ссылка | Электронная почта | Телефон | смс | Wi-Fi |
| данные | (обязательно) Данные должны быть встроены в QR-код. Данные могут быть строковыми или массивными в зависимости от типа |
| фон | (необязательно) Цвет RGB, например, rgb (255,255,255) |
| передний план | (необязательно) Цвет RGB, например, rgb(0,0,0) |
| лого | (необязательно) Путь к логотипу либо png, либо jpg |
| имя | (необязательно) Название QR-кода |
curl --location --request POST 'https://urlkai.com/api/qr/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png",
"name": "QR Code API"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/qr/add",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png",
"name": "QR Code API"
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://urlkai.com/api/qr/add',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png",
"name": "QR Code API"
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/qr/add"
payload = {
"type": "link",
"data": "https://google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https://site.com/logo.png",
"name": "QR Code API"
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/qr/add");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png",
"name": "QR Code API"
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"id": 3,
"link": "https:\/\/urlkai.com\/qr\/a58f79"
}
Обновить QR-код
https://urlkai.com/api/qr/:id/update
Чтобы обновить QR-код, нужно отправить действительные данные в формате JSON через PUT-запрос. Данные должны быть отправлены в виде исходного текста вашего запроса, как показано ниже. В приведенном ниже примере показаны все параметры, которые вы можете отправить, но не обязаны отправлять все (см. таблицу для получения дополнительной информации).
| Параметр | Описание |
|---|---|
| данные | (обязательно) Данные должны быть встроены в QR-код. Данные могут быть строковыми или массивными в зависимости от типа |
| фон | (необязательно) Цвет RGB, например, rgb (255,255,255) |
| передний план | (необязательно) Цвет RGB, например, rgb(0,0,0) |
| лого | (необязательно) Путь к логотипу либо png, либо jpg |
curl --location --request PUT 'https://urlkai.com/api/qr/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png"
}'
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/qr/:id/update",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS =>
'{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png"
}',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'PUT',
'url': 'https://urlkai.com/api/qr/:id/update',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png"
}),
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/qr/:id/update"
payload = {
"type": "link",
"data": "https://google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https://site.com/logo.png"
}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/qr/:id/update");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{
"type": "link",
"data": "https:\/\/google.com",
"background": "rgb(255,255,255)",
"foreground": "rgb(0,0,0)",
"logo": "https:\/\/site.com\/logo.png"
}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "QR has been updated successfully."
}
Удаление QR-кода
https://urlkai.com/api/qr/:id/delete
Чтобы удалить QR-код, нужно отправить запрос DELETE.
curl --location --request DELETE 'https://urlkai.com/api/qr/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://urlkai.com/api/qr/:id/delete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 2,
CURLOPT_TIMEOUT => 10,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOURAPIKEY",
"Content-Type: application/json",
],
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'DELETE',
'url': 'https://urlkai.com/api/qr/:id/delete',
'headers': {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
},
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
url = "https://urlkai.com/api/qr/:id/delete"
payload = {}
headers = {
'Authorization': 'Bearer YOURAPIKEY',
'Content-Type': 'application/json'
}
response = requests.request("DELETE", url, headers=headers, json=payload)
print(response.text)
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/qr/:id/delete");
request.Headers.Add("Authorization", "Bearer YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Ответ сервера
{
"error": 0,
"message": "QR Code has been deleted successfully."
}