Documentation des APIs Textfocus

Sommaire

Introduction

Les APIs Textfocus permettent d'effectuer diverses analyses SEO et sémantiques. Cette documentation explique comment les appeler, quels sont leurs paramètres et leur utilité. Les APIs sont disponibles pour les abonnés des packs "Classic" et "Confort".

Les appels aux APIs sont limités à 1 appel par seconde.

Chaque requête consomme un crédit sur votre compte.

Vous pouvez retrouver votre clé d'API sur votre compte.

Ces APIs sont publiques depuis mars 2025. Nous savons à quel point il est important que les APIs soient réactives et répondent sans erreur.
Si malgré notre vigilance, vous rencontrez des codes erreurs avec les APIs, veuillez nous contacter, nous ferons au mieux pour vous répondre dans les meilleurs délais.

Liste des codes langues disponibles

Description : Fournit la liste des langues disponibles. Les identifiants retournés (champ id) donnent la valeur de la langue et du marché cible, à utiliser dans les paramètres "lang" des appels des apis.

Endpoint : https://www.textfocus.net/apis/tf_langs/

Méthode : POST

Paramètres :

1. API tf_keyword

Description : Fournit des données sur un mot-clé donné (volume de recherche, coût par clic, etc.).

Endpoint : https://www.textfocus.net/apis/tf_keyword/

Méthode : POST

Paramètres :

Réponse

Exemple de réponse JSON :

{
    "version": "1.0.3",
    "params": {
        "lang": "fr",
        "keyword": "agence en référencement",
        "key": "Votre clé d'API"
    },
    "result": {
        "infos": {
            "id": "agence en référencement",
            "lang": "fr",
            "cost": 0.00,
            "concurrency": 0.00,
            "volume": 10,
            "difficulty": 87
        }
    },
    "response": 200,
    "message": "ok",
    "timing": 0.020776,
    "creditUsed": 1,
    "method": "tf_keyword",
    "credits": 2948
}

2. API tf_related

Description : Fournit des termes relatifs à un mot-clé donné.

Endpoint : https://www.textfocus.net/apis/tf_related/

Méthode : POST

Réponse

Exemple de réponse JSON :

