Referência de API para desenvolvedores

Começando

Uma chave de API é necessária para que as solicitações sejam processadas pelo sistema. Depois que um usuário se registra, uma chave de API é gerada automaticamente para esse usuário. A chave de API deve ser enviada com cada solicitação (veja o exemplo completo abaixo). Se a chave de API não for enviada ou tiver expirado, ocorrerá um erro. Certifique-se de manter sua chave de API em segredo para evitar abusos.

Autenticação

Para autenticar com o sistema de API, você precisa enviar sua chave de API como um token de autorização com cada solicitação. Você pode ver o código de exemplo abaixo.

curl --location --request POST 'https://urlkai.com/api/account' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/account",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
));

$response = curl_exec($curl); 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/account',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: ''
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/account"
carga = {}
cabeçalhos = {
  'Autorização': 'Portador YOURAPIKEY',
  'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/account");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Taxa limite

Nossa API tem um limitador de taxa para proteger contra picos de solicitações para maximizar sua estabilidade. Nosso limitador de taxa está limitado a 30 solicitações por 1 minuto. Observe que a tarifa pode mudar de acordo com o plano assinado.

Vários cabeçalhos serão enviados juntamente com a resposta e estes podem ser examinados para determinar várias informações sobre a solicitação.

X-RateLimit-Limit: 30
X-RateLimit-Remaining: 29
X-RateLimit-Reset: TIMESTAMP
Tratamento de respostas

Todas as respostas da API são retornadas no formato JSON por padrão. Para converter isso em dados utilizáveis, a função apropriada precisará ser usada de acordo com o idioma. Em PHP, a função json_decode() pode ser usada para converter os dados em um objeto (padrão) ou um array (defina o segundo parâmetro como true). É muito importante verificar a chave de erro, pois ela fornece informações sobre se houve ou não um erro. Você também pode verificar o código do cabeçalho.

{
    "error": 1,
    "message": "An error occurred"
}

Conta

Obter conta
GET https://urlkai.com/api/account

Para obter informações sobre a conta, você pode enviar uma solicitação para esse endpoint e ele retornará dados sobre a conta.

curl --location --request GET 'https://urlkai.com/api/account' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/account",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/account',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/account"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/account");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "dados": {
        "id": 1,
        "e-mail": " [email protegido] ",
        "nome de usuário": "sampleuser",
        "avatar": "https:\/\/domain.com\/content\/avatar.png",
        "status": "pro",
        "expira": "2022-11-15 15:00:00",
        "registrado": "2020-11-10 18:01:43"
    }
} 
Atualizar conta
PUT https://urlkai.com/api/account/update

Para atualizar as informações sobre a conta, você pode enviar uma solicitação para esse endpoint e ele atualizará os dados da conta.

curl --location --request PUT 'https://urlkai.com/api/account/update' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "e-mail": " [email protegido] ",
    "senha": "novasenha"
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/account/update",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "COLOCAR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "e-mail": " [email protegido] ",
	    "senha": "novasenha"
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'PUT',
    'url': 'https://urlkai.com/api/account/update',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "e-mail": " [email protegido] ",
    "senha": "novasenha"
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/account/update"
carga = {
    "e-mail": " [email protegido] ",
    "senha": "novasenha"
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("PUT", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var solicitação = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/account/update");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "e-mail": " [email protegido] ",
    "senha": "novasenha"
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "A conta foi atualizada com sucesso."
} 

Campanhas

Listar campanhas
GET https://urlkai.com/api/campaigns?limit=2&page=1

Para obter suas campanhas por meio da API, você pode usar esse endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/campaigns?limit=2&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/campaigns?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/campaigns?limit=2&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/campaigns?limit=2&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/campaigns?limit=2&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "campanhas": [
            {
                "id": 1,
                "name": "Exemplo de campanha",
                "público": falso,
                "rotator": false,
                "lista": "https:\/\/domain.com\/u\/admin\/list-1"
            },
            {
                "id": 2,
                "domain": "Campanha do Facebook",
                "público": verdadeiro,
                "rotador": "https:\/\/domain.com\/r\/test",
                "lista": "https:\/\/domain.com\/u\/admin\/test-2"
            }
        ]
    }
} 
Crie uma campanha
POST https://urlkai.com/api/campaign/add

