Développeurs

Référence API pour les développeurs

Une clé API est requise pour que les requêtes soient traitées par le système. Dès qu'un utilisateur s'inscrit, une clé API est automatiquement générée pour lui.

Commencer

Une clé API est nécessaire pour que les demandes soient traitées par le système. Dès qu'un utilisateur s'inscrit, une clé API est automatiquement générée pour cet utilisateur. La clé API doit être envoyée avec chaque demande (voir l'exemple complet ci-dessous). Si la clé API n'est pas envoyée ou si elle est expirée, une erreur sera générée. Veillez à garder votre clé API secrète afin d'éviter tout abus.

Authentification

Pour vous authentifier auprès du système API, vous devez envoyer votre clé API comme jeton d'autorisation avec chaque requête. Vous pouvez voir un exemple de code ci-dessous.

curl --location --request POST 'https://app.shorteneo.com/api/account' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \ 

Limite de taux

Notre API est dotée d'un limiteur de débit afin de se prémunir contre les pics de demandes et de maximiser sa stabilité. Notre limiteur de débit est actuellement plafonné à 30 demandes par 1 minute. Veuillez noter que le taux peut varier selon l'abonnement souscrit.

Plusieurs en-têtes seront envoyés avec la réponse et ils peuvent être examinés pour déterminer diverses informations sur la demande.

X-RateLimit-Limit: 30X-RateLimit-Remaining: 29X-RateLimit-Reset: TIMESTAMP

Gestion des réponses

Par défaut, toutes les réponses de l'API sont renvoyées au format JSON. Pour les convertir en données utilisables, il faut utiliser la fonction appropriée en fonction du langage. En PHP, la fonction json_decode() peut être utilisée pour convertir les données en un objet (par défaut) ou en un tableau (en définissant le deuxième paramètre sur true). Il est très important de vérifier la clé d'erreur car elle fournit des informations sur la présence ou non d'une erreur. Vous pouvez également vérifier le code d'en-tête.

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

Campagnes

List Campaigns

GET https://app.shorteneo.com/api/campaigns?limit=2&page=1

To get your campaigns via the API, you can use this endpoint. You can also filter data (See table for more info).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/campaigns?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": "0",
    "data": {
        "result": 2,
        "perpage": 2,
        "currentpage": 1,
        "nextpage": 1,
        "maxpage": 1,
        "campaigns": [
            {
                "id": 1,
                "name": "Sample Campaign",
                "public": false,
                "rotator": false,
                "list": "https:\/\/domain.com\/u\/admin\/list-1"
            },
            {
                "id": 2,
                "domain": "Facebook Campaign",
                "public": true,
                "rotator": "https:\/\/domain.com\/r\/test",
                "list": "https:\/\/domain.com\/u\/admin\/test-2"
            }
        ]
    }
}

Créer une campagne

POST https://app.shorteneo.com/api/campaign/add

A campaign can be added using this endpoint.

Paramètre Détails
name (optional) Campaign name
slug (optional) Rotator Slug
public (optional) Access
curl --location --request POST 'https://app.shorteneo.com/api/campaign/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "New Campaign",
    "slug": "new-campaign",
    "public": true
}'

Réponse du serveur

{
    "error": 0,
    "id": 3,
    "domain": "New Campaign",
    "public": true,
    "rotator": "https:\/\/domain.com\/r\/new-campaign",
    "list": "https:\/\/domain.com\/u\/admin\/new-campaign-3"
}
POST https://app.shorteneo.com/api/campaign/:campaignid/assign/:linkid

A short link can be assigned to a campaign using this endpoint. The endpoint requires the campaign ID and the short link ID.

curl --location --request POST 'https://app.shorteneo.com/api/campaign/:campaignid/assign/:linkid' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "message": "Link successfully added to the campaign."
}

Campagne de mise à jour

PUT https://app.shorteneo.com/api/campaign/:id/update

To update a campaign, you need to send a valid data in JSON via a PUT request. The data must be sent as the raw body of your request as shown below. The example below shows all the parameters you can send but you are not required to send all (See table for more info).

Paramètre Détails
name (required) Campaign name
slug (optional) Rotator Slug
public (optional) Access
curl --location --request PUT 'https://app.shorteneo.com/api/campaign/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Twitter Campaign",
    "slug": "twitter-campaign",
    "public": true
}'

Réponse du serveur

