Documentation de l'API

Adresse API : https://2index.ninja/api/v1/

Pour faire une demande à l'API, vous devez transmettre le jeton d'accès Bearer dans l'en-tête d'autorisation.

 Le jeton d'accès peut être obtenu auprès du service approprié. curl https://2index.ninja/api/v1/account -H "Authorization: Bearer API_TOKEN"

section dans le compte utilisateur.

La réponse à chaque requête contient un paramètre success , qui détermine la réussite de la requête. Le paramètre errors contient les messages d'erreur.

Dans certains cas, si une erreur 403 est renvoyée, vous devez spécifier l'agent utilisateur, par exemple :

 Les demandes peuvent être limitées par le fournisseur d'hébergement, auquel cas nous vous recommandons d'utiliser un proxy. curl https://2index.ninja/api/v1/account -H "Authorization: Bearer API_TOKEN" -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36"

 

Méthodes pour travailler avec un compte

Obtenir les détails du compte

Vous devez effectuer une requête GET à l'adresse account

 La réponse contiendra des données au format JSON : GET https://2index.ninja/api/v1/account

 

 { "success": true, "account": { "email": "[email protected]", "tariff": "White Ninja", "balance": 100.0, "available_projects": 1, "available_links": 100, "available_indexation_check_links": 500, "link_sending_speed": 100, "tariff_available": true, "tariff_expiring_date": "2025-01-16T14:26:11.000000Z", "email_verified": false, "link_cost": "$0.00056" } } Méthodes de travail avec des projets { "success": true, "account": { "email": "[email protected]", "tariff": "White Ninja", "balance": 100.0, "available_projects": 1, "available_links": 100, "available_indexation_check_links": 500, "link_sending_speed": 100, "tariff_available": true, "tariff_expiring_date": "2025-01-16T14:26:11.000000Z", "email_verified": false, "link_cost": "$0.00056" } } 

Obtenir une liste de projets

Vous devez effectuer une requête GET à l'adresse project

 La réponse contiendra des données au format JSON : GET https://2index.ninja/api/v1/project

 

 { "success": true, "projects": [ { "id": 1, "name": "Project name", "type": "indexing", "website": "https://domain.com/", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_type": "internal", "google_account_access_granted": 0, "links_total": 500, "links_sending_speed": 400, "links_sent_google": 100, "links_sent_yandex": 40, "links_sent_bing": 100, "in_queue": 360, "sent_links": 100, "indexed": 30, "not_indexed": 0, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_sent_url": "DOWNLOAD_SENT_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL" }, { "id": "2", "name": "Project 2 name", "type": "indexing_check", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_total": 200, "links_checking_speed": 100, "in_queue": 100, "checked": 100, "indexed": 70, "not_indexed": 30, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL", "download_all_url": "DOWNLOAD_ALL_URL", "download_checked_url": "DOWNLOAD_CHECKED_URL", } ... ] } Obtenir les données du projet { "success": true, "projects": [ { "id": 1, "name": "Project name", "type": "indexing", "website": "https://domain.com/", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_type": "internal", "google_account_access_granted": 0, "links_total": 500, "links_sending_speed": 400, "links_sent_google": 100, "links_sent_yandex": 40, "links_sent_bing": 100, "in_queue": 360, "sent_links": 100, "indexed": 30, "not_indexed": 0, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_sent_url": "DOWNLOAD_SENT_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL" }, { "id": "2", "name": "Project 2 name", "type": "indexing_check", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_total": 200, "links_checking_speed": 100, "in_queue": 100, "checked": 100, "indexed": 70, "not_indexed": 30, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL", "download_all_url": "DOWNLOAD_ALL_URL", "download_checked_url": "DOWNLOAD_CHECKED_URL", } ... ] }