Uma campanha pode ser adicionada usando esse endpoint.

Parâmetro Descrição
nome (opcional) Nome da campanha
lesma (opcional) Lesma Rotadora
público (opcional) Acesso
curl --location --request POST 'https://urlkai.com/api/campaign/add' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "name": "Nova Campanha",
    "slug": "nova campanha",
    "público": verdadeiro
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/campaign/add",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "name": "Nova Campanha",
	    "slug": "nova campanha",
	    "público": verdadeiro
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/campaign/add',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "name": "Nova Campanha",
    "slug": "nova campanha",
    "público": verdadeiro
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/campaign/add"
carga = {
    "name": "Nova Campanha",
    "slug": "nova campanha",
    "público": verdadeiro
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("POST", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/campaign/add");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "name": "Nova Campanha",
    "slug": "nova campanha",
    "público": verdadeiro
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "id": 3,
    "domain": "Nova Campanha",
    "público": verdadeiro,
    "rotator": "https:\/\/domain.com\/r\/new-campaign",
    "lista": "https:\/\/domain.com\/u\/admin\/new-campaign-3"
} 
POST https://urlkai.com/api/campaign/:campaignid/assign/:linkid

Um link curto pode ser atribuído a uma campanha usando esse endpoint. O endpoint requer o ID da campanha e o ID do link curto.

curl --location --request POST 'https://urlkai.com/api/campaign/:campaignid/assign/:linkid' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/campaign/:campaignid/assign/:linkid",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/campaign/:campaignid/assign/:linkid',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/campaign/:campaignid/assign/:linkid"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("POST", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/campaign/:campaignid/assign/:linkid");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "Link adicionado com sucesso à campanha."
} 
Atualizar campanha
PUT https://urlkai.com/api/campaign/:id/update

Para atualizar uma campanha, você precisa enviar dados válidos em JSON por meio de uma solicitação PUT. Os dados devem ser enviados como o corpo bruto de sua solicitação, conforme mostrado abaixo. O exemplo abaixo mostra todos os parâmetros que você pode enviar, mas não é obrigado a enviar todos (consulte a tabela para obter mais informações).

Parâmetro Descrição
nome (obrigatório) Nome da campanha
lesma (opcional) Lesma Rotadora
público (opcional) Acesso
curl --location --request PUT 'https://urlkai.com/api/campaign/:id/update' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "name": "Campanha do Twitter",
    "slug": "campanha do twitter",
    "público": verdadeiro
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/campaign/:id/update",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "COLOCAR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "name": "Campanha do Twitter",
	    "slug": "campanha do twitter",
	    "público": verdadeiro
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'PUT',
    'url': 'https://urlkai.com/api/campaign/:id/update',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "name": "Campanha do Twitter",
    "slug": "campanha do twitter",
    "público": verdadeiro
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/campaign/:id/update"
carga = {
    "name": "Campanha do Twitter",
    "slug": "campanha do twitter",
    "público": verdadeiro
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("PUT", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/campaign/:id/update");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "name": "Campanha do Twitter",
    "slug": "campanha do twitter",
    "público": verdadeiro
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "id": 3,
    "domain": "Campanha do Twitter",
    "público": verdadeiro,
    "rotator": "https:\/\/domain.com\/r\/twitter-campaign",
    "lista": "https:\/\/domain.com\/u\/admin\/twitter-campaign-3"
} 
Excluir campanha
DELETE https://urlkai.com/api/campaign/:id/delete

Para excluir uma campanha, você precisa enviar uma solicitação DELETE.

curl --location --request DELETE 'https://urlkai.com/api/campaign/:id/delete' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/campaign/:id/delete",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "EXCLUIR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'DELETE',
    'url': 'https://urlkai.com/api/campaign/:id/delete',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/campaign/:id/delete"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("DELETE", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/campaign/:id/delete");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "A campanha foi excluída com sucesso."
} 

