Documentación para desarrolladores

Suggest a page FAQ from the questions people ask

POST/sites/{siteId}/pages/{pageId}/faq-suggest
Permiso
actions:apply
Herramienta MCP
run_faq_suggest

Suggest a page FAQ from the questions people ask Runs the FAQ suggestion and stores it, like "Suggest FAQ from real questions" in the app. Reuses Google results with People also ask for the keyword stored in the last 7 days (rerun: last day only, and a fresh AI judgment); otherwise uses one keyword lookup from the monthly plan, inside the spending limits. The top 5 pages are read for free and the AI step is one AI use. Nothing is written to the website.

Las descripciones vienen del documento OpenAPI y están en inglés.

Parámetros

NombreDóndeDetalles
siteIdObligatoriorutastringWebsite id, from GET /sites.
pageIdObligatoriorutastringPage id, from GET /pages or GET /pages/findings.

Cuerpo de la petición

CampoDetalles
keywordstring · at most 80 characters; The search to research; default: the page's main keyword (the first of keywordChoices)
reruntrue or false · Ask for fresh results (older than a day) and a fresh AI judgment
languageen | de | es | fa · Language of the reasons; default en. Questions and answers stay in the page's language
{
  "keyword": "trail bike sizing",
  "language": "en"
}

Respuesta

200 · application/json

CampoDetalles
pageobject · required
page.idstring · required
page.urladdress (URL) · required
suggestionobject · required
suggestion.keywordstring
suggestion.locationCodenumber
suggestion.languageCodestring
suggestion.suggestedAtstring
suggestion.resultsobject
suggestion.results.datestring
suggestion.results.sourcestring
suggestion.results.checkUrlstring
suggestion.results.peopleAlsoAsklist of strings
suggestion.results.relatedSearcheslist of strings
suggestion.results.topPagesReadlist of objects
suggestion.results.topPagesRead[].urlstring
suggestion.results.topPagesRead[].domainstring
suggestion.results.topPagesRead[].readtrue or false
suggestion.results.topPagesRead[].questionsnumber
suggestion.pageTextstring
suggestion.questionslist of objects
suggestion.questions[].questionstring
suggestion.questions[].askedBynumber
suggestion.questions[].sourceslist of objects
suggestion.questions[].sources[].sourcestring
suggestion.questions[].sources[].from
suggestion.questions[].wordingslist of strings
suggestion.questions[].answeredstring
suggestion.questions[].answeringSentencestring
suggestion.suggestedFaqlist of objects
suggestion.suggestedFaq[].indexnumber
suggestion.suggestedFaq[].questionstring
suggestion.suggestedFaq[].answerstring
suggestion.suggestedFaq[].fromSentenceslist of strings
suggestion.addSectionlist of objects
suggestion.addSection[].questionstring
suggestion.addSection[].headingstring
suggestion.addSection[].whystring
suggestion.reasonsLanguagestring
suggestion.modelstring
suggestion.resultsCostUsdnumber
costobject · required
cost.usdnumber · required; What this run paid for results
cost.lookupsinteger · required; Keyword lookups used: 1, or 0 when stored results were reused
cost.reusedtrue or false · required; Stored results were reused
cost.pagesReadinteger · required; Top pages read (free)
aiNotestring or null · required; Why questions were not grouped (the daily AI limit, the AI could not answer); run again later
linkaddress (URL) · required

Errores

EstadoSignificado
400Bad request. Codes: missing_argument, bad_keyword, no_keyword.
401Missing, unknown or revoked key. Codes: missing_key, invalid_key.
403The key lacks the scope, covers another website, or its owner lost access. Codes: missing_scope, other_site, owner_left, no_owner, forbidden.
404Not found. Codes: not_found.
422The request cannot be carried out. Codes: unsupported_location, no_results, no_text, no_questions.
429A limit is reached. rate_limited: too many requests this hour for this key. Codes: rate_limited, lookups, workspace_cap, global_cap.
502An outside service did not answer. Codes: failed.
503Switched off for now. Codes: no_provider.

Petición de ejemplo

curl -X POST \
  -H "Authorization: Bearer mr_ws_…" \
  -H "Content-Type: application/json" \
  -d '{"keyword":"trail bike sizing","language":"en"}' \
  "https://app.monoranks.com/api/v1/sites/SITE_ID/pages/PAGE_ID/faq-suggest"

