Referință API pentru dezvoltatori v3

Noțiuni introductive

Este necesară o cheie API pentru ca cererile să fie procesate de sistem. Odată ce un utilizator se înregistrează, o cheie API este generată automat pentru acest utilizator. Cheia API trebuie trimisă cu fiecare solicitare (vezi exemplul complet de mai jos). Dacă cheia API nu este trimisă sau este expirată, va apărea o eroare. Asigurați-vă că păstrați secretă cheia API pentru a preveni abuzul.

Autentificare

Pentru a vă autentifica cu sistemul API, trebuie să trimiteți cheia API ca simbol de autorizare la fiecare solicitare. Puteți vedea exemplu de cod mai jos.

curl --location --request POST 'https://surl.ro/api/url/add' \ 
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \ 
$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/url/add",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer YOURAPIKEY",
    "Content-Type: application/json",
    ),
));

$response = curl_exec($curl);
Limită de solicitări

API-ul nostru are un limitator de solicitări pentru a proteja împotriva creșterii solicitărilor dar și pentru a maximiza stabilitatea acestuia. Limita solicitărilor este în prezent limitată la 30 solicitări pe 1 minut.

Odată cu răspunsul vor fi trimise mai multe anteturi și acestea pot fi examinate pentru a determina diverse informații despre cerere.

X-RateLimit-Limit: 30
X-RateLimit-Remaining: 29
X-RateLimit-Reset: TIMESTAMP
Manipularea răspunsului

Toate răspunsurile API sunt returnate în format JSON în mod implicit. Pentru a le converti în date utilizabile, va trebui utilizată funcția corespunzătoare în funcție de limbă. În PHP, funcția json_decode() poate fi folosită pentru a converti datele fie într-un obiect (implicit), fie într-o matrice (setați al doilea parametru la adevărat). Este foarte important să verificați cheia de eroare, deoarece aceasta oferă informații despre dacă a existat sau nu o eroare. De asemenea, puteți verifica codul antetului.

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

Cont

Obținere cont
GET https://surl.ro/api/account

Pentru a obține informații despre cont, puteți trimite o solicitare la acest punct final și acesta va returna date despre cont.

curl --location --request GET 'https://surl.ro/api/account' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/account",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "data": {
        "id": 1,
        "email": "sample@domain.com",
        "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"
    }
}
Actualizare cont
PUT https://surl.ro/api/account/update

Pentru a actualiza informațiile despre cont, puteți trimite o solicitare la acest punct final și va actualiza datele din cont.

curl --location --request PUT 'https://surl.ro/api/account/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "email": "newemail@google.com",
    "password": "newpassword"
}'
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/account/update",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "PUT",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    CURLOPT_POSTFIELDS => '{
    "email": "newemail@google.com",
    "password": "newpassword"
}',
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "Contul a fost actualizat cu succes."
}

Domenii de marcă

Listați toate domeniile de marcă
GET https://surl.ro/api/domains?limit=2&page=1

Pentru a obține codurile de domenii de marcă prin intermediul API-ului, puteți utiliza acest punct final. De asemenea, puteți filtra datele (consultați tabelul pentru mai multe informații).

ParametruDescriere
limit (opțional) Rezultatul datelor pe pagină
page (opțional) Solicitare pagină curentă
curl --location --request GET 'https://surl.ro/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://surl.ro/api/domains?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "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"
            }
        ]
    }
}
Creați un domeniu de marcă
POST https://surl.ro/api/domain/add

Un domeniu poate fi adăugat folosind acest punct final. Trebuie să trimiteți tipul de pixel și eticheta.

ParametruDescriere
domain (obligatoriu) Domeniu de marcă, inclusiv http sau https
redirectroot (opțional) Redirecționare rădăcină atunci când cineva vă vizitează domeniul
redirect404 (opțional) Redirecționare 404 personalizată
curl --location --request POST 'https://surl.ro/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://surl.ro/api/domain/add",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => array(
        "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;