Canais

Listar canais
GET https://urlkai.com/api/channels?limit=2&page=1

Para obter seus canais por meio da API, você pode usar esse endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/channels?limit=2&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/channels?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/channels?limit=2&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/channels?limit=2&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/channels?limit=2&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "canais": [
            {
                "id": 1,
                "name": "Canal 1",
                "description": "Descrição do canal 1",
                "cor": "#000000",
                "Estrelado": Verdadeiro
            },
            {
                "id": 2,
                "name": "Canal 2",
                "description": "Descrição do canal 2",
                "cor": "#FF0000",
                "estrelado": falso
            }
        ]
    }
} 
Listar itens de canal
GET https://urlkai.com/api/channel/:id?limit=1&page=1

Para obter itens em um canal selecionado por meio da API, você pode usar esse endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/channel/:id?limit=1&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/channel/:id?limit=1&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/channel/:id?limit=1&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/channel/:id?limit=1&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/channel/:id?limit=1&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "itens": [
            {
                "tipo": "links",
                "id": 1,
                "title": "Meu link de amostra",
                "visualização": "https:\/\/google.com",
                "link": "https:\/\/urlkai.com\/google",
                "data": "2022-05-12"
            },
            {
                "tipo": "bio",
                "id": 1,
                "title": "Minha biografia de amostra",
                "visualização": "https:\/\/urlkai.com\/mybio",
                "link": "https:\/\/urlkai.com\/mybio",
                "data": "01/06/2022"
            }
        ]
    }
} 
Criar um canal
POST https://urlkai.com/api/channel/add

Um canal pode ser adicionado usando esse ponto de extremidade.

