API SEOHabit

Guide API pour les agents

Utilisez l'API pour analyser votre site, préparer des améliorations à examiner, suivre les soumissions automatiques autorisées ou vérifier si une page externe contient un lien vers une cible. Ces opérations ne garantissent pas l'acceptation par un dossier, la publication, l'indexation ou les résultats SEO.

Spécification OpenAPI 3.1

URL de base et format de requête

Les requêtes utilisent https://seohabit.com/api/v1. Envoyez des corps JSON avec Content-Type: application/json. Les projets de sites web et le suivi des soumissions automatiques nécessitent une authentification. La fréquence des requêtes est limitée.

Suivre les soumissions tierces

Créez un projet avec les détails des dossiers autorisés pour activer une soumission automatique aux fournisseurs admissibles. Au plus deux tentatives par jour UTC, arrêtées après cinq dossiers reconnus. SEOHabit sélectionne les fournisseurs admissibles en arrière-plan ; les utilisateurs n'ont pas à parcourir ou sélectionner une liste de fournisseurs. Si aucun fournisseur admissible n'est disponible, le projet attend. Un reconnu n'est pas une publication ni un lien de vérification.

Interroger l’état d’une tâche

Poller l'URL de statut jusqu'à ce que la tâche atteigne completed ou failed. Authentifiez chaque requête avec le jeton de tâche dans l'en-tête. Un jeton de tâche accorde l'accès uniquement à sa propre tâche.

curl 'https://seohabit.com/api/v1/jobs/job_example' \
  -H 'X-Access-Token: YOUR_JOB_ACCESS_TOKEN'

Les réponses incluent queued, running, completed, ou failed ; result est nul jusqu'à disponibilité.

Comptes, clés de projet et actions payantes

L'inscription et la connexion définissent un cookie HttpOnly sh_session. Les écritures de cookies du navigateur sont vérifiées par origine. Pour les intégrations, un compte connecté peut créer une clé API de portée projet spécifique avec des portées explicites et la transmettre sous forme Authorization: Bearer shk_…. Les clés ne peuvent accéder à un autre projet, et les portées des clés limitent les opérations disponibles. Gardez les cookies de session et les clés API confidentiels ; n'en incluez jamais dans les URLs.

Les tâches de mots-clés acceptent details.keyword, optionnellement details.language (par défaut en) et un details.pageUrl explicite facultatif. Les suggestions exposent des preuves de page correspondante et marquent une langue inconnue ou une demande de recherche inconnue.

Les audits de site peuvent être planifiés sur un projet gratuit dans les limites gratuites. Les liens de suivi, la création de tâches et l'exécution de tâches nécessitent un site vérifié et un abonnement actif. Une action payante nécessite une personne pour établir la propriété et obtenir explicitement l'abonnement via le flux de facturation du compte. Ne commencez pas le paiement, l'abonnement ou l'autorisation de modifications pour un site en votre nom. L'exécution d'une tâche n'est pas preuve que le changement a été appliqué ; une tâche prête nécessite une revue et un acceptation de la part de l'utilisateur.

Les clés de projet supportent project:read, project:write, checks:write et tasks:write. Une clé s'applique uniquement à son propre projet. Consultez Document OpenAPI pour les chemins et les formes des requêtes.

Erreurs et utilisation sécurisée

Les erreurs utilisent un JSON avec error et message. Les réponses courantes incluent 400 pour une entrée invalide ou un URL non sécurisé, 401 pour une authentification de compte manquante, 403 pour une origine interdite ou un portée non autorisée, 404 pour des ressources indisponibles, 409 pour des conflits, 429 pour des limites de vitesse, et 402 lorsque l'action payante nécessite un abonnement actif.

Vérifiez uniquement les pages publiques que vous êtes autorisé à inspecter. Le service bloque les destinations privées et les réseaux locaux et respecte la politique de crawl du site source lorsque disponible. Utilisez des clés d'identité pour les requêtes POST réutilisables et gérez les réponses de limite de vitesse avec un retard.