Vous devez faire une requête GET à l'adresse project/{project_id}

 La réponse contiendra des données au format JSON : GET https://2index.ninja/api/v1/project/1

 

  • Pour le projet d'indexation :
 { "success": true, "project": { "id": 1, "name": "Project name", "type": "indexing", "website": "https://domain.com/", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_type": "internal", "google_account_access_granted": 0, "links_total": 500, "links_sending_speed": 400, "links_sent_google": 100, "links_sent_yandex": 40, "links_sent_bing": 100, "in_queue": 360, "sent_links": 100, "indexed": 30, "not_indexed": 0, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_sent_url": "DOWNLOAD_SENT_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL" } } Pour le projet de vérification d'indexation : { "success": true, "project": { "id": 1, "name": "Project name", "type": "indexing", "website": "https://domain.com/", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_type": "internal", "google_account_access_granted": 0, "links_total": 500, "links_sending_speed": 400, "links_sent_google": 100, "links_sent_yandex": 40, "links_sent_bing": 100, "in_queue": 360, "sent_links": 100, "indexed": 30, "not_indexed": 0, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_sent_url": "DOWNLOAD_SENT_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL" } }
  •  
 { "success": true, "project": { "id": "2", "name": "Project 2 name", "type": "indexing_check", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_total": 200, "links_checking_speed": 100, "in_queue": 100, "checked": 100, "indexed": 70, "not_indexed": 30, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL", "download_all_url": "DOWNLOAD_ALL_URL", "download_checked_url": "DOWNLOAD_CHECKED_URL" } } Créer un projet { "success": true, "project": { "id": "2", "name": "Project 2 name", "type": "indexing_check", "status": "in progress", "created_at": "2024-03-01 14:34:56", "links_total": 200, "links_checking_speed": 100, "in_queue": 100, "checked": 100, "indexed": 70, "not_indexed": 30, "download_queue_url": "DOWNLOAD_QUEUE_URL", "download_indexed_url": "DOWNLOAD_INDEXED_URL", "download_unindexed_url": "DOWNLOAD_UNINDEXED_URL", "download_all_url": "DOWNLOAD_ALL_URL", "download_checked_url": "DOWNLOAD_CHECKED_URL" } }

Vous devez effectuer une requête POST à project

 Paramètres de la requête : POST https://2index.ninja/api/v1/project

 

Champ Taper Nécessairement Description
nom chaîne Oui Nom du projet
site web chaîne Oui* Adresse du site Web au format https://site.domain/ .
*Obligatoire si type de projet : indexing
pour_liens_externes booléen Non Projet pour liens externes. Sauf indication contraire, usage national uniquement.
vitesse_d'indexation entier Non** Vitesse d'indexation du projet. Si elle n'est pas spécifiée, la vitesse maximale disponible sur le compte sera appliquée. Cette option est utilisée pour les projets de type indexing . Pour les projets de type indexing_check , checking_speed est utilisée.
vérification_vitesse entier Non** Vitesse de vérification des liens du projet. Si aucune valeur n'est spécifiée, la vitesse maximale du compte sera appliquée. Cette option est utilisée pour les projets de type indexing_check . Pour les projets de type indexing , indexing_speed est utilisé.
taper chaîne Non Type de projet.
Options possibles : indexing - indexation des liens, indexing_check - vérification des liens d'indexation.
Si non spécifié, il créera un projet d'indexation de liens indexing

** Lors de la création d'un projet de tout type, vous pouvez utiliser les paramètres indexing_speed ou checking_speed ; ils sont des alias l'un pour l'autre, mais si les deux sont passés, indexing_speed sera utilisé.

La réponse contiendra des données au format JSON :

 { "success": true, "message": "The project has been successfully created" } Un exemple de création d’un projet d’indexation de liens : { "success": true, "message": "The project has been successfully created" }

POST https://2index.ninja/api/v1/project

 name: Project 1 website: https://website.com for_external_links: 1 indexing_speed: 100 Un exemple de création d’un projet de vérification d’indexation de liens : name: Project 1 website: https://website.com for_external_links: 1 indexing_speed: 100

POST https://2index.ninja/api/v1/project

 name: Project 2 checking_speed: 100 Effacer la file d'attente d'indexation name: Project 2 checking_speed: 100

Vous devez faire une requête POST sur project/{project_id}/clear_queue

 La réponse contiendra des données au format JSON : POST https://2index.ninja/api/v1/project/1/clear_queue

 

 { "success": true, "message": "The indexing queue has been cleared successfully. X links have been removed" } Ou le message d'erreur correspondant sera renvoyé : { "success": true, "message": "The indexing queue has been cleared successfully. X links have been removed" }

 

 { "success": false, "errors": ["Project not found"] } Méthodes pour travailler avec des liens { "success": false, "errors": ["Project not found"] } 

Ajouter des liens

Vous devez faire une requête POST sur le link/add l'adresse

 Paramètres de la requête : POST https://2index.ninja/api/v1/link/add

 