Parâmetro Descrição
nome (obrigatório) Nome do canal
descrição (opcional) Descrição do canal
Cor (opcional) Cor do emblema do canal (HEX)
Estrelou (opcional) Marcar o canal com estrela ou não (verdadeiro ou falso)
curl --location --request POST 'https://urlkai.com/api/channel/add' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "name": "Novo Canal",
    "description": "Meu novo canal",
    "cor": "#000000",
    "Estrelado": Verdadeiro
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/channel/add",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "name": "Novo Canal",
	    "description": "Meu novo canal",
	    "cor": "#000000",
	    "Estrelado": Verdadeiro
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/channel/add',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "name": "Novo Canal",
    "description": "Meu novo canal",
    "cor": "#000000",
    "Estrelado": Verdadeiro
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/channel/add"
carga = {
    "name": "Novo Canal",
    "description": "Meu novo canal",
    "cor": "#000000",
    "Estrelado": Verdadeiro
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("POST", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/channel/add");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "name": "Novo Canal",
    "description": "Meu novo canal",
    "cor": "#000000",
    "Estrelado": Verdadeiro
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "id": 3,
    "name": "Novo Canal",
    "description": "Meu novo canal",
    "cor": "#000000",
    "Estrelado": Verdadeiro
} 
Atribuir um item a um canal
POST https://urlkai.com/api/channel/:channelid/assign/:type/:itemid

Um item pode ser atribuído a qualquer canal enviando uma solicitação com o ID do canal, tipo de item (links, biografia ou qr) e ID do item.

Parâmetro Descrição
:ID do canal (obrigatório) ID do canal
:tipo (obrigatório) links ou biografia ou QR
:itemid (obrigatório) Item ID
curl --location --request POST 'https://urlkai.com/api/channel/:channelid/assign/:type/:itemid' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/channel/:channelid/assign/:type/:itemid",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/channel/:channelid/assign/:type/:itemid',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/channel/:channelid/assign/:type/:itemid"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("POST", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var solicitação = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/channel/:channelid/assign/:type/:itemid");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "Item adicionado com sucesso ao canal."
} 
Atualizar canal
PUT https://urlkai.com/api/channel/:id/update

Para atualizar um canal, você precisa enviar dados válidos em JSON por meio de uma solicitação PUT. Os dados devem ser enviados como o corpo bruto de sua solicitação, conforme mostrado abaixo. O exemplo abaixo mostra todos os parâmetros que você pode enviar, mas não é obrigado a enviar todos (consulte a tabela para obter mais informações).

Parâmetro Descrição
nome (opcional) Nome do canal
descrição (opcional) Descrição do canal
Cor (opcional) Cor do emblema do canal (HEX)
Estrelou (opcional) Marcar o canal com estrela ou não (verdadeiro ou falso)
curl --location --request PUT 'https://urlkai.com/api/channel/:id/update' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "name": "Acme Corp",
    "description": "canal para itens para a Acme Corp",
    "cor": "#FFFFFF",
    "estrelado": falso
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/channel/:id/update",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "COLOCAR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "name": "Acme Corp",
	    "description": "canal para itens para a Acme Corp",
	    "cor": "#FFFFFF",
	    "estrelado": falso
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'PUT',
    'url': 'https://urlkai.com/api/channel/:id/update',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "name": "Acme Corp",
    "description": "canal para itens para a Acme Corp",
    "cor": "#FFFFFF",
    "estrelado": falso
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/channel/:id/update"
carga = {
    "name": "Acme Corp",
    "description": "canal para itens para a Acme Corp",
    "cor": "#FFFFFF",
    "estrelado": falso
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("PUT", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/channel/:id/update");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "name": "Acme Corp",
    "description": "canal para itens para a Acme Corp",
    "cor": "#FFFFFF",
    "estrelado": falso
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O canal foi atualizado com sucesso."
} 
Excluir canal
DELETE https://urlkai.com/api/channel/:id/delete

Para excluir um canal, você precisa enviar uma solicitação DELETE. Todos os itens também serão não atribuídos.

curl --location --request DELETE 'https://urlkai.com/api/channel/:id/delete' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/channel/:id/delete",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "EXCLUIR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'DELETE',
    'url': 'https://urlkai.com/api/channel/:id/delete',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/channel/:id/delete"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("DELETE", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/channel/:id/delete");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O canal foi excluído com sucesso."
} 

Códigos QR

Listar códigos QR
GET https://urlkai.com/api/qr?limit=2&page=1

Para obter seus códigos QR por meio da API, você pode usar este endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/qr?limit=2&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/qr?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/qr?limit=2&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/qr?limit=2&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/qr?limit=2&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "qrs": [
            {
                "id": 2,
                "link": "https:\/\/urlkai.com\/qr\/a2d5e",
                "varreduras": 0,
                "name": "Google",
                "data": "2020-11-10 18:01:43"
            },
            {
                "id": 1,
                "link": "https:\/\/urlkai.com\/qr\/b9edfe",
                "varreduras": 5,
                "name": "Google Canadá",
                "data": "2020-11-10 18:00:25"
            }
        ]
    }
} 
Obtenha um único QR Code
GET https://urlkai.com/api/qr/:id

Para obter detalhes de um único código QR por meio da API, você pode usar esse endpoint.

curl --location --request GET 'https://urlkai.com/api/qr/:id' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/qr/:id",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/qr/:id',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/qr/:id"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/qr/:id");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "detalhes": {
        "id": 1,
        "link": "https:\/\/urlkai.com\/qr\/b9edfe",
        "varreduras": 5,
        "name": "Google Canadá",
        "data": "2020-11-10 18:00:25"
    },
    "dados": {
        "cliques": 1,
        "uniqueClicks": 1,
        "topCountries": {
            "Desconhecido": "1"
        },
        "topReferrers": {
            "Direto, e-mail e outros": "1"
        },
        "topBrowsers": {
            "Chrome": "1"
        },
        "topOs": {
            "Windows 10": "1"
        },
        "socialCount": {
            "facebook": 0,
            "twitter": 0,
            "Instagram": 0
        }
    }
} 
Crie um código QR
POST https://urlkai.com/api/qr/add