{
    "error": 0,
    "id": 3,
    "domain": "Twitter Campaign",
    "public": true,
    "rotator": "https:\/\/domain.com\/r\/twitter-campaign",
    "list": "https:\/\/domain.com\/u\/admin\/twitter-campaign-3"
}

Delete Campaign

DELETE https://app.shorteneo.com/api/campaign/:id/delete

To delete a campaign, you need to send a DELETE request.

curl --location --request DELETE 'https://app.shorteneo.com/api/campaign/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "message": "Campaign has been deleted successfully."
}

Chaînes

List Channels

GET https://app.shorteneo.com/api/channels?limit=2&page=1

To get your channels via the API, you can use this endpoint. You can also filter data (See table for more info).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/channels?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": "0",
    "data": {
        "result": 2,
        "perpage": 2,
        "currentpage": 1,
        "nextpage": 1,
        "maxpage": 1,
        "channels": [
            {
                "id": 1,
                "name": "Channel 1",
                "description": "Description of channel 1",
                "color": "#000000",
                "starred": true
            },
            {
                "id": 2,
                "name": "Channel 2",
                "description": "Description of channel 2",
                "color": "#FF0000",
                "starred": false
            }
        ]
    }
}

List Channel Items

GET https://app.shorteneo.com/api/channel/:id?limit=1&page=1

To get items in a select channels via the API, you can use this endpoint. You can also filter data (See table for more info).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/channel/:id?limit=1&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": "0",
    "data": {
        "result": 2,
        "perpage": 2,
        "currentpage": 1,
        "nextpage": 1,
        "maxpage": 1,
        "items": [
            {
                "type": "links",
                "id": 1,
                "title": "My Sample Link",
                "preview": "https:\/\/google.com",
                "link": "https:\/\/app.shorteneo.com\/google",
                "date": "2022-05-12"
            },
            {
                "type": "bio",
                "id": 1,
                "title": "My Sample Bio",
                "preview": "https:\/\/app.shorteneo.com\/mybio",
                "link": "https:\/\/app.shorteneo.com\/mybio",
                "date": "2022-06-01"
            }
        ]
    }
}

Créer une chaîne

POST https://app.shorteneo.com/api/channel/add

A channel can be added using this endpoint.

Paramètre Détails
name (required) Channel name
description (optional) Channel description
color (optional) Channel badge color (HEX)
starred (optional) Star the channel or not (true or false)
curl --location --request POST 'https://app.shorteneo.com/api/channel/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "New Channel",
    "description": "my new channel",
    "color": "#000000",
    "starred": true
}'

Réponse du serveur

{
    "error": 0,
    "id": 3,
    "name": "New Channel",
    "description": "my new channel",
    "color": "#000000",
    "starred": true
}

Assign an Item to a Channel

POST https://app.shorteneo.com/api/channel/:channelid/assign/:type/:itemid

An item can be assigned to any channel by sending a request with the channel id, item type (links, bio or qr) and item id.

Paramètre Détails
:channelid (required) Channel ID
:type (required) links or bio or qr
:itemid (required) Item ID
curl --location --request POST 'https://app.shorteneo.com/api/channel/:channelid/assign/:type/:itemid' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "message": "Item successfully added to the channel."
}

Mise à jour de la chaîne

PUT https://app.shorteneo.com/api/channel/:id/update

To update a channel, you need to send a valid data in JSON via a PUT request. The data must be sent as the raw body of your request as shown below. The example below shows all the parameters you can send but you are not required to send all (See table for more info).

Paramètre Détails
name (optional) Channel name
description (optional) Channel description
color (optional) Channel badge color (HEX)
starred (optional) Star the channel or not (true or false)
curl --location --request PUT 'https://app.shorteneo.com/api/channel/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Acme Corp",
    "description": "channel for items for Acme Corp",
    "color": "#FFFFFF",
    "starred": false
}'

Réponse du serveur

{
    "error": 0,
    "message": "Channel has been updated successfully."
}

Delete Channel

DELETE https://app.shorteneo.com/api/channel/:id/delete

To delete a channel, you need to send a DELETE request. All items will be unassigned as well.

curl --location --request DELETE 'https://app.shorteneo.com/api/channel/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "message": "Channel has been deleted successfully."
}

Obtenir un compte

GET https://app.shorteneo.com/api/account

Pour obtenir des informations sur le compte, vous pouvez envoyer une demande à ce point de terminaison et il renverra des données sur le compte.

curl --location --request GET 'https://app.shorteneo.com/api/account' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "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"
    }
}

