Trying to find programmatic SEO strategies but can't figure out what to look for? Let our AIs recommend ideas for you.
We use a variety of SEO trained AI models to generate a set of applicable keywords based on the provided description of your business. These keywords are then transformed into URL structures to better target search engine query intents.
1 token/credit per unique keyword
- Unique keywords are keywords that are not in our local cache.
Minimum cost per execution is capped at 1 token/credit per request
> POST https://api.jsonrepo.com/v1/seo/ai_pseo_ideas
Field | Description |
---|---|
X-API-Key | Required Your API Key |
Field | Type | Description |
---|---|---|
description | String | Required String length between 30 and 100 characters long. |
limit | Integer | Optional The number of maximum recommendations to be generated by our AIDefault: 5 Range: 1 <= limit <= 10 |
A successful request will result in a populated payload
field with the expected output.
Response Time:
AI output is bound by the efficiency of the model and the prompt enabling it. The bigger your
limit
is, the longer the request will take to process. Please be patient as processing the information could sometimes take between 1 and 5 seconds.
// Generate `2` pSEO strategy recommendations for
// `An online pizza store that delivers in new york`
curl -X POST https://api.jsonrepo.com/v1/seo/ai_pseo_ideas \
-H "X-API-Key: {YOUR_API_KEY_HERE}" \
--data-urlencode "description=An online pizza store that delivers in new york" \
--data-urlencode "limit=2"
// Server Response
{
"http_code": 200,
"http_message": "Ok",
"timestamp": 1733901337,
"message": "Successful execution.",
"payload": {
"ideas": {
"input": {
"description": "an online pizza store that delivers in new york",
"limit": 2
},
"output": [
{
"keyword": {
"id": 3494,
"keyword": "new york pizza",
"volume": 673000,
"competition": 8,
"cpc": "$ 1.12",
"trend": [
{
"year": 2023,
"month": "December",
"value": 550000
},
// 12 Months of data
...
{
"year": 2024,
"month": "November",
"value": 673000
}
],
"last_updated": "11 December 2024",
"region": "global",
"length": 14,
"difficulty_score": 3,
"volume_score": 5,
"ad_score": 4,
"origin": "cache"
},
"pillar": "/nyc-pizza",
"examples": [
"/nyc-pizza/best-slices",
"/nyc-pizza/pizza-deals",
"/nyc-pizza/food-delivery"
]
},
{
"keyword": {
"id": 3493,
"keyword": "pizza delivery nyc",
"volume": 2900,
"competition": 23,
"cpc": "$ 0.8",
"trend": [...],
"last_updated": "11 December 2024",
"region": "global",
"length": 18,
"difficulty_score": 2,
"volume_score": 2,
"ad_score": 3,
"origin": "cache"
},
"pillar": "/pizza-delivery-nyc",
"examples": [
"/pizza-delivery-nyc/brooklyn-food",
"/pizza-delivery-nyc/queens-restaurants",
"/pizza-delivery-nyc/manhattan-cuisine"
]
}
]
}
}
}
A failed request will result in an error output as detailed in Error Rules. If the endpoint validation fails due to missing, badly formatted or invalid parameters, the endpoint will return HTTP code 400
along with a message
detailing the error.
// Request without `description` parameter
{
"http_code": 400,
"http_message": "Bad Request",
"timestamp": 1731614902,
"message": "'description' must be provided as an alphanumeric string of size 30 to 100 characters.",
"payload": []
}