Para criar um QR Code, você precisa enviar um dado válido em JSON por meio de uma solicitação POST. Os dados devem ser enviados como o corpo bruto de sua solicitação, conforme mostrado abaixo. O exemplo abaixo mostra todos os parâmetros que você pode enviar, mas não é obrigado a enviar todos (consulte a tabela para obter mais informações).

Parâmetro Descrição
tipo (obrigatório) texto | vcard | ligação | E-mail | telefone | sms | Wi-Fi
dados (obrigatório) Dados a serem incorporados dentro do código QR. Os dados podem ser string ou array, dependendo do tipo
fundo (opcional) Cor RGB, por exemplo, rgb (255.255.255)
primeiro plano (opcional) Cor RGB, por exemplo, rgb(0,0,0)
logotipo (opcional) Caminho para o logotipo png ou jpg
nome (opcional) Nome do código QR
curl --location --request POST 'https://urlkai.com/api/qr/add' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "tipo": "link",
    "dados": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logotipo": "https:\/\/site.com\/logo.png",
    "name": "API de código QR"
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/qr/add",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "tipo": "link",
	    "dados": "https:\/\/google.com",
	    "background": "rgb(255,255,255)",
	    "primeiro plano": "rgb(0,0,0)",
	    "logotipo": "https:\/\/site.com\/logo.png",
	    "name": "API de código QR"
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/qr/add',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "tipo": "link",
    "dados": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logotipo": "https:\/\/site.com\/logo.png",
    "name": "API de código QR"
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/qr/add"
carga = {
    "tipo": "link",
    "dados": "https://google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logo": "https://site.com/logo.png",
    "name": "API de código QR"
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("POST", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/qr/add");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "tipo": "link",
    "dados": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logotipo": "https:\/\/site.com\/logo.png",
    "name": "API de código QR"
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "id": 3,
    "link": "https:\/\/urlkai.com\/qr\/a58f79"
} 
Atualizar QR Code
PUT https://urlkai.com/api/qr/:id/update

Para atualizar um QR Code, você precisa enviar dados válidos em JSON por meio de uma solicitação PUT. Os dados devem ser enviados como o corpo bruto de sua solicitação, conforme mostrado abaixo. O exemplo abaixo mostra todos os parâmetros que você pode enviar, mas não é obrigado a enviar todos (consulte a tabela para obter mais informações).

Parâmetro Descrição
dados (obrigatório) Dados a serem incorporados dentro do código QR. Os dados podem ser string ou array, dependendo do tipo
fundo (opcional) Cor RGB, por exemplo, rgb (255.255.255)
primeiro plano (opcional) Cor RGB, por exemplo, rgb(0,0,0)
logotipo (opcional) Caminho para o logotipo png ou jpg
curl --location --request PUT 'https://urlkai.com/api/qr/:id/update' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "tipo": "link",
    "dados": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logotipo": "https:\/\/site.com\/logo.png"
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/qr/:id/update",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "COLOCAR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "tipo": "link",
	    "dados": "https:\/\/google.com",
	    "background": "rgb(255,255,255)",
	    "primeiro plano": "rgb(0,0,0)",
	    "logotipo": "https:\/\/site.com\/logo.png"
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'PUT',
    'url': 'https://urlkai.com/api/qr/:id/update',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "tipo": "link",
    "dados": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logotipo": "https:\/\/site.com\/logo.png"
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/qr/:id/update"
carga = {
    "tipo": "link",
    "dados": "https://google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logotipo": "https://site.com/logo.png"
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("PUT", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/qr/:id/update");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "tipo": "link",
    "dados": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "primeiro plano": "rgb(0,0,0)",
    "logotipo": "https:\/\/site.com\/logo.png"
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O QR foi atualizado com sucesso."
} 
Excluir um código QR
DELETE https://urlkai.com/api/qr/:id/delete

Para excluir um código QR, você precisa enviar uma solicitação DELETE.

curl --location --request DELETE 'https://urlkai.com/api/qr/:id/delete' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/qr/:id/delete",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "EXCLUIR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'DELETE',
    'url': 'https://urlkai.com/api/qr/:id/delete',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/qr/:id/delete"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("DELETE", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/qr/:id/delete");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O QR Code foi excluído com sucesso."
} 