Compte mis à jour

PUT https://app.shorteneo.com/api/account/update

Pour mettre à jour les informations sur le compte, vous pouvez envoyer une demande à ce point de terminaison et il mettra à jour les données sur le compte.

curl --location --request PUT 'https://app.shorteneo.com/api/account/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "email": "newemail@google.com",
    "password": "NewPassword1"
}'

Réponse du serveur

{
    "error": 0,
    "message": "Account has been successfully updated."
}

Domaines de marque

List Branded Domains

GET https://app.shorteneo.com/api/domains?limit=2&page=1

To get your branded domains via the API, you can use this endpoint. You can also filter data (See table for more info).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/domains?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "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"
            }
        ]
    }
}

Créer un domaine de marque

POST https://app.shorteneo.com/api/domain/add

A domain can be added using this endpoint. Please make sure the domain is correctly pointed to our server.

Paramètre Détails
domain (required) Branded domain including http or https
redirectroot (optional) Root redirect when someone visits your domain
redirect404 (optional) Custom 404 redirect
curl --location --request POST 'https://app.shorteneo.com/api/domain/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "domain": "https:\/\/domain1.com",
    "redirectroot": "https:\/\/rootdomain.com",
    "redirect404": "https:\/\/rootdomain.com\/404"
}'

Réponse du serveur

{
    "error": 0,
    "id": 1
}

Mettre à jour le domaine

PUT https://app.shorteneo.com/api/domain/:id/update

Pour mettre à jour un domaine de marque, vous devez envoyer des données valides en JSON via une requête PUT. Les données doivent être envoyées dans le corps brut de votre requête, comme indiqué ci-dessous. L'exemple ci-dessous montre tous les paramètres que vous pouvez envoyer, mais vous n'êtes pas obligé de tous les envoyer (voir le tableau pour plus d'informations).

Paramètre Détails
redirectroot (optional) Root redirect when someone visits your domain
redirect404 (optional) Custom 404 redirect
curl --location --request PUT 'https://app.shorteneo.com/api/domain/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "redirectroot": "https:\/\/rootdomain-new.com",
    "redirect404": "https:\/\/rootdomain-new.com\/404"
}'

Réponse du serveur

{
    "error": 0,
    "message": "Domain has been updated successfully."
}

Supprimer un domaine

DELETE https://app.shorteneo.com/api/domain/:id/delete

Pour supprimer un domaine, vous devez envoyer une demande DELETE.

curl --location --request DELETE 'https://app.shorteneo.com/api/domain/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "message": "Domain has been deleted successfully."
}

Envoyer un SMS

Get Twilio phone numbers

GET https://app.shorteneo.com/api/sms/numbers

Get your Twilio phone numbers.

curl --location --request GET 'https://app.shorteneo.com/api/sms/numbers' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "numbers": [
        "+123456798",
        "+258369147"
    ]
}

List Messages

GET https://app.shorteneo.com/api/sms/messages?limit=2&page=1

Get all of your sent messages. You can also search for a specific number.

Paramètre Détails
number (optional) Search for a specific phone number
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/sms/messages?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "result": 10,
    "perpage": 15,
    "currentpage": 1,
    "nextpage": null,
    "maxpage": 1,
    "list": [
        {
            "from": "+123456798",
            "to": "+987654321",
            "status": "sent",
            "message": "Sales starting now!! https:\/\/app.shorteneo.com\/A1b2",
            "date": "2022-08-09 17:00:00"
        },
        {
            "from": "+123456798",
            "to": "+147258369",
            "status": "failed",
            "message": "Sales starting now!! https:\/\/app.shorteneo.com\/A1b2",
            "date": "2022-08-09 17:01:00"
        },
        {
            "from": "+123456798",
            "to": "+369258147",
            "status": "delivered",
            "message": "Sales starting now!! https:\/\/app.shorteneo.com\/A1b2",
            "date": "2022-08-09 17:01:30"
        }
    ]
}

Envoyer un SMS

POST https://app.shorteneo.com/api/sms/send

Send SMS to one or more phones numbers and shorten links within the SMS.

Paramètre Détails
from (required) From phone number in your Twilio account.
to (required) Array of phone numbers
message (required) SMS message
curl --location --request POST 'https://app.shorteneo.com/api/sms/send' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "from": "+123456798",
    "to": [
        "+987654321",
        "+147258369",
        "+369258147"
    ],
    "message": "Sales starting now!! https:\/\/mysite.com\/en\/black-friday-sales?utm_source=sms&utm_medium=sms"
}'