Champ Nécessairement Description
identifiant_du_projet Oui ID du projet
links Oui Une liste de liens. Elle peut être transmise sous forme de tableau ou de texte (chaque lien sur une ligne distincte).
Google Non, fourni par Yandex ou Bing Soumettre des liens à Google
Yandex Non, à condition que Google ou Bing Envoyer des liens vers Yandex
bing Non, à condition qu'il s'agisse de Google ou de Yandex. Soumettre des liens à Bing
accès_google_accordé Non Accès au compte Google accordé

La réponse contiendra des données au format JSON :

 { "success": true, "message": "Links have been successfully added to the project" } S'il y a des liens non valides dans la liste, les liens ne seront pas ajoutés et un message d'erreur correspondant sera reçu en réponse : { "success": true, "message": "Links have been successfully added to the project" }

 

 { "success": false, "errors": ["You sent invalid links"], "invalid_links": ["http://wrong.link"] } Pour les projets { "success": false, "errors": ["You sent invalid links"], "invalid_links": ["http://wrong.link"] }

Les vérifications d'indexation des liens sont ajoutées de la même manière que pour l'indexation. google_access_granted est facultatif et sera ignoré. Les moteurs de recherche doivent être spécifiés, mais actuellement, seules les recherches Google sont disponibles.

Ajouter des liens par nom de projet

Vous devez envoyer une requête POST à link/add_simple . Si aucun projet portant le nom spécifié n'existe, il sera créé automatiquement à la vitesse de téléchargement maximale.

 Paramètres de la requête : POST https://2index.ninja/api/v1/link/add_simple

Champ Nécessairement Description
nom_du_projet Non Nom du projet. Si ce nom n'est pas spécifié, un projet nommé "default" sera créé.
links Oui Liste de liens. Peut être transmise sous forme de tableau ou de texte (chaque lien étant sur une nouvelle ligne).
Google Non, si Yandex ou Bing est spécifié Soumettre des liens à Google.
Yandex non, si Google ou Bing est spécifié Envoyer des liens vers Yandex.
bing Non, si Google ou Yandex est spécifié Soumettre des liens à Bing.
accès_google_accordé Non L'accès au compte Google a été accordé.

Pour les projets de vérification d'index , les liens sont ajoutés de la même manière que pour l'indexation. google_access_granted est facultatif et sera ignoré. Les moteurs de recherche doivent être spécifiés, mais la vérification n'est actuellement disponible que pour Google.

Exemple de demande :

 { "project_name": "My Website", "links": ["https://example.com/page1", "https://example.com/page2"], "google": true, "yandex": false, "bing": true, "google_access_granted": false } Réponse en cas de succès : { "project_name": "My Website", "links": ["https://example.com/page1", "https://example.com/page2"], "google": true, "yandex": false, "bing": true, "google_access_granted": false }

 { "success": true, "message": "Links have been successfully added to the project", "project_name": "My Website", "project_id": 12345 } Erreurs possibles: { "success": true, "message": "Links have been successfully added to the project", "project_name": "My Website", "project_id": 12345 }

  • S'il y a des liens erronés dans la liste :
 { "success": false, "errors": ["You sent invalid links"], "invalid_links": ["http://wrong.link"] } Si une erreur s'est produite lors de la création d'un projet : { "success": false, "errors": ["You sent invalid links"], "invalid_links": ["http://wrong.link"] }
  •  
 { "success": false, "errors": ["Failed to create the project"] } Vérifier l'état du lien { "success": false, "errors": ["Failed to create the project"] } 

Effectuer une requête POST à ​​l'adresse   /api/v1/link/status

 Paramètres de la requête : POST https://2index.ninja/api/v1/link/status 

 

Champ Nécessairement Description
identifiant_du_projet Oui ID du projet
lien Oui Lien en cours de vérification
  • Si la requête réussit, un objet json sera reçu en réponse :
 { "success" : true , "link" : { "id" : 34368960 , "url" : "https://2index.ninja/" , "google" : "Sent" , "yandex" : "Sent" , "bing" : "Sent" , "is_external" : 1 , "google_sent" : "2025-08-24 20:10:02" , "yandex_sent" : "2025-08-24 20:45:02" , "bing_sent" : "2025-08-24 20:05:05" , "google_indexed" : 1 , "google_indexing_check_date" : "2025-08-29" } } Où: { "success" : true , "link" : { "id" : 34368960 , "url" : "https://2index.ninja/" , "google" : "Sent" , "yandex" : "Sent" , "bing" : "Sent" , "is_external" : 1 , "google_sent" : "2025-08-24 20:10:02" , "yandex_sent" : "2025-08-24 20:45:02" , "bing_sent" : "2025-08-24 20:05:05" , "google_indexed" : 1 , "google_indexing_check_date" : "2025-08-29" } } 

 