Domínios de marca

Listar domínios de marca
GET https://urlkai.com/api/domains?limit=2&page=1

Para obter seus domínios de marca por meio da API, você pode usar esse endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/domains?limit=2&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/domains?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/domains?limit=2&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/domains?limit=2&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/domains?limit=2&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "domínios": [
            {
                "id": 1,
                "domínio": "https:\/\/domain1.com",
                "raiz de redirecionamento": "https:\/\/rootdomain.com",
                "redirecionamento404": "https:\/\/rootdomain.com\/404"
            },
            {
                "id": 2,
                "domínio": "https:\/\/domain2.com",
                "raiz de redirecionamento": "https:\/\/rootdomain2.com",
                "redirect404": "https:\/\/rootdomain2.com\/404"
            }
        ]
    }
} 
Criar um domínio de marca
POST https://urlkai.com/api/domain/add

Um domínio pode ser adicionado usando esse ponto de extremidade. Certifique-se de que o domínio esteja apontado corretamente para o nosso servidor.

Parâmetro Descrição
domínio (obrigatório) Domínio de marca, incluindo http ou https
raiz de redirecionamento (opcional) Redirecionamento raiz quando alguém visita seu domínio
redirecionamento404 (opcional) Redirecionamento 404 personalizado
curl --location --request POST 'https://urlkai.com/api/domain/add' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "domínio": "https:\/\/domain1.com",
    "raiz de redirecionamento": "https:\/\/rootdomain.com",
    "redirecionamento404": "https:\/\/rootdomain.com\/404"
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/domain/add",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "domínio": "https:\/\/domain1.com",
	    "raiz de redirecionamento": "https:\/\/rootdomain.com",
	    "redirecionamento404": "https:\/\/rootdomain.com\/404"
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/domain/add',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "domínio": "https:\/\/domain1.com",
    "raiz de redirecionamento": "https:\/\/rootdomain.com",
    "redirecionamento404": "https:\/\/rootdomain.com\/404"
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/domain/add"
carga = {
    "domínio": "https://domain1.com",
    "redirectroot": "https://rootdomain.com",
    "redirect404": "https://rootdomain.com/404"
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("POST", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/domain/add");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "domínio": "https:\/\/domain1.com",
    "raiz de redirecionamento": "https:\/\/rootdomain.com",
    "redirecionamento404": "https:\/\/rootdomain.com\/404"
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "id": 1
} 
Atualizar domínio
PUT https://urlkai.com/api/domain/:id/update

Para atualizar um domínio de marca, você precisa enviar dados válidos em JSON por meio de uma solicitação PUT. Os dados devem ser enviados como o corpo bruto de sua solicitação, conforme mostrado abaixo. O exemplo abaixo mostra todos os parâmetros que você pode enviar, mas não é obrigado a enviar todos (consulte a tabela para obter mais informações).

Parâmetro Descrição
raiz de redirecionamento (opcional) Redirecionamento raiz quando alguém visita seu domínio
redirecionamento404 (opcional) Redirecionamento 404 personalizado
curl --location --request PUT 'https://urlkai.com/api/domain/:id/update' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "raiz de redirecionamento": "https:\/\/rootdomain-new.com",
    "redirecionamento404": "https:\/\/rootdomain-new.com\/404"
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/domain/:id/update",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "COLOCAR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "raiz de redirecionamento": "https:\/\/rootdomain-new.com",
	    "redirecionamento404": "https:\/\/rootdomain-new.com\/404"
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'PUT',
    'url': 'https://urlkai.com/api/domain/:id/update',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "raiz de redirecionamento": "https:\/\/rootdomain-new.com",
    "redirecionamento404": "https:\/\/rootdomain-new.com\/404"
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/domain/:id/update"
carga = {
    "redirectroot": "https://rootdomain-new.com",
    "redirect404": "https://rootdomain-new.com/404"
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("PUT", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/domain/:id/update");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "raiz de redirecionamento": "https:\/\/rootdomain-new.com",
    "redirecionamento404": "https:\/\/rootdomain-new.com\/404"
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O domínio foi atualizado com sucesso."
} 
Excluir domínio
DELETE https://urlkai.com/api/domain/:id/delete

Para excluir um domínio, você precisa enviar uma solicitação DELETE.

curl --location --request DELETE 'https://urlkai.com/api/domain/:id/delete' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/domain/:id/delete",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "EXCLUIR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'DELETE',
    'url': 'https://urlkai.com/api/domain/:id/delete',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/domain/:id/delete"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("DELETE", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/domain/:id/delete");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O domínio foi excluído com sucesso."
} 