Réponse du serveur

{
    "error": 0,
    "message": "SMS has been sent successfully"
}

List Files

GET https://app.shorteneo.com/api/files?limit=2&page=1

Get all of your files. You can also search by name.

Paramètre Détails
name (optional) Search for a file by name
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/files?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "result": 3,
    "perpage": 15,
    "currentpage": 1,
    "nextpage": null,
    "maxpage": 1,
    "list": [
        {
            "id": 1,
            "name": "My Photo",
            "downloads": 10,
            "shorturl": "https:\/\/app.shorteneo.com\/tOUio",
            "date": "2022-08-09 17:00:00"
        },
        {
            "id": 2,
            "name": "My Documents",
            "downloads": 15,
            "shorturl": "https:\/\/app.shorteneo.com\/DtFvW",
            "date": "2022-08-10 17:01:00"
        },
        {
            "id": 3,
            "name": "My Files",
            "downloads": 5,
            "shorturl": "https:\/\/app.shorteneo.com\/yuDTc",
            "date": "2022-08-11 19:01:00"
        }
    ]
}

Upload a file

POST https://app.shorteneo.com/api/files/upload/:filename?name=My+File

Upload a file by sending the binary data as the post body. You need to send the file name including the extension instead of :filename in the url (e.g. brandkit.zip). You can set options by sending the following parameters.

Paramètre Détails
name (optional) File name
custom (optional) Custom alias instead of random alias.
domain (optional) Custom Domain
password (optional) Password protection
expiry (optional) Expiration for the download example 2021-09-28
maxdownloads (optional) Maximum number of downloads
curl --location --request POST 'https://app.shorteneo.com/api/files/upload/:filename?name=My+File' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '"BINARY DATA"'

Réponse du serveur

{
    "error": 0,
    "id": 1,
    "shorturl": "https:\/\/app.shorteneo.com\/enZZh"
}

Page intermédiaire

List Custom Splash

GET https://app.shorteneo.com/api/splash?limit=2&page=1

To get Splash Pages via the API, you can use this endpoint. You can also filter data (See table for more info).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/splash?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "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"
            }
        ]
    }
}

List Pixels

GET https://app.shorteneo.com/api/pixels?limit=2&page=1

To get your pixels codes via the API, you can use this endpoint. You can also filter data (See table for more info).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/pixels?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "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"
            }
        ]
    }
}

Create a Pixel

POST https://app.shorteneo.com/api/pixel/add

A pixel can be created using this endpoint. You need to send the pixel type and the tag.

Paramètre Détails
type (required) gtmpixel | gapixel | fbpixel | adwordspixel | linkedinpixel | twitterpixel | adrollpixel | quorapixel | pinterest | bing | snapchat | reddit | tiktok
name (required) Custom name for your pixel
tag (required) The tag for the pixel
curl --location --request POST 'https://app.shorteneo.com/api/pixel/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "type": "gtmpixel",
    "name": "My GTM",
    "tag": "GTM-ABCDE"
}'

Réponse du serveur

{
    "error": 0,
    "id": 1
}

Pixel de mise à jour

PUT https://app.shorteneo.com/api/pixel/:id/update

To update a pixel, you need to send a valid data in JSON via a PUT request. The data must be sent as the raw body of your request as shown below. The example below shows all the parameters you can send but you are not required to send all (See table for more info).

Paramètre Détails
name (optional) Custom name for your pixel
tag (required) The tag for the pixel
curl --location --request PUT 'https://app.shorteneo.com/api/pixel/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "My GTM",
    "tag": "GTM-ABCDE"
}'

Réponse du serveur

{
    "error": 0,
    "message": "Pixel has been updated successfully."
}

Delete Pixel

DELETE https://app.shorteneo.com/api/pixel/:id/delete

To delete a pixel, you need to send a DELETE request.

curl --location --request DELETE 'https://app.shorteneo.com/api/pixel/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "message": "Pixel has been deleted successfully."
}

QR codes

List QR codes

GET https://app.shorteneo.com/api/qr?limit=2&page=1