Răspunsul serverului
{
    "error": 0,
    "id": 1
}
Actualizați un domeniu
PUT https://surl.ro/api/domain/:id/update

Pentru a actualiza un domeniu de marcă, trebuie să trimiteți date valide în JSON printr-o solicitare PUT. Datele trebuie trimise ca corp brut al cererii dvs., după cum se arată mai jos. Exemplul de mai jos arată toți parametrii pe care îi puteți trimite, dar nu vi se cere să îi trimiteți pe toți (vezi tabelul pentru mai multe informații).

ParametruDescriere
redirectroot (opțional) Redirecționare rădăcină atunci când cineva vă vizitează domeniul
redirect404 (opțional) Redirecționare 404 personalizată
curl --location --request PUT 'https://surl.ro/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://surl.ro/api/domain/:id/update",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "PUT",
    CURLOPT_HTTPHEADER => array(
        "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;
Răspunsul serverului
{
    "error": 0,
    "message": "Domeniul a fost actualizat cu succes."
}
Ștergeți domeniul
DELETE https://surl.ro/api/domain/:id/delete

Pentru a șterge un domeniu, trebuie să trimiteți o solicitare de ȘTERGERE.

curl --location --request DELETE 'https://surl.ro/api/domain/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/domain/:id/delete",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "DELETE",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "Domeniul a fost \u0219ters cu succes."
}

Întâmpinare personalizată

Listați toate întâmpinările personalizate
GET https://surl.ro/api/splash?limit=2&page=1

Pentru a obține lista paginilor de întâmpinare personalizate prin intermediul API-ului, puteți utiliza acest punct final. De asemenea, puteți filtra datele (consultați tabelul pentru mai multe informații).

ParametruDescriere
limit (opțional) Rezultatul datelor pe pagină
page (opțional) Solicitare pagină curentă
curl --location --request GET 'https://surl.ro/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://surl.ro/api/splash?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "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"
            }
        ]
    }
}

Suprapuneri CTA

Listați toate suprapunerile CTA
GET https://surl.ro/api/overlay?limit=2&page=1

Pentru a obține lista suprapunerilor CTA prin API, puteți utiliza acest punct final. De asemenea, puteți filtra datele (consultați tabelul pentru mai multe informații).

ParametruDescriere
limit (opțional) Rezultatul datelor pe pagină
page (opțional) Solicitare pagină curentă
curl --location --request GET 'https://surl.ro/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://surl.ro/api/overlay?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "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"
            }
        ]
    }
}

Linkuri


Pixeli

Listați toți pixelii
GET https://surl.ro/api/pixels?limit=2&page=1

Pentru a obține codurile de pixeli prin intermediul API-ului, puteți utiliza acest punct final. De asemenea, puteți filtra datele (consultați tabelul pentru mai multe informații).

ParametruDescriere
limit (opțional) Rezultatul datelor pe pagină
page (opțional) Solicitare pagină curentă
curl --location --request GET 'https://surl.ro/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://surl.ro/api/pixels?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "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"
            }
        ]
    }
}
Creați un Pixel
POST https://surl.ro/api/pixel/add

Un pixel poate fi creat folosind acest punct final. Trebuie să trimiteți tipul de pixel și eticheta.

ParametruDescriere
type (obligatoriu) gtmpixel | gapixel | fbpixel | adwordspixel | linkedinpixel | twitterpixel | adrollpixel | quorapixel | pinterest | bing | snapchat | reddit
name (obligatoriu) Nume personalizat pentru pixelul dvs
tag (obligatoriu) Eticheta pentru pixel
curl --location --request POST 'https://surl.ro/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://surl.ro/api/pixel/add",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => array(
        "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;
Răspunsul serverului
{
    "error": 0,
    "id": 1
}
Actualizați un Pixel
PUT https://surl.ro/api/pixel/:id/update

Pentru a actualiza un pixel, trebuie să trimiteți date valide în JSON printr-o solicitare PUT. Datele trebuie trimise ca corp brut al cererii dvs., după cum se arată mai jos. Exemplul de mai jos arată toți parametrii pe care îi puteți trimite, dar nu vi se cere să îi trimiteți pe toți (vezi tabelul pentru mai multe informații).