Links


Píxeis

Listar pixels
GET https://urlkai.com/api/pixels?limit=2&page=1

Para obter seus códigos de pixels por meio da API, você pode usar esse endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/pixels?limit=2&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/pixels?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/pixels?limit=2&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/pixels?limit=2&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var solicitação = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/pixels?limit=2&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "pixels": [
            {
                "id": 1,
                "tipo": "gtmpixel",
                "name": "Pixel GTM",
                "tag": "GA-123456789",
                "data": "2020-11-10 18:00:00"
            },
            {
                "id": 2,
                "tipo": "twitterpixel",
                "name": "Pixel do Twitter",
                "tag": "1234567",
                "data": "2020-11-10 18:10:00"
            }
        ]
    }
} 
Criar um pixel
POST https://urlkai.com/api/pixel/add

Um pixel pode ser criado usando esse ponto de extremidade. Você precisa enviar o tipo de pixel e a tag.

Parâmetro Descrição
tipo (obrigatório) gtmpixel | gapixel | fbpixel | AdwordsPixel | linkedinpixel | twitterpixel | AdrollPixel | Quorapixel | Pinterest | bing | Snapchat | Reddit | Tiktok
nome (obrigatório) Nome personalizado para o pixel
etiqueta (obrigatório) A tag para o pixel
curl --location --request POST 'https://urlkai.com/api/pixel/add' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "tipo": "gtmpixel",
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/pixel/add",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "tipo": "gtmpixel",
	    "name": "Meu GTM",
	    "tag": "GTM-ABCDE"
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'POST',
    'url': 'https://urlkai.com/api/pixel/add',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "tipo": "gtmpixel",
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/pixel/add"
carga = {
    "tipo": "gtmpixel",
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("POST", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://urlkai.com/api/pixel/add");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "tipo": "gtmpixel",
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "id": 1
} 
Atualizar pixel
PUT https://urlkai.com/api/pixel/:id/update

Para atualizar um pixel, você precisa enviar dados válidos em JSON por meio de uma solicitação PUT. Os dados devem ser enviados como o corpo bruto de sua solicitação, conforme mostrado abaixo. O exemplo abaixo mostra todos os parâmetros que você pode enviar, mas não é obrigado a enviar todos (consulte a tabela para obter mais informações).

Parâmetro Descrição
nome (opcional) Nome personalizado para o pixel
etiqueta (obrigatório) A tag para o pixel
curl --location --request PUT 'https://urlkai.com/api/pixel/:id/update' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \
--data-raw '{
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}' 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/pixel/:id/update",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "COLOCAR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    CURLOPT_POSTFIELDS => 
        '{
	    "name": "Meu GTM",
	    "tag": "GTM-ABCDE"
	}',
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'PUT',
    'url': 'https://urlkai.com/api/pixel/:id/update',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    corpo: JSON.stringify({
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}),
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/pixel/:id/update"
carga = {
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("PUT", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var solicitação = new HttpRequestMessage(HttpMethod.Put, "https://urlkai.com/api/pixel/:id/update");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{
    "name": "Meu GTM",
    "tag": "GTM-ABCDE"
}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O pixel foi atualizado com sucesso."
} 
Excluir pixel
DELETE https://urlkai.com/api/pixel/:id/delete

Para excluir um pixel, você precisa enviar uma solicitação DELETE.

curl --location --request DELETE 'https://urlkai.com/api/pixel/:id/delete' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/pixel/:id/delete",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "EXCLUIR",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'DELETE',
    'url': 'https://urlkai.com/api/pixel/:id/delete',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/pixel/:id/delete"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("DELETE", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "https://urlkai.com/api/pixel/:id/delete");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": 0,
    "message": "O pixel foi excluído com sucesso."
} 

