Import SEO keywords from xlsx, xls, or csv
curl --request POST \
--url https://api.yalg.ai/v1/blog/keywords/import \
--header 'Content-Type: multipart/form-data' \
--header 'x-api-key: <api-key>' \
--form file='@example-file' \
--form autoFill=trueconst form = new FormData();
form.append('file', '<spreadsheet or CSV file>');
form.append('autoFill', 'true');
const options = {method: 'POST', headers: {'x-api-key': '<api-key>'}};
options.body = form;
fetch('https://api.yalg.ai/v1/blog/keywords/import', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.yalg.ai/v1/blog/keywords/import"
files = { "file": ("example-file", open("example-file", "rb")) }
payload = { "autoFill": "true" }
headers = {"x-api-key": "<api-key>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)"<string>"{
"statusCode": 400,
"message": "Validation failed",
"error": "Bad Request",
"code": "validation_failed"
}{
"statusCode": 401,
"message": "Invalid or missing API key",
"error": "Unauthorized",
"code": "unauthorized"
}{
"statusCode": 403,
"message": "Access denied",
"error": "Forbidden",
"code": "forbidden"
}{
"statusCode": 409,
"message": "Resource conflict",
"error": "Conflict",
"code": "conflict"
}{
"statusCode": 429,
"message": "Rate limit exceeded",
"error": "Too Many Requests",
"code": "rate_limit_exceeded",
"retryAfter": 60
}{
"statusCode": 500,
"message": "Internal server error",
"error": "Internal Server Error",
"code": "internal_server_error"
}Blog
Import SEO keywords from xlsx, xls, or csv
Import SEO keywords from xlsx, xls, or csv. Requests are scoped to the authenticated API key owner; cross-owner resource IDs return 404.
POST
/
v1
/
blog
/
keywords
/
import
Import SEO keywords from xlsx, xls, or csv
curl --request POST \
--url https://api.yalg.ai/v1/blog/keywords/import \
--header 'Content-Type: multipart/form-data' \
--header 'x-api-key: <api-key>' \
--form file='@example-file' \
--form autoFill=trueconst form = new FormData();
form.append('file', '<spreadsheet or CSV file>');
form.append('autoFill', 'true');
const options = {method: 'POST', headers: {'x-api-key': '<api-key>'}};
options.body = form;
fetch('https://api.yalg.ai/v1/blog/keywords/import', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.yalg.ai/v1/blog/keywords/import"
files = { "file": ("example-file", open("example-file", "rb")) }
payload = { "autoFill": "true" }
headers = {"x-api-key": "<api-key>"}
response = requests.post(url, data=payload, files=files, headers=headers)
print(response.text)"<string>"{
"statusCode": 400,
"message": "Validation failed",
"error": "Bad Request",
"code": "validation_failed"
}{
"statusCode": 401,
"message": "Invalid or missing API key",
"error": "Unauthorized",
"code": "unauthorized"
}{
"statusCode": 403,
"message": "Access denied",
"error": "Forbidden",
"code": "forbidden"
}{
"statusCode": 409,
"message": "Resource conflict",
"error": "Conflict",
"code": "conflict"
}{
"statusCode": 429,
"message": "Rate limit exceeded",
"error": "Too Many Requests",
"code": "rate_limit_exceeded",
"retryAfter": 60
}{
"statusCode": 500,
"message": "Internal server error",
"error": "Internal Server Error",
"code": "internal_server_error"
}Authorizations
ApiKeyAuthbearer
YALG Developer API key. Send it in the x-api-key header from a server-side environment only.
Body
multipart/form-data
Response
Successful response. Import SEO keywords from xlsx, xls, or csv.
The response is of type file.