Champ Description
id ID du lien
url Lien
google * Statut de soumission à Google
yandex * Statut d'envoi dans Yandex
bing * Statut de soumission dans Bing
is_external Lien externe
google_sent Date de soumission à Google
yandex_sent Date d'envoi à Yandex
bing_sent Date de soumission à Bing
google_indexed Indexé par Google
google_indexing_check_date Date de vérification de l'indexation Google

* Statuts possibles :

Statut Signification
New Nouveau
Sent Envoyé
In the queue Dans la file d'attente d'envoi
In the process En cours d'envoi
Error sending Une erreur s'est produite lors de l'envoi
Don\'t index Ne pas indexer
Sent to reindexing Envoyé pour réindexation
  • En cas d'erreur, un objet JSON contenant le message d'erreur sera renvoyé. Exemples d'erreurs :
 { "success" : false , "errors" : { "link" : [ "The link field is required." ] } } { "success" : false , "errors" : [ "Project not found" ] } { "success" : false , "errors" : { "link" : [ "The link field is required." ] } } 
 { "success" : false , "errors" : [ "Project not found" ] } { "success" : false , "errors" : [ "URL not found" ] } { "success" : false , "errors" : [ "Project not found" ] } 
 { "success" : false , "errors" : [ "URL not found" ] } Vous pouvez également obtenir l'état du lien par ID de lien { "success" : false , "errors" : [ "URL not found" ] } 

Pour ce faire, effectuez une requête GET à l'adresse   /api/v1/link/status/ID

 La réponse à la demande sera la même que dans la version précédente. GET https://2index.ninja/api/v1/link/status/ID

 

Travailler avec des sources de référence

Les sources de liens sont disponibles pour tous les types de projets et sont traitées de manière identique. Pour les projets de vérification d'index, seul Google est disponible.

Ajout d'un plan de site

Faire une requête POST à /api/v1/sitemap/add

 Paramètres de la requête : POST https://2index.ninja/api/v1/sitemap/add

 

Champ Nécessairement Description
identifiant_du_projet Oui ID du projet
plan du site Oui Lien vers le plan du site
Google Non, fourni par Yandex ou Bing Soumettre des liens à Google
Yandex Non, à condition que Google ou Bing Envoyer des liens vers Yandex
bing Non, à condition qu'il s'agisse de Google ou de Yandex. Soumettre des liens à Bing
accès_google_accordé Non Accès au compte Google accordé
montre Non Surveiller les modifications du plan du site

Erreurs possibles:

Erreur
Erreur de validation des données. L'un des champs obligatoires est manquant ou contient une valeur invalide.
Indisponibilité du tarif. Le forfait de l'utilisateur a expiré.
Projet introuvable. L'utilisateur n'est pas propriétaire du projet spécifié ou celui-ci n'existe pas.
Erreur interne du serveur

Exemples de réponses :

Plan du site ajouté avec succès :

 { "success": true, "message": "Карта сайта успешно добавлена, мы скачаем её как можно скорее и отправим уведомление по электронной почте после завершения." } Erreur de validation : { "success": true, "message": "Карта сайта успешно добавлена, мы скачаем её как можно скорее и отправим уведомление по электронной почте после завершения." }

 

 { "errors": ["sitemap":["The sitemap field is required."]] } Projet non trouvé : { "errors": ["sitemap":["The sitemap field is required."]] }

 

 { "errors": ["Project not found"] } Mise à jour de l'état de suivi du plan du site { "errors": ["Project not found"] } 

Faire une requête POST à /api/v1/sitemap/update_watch

 Paramètres de la requête : POST https://2index.ninja/api/v1/sitemap/update_watch

 

Champ Taper Nécessairement Description
identifiant_du_projet entier Oui ID du projet
sitemap_id entier Oui ID du plan du site
montre booléen Oui Une indication indiquant si vous devez surveiller les modifications du plan du site

Erreurs possibles:

Erreur
Erreur de validation des données. L'un des champs obligatoires est manquant ou contient une valeur invalide.
Projet ou source de référence introuvable. L'utilisateur n'est pas propriétaire du projet spécifié, ou le projet/la source n'existe pas.
Erreur interne du serveur

Exemples de réponses :

Mise à jour réussie du statut de suivi :

 { "success": true } Source du lien non trouvée : { "success": true }

 

 { "errors": ["Link source not found"] } Supprimer une source de lien { "errors": ["Link source not found"] }

Faire une requête POST à /api/v1/sitemap/delete

 Paramètres de la requête : POST https://2index.ninja/api/v1/sitemap/delete

 

Champ Taper Nécessairement Description
identifiant_du_projet entier Oui ID du projet
sitemap_id entier Oui ID du plan du site

Erreurs possibles:

Erreur
Erreur de validation des données. L'un des champs obligatoires est manquant ou contient une valeur invalide.
Projet ou source de référence introuvable. L'utilisateur n'est pas propriétaire du projet spécifié, ou le projet/la source n'existe pas.
Erreur interne du serveur

Exemples de réponses :

Suppression réussie de la source du lien :

 { "success": true, "message": "Источник ссылок успешно удален" } Projet non trouvé : { "success": true, "message": "Источник ссылок успешно удален" }

 

 { "errors": ["Project not found"] } Liste des sources de référence { "errors": ["Project not found"] }

Pour obtenir une liste des sources de liens ajoutées, vous devez effectuer une requête POST sur https://2index.ninja/api/v1/link_sources

Transmettez project_id dans la requête

L'ensemble de données suivant sera renvoyé en résultat :

 [ { "id": 1247, "project_id": 3540, "name": "urls.txt", "type": "text file", "created_at": "2025-01-17T15:51:43.000000Z", "processing_date": "2025-01-17T15:51:48.000000Z", "has_error": false, "error_message": "", "status": "success", "is_pending": false, "is_success": true, "total_links": 29585, "added_links": 29582, "invalid_links": 3, "watch": 0, "google_access_granted": 0, "is_external_links": 1, "search_engines": { "google": "1" } }, { "id": 22, "project_id": 3540, "name": "https://2index.ninja/sitemap.xml", "type": "sitemap", "created_at": "2025-07-03T14:24:23.000000Z", "processing_date":, "has_error":, "error_message":, "status": "pending", "is_pending": 1, "is_success":, "total_links": 0, "added_links": 0, "invalid_links": 0, "watch": 1, "google_access_granted": 0, "is_external_links": 1, "search_engines": { "google": 1 } } ][ { "id": 1247, "project_id": 3540, "name": "urls.txt", "type": "text file", "created_at": "2025-01-17T15:51:43.000000Z", "processing_date": "2025-01-17T15:51:48.000000Z", "has_error": false, "error_message": "", "status": "success", "is_pending": false, "is_success": true, "total_links": 29585, "added_links": 29582, "invalid_links": 3, "watch": 0, "google_access_granted": 0, "is_external_links": 1, "search_engines": { "google": "1" } }, { "id": 22, "project_id": 3540, "name": "https://2index.ninja/sitemap.xml", "type": "sitemap", "created_at": "2025-07-03T14:24:23.000000Z", "processing_date":, "has_error":, "error_message":, "status": "pending", "is_pending": 1, "is_success":, "total_links": 0, "added_links": 0, "invalid_links": 0, "watch": 1, "google_access_granted": 0, "is_external_links": 1, "search_engines": { "google": 1 } } ]

id - identifiant de la source du lien
project_id - identifiant du projet
name - le nom du fichier joint ou l'adresse du plan du site
type - type de source de fichier (fichier texte ou plan de site) - peut être :
sitemap ,
text file
created_at - date de création
processing_date - date de traitement
has_error - une erreur de traitement s'est produite
error_message - message d'erreur
status - statut - peut être :
pending (en attente de traitement),
error (erreur de traitement),
success
is_pending - en cours de traitement
is_success - traitement réussi
total_links - nombre total de liens trouvés
added_links - liens ajoutés
invalid_links - liens invalides
watch - état de surveillance du plan du site
google_access_granted - Si l'accès à un compte Google a été accordé ou non
is_external_links - liens externes
search_engines - moteurs de recherche connectés

Exemple d'implémentation en PHP