Sobreposições de CTA

Listar sobreposições de CTA
GET https://urlkai.com/api/overlay?limit=2&page=1

Para obter sobreposições de cta por meio da API, você pode usar esse endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/overlay?limit=2&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/overlay?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/overlay?limit=2&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/overlay?limit=2&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/overlay?limit=2&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "cta": [
            {
                "id": 1,
                "tipo": "mensagem",
                "name": "Promoção do Produto 1",
                "data": "2020-11-10 18:00:00"
            },
            {
                "id": 2,
                "tipo": "contato",
                "name": "Página de contato",
                "data": "2020-11-10 18:10:00"
            }
        ]
    }
} 

Splash personalizado

Listar Splash personalizado
GET https://urlkai.com/api/splash?limit=2&page=1

Para obter páginas iniciais personalizadas por meio da API, você pode usar esse endpoint. Você também pode filtrar dados (consulte a tabela para obter mais informações).

Parâmetro Descrição
limite (opcional) Resultado de dados por página
página (opcional) Solicitação de página atual
curl --location --request GET 'https://urlkai.com/api/splash?limit=2&page=1' \
--header 'Autorização: Portador YOURAPIKEY' \
--header 'Tipo de conteúdo: aplicativo / json' \ 
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://urlkai.com/api/splash?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => verdadeiro,
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT = > 10,
    CURLOPT_FOLLOWLOCATION => verdadeiro,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Autorização: Portador YOURAPIKEY",
        "Tipo de conteúdo: application/json",
    ],
    
));

$response = curl_exec($curl);

curl_close($curl);
eco $response; 
var solicitação = require('solicitação');
var opções = {
    'method': 'GET',
    'url': 'https://urlkai.com/api/splash?limit=2&page=1',
    'cabeçalhos': {
        'Autorização': 'Portador YOURAPIKEY',
        'Tipo de conteúdo': 'aplicativo / json'
    },
    
};
request(opções, função (erro, resposta) {
    if (error) throw new Error(error);
    console.log(resposta.corpo);
}); 
Solicitações de importação
url = "https://urlkai.com/api/splash?limit=2&page=1"
carga = {}
cabeçalhos = {
    'Autorização': 'Portador YOURAPIKEY',
    'Tipo de conteúdo': 'aplicativo / json'
}
resposta = requests.request("GET", url, cabeçalhos=cabeçalhos, json=payload)
print(resposta.texto) 
var cliente = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://urlkai.com/api/splash?limit=2&page=1");
pedir. Headers.Add("Autorização", "Portador YOURAPIKEY");
var content = new StringContent("{}", System.Text.Encoding.UTF8, "application/json");
pedir. Conteúdo = conteúdo;
var response = await client. SendAsync(solicitação);
resposta. EnsureSuccessStatusCode();
Console.WriteLine(await response. Content.ReadAsStringAsync()); 
Resposta do servidor
{
    "erro": "0",
    "dados": {
        "resultado": 2,
        "perpage": 2,
        "página atual": 1,
        "próxima página": 1,
        "maxpage": 1,
        "splash": [
            {
                "id": 1,
                "name": "Promoção do Produto 1",
                "data": "2020-11-10 18:00:00"
            },
            {
                "id": 2,
                "name": "Promoção do Produto 2",
                "data": "2020-11-10 18:10:00"
            }
        ]
    }
}