Analyse Keywords API

ApyHub
ApyHub
verified icon
200 atoms
Base tier

About

This API lets you extract high-frequency keywords, key phrases and latent semantic keywords from any URL.
This API offers valuable insights for optimizing web content and improving search engine rankings. The API can analyze keyword data across multiple sources, helping to create well-balanced and keyword-rich content. Ideal for enhancing online content visibility and crafting impactful content strategies in the competitive digital landscape.
Try out the API in the API playground and see how this keyword extraction API can help you calculate the frequency and density of keywords, save time, and reduce errors with a simple API call.

API Playground

API Documentation

Analyse Keywords in Articles
POST
https://api.apyhub.com/extract/keywords/analyse

Request example

1
curl --location --request POST 'https://api.apyhub.com/extract/keywords/analyse' \
2
--header 'apy-token: {{token}}' \
3
--header 'Content-Type: application/json' \
4
--data '{
5
"urls": ["https://techcrunch.com/2023/11/22/chatgpt-everything-to-know-about-the-ai-chatbot/"]
6
}'
Method: POST
Content Type: application/json
Request Body
AttributeTypeMandatoryDescription
urlsArrayYesURLs of websites from which keywords are to be extracted. The number of URLs should be between 1 and 10.
article_lengthNumberYesWord count for the new article.
return_results_topNumberNoNumber of top keywords, keyphrases, and latent semantic keywords to be returned for both individual and aggregated results. Acceptable values are between 5 and 50. Defaults to 10.
Response
AttributeTypeDescription
data.aggregated_resultsObjectAggregated results derived from the input URLs and the length of the new article.
data.aggregated_results.top_keywordsArrayAggregated top keywords, including their maximum and minimum ranges, for inclusion in the new article.
data.aggregated_results.top_keywords.keywordStringA keyword suggested for inclusion in the new article.
data.aggregated_results.top_keywords.max_rangeNumberMaximum suggested range for the frequency of the keyword in the new article.
data.aggregated_results.top_keywords.min_rangeNumberMinimum suggested range for the frequency of the keyword in the new article.
data.aggregated_results.top_phrasesArrayAggregated top keyphrases, including their maximum and minimum ranges, for inclusion in the new article.
data.aggregated_results.top_phrases.phraseStringA keyphrase suggested for inclusion in the new article.
data.aggregated_results.top_phrases.max_rangeNumberMaximum suggested range for the frequency of the keyphrase in the new article.
data.aggregated_results.top_phrases.min_rangeNumberMinimum suggested range for the frequency of the keyphrase in the new article.
data.aggregated_results.top_latent_semantic_keywordsArrayAggregated top latent semantic keywords suggested for inclusion in the new article.
data.individual_resultsArrayResults from the URLs provided by the user.
data.individual_results.urlStringURL of the user-provided article.
data.individual_results.previewStringThe initial segment of the user-provided article.
data.individual_results.high_frequency_keywordsArrayMost frequent keywords in the user-provided article.
data.individual_results.high_frequency_keywords.keywordStringA specific keyword found in the user-provided article.
data.individual_results.high_frequency_keywords.frequencyNumberFrequency count of each keyword in the user-provided article.
data.individual_results.high_frequency_keyphrasesArrayMost frequent keyphrases in the user-provided article.
data.individual_results.high_frequency_keyphrases.keyphraseStringA specific keyphrase found in the user-provided article.
data.individual_results.high_frequency_keyphrases.frequencyNumberFrequency count of each keyphrase in the user-provided article.
data.individual_results.latent_semantic_keywordsArrayLatent semantic keywords identified in the user-provided article.
Sample Response
1
{
2
"data": {
3
"aggregated_results": {
4
"top_keywords": [
5
{
6
"keyword": "eyes",
7
"max_range": 13,
8
"min_range": 11
9
},
10
{
11
"keyword": "volunteer",
12
"max_range": 12,
13
"min_range": 10
14
},
15
{
16
"keyword": "app",
17
"max_range": 9,
18
"min_range": 9
19
},
20
{
21
"keyword": "helping",
22
"max_range": 7,
23
"min_range": 7
24
},
25
{
26
"keyword": "people",
27
"max_range": 7,
28
"min_range": 7
29
}
30
],
31
"top_latent_semantic_keywords": [
32
"able",
33
"accompanying",
34
"among",
35
"always",
36
"analyze"
37
],
38
"top_phrases": [
39
{
40
"max_range": 7,
41
"min_range": 7,
42
"phrase": "virtual volunteer"
43
},
44
{
45
"max_range": 3,
46
"min_range": 3,
47
"phrase": "helping people"
48
},
49
{
50
"max_range": 3,
51
"min_range": 3,
52
"phrase": "gpt4 multimodal"
53
},
54
{
55
"max_range": 3,
56
"min_range": 3,
57
"phrase": "eyes app"
58
},
59
{
60
"max_range": 1,
61
"min_range": 1,
62
"phrase": "openai introduced"
63
}
64
]
65
},
66
"individual_results": [
67
{
68
"preview": "OpenAI has introduced the world to its latest powerful AI model, GPT-4, and refreshingly the first thing they partnered up on with its new capabilities is helping people with visual impairments. Be My Eyes, which lets blind and low vision folks ask sighted people to describe what their phone sees,...",
69
"url": "https://techcrunch.com/2023/03/14/gpt-4s-first-app-is-a-virtual-volunteer-for-the-visually-impaired/",
70
"high_frequency_keyphrases": [
71
{
72
"frequency": 5,
73
"keyphrase": "virtual volunteer"
74
},
75
{
76
"frequency": 2,
77
"keyphrase": "helping people"
78
},
79
{
80
"frequency": 2,
81
"keyphrase": "gpt4 multimodal"
82
},
83
{
84
"frequency": 2,
85
"keyphrase": "eyes app"
86
},
87
{
88
"frequency": 1,
89
"keyphrase": "openai introduced"
90
}
91
],
92
"high_frequency_keywords": [
93
{
94
"frequency": 8,
95
"keyword": "eyes"
96
},
97
{
98
"frequency": 7,
99
"keyword": "volunteer"
100
},
101
{
102
"frequency": 6,
103
"keyword": "app"
104
},
105
{
106
"frequency": 5,
107
"keyword": "helping"
108
},
109
{
110
"frequency": 5,
111
"keyword": "people"
112
}
113
],
114
"latent_semantic_keywords": [
115
"accompanying",
116
"ai",
117
"among",
118
"able",
119
"altman",
120
"always",
121
"analyze"
122
]
123
}
124
]
125
}
126
}

HTTP Response Codes

The method may return one of the following HTTP status codes:
Status CodeDescription
200The request was successful.
400Invalid input - the url is not accessible or the supported inputs are not provided.
401Required authentication information is either missing or not valid for the resource.
500If any unexpected error occurs while processing the request.

Authentication

All API requests to ApyHub services need to be authenticated. Currently we support tokens or basic authentication mechanisms. You can generate and view your existing credentials from your workspace settings (on the left side of the navbar) and go to “API Keys".
Points to note:
  • Credential secrets are generated on the fly and are not stored in plain text, so on generating a credential please save the secrets somewhere safe.
  • Use the apy-token as the header parameter to pass the token.
  • Use the Authorization header to send the basic authentication credentials.

Error codes

1
{
2
"error": {
3
"code": 105,
4
"message": "Invalid URL"
5
}
6
}
To search for a specific error code, enter the code in the search box below. Alternatively, you can click on the button to view a complete list of all error codes.
Table of contents
AboutAPI PlaygroundAPI DocumentationAuthenticationError codesRelated Utility APIsRelated Articles