ParametruDescriere
name (opțional) Nume personalizat pentru pixelul dvs
tag (obligatoriu) Eticheta pentru pixel
curl --location --request PUT 'https://surl.ro/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://surl.ro/api/pixel/:id/update",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "PUT",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    CURLOPT_POSTFIELDS => '{
    "name": "My GTM",
    "tag": "GTM-ABCDE"
}',
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "Pixelul a fost actualizat cu succes."
}
Ștergeți Pixel
DELETE https://surl.ro/api/pixel/:id/delete

Pentru a șterge un pixel, trebuie să trimiteți o solicitare DE ȘTERGERE.

curl --location --request DELETE 'https://surl.ro/api/pixel/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/pixel/:id/delete",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "DELETE",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "Pixelul a fost \u0219ters cu succes."
}

Coduri QR

Afișați toate codurile QR
GET https://surl.ro/api/qr?limit=2&page=1

Pentru a obține codurile dvs. QR prin API, puteți utiliza acest punct final. De asemenea, puteți filtra datele (consultați tabelul pentru mai multe informații).

ParametruDescriere
limit (opțional) Rezultatul datelor pe pagină
page (opțional) Solicitare pagină curentă
curl --location --request GET 'https://surl.ro/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://surl.ro/api/qr?limit=2&page=1",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": "0",
    "data": {
        "result": 2,
        "perpage": 2,
        "currentpage": 1,
        "nextpage": 1,
        "maxpage": 1,
        "qrs": [
            {
                "id": 2,
                "link": "https:\/\/surl.ro\/qr\/a2d5e",
                "scans": 0,
                "name": "Google",
                "date": "2020-11-10 18:01:43"
            },
            {
                "id": 1,
                "link": "https:\/\/surl.ro\/qr\/b9edfe",
                "scans": 5,
                "name": "Google Canada",
                "date": "2020-11-10 18:00:25"
            }
        ]
    }
}
Obțineți un singur cod QR
GET https://surl.ro/api/qr/:id

Pentru a obține detalii pentru un singur cod QR prin API, puteți utiliza acest punct final.

curl --location --request GET 'https://surl.ro/api/qr/:id' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/qr/:id",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "details": {
        "id": 1,
        "link": "https:\/\/surl.ro\/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
        }
    }
}
Creați un cod QR
POST https://surl.ro/api/qr/add

Pentru a crea un cod QR, trebuie să trimiteți date valide în JSON printr-o solicitare POST. Datele trebuie trimise ca corp brut al cererii dvs., după cum se arată mai jos. Exemplul de mai jos arată toți parametrii pe care îi puteți trimite, dar nu vi se cere să îi trimiteți pe toți (vezi tabelul pentru mai multe informații).

ParametruDescriere
type (obligatoriu) text | vcard | link | email | phone | sms | wifi
data (obligatoriu) Datele care urmează să fie încorporate în codul QR. Datele pot fi șir sau matrice, în funcție de tip
background (opțional) culoare RGB de ex. rgb(255.255.255)
foreground (opțional) culoare RGB de ex. rgb(0,0,0)
logo (opțional) Calea către logo, de tip png sau jpg
curl --location --request POST 'https://surl.ro/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"
}'
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/qr/add",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => array(
        "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;
Răspunsul serverului
{
    "error": 0,
    "id": 3,
    "link": "https:\/\/surl.ro\/qr\/a58f79"
}
Actualizați un cod QR
PUT https://surl.ro/api/qr/:id/update

Pentru a actualiza un cod QR, trebuie să trimiteți date valide în JSON printr-o solicitare PUT. Datele trebuie trimise ca corp brut al cererii dvs., după cum se arată mai jos. Exemplul de mai jos arată toți parametrii pe care îi puteți trimite, dar nu vi se cere să-i trimiteți pe toți (consultați tabelul pentru mai multe informații).