Pour obtenir vos QR codes via l'API, vous pouvez utiliser ce point de terminaison. Vous pouvez également filtrer les données (voir le tableau pour plus d'informations).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/qr?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": "0",
    "data": {
        "result": 2,
        "perpage": 2,
        "currentpage": 1,
        "nextpage": 1,
        "maxpage": 1,
        "qrs": [
            {
                "id": 2,
                "link": "https:\/\/app.shorteneo.com\/qr\/a2d5e",
                "scans": 0,
                "name": "Google",
                "date": "2020-11-10 18:01:43"
            },
            {
                "id": 1,
                "link": "https:\/\/app.shorteneo.com\/qr\/b9edfe",
                "scans": 5,
                "name": "Google Canada",
                "date": "2020-11-10 18:00:25"
            }
        ]
    }
}

Obtenir un seul QR code

GET https://app.shorteneo.com/api/qr/:id

Pour obtenir les détails d'un seul QR code via l'API, vous pouvez utiliser ce point de terminaison.

curl --location --request GET 'https://app.shorteneo.com/api/qr/:id' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "details": {
        "id": 1,
        "link": "https:\/\/app.shorteneo.com\/qr\/b9edfe",
        "scans": 5,
        "name": "Google Canada",
        "date": "2020-11-10 18:00:25"
    },
    "data": {
        "clicks": 1,
        "uniqueClicks": 1,
        "topCountries": {
            "Unknown": "1"
        },
        "topReferrers": {
            "Direct, email and other": "1"
        },
        "topBrowsers": {
            "Chrome": "1"
        },
        "topOs": {
            "Windows 10": "1"
        },
        "socialCount": {
            "facebook": 0,
            "twitter": 0,
            "instagram": 0
        }
    }
}

Créer un QR Code

POST https://app.shorteneo.com/api/qr/add

To create a QR Code, you need to send a valid data in JSON via a POST request. The data must be sent as the raw body of your request as shown below. The example below shows all the parameters you can send but you are not required to send all (See table for more info).

Paramètre Détails
type (required) text | vcard | link | email | phone | sms | wifi
data (required) Data to be embedded inside the QR code. The data can be string or array depending on the type
background (optional) RGB color e.g. rgb(255,255,255)
foreground (optional) RGB color e.g. rgb(0,0,0)
logo (optional) Path to the logo either png or jpg
name (optional) QR Code name
curl --location --request POST 'https://app.shorteneo.com/api/qr/add' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "type": "link",
    "data": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "foreground": "rgb(0,0,0)",
    "logo": "https:\/\/site.com\/logo.png",
    "name": "QR Code API"
}'

Réponse du serveur

{
    "error": 0,
    "id": 3,
    "link": "https:\/\/app.shorteneo.com\/qr\/a58f79"
}

Update QR Code

PUT https://app.shorteneo.com/api/qr/:id/update

Pour mettre à jour un QR code, vous devez envoyer des données valides en JSON via une requête PUT. Les données doivent être envoyées dans le corps brut de votre requête, comme indiqué ci-dessous. L'exemple ci-dessous montre tous les paramètres que vous pouvez envoyer, mais vous n'êtes pas obligé de tous les envoyer (voir le tableau pour plus d'informations).

Paramètre Détails
data (required) Data to be embedded inside the QR code. The data can be string or array depending on the type
background (optional) RGB color e.g. rgb(255,255,255)
foreground (optional) RGB color e.g. rgb(0,0,0)
logo (optional) Path to the logo either png or jpg
curl --location --request PUT 'https://app.shorteneo.com/api/qr/:id/update' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "type": "link",
    "data": "https:\/\/google.com",
    "background": "rgb(255,255,255)",
    "foreground": "rgb(0,0,0)",
    "logo": "https:\/\/site.com\/logo.png"
}'

Réponse du serveur

{
    "error": 0,
    "message": "QR has been updated successfully."
}

Supprimer un QR Code

DELETE https://app.shorteneo.com/api/qr/:id/delete

Pour supprimer un QR code, vous devez envoyer une demande de suppression.

curl --location --request DELETE 'https://app.shorteneo.com/api/qr/:id/delete' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "error": 0,
    "message": "QR Code has been deleted successfully."
}

Superposition de CTA

List CTA Overlays

GET https://app.shorteneo.com/api/overlay?limit=2&page=1

To get cta overlays via the API, you can use this endpoint. You can also filter data (See table for more info).

Paramètre Détails
limit (optional) Per page data result
page (optional) Current page request
curl --location --request GET 'https://app.shorteneo.com/api/overlay?limit=2&page=1' \
--header 'Authorization: Bearer YOURAPIKEY' \
--header 'Content-Type: application/json' \

Réponse du serveur

{
    "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"
            }
        ]
    }
}