Docs menu
Create Content
Make images, carousels, videos, memes and quote cards.
Request URL
POST https://gnraisolutions.com/api/v1/create_contentRequest payload
Form data or JSON.
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
brand_id | Your Brand ID. | String | — | Yes |
text | What the post is about. At least 3 words and 20 characters. For a quote with an author, the quotation itself. | String | — | Yes |
media_type | single_image, carousel or video. | String | single_image | No |
post_type | generic, meme or quotes. Memes and quotes are single_image. | String | generic | No |
n_posts | How many posts, 1 to 10. | Integer | 1 | No |
author | For quotes: who said it. With an author, text is used word for word — a quote is never invented. Without one, the line is the brand's own and signed with its name. | String | — | No |
output_language | Language of the post: english, spanish, french, german, portuguese, italian, hindi, telugu, tamil, chinese (simplified), vietnamese, korean, japanese, arabic, tagalog. Other than English needs the AI writer switched on. | String | english | No |
input_language | Language of your text. Any of the above; accepted for compatibility. | String | english | No |
video_duration | short or long. Videos run 30 to 60 seconds either way; the script decides. | String | short | No |
template_ids | Your imported designs to fill in, from Get Templates. single_image only. | List of strings | [] | No |
media_urls | Your own pictures to use (single images and memes). Public https links to JPG, PNG or WebP, 15 MB or less. | List of strings | [] | No |
color_palette_type | brand (your brand colours) or ai_suggested. | String | ai_suggested | No |
brand_details | Overrides for this request: brand_colors (up to 5) and brand_hashtags. | Object | — | No |
headlines | Your own words instead of the written ones: a list of { "headline", "subheading" } — one per carousel slide, the first for an image. | List | — | No |
model_version | Accepted for compatibility; there is one model. | String | — | No |
Responses
Success
{
"post_ids": ["..."],
"post_status": "inProgress",
"errors": []
}Error
{
"errors": [{ "code": "006", "detail": "...", "solution": "..." }]
}Response codes
| HTTP status | Error code | Message | What to do |
|---|---|---|---|
| 429 | 001 | Maximum number of requests reached | You have been rate-limited. Wait a minute and try again. |
| 400 | 002 | Invalid brand_id provided | Send the Brand ID shown under API & SDK in the app. |
| 400 | 003 | You have reached your post generation limit | Wait for the 24-hour limit to reset, or raise API_DAILY_POST_LIMIT. |
| 400 | 004 | You already have 10 posts inProgress | Wait until the posts in progress are completed, then try again. |
| 400 | 005 | Your request method is invalid | Use the method shown for this endpoint. |
| 400 | 006 | Your provided text is too small | Send at least 3 words and 20 characters. |
| 400 | 007 | The provided value for the media_type field is not valid | Use single_image, carousel or video. |
| 400 | 008 | The provided value for the input_language or output_language field is not valid | Use one of the languages listed in the docs. |
| 400 | 009 | The provided value for the video_duration field is not valid | Use short or long. |
| 400 | 010 | The provided value for the post_type field is not valid | Use generic, meme or quotes. |
| 400 | 011 | The provided value for the post_type field is not valid for the given media_type | Memes and quotes are single_image posts. |
| 400 | 012 | A template_id was not found | Use an id from get_templates. |
| 400 | 013 | A media_url could not be used | Send public https links straight to JPG, PNG or WebP images, 15 MB or less. |
| 400 | 014 | Page number or items number is invalid | Send whole numbers greater than 0. |
| 400 | 015 | Provided aspect_ratio is not supported | Use square, portrait, landscape or all. |
| 401 | 016 | Invalid API key. Please provide a valid API key. | Send your key in the Authorization header. |
💡 Tip
Every post goes through the same checks as the app. If the words would claim something without a source — a number, a result, a review — the post ends in error with the reason, and nothing is rendered.