ParametruDescriere
data (obligatoriu) Datele care urmează să fie încorporate în codul QR. Datele pot fi șir sau matrice, în funcție de tip
background (opțional) culoare RGB de ex. rgb(255.255.255)
foreground (opțional) culoare RGB de ex. rgb(0,0,0)
logo (opțional) Calea către logo, de tip png sau jpg
curl --location --request PUT 'https://surl.ro/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://surl.ro/api/qr/:id/update",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "PUT",
    CURLOPT_HTTPHEADER => array(
        "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;
Răspunsul serverului
{
    "error": 0,
    "message": "Codul QR a fost actualizat cu succes."
}
Ștergeți un cod QR
DELETE https://surl.ro/api/qr/:id/delete

Pentru a șterge un cod QR, trebuie să trimiteți o solicitare de ȘTERGERE.

curl --location --request DELETE 'https://surl.ro/api/qr/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/qr/:id/delete",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "DELETE",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "Codul QR a fost \u0219ters cu succes."
}

Pachete

Acest punct final este accesibil numai utilizatorilor cu privilegii de administrator.

Afșiați toate pachetele
GET https://surl.ro/api/plans

Obțineți o listă cu toate pachetele de pe platformă.

curl --location --request GET 'https://surl.ro/api/plans' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/plans",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "data": [
        {
            "id": 2,
            "name": "Business",
            "free": false,
            "prices": {
                "monthly": 9.99,
                "yearly": 99.99,
                "lifetime": 999.99
            },
            "limits": {
                "links": 100,
                "clicks": 100000,
                "retention": 60,
                "custom": {
                    "enabled": "0"
                },
                "team": {
                    "enabled": "0",
                    "count": "0"
                },
                "splash": {
                    "enabled": "1",
                    "count": "5"
                },
                "overlay": {
                    "enabled": "1",
                    "count": "10"
                },
                "pixels": {
                    "enabled": "1",
                    "count": "10"
                },
                "domain": {
                    "enabled": "1",
                    "count": "1"
                },
                "multiple": {
                    "enabled": "0"
                },
                "alias": {
                    "enabled": "1"
                },
                "device": {
                    "enabled": "0"
                },
                "geo": {
                    "enabled": "0"
                },
                "bundle": {
                    "enabled": "0"
                },
                "parameters": {
                    "enabled": "0"
                },
                "export": {
                    "enabled": "0"
                },
                "api": {
                    "enabled": "0"
                }
            }
        },
        {
            "id": 1,
            "name": "Starter",
            "free": true,
            "prices": null,
            "limits": {
                "links": 10,
                "clicks": 1000,
                "retention": 7,
                "custom": {
                    "enabled": "0"
                },
                "team": {
                    "enabled": "0",
                    "count": "0"
                },
                "splash": {
                    "enabled": "0",
                    "count": "0"
                },
                "overlay": {
                    "enabled": "0",
                    "count": "10"
                },
                "pixels": {
                    "enabled": "0",
                    "count": "10"
                },
                "domain": {
                    "enabled": "0",
                    "count": "0"
                },
                "multiple": {
                    "enabled": "0"
                },
                "alias": {
                    "enabled": "0"
                },
                "device": {
                    "enabled": "0"
                },
                "geo": {
                    "enabled": "0"
                },
                "bundle": {
                    "enabled": "0"
                },
                "parameters": {
                    "enabled": "0"
                },
                "export": {
                    "enabled": "0"
                },
                "api": {
                    "enabled": "0"
                }
            }
        }
    ]
}
Abonați un utilizator la un pachet
PUT https://surl.ro/api/plan/:planid/user/:userid

Pentru a abona un utilizator la pachet, trimiteți o solicitare PUT la acest punct final cu ID-ul pachetului și ID-ul utilizatorului. Tipul de abonament și data de expirare vor trebui specificate. Dacă nu este specificată data de expirare, data va fi ajustată în funcție de tip.