Respuesta de ejemplo

{
  "page": {
    "id": "c7a9e1b3-5d7f-4b9c-8e1a-3c5e7a9b1d2f",
    "url": "https://acmebikes.com/guides/trail-bike-sizing/"
  },
  "suggestion": {
    "keyword": "trail bike sizing",
    "locationCode": 2840,
    "languageCode": "en",
    "suggestedAt": "2026-10-09T08:12:51.000Z",
    "results": {
      "date": "2026-10-09",
      "source": "live",
      "checkUrl": "https://www.google.com/search?q=trail%20bike%20sizing&num=10&hl=en&gl=US",
      "peopleAlsoAsk": [
        "How do I know what size trail bike I need?",
        "What size bike for 5'10?",
        "Is it better to size up or down on a mountain bike?"
      ],
      "relatedSearches": [
        "trail bike size chart",
        "mtb sizing calculator"
      ],
      "topPagesRead": [
        {
          "url": "https://ridgecycles.example/sizing",
          "domain": "ridgecycles.example",
          "read": true,
          "questions": 4
        },
        {
          "url": "https://trailhub.example/fit",
          "domain": "trailhub.example",
          "read": false,
          "questions": 0
        }
      ]
    },
    "pageText": "live",
    "questions": [
      {
        "question": "How do I know what size trail bike I need?",
        "askedBy": 3,
        "sources": [
          {
            "source": "paa",
            "from": null
          },
          {
            "source": "top_page",
            "from": "ridgecycles.example"
          },
          {
            "source": "search_console",
            "from": null
          }
        ],
        "wordings": [
          "How do I know what size trail bike I need?",
          "How do I choose my trail bike size?",
          "what size trail bike do i need"
        ],
        "answered": "yes",
        "answeringSentence": "Start from your height: riders from 170 to 180 cm usually fit a size M frame."
      },
      {
        "question": "Is it better to size up or down on a mountain bike?",
        "askedBy": 2,
        "sources": [
          {
            "source": "paa",
            "from": null
          },
          {
            "source": "top_page",
            "from": "ridgecycles.example"
          }
        ],
        "wordings": [
          "Is it better to size up or down on a mountain bike?",
          "Should I size up or down?"
        ],
        "answered": "partly",
        "answeringSentence": "Between two sizes, the smaller frame is easier to handle on tight trails."
      },
      {
        "question": "How much does a trail bike weigh?",
        "askedBy": 1,
        "sources": [
          {
            "source": "answer_gap",
            "from": null
          }
        ],
        "wordings": [
          "How much does a trail bike weigh?"
        ],
        "answered": "no",
        "answeringSentence": null
      }
    ],
    "suggestedFaq": [
      {
        "index": 0,
        "question": "How do I know what size trail bike I need?",
        "answer": "Start from your height: riders from 170 to 180 cm usually fit a size M frame.",
        "fromSentences": [
          "Start from your height: riders from 170 to 180 cm usually fit a size M frame."
        ]
      },
      {
        "index": 1,
        "question": "Is it better to size up or down on a mountain bike?",
        "answer": "Between two sizes, the smaller frame is easier to handle on tight trails.",
        "fromSentences": [
          "Between two sizes, the smaller frame is easier to handle on tight trails."
        ]
      }
    ],
    "addSection": [
      {
        "question": "How much does a trail bike weigh?",
        "heading": "How much our trail bikes weigh",
        "why": "AI answers to this question name other shops, never this one."
      }
    ],
    "reasonsLanguage": "en",
    "model": "claude-sonnet-4-6",
    "resultsCostUsd": 0.002
  },
  "cost": {
    "usd": 0.002,
    "lookups": 1,
    "reused": false,
    "pagesRead": 4
  },
  "aiNote": null,
  "link": "https://app.monoranks.com/sites/3f6c2a1e-8b4d-4c7a-9e21-5d0b7a6f4c13/pages/c7a9e1b3-5d7f-4b9c-8e1a-3c5e7a9b1d2f#faq-suggest"
}

El servidor MCP hace lo mismo con la herramienta run_faq_suggest.