{
    "version": "1.0.3",
    "params": {
        "lang": "fr",
        "keyword": "agence seo",
        "key": "Votre clé d'API"
    },
    "result": {
        "semantic": {
            "0": { 
                "id" : "agence seo",
                "keyword" : "meilleure agence seo",
                "lang" : "fr",
                "type" : "match",
                "ngram" : "3",
                "cost" : "0.00",
                "concurrency" : "2",
                "volume" : "22200",
                "intent" : "navigational",
                "difficulty" : "19"
		},
			"1": { 
                "id" : "agence seo",
                "keyword" : "agence seo lyon",
                "lang" : "fr",
                "type" : "match",
                "ngram" : "3",
                "cost" : "6.11",
                "concurrency" : "18",
                "volume" : "1600",
                "intent" : "commercial",
                "difficulty" : "56"
		},
		// Jusqu'à 100 termes peuvent être retournés    },
    "response": 200,
    "message": "ok",
    "timing": 0.3334009999999999,
    "creditUsed": 1,
    "method": "tf_related",
    "credits": 2947
}

3. API tf_seo

Description : Effectue une analyse SEO complète d'une page web.

Endpoint : https://www.textfocus.net/apis/tf_seo/

Méthode : POST

Réponse

Exemple de réponse JSON :

{
    "version": "1.0.3",
    "params": {
        "lang": "fr",
        "keyword": "agence seo",
        "url": "https://beweb.fr/seo/",
        "key": "Votre clé d'API"
    },
    "result": {
    
    "packId": "14",
    "nbCompeteMax": "50",
    "url": "https://beweb.fr/seo/",
    "urlDecode": "https://beweb.fr/seo/",
    "nbH1": 1,
    "entitiesNotSupported": false,
    "typePage": "page",
    "jsonLdType": "WebPage",
    "firstWords": "vous cherchez [...] et une longue",
    "footerTxt": "On nous demande [...]",
    "host": "https://beweb.fr",
    "urlWords": " beweb  seo ",
    "contentBrut": "Skip to content . AGENCE SEO . Pilotez votre référencement naturel. [...].",
    "nbLinksOut": 16,
    "nbLinksOutExt": 5,
    "canon": "https://beweb.fr/seo/",
    "title": "Agence SEO France - Référencement Naturel Google | BEWEB",
    "description": "Besoin d'une agence SEO pour améliorer votre visibilité en ligne ? [...].",
    "robots": "index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1",
    "h1": "AGENCE SEO Pilotez votre référencement naturel",
    "h2": [
      "Les services de notre agence SEO Nos solutions pour développer votre référencement naturel",
      "Besoin d'une agence SEO ? Contactez nos consultants dès maintenant"
    ],
    "h3": [
      "Audit SEO Trouver les freins au référencement",
      "Recherche de mots clés Les bons mots pour être visible",
      "Accompagnement SEO Etre accompagné sur la durée",
      "Rédaction des balises Optimisation des balises SEO",
      "Refonte SEO Guide / cahier des charges SEO",
      "SEO Rennes Référencement en région rennaise",
      "Voici quelques avis de nos clients",
      "Ils font confiance à nos experts SEO",
      "Profitez de l'expérience d'une agence SEO Pour augmenter votre trafic naturel et vos conversions",
      "Référencement naturel de qualité Avec une agence proche de vous",
      "Améliorez la visibilité de vos sites dès maintenant !",
      "Nos dernières publications sur le SEO",
      "Stratégie SEO : les 14 méthodes de travail que nous utilisons le plus en 2024",
      "Stratégie SEO : les 14 méthodes de travail que nous utilisons le plus en 2024",
      "Utiliser Looker Studio pour analyser les performances de vos pages",
      "Utiliser Looker Studio pour analyser les performances de vos pages",
      "Quand faire un audit seo ?",
      "Quand faire un audit seo ?",
      "Pourquoi utiliser les services de notre agence SEO ?"
    ],
    "hn": [
      {
        "level": "1",
        "tag": "h1",
        "hn": " AGENCE SEO Pilotez votre référencement naturel"
      },
      {
        "level": "2",
        "tag": "h2",
        "hn": " Les services de notre agence SEO Nos solutions pour développer votre référencement naturel"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": "Audit SEOTrouver les freins au référencement"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": "Recherche de mots clés Les bons mots pour être visible"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": "Accompagnement SEO Etre accompagné sur la durée"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": "Rédaction des balises Optimisation des balises SEO"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": "Refonte SEO Guide / cahier des charges SEO"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": "Référencement en région rennaise"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": " Voici quelques avis de nos clients "
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": " Ils font confiance à nos experts SEO "
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": " Profitez de l'expérience d'une agence SEO Pour augmenter votre trafic naturel et vos conversions"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": " Référencement naturel de qualité Avec une agence proche de vous"
      },
      {
        "level": "3",
        "tag": "h3",
        "hn": " Améliorez la visibilité de vos sites dès maintenant ! "
      },
      {
        "level": "4",
        "tag": "h4",
        "hn": "Privacy Overview"
      }
    ],
    "anchors": [
      {
        "anchor": "consultant seo",
        "link": "https://beweb.fr/",
        "rel": "",
        "title": "Consultant SEO"
      },
      {
        "anchor": "services seo",
        "link": "https://beweb.fr/seo/",
        "rel": "",
        "title": "Services SEO"
      },
      {
        "anchor": "services web",
        "link": "https://beweb.fr/web/",
        "rel": "",
        "title": "Services Web"
      },
      {
        "anchor": "plan du site",
        "link": "https://beweb.fr/plan-du-site/",
        "rel": "",
        "title": ""
      },
      {
        "anchor": "contactez-nous",
        "link": "/contact/",
        "rel": "",
        "title": ""
      },
      {
        "anchor": "",
        "link": "#li-page-top",
        "rel": "",
        "title": ""
      },
      {
        "anchor": "",
        "link": "https://www.cookieyes.com/",
        "rel": "",
        "title": ""
      }
    ],
    "images": {
      "https://beweb.fr/wp-content/uploads/2020/09/beweb-logo-60.png": {
        "alt": "Consultant SEO : Expert référencement de site internet à Rennes",
        "title": "",
        "width": "",
        "height": ""
      },
      "https://beweb.fr/wp-content/uploads/2020/11/3249202edit.png": {
        "alt": "agence seo",
        "title": "",
        "width": "900",
        "height": "574"
      },
      "https://beweb.fr/wp-content/uploads/2020/11/ubiqus-logo.png": {
        "alt": "ubiqus logo",
        "title": "",
        "width": "261",
        "height": "100"
      },
      "https://beweb.fr/wp-content/uploads/2020/11/idaos-logo.png": {
        "alt": "idaos logo",
        "title": "",
        "width": "226",
        "height": "100"
      },
      "https://beweb.fr/wp-content/uploads/2016/07/orange_obs.jpg": {
        "alt": "",
        "title": "",
        "width": "194",
        "height": "100"
      },
      "https://beweb.fr/wp-content/uploads/2016/07/lylo_2015.png": {
        "alt": "",
        "title": "",
        "width": "121",
        "height": "100"
      },
      "https://beweb.fr/wp-content/uploads/2016/07/Creative-Ingenierie-logo_165X165.jpg": {
        "alt": "",
        "title": "",
        "width": "206",
        "height": "100"
      },
      "https://beweb.fr/wp-content/uploads/2020/11/augmentez-votre-trafic-naturel.png": {
        "alt": "Augmentez votre trafic naturel",
        "title": "",
        "width": "801",
        "height": "555"
      },
      "https://beweb.fr/wp-content/uploads/2020/11/3339159small.png": {
        "alt": "3339159small",
        "title": "",
        "width": "506",
        "height": "555"
      },
      "https://beweb.fr/wp-content/uploads/2023/01/strategie-seo-300x300.jpg": {
        "alt": "strategie seo",
        "title": "",
        "width": "",
        "height": ""
      },
      "https://beweb.fr/wp-content/uploads/2020/11/3497813-300x300.jpg": {
        "alt": "Utiliser Google Data Studio pour analyser les performances de vos pages",
        "title": "",
        "width": "",
        "height": ""
      },
      "https://beweb.fr/wp-content/uploads/2020/08/seo-793030_1280-300x199.jpg": {
        "alt": "Quand faire un audit seo",
        "title": "",
        "width": "",
        "height": ""
      },
      "https://beweb.fr/wp-content/plugins/cookie-law-info/legacy/public/images/logo-cookieyes.svg": {
        "alt": "CookieYes Logo",
        "title": "",
        "width": "",
        "height": ""
      }
    },
    "strong": [
      "agence en référencement",
      "stratégie de référencement",
      "expertise référencement naturel",
      "bons mots clés",
      "bonnes pratiques de Google",
      "mobile first",
      "Sites internet gérés, créés ou optimisés",
      "Sessions mensuelles cumulées sur nos sites",
      "Mots clés surveillés",
      "optimisation pour les moteurs de recherche",
      "stratégie de référencement sur mesure",
      "expérience",
      "savoir-faire",
      "équipe passionnée",
      "stratégies innovantes",
      "chaque entreprise est unique",
      "simple et accessible",
      "sur le long terme",
      "durables et évolutives,",
      "résultats qui durent"
    ],
    "em": "Jean-Joseph Lattuada, Ouest-France",
    "nbWords": 762,
    "nbWordsAll": 1414,
    "ratio": 6.91,
    "pertinence": 54,
    "nbWordsDistinct": 427,
    "beginWith": {
      "référencement": 19,
      "agence": 12,
      "seo": 8,
      "naturel": 5,
      "solutions": 5,
      "cookies": 5,
      "beweb": 5,
      "web": 5,
      "visibilité": 5,
      "optimisation": 4,
      "analyse": 4,
      "google": 4
    },
    "langs": {
      "country": "FR",
      "langOfPage": "fr",
      "headers-content-type": "text/html",
      "meta-charset": "utf-8",
      "headers-content-language": "non renseigné",
      "meta-content-language": "non renseigné",
      "meta-name-language": "non renseigné",
      "html-lang": "fr-FR"
    },
    "nbPhrases": 49,
    "nbPhrasesAll": 111,
    "entities": [
      {
        "id": 0,
        "type": [
          "Number"
        ],
        "matchingTokens": [
          2
        ],
        "entityId": "78",
        "confidenceScore": 0.5,
        "wikiLink": "",
        "matchedText": "78",
        "relevanceScore": 0,
        "entityEnglishId": "",
        "startingPos": 5,
        "endingPos": 7,
        "unit": "Number"
      },
      {
        "id": 1,
        "type": [
          "Number"
        ],
        "matchingTokens": [
          1
        ],
        "entityId": "6",
        "confidenceScore": 0.5,
        "wikiLink": "",
        "matchedText": "06",
        "relevanceScore": 0,
        "entityEnglishId": "",
        "startingPos": 2,
        "endingPos": 4,
        "unit": "Number"
      },
      {
        "id": 2,
        "matchingTokens": [
          792
        ],
        "entityId": "Algorithme",
        "freebaseTypes": [
          "/award/award_discipline",
          "/education/field_of_study",
          "/symbols/namesake",
          "/book/book_subject"
        ],
        "confidenceScore": 5.629,
        "wikiLink": "http://fr.wikipedia.org/wiki/Algorithme",
        "matchedText": "algorithmes",
        "freebaseId": "/m/0jpv",
        "relevanceScore": 0.2498,
        "entityEnglishId": "Algorithm",
        "startingPos": 5522,
        "endingPos": 5533,
        "wikidataId": "Q8366"
      },
      {
        "id": 3,
        "matchingTokens": [
          808
        ],
        "entityId": "Privacy",
        "freebaseTypes": [
          "/media_common/quotation_subject",
          "/film/film_subject",
          "/law/legal_subject",
          "/book/book_subject"
        ],
        "confidenceScore": 5.349,
        "wikiLink": "http://en.wikipedia.org/wiki/Privacy",
        "matchedText": "privacy",
        "freebaseId": "/m/06804",
        "relevanceScore": 0,
        "entityEnglishId": "Privacy",
        "startingPos": 5633,
        "endingPos": 5640,
        "wikidataId": "Q188728"
      },
      {
        "id": 4,
        "matchingTokens": [
          812
        ],
        "entityId": "Website",
        "freebaseTypes": [
          "/book/book_subject",
          "/business/industry",
          "/award/award_category",
          "/dataworld/information_source",
          "/fictional_universe/fictional_organization_type",
          "/organization/non_profit_organization",
          "/location/location",
          "/internet/website_category",
          "/award/award_discipline",
          "/organization/contact_category",
          "/business/business_location",
          "/education/school_category",
          "/organization/role",
          "/business/employer",
          "/organization/organization_sector"
        ],
        "confidenceScore": 10.45,
        "wikiLink": "http://en.wikipedia.org/wiki/Website",
        "matchedText": "website",
        "freebaseId": "/m/085n4",
        "relevanceScore": 0,
        "entityEnglishId": "Website",
        "startingPos": 5656,
        "endingPos": 5663,
        "wikidataId": "Q35127"
      },
      {
        "id": 5,
        "matchingTokens": [
          814
        ],
        "entityId": "Cookie (informatique)",
        "freebaseTypes": [
          "/book/book_subject"
        ],
        "confidenceScore": 3.079,
        "wikiLink": "http://fr.wikipedia.org/wiki/Cookie_(informatique)",
        "matchedText": "cookies",
        "freebaseId": "/m/0d18sk",
        "relevanceScore": 0.3457,
        "entityEnglishId": "HTTP cookie",
        "startingPos": 5669,
        "endingPos": 5676,
        "wikidataId": "Q178995"
      },
      {
        "id": 6,
        "matchingTokens": [
          892,
          893
        ],
        "entityId": "Option de retrait dans l'Union européenne",
        "confidenceScore": 1.016,
        "wikiLink": "http://fr.wikipedia.org/wiki/Option_de_retrait_dans_l'Union_européenne",
        "matchedText": "opt out",
        "freebaseId": "/m/03cfnlw",
        "relevanceScore": 0.1998,
        "entityEnglishId": "Opt-outs in the European Union",
        "startingPos": 6098,
        "endingPos": 6105,
        "wikidataId": "Q1349687"
      },
      {
        "id": 7,
        "matchingTokens": [
          899,
          900
        ],
        "entityId": "Opt-out (marketing)",
        "confidenceScore": 1.776,
        "wikiLink": "http://fr.wikipedia.org/wiki/Opt-out_(marketing)",
        "matchedText": "opting out",
        "freebaseId": "",
        "relevanceScore": 0.06177,
        "entityEnglishId": "Opt-out",
        "startingPos": 6128,
        "endingPos": 6138,
        "wikidataId": "Q1368455"
      },
      {
        "id": 8,
        "matchingTokens": [
          907
        ],
        "entityId": "Affect",
        "confidenceScore": 0.9559,
        "wikiLink": "http://fr.wikipedia.org/wiki/Affect",
        "matchedText": "affect",
        "freebaseId": "/m/09f7n8",
        "relevanceScore": 0.1276,
        "entityEnglishId": "Affect (psychology)",
        "startingPos": 6168,
        "endingPos": 6174,
        "wikidataId": "Q159904",
        "wikidataTypes": [
          "Q96634632/psychology term",
          "Q12812139/technical term"
        ]
      },
      {
        "id": 9,
        "matchingTokens": [
          928
        ],
        "entityId": "Analytics",
        "freebaseTypes": [
          "/organization/organization_sector",
          "/business/competitive_space",
          "/computer/software_genre",
          "/internet/website_category",
          "/book/book_subject",
          "/business/industry",
          "/media_common/quotation_subject"
        ],
        "confidenceScore": 2.001,
        "wikiLink": "http://en.wikipedia.org/wiki/Analytics",
        "matchedText": "analytics",
        "freebaseId": "/m/02gcn9",
        "relevanceScore": 0,
        "entityEnglishId": "Analytics",
        "startingPos": 6296,
        "endingPos": 6305,
        "wikidataId": "Q485396",
        "wikidataTypes": [
          "Q105948247/knowledge system",
          "Q1047113/specialty",
          "Q2198779/unit",
          "Q4671286/academic major",
          "Q26256810/matter",
          "Q11953984/linguistic unit",
          "Q11862829/academic discipline",
          "Q110403031/knowledge type",
          "Q115786086/linguistic form",
          "Q115372263/word or phrase",
          "Q1128340/subject heading"
        ]
      }
    ],
    "opengraph": {
      "og:locale": "fr_FR",
      "og:type": "article",
      "og:title": "Agence SEO France - Référencement Naturel Google | BEWEB",
      "og:description": "Besoin d",
      "og:url": "https://beweb.fr/seo/",
      "og:site_name": "Consultant SEO : Expert référencement de site internet à Rennes"
    },
    "twitter": [],
    "robotsTxtInfo": {
      "code": 200,
      "response": {},
      "content": "User-agent: *\r\nDisallow:\r\n\r\n#test o2"
    },
    "nbImg": 13,
    "nbImgNoAlt": 3,
    "firstPerson": {
      "notre": 10,
      "nos": 13,
      "nous": 31,
      "mes": 1,
      "me": 1,
      "je": 2,
      "ma": 1
    },
    "mykeyword": "",
    "verif_presence": 1,
    "words": {
      "agence": 18,
      "référencement": 27,
      "naturel": 9,
      "référencement naturel": 5,
      "google": 9,
      "beweb": 6,
      "france": 1,
      "besoin": 6,
      "solutions": 6,
      "accompagnement": 5,
      "rédaction": 4,
      "améliorer": 5,
      "visibilité": 7,
      "mesure": 3,
      "optimisation": 7,
      "audit": 7,
      "bonne": 3,
      "développer": 2,
      "optimisé": 2,
      "cherchez": 2,
      "croissance": 2,
      "saura": 1,
      "proposons": 2,
      "contact": 1,
      "contactez": 1,
      "rigueur": 1,
      "choisir": 1,
      "sérieux": 1,
      "confiez": 1,
      "large": 1,
      "laissons": 1,
      "proposé": 1,
      "panel": 1,
      "adaptées": 1,
      "temps": 1,
      "outils": 1,
      "tracking": 1,
      "paramétrage": 1,
      "longue": 1,
      "manager": 1,
      "contenu": 2,
      "client": 8,
      "stratégie": 8,
      "technique": 6,
      "recherche": 6,
      "analyse": 6,
      "experience": 6,
      "cookies": 6,
      "balises": 5,
      "travail": 5,
      "objectif": 4,
      "sites": 4,
      "place": 4,
      "these": 4,
      "performance": 4,
      "résultats": 4,
      "website": 4,
      "comprendre": 4,
      "aider": 4
    },
    "optimise": {
      "agence": 51,
      "référencement": 50,
      "naturel": 39,
      "google": 28,
      "beweb": 28,
      "france": 23,
      "besoin": 12,
      "solutions": 11,
      "audit": 7,
      "visibilité": 7
    },
    "wordsOptimiseFor": {
      "agence": 51,
      "référencement": 50,
      "naturel": 39,
      "google": 28,
      "beweb": 28,
      "france": 23,
      "besoin": 12,
      "solutions": 11,
      "audit": 7,
      "visibilité": 7,
      "améliorer": 7,
      "mesure": 7,
      "rédaction": 7,
      "optimisation": 7,
      "accompagnement": 7
    },
    "groupOptimiseFor": {
      "agence": 51,
      "référencement": 50,
      "naturel": 39,
      "google": 28,
      "beweb": 28,
      "france": 23,
      "besoin": 12,
      "solutions": 11,
      "audit": 7,
      "visibilité": 7,
      "améliorer": 7,
      "mesure": 7,
      "rédaction": 7,
      "optimisation": 7,
      "accompagnement": 7
    },
    "lexies": {
      "proposons": {
        "4": "proposition",
        "22": "viser",
        "24": "mesure",
        "26": "objectif",
        "33": "agence",
        "35": "contenu",
        "43": "sites",
        "47": "services",
        "53": "concurrence",
        "83": "option",
        "164": "projet",
        "197": "atteindre",
        "201": "client",
        "211": "découvrir",
        "214": "devis",
        "228": "gratuit",
        "277": "accompagnement"
      },
      "référencement": [
        "recherche",
        "optimisation",
        "visibilité",
        "contenu",
        "internet",
        "visible",
        "complexe",
        "optimisé"
      ],
      "solutions": [
        "optimisation",
        "analyse",
        "efficace",
        "simple",
        "optimiser",
        "amélioration",
        "performance",
        "référencement",
        "stratégie",
        "processus",
        "adaptées"
      ],
      "agence": {
        "14": "entreprise",
        "16": "client",
        "32": "objectif",
        "37": "secteur"
      },
      "naturel": {
        "38": "simple",
        "126": "migration",
        "187": "recherche",
        "195": "force"
      },
      "besoin": [
        "amélioration",
        "objectif",
        "qualité",
        "utile",
        "entreprise",
        "client",
        "disponible",
        "projet",
        "bonne",
        "adaptées"
      ],
      "développer": {
        "0": "croissance",
        "1": "secteur",
        "2": "trafic",
        "3": "processus",
        "4": "entreprise",
        "6": "améliorer"
      },
      "mesure": [
        "temps",
        "point",
        "secteur",
        "stade",
        "ligne",
        "force",
        "commun",
        "durée",
        "travail",
        "processus",
        "terme",
        "nouveau",
        "ensemble",
        "photographe",
        "studio",
        "performance",
        "ordinaire",
        "longue"
      ],
      "outils": {
        "8": "analyse",
        "75": "optimisation",
        "77": "ergonomie",
        "98": "guide",
        "111": "simple"
      },
      "confiez": {
        "7": "laisser",
        "8": "confiance",
        "24": "découvrir",
        "34": "choisir",
        "99": "enregistrer"
      },
      "rédaction": {
        "13": "projet",
        "14": "quotidien",
        "17": "cahier"
      },
      "contact": {
        "11": "direct"
      },
      "contactez": {
        "20": "aider",
        "54": "découvrir",
        "118": "proposer",
        "126": "rendre",
        "127": "répondre",
        "134": "savoir"
      },
      "sérieux": {
        "41": "confiance",
        "55": "gratuit"
      },
      "saura": {
        "51": "montre",
        "59": "commun",
        "64": "découvrir",
        "167": "disponibilité",
        "193": "force",
        "272": "point",
        "279": "processus"
      },
      "laissons": {
        "50": "cours",
        "69": "mettre",
        "88": "rendre",
        "97": "découvrir",
        "114": "maîtriser",
        "188": "place",
        "265": "aimons",
        "271": "appliquer"
      }
    },
    "listLexies": {
      "agence": {
        "ponderation": 51,
        "color": "264653"
      },
      "référencement": {
        "ponderation": 74,
        "color": "287271"
      },
      "naturel": {
        "ponderation": 39,
        "color": "2A9D8F"
      },
      "besoin": {
        "ponderation": 23,
        "color": "8AB17D"
      },
      "solutions": {
        "ponderation": 73,
        "color": "E9C46A"
      },
      "mesure": {
        "ponderation": 17,
        "color": "EFB366"
      },
      "rédaction": {
        "ponderation": 7,
        "color": "F4A261"
      },
      "développer": {
        "ponderation": 18,
        "color": "EE8959"
      },
      "contact": {
        "ponderation": 5,
        "color": "E76F51"
      },
      "contactez": {
        "ponderation": 5,
        "color": "E97C61"
      },
      "proposons": {
        "ponderation": 75,
        "color": "f45b5b"
      },
      "sérieux": {
        "ponderation": 5,
        "color": "e4d354"
      },
      "confiez": {
        "ponderation": 10,
        "color": "413775"
      },
      "saura": {
        "ponderation": 5,
        "color": "e91e63"
      },
      "laissons": {
        "ponderation": 5,
        "color": "9c27b0"
      },
      "outils": {
        "ponderation": 12,
        "color": "90ed7d"
      }
    },
    "lexiesOptimiseFor": {
      "proposons": 75,
      "référencement": 74,
      "solutions": 73,
      "agence": 51,
      "naturel": 39,
      "besoin": 23,
      "développer": 18,
      "mesure": 17,
      "outils": 12
    },
    "listPresence": {
      "title": {
        "référencement naturel": 1,
        "référencement": 1,
        "agence": 1,
        "google": 1,
        "naturel": 1,
        "beweb": 1,
        "france": 1
      },
      "h1": {
        "référencement naturel": 1,
        "référencement": 1,
        "agence": 1,
        "naturel": 1
      },
      "h2": {
        "référencement naturel": 1,
        "référencement": 1,
        "agence": 1,
        "naturel": 1,
        "solutions": 1,
        "services": 1,
        "développer": 1,
        "besoin": 1,
        "consultants": 1,
        "contact": 1,
        "contactez": 1
      },
      "strong": {
        "référencement naturel": 1,
        "référencement": 1,
        "agence": 1,
        "stratégie": 1,
        "naturel": 1,
        "google": 1,
        "pratiques": 1,
        "bonne": 1,
        "mobile": 1,
        "first": 1
      },
      "description": {
        "agence": 1,
        "stratégie": 1,
        "visibilité": 1,
        "besoin": 1,
        "améliorer": 1,
        "mesure": 1,
        "ligne": 1
      },
      "h3": {
        "référencement": 1,
        "audit": 1,
        "trouver": 1,
        "freins": 1,
        "recherche": 1,
        "visible": 1,
        "accompagnement": 1,
        "accompagné": 1,
        "durée": 1,
        "optimisation": 1,
        "balises": 1,
        "rédaction": 1,
        "charges": 1,
        "refonte": 1,
        "cahier": 1,
        "guide": 1,
        "rennes": 1,
        "région": 1,
        "rennaise": 1
      },
      "host": {
        "beweb": 1
      },
      "url": {
        "beweb": 1
      },
      "firstWords": {
        "référencement": 1,
        "agence": 1,
        "google": 1,
        "visibilité": 1,
        "audit": 1,
        "optimisation": 1,
        "besoin": 1,
        "beweb": 1,
        "solutions": 1,
        "accompagnement": 1,
        "améliorer": 1,
        "place": 1,
        "rédaction": 1,
        "bonne": 1,
        "mesure": 1,
        "proposer": 1,
        "concrètes": 1,
        "trafic": 1,
        "internet": 1,
        "cherchez": 1,
        "optimisé": 1,
        "contenu": 1,
        "hasard": 1,
        "proposons": 1,
        "croissance": 1,
        "rigueur": 1,
        "choisir": 1,
        "sérieux": 1,
        "confiez": 1,
        "saura": 1,
        "large": 1,
        "laissons": 1,
        "panel": 1,
        "adaptées": 1,
        "temps": 1,
        "outils": 1,
        "tracking": 1,
        "paramétrage": 1,
        "manager": 1,
        "proposé": 1,
        "longue": 1
      },
      "footerTxt": {
        "agence": 1,
        "besoin": 1,
        "beweb": 1,
        "experts": 1,
        "répondre": 1,
        "rennes": 1,
        "christophe": 1,
        "consultants": 1,
        "services": 1,
        "contact": 1,
        "contactez": 1,
        "répond": 1
      },
      "em": {
        "ouest": 1,
        "france": 1,
        "lattuada": 1,
        "joseph": 1
      }
    },
    "scoreSeo": 96.5,
    "hnInFooter": []
    },
    "response": 200,
    "message": "ok",
    "timing": 0.3334009999999999,
    "creditUsed": 1,
    "method": "tf_related",
    "credits": 2947
}

4. API tf_semantic

Description : Fournit une analyse sémantique et propose du vocabulaire sémantique.

Endpoint : https://www.textfocus.net/apis/tf_semantic/

Méthode : POST

Réponse

Exemple de réponse JSON :

{
    "version": "1.0.3",
    "params": {
        "lang": "fr",
        "keyword": "mini serre",
        "key": "Votre clé d'API"
    },
    "result": {
        
        "nbCompete": 34,
    "nbFound": 119,
    "nbWordsContentMoy": 904.6470588235294,
    "nbWordsTitleMoy": 6.0588235294117645,
    "semantic": {
      "0": {
        "id": "mini serre",
        "keyword": "semis",
        "kei": "100.00",
        "ngram": "1",
        "used": "82.35",
        "occ": "105",
        "omin": "1",
        "omax": "36",
        "omoy": "7.5",
        "osd": "8.1",
        "nbwmoy": "555",
        "intitle": "14.71",
        "inhn": "26.47",
        "frequency": "22.85",
        "tfidf": "0.0613",
        "context": "a:3:{i:0;s:16:\"mini serre semis\";i:1;s:21:\"fleurs légumes semis\";i:2;s:16:\"serre semis pots\";}"
      },
      "1": {
        "id": "mini serre",
        "keyword": "plantes",
        "kei": "99.11",
        "ngram": "1",
        "used": "73.53",
        "occ": "97",
        "omin": "1",
        "omax": "44",
        "omoy": "7.8",
        "osd": "11.1",
        "nbwmoy": "606",
        "intitle": "0.00",
        "inhn": "14.71",
        "frequency": "16.74",
        "tfidf": "0.0573",
        "context": "a:3:{i:0;s:23:\"plantes fleurs légumes\";i:1;s:23:\"serre hivernage plantes\";i:2;s:24:\"hivernage plantes fleurs\";}"
      },
      "2": {
        "id": "mini serre",
        "keyword": "jardin",
        "kei": "98.01",
        "ngram": "1",
        "used": "79.41",
        "occ": "140",
        "omin": "1",
        "omax": "54",
        "omoy": "12.0",
        "osd": "11.9",
        "nbwmoy": "605",
        "intitle": "20.59",
        "inhn": "38.24",
        "frequency": "30.33",
        "tfidf": "0.0694",
        "context": "a:3:{i:0;s:17:\"mini serre jardin\";i:1;s:19:\"petite serre jardin\";i:2;s:26:\"serre jardin polycarbonate\";}"
      },
      "3": {
        "id": "mini serre",
        "keyword": "culture",
        "kei": "95.93",
        "ngram": "1",
        "used": "76.47",
        "occ": 83,
        "omin": "1",
        "omax": "23",
        "omoy": "5.5",
        "osd": "5.2",
        "nbwmoy": "589",
        "intitle": "14.71",
        "inhn": "29.41",
        "frequency": "19.50",
        "tfidf": "0.0492",
        "context": "a:3:{i:0;s:18:\"mini serre culture\";i:1;s:23:\"serre culture plastique\";i:2;s:13:\"serre culture\";}"
      },
      "4": {
        "id": "mini serre",
        "keyword": "balcon",
        "kei": "77.62",
        "ngram": "1",
        "used": "47.06",
        "occ": "24",
        "omin": "1",
        "omax": "6",
        "omoy": "2.6",
        "osd": "1.6",
        "nbwmoy": "595",
        "intitle": "0.00",
        "inhn": "8.82",
        "frequency": "4.29",
        "tfidf": "0.0324",
        "context": "a:3:{i:0;s:15:\"balcon terrasse\";i:1;s:13:\"serres balcon\";i:2;s:12:\"serre balcon\";}"
      },
		// Jusqu'à 100 termes peuvent être retournés      
    }
        
        
    },
    "response": 200,
    "message": "ok",
    "timing": 0.020776,
    "creditUsed": 1,
    "method": "tf_keyword",
    "credits": 2948
}

5. Gestion des réponses asynchrones

Certaines APIs, comme tf_semantic, peuvent nécessiter un traitement asynchrone.
Dans ce cas, un callback peut être défini pour recevoir la réponse sur votre serveur.

<?php
	public function my_callback(){
    		log_message('error', 'Call of my_callback');
    		$payload = file_get_contents('php://input');
    		log_message('error', 'Content : '. $payload);
    		print_r($payload);
	}
?>