ParametruDescriere
type monthly | yearly | lifetime
expiration (opțional) Data de expirare a planului de ex.2022-06-17 22:45:29
curl --location --request PUT 'https://surl.ro/api/plan/:planid/user/:userid' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "type": "monthly",
    "expiration": "2022-06-17 22:45:29"
}'
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/plan/:planid/user/:userid",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "PUT",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    CURLOPT_POSTFIELDS => '{
    "type": "monthly",
    "expiration": "2022-06-17 22:45:29"
}',
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "Utilizatorul a fost abonat la acest plan."
}

Utilizatori

Acest punct final este accesibil numai utilizatorilor cu privilegii de administrator.

Afișați toți utilizatorii
GET https://surl.ro/api/users?filter=free

Obțineți o listă cu toți utilizatorii de pe platformă. Datele pot fi filtrate prin trimiterea unui parametru de filtru în url.

ParametruDescriere
filter admin | free | pro
curl --location --request GET 'https://surl.ro/api/users?filter=free' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/users?filter=free",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "data": [
        {
            "id": 2,
            "email": "sample2@domain.com",
            "username": "sample2user",
            "avatar": "https:\\\/\\\/domain.com\/content\/avatar2.png",
            "status": "free",
            "planid": 1,
            "expires": null,
            "registered": "2020-11-10 18:01:43",
            "apikey": "ABC123DEF456"
        },
        {
            "id": 1,
            "email": "sample@domain.com",
            "username": "sampleuser",
            "avatar": "https:\\\/\\\/domain.com\/content\/avatar.png",
            "status": "pro",
            "planid": 2,
            "expires": "2022-11-15 15:00:00",
            "registered": "2020-11-10 18:01:43",
            "apikey": "ABC123DEF456"
        }
    ]
}
Listați un singur utilizator
GET https://surl.ro/api/user/:id

Obțineți date pentru un singur utilizator.

curl --location --request GET 'https://surl.ro/api/user/:id' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/user/:id",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "data": {
        "id": 2,
        "email": "sample2@domain.com",
        "username": "sample2user",
        "avatar": "https:\\\/\\\/domain.com\/content\/avatar2.png",
        "status": "free",
        "planid": 1,
        "expires": null,
        "registered": "2020-11-10 18:01:43",
        "apikey": "ABC123DEF456"
    }
}
Creați un utilizator
POST https://surl.ro/api/user/add

Pentru a crea un utilizator, utilizați acest punct final și trimiteți următoarele informații ca JSON.

ParametruDescriere
username (obligatoriu) Numele de utilizator al utilizatorului. Trebuie să fie valid.
email (obligatoriu) E-mailul utilizatorului. Trebuie să fie valid.
password (obligatoriu) Parola utilizatorului. Minim 5 caractere.
planid (opțional) Plan Premium. Acesta poate fi găsit în panoul de administrare.
expiration (opțional) Exemplu de expirare a calității de membru 2020-12-26 12:00:00
curl --location --request POST 'https://surl.ro/api/user/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "username": "user",
    "password": "1234567891011",
    "email": "demo@sitedvs.ro",
    "planid": 1,
    "expiration": "2020-11-20 11:00:00"
}'
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/user/add",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    CURLOPT_POSTFIELDS => '{
    "username": "user",
    "password": "1234567891011",
    "email": "demo@sitedvs.ro",
    "planid": 1,
    "expiration": "2020-11-20 11:00:00"
}',
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "User has been registered.",
    "data": {
        "id": 3,
        "email": "demo@sitedvs.ro",
        "username": "user"
    }
}
Ștergeți un utilizator
DELETE https://surl.ro/api/user/:id/delete

Pentru a șterge un utilizator, utilizați acest punct final.

curl --location --request DELETE 'https://surl.ro/api/user/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://surl.ro/api/user/:id/delete",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 2,
    CURLOPT_TIMEOUT => 10,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_CUSTOMREQUEST => "DELETE",
    CURLOPT_HTTPHEADER => array(
        "Authorization: Bearer YOURAPIKEY",
        "Content-Type: application/json",
    ),
    
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Răspunsul serverului
{
    "error": 0,
    "message": "Utilizatorul a fost \u0219ters."
}