- Create an article
You can create a new article by making a POST request to https://api.intercom.io/articles.
📘 Tags cannot be managed via the Articles API
Article tags are read-only in responses. To create, update, or delete tags, use the Intercom UI or the Tags API endpoints.
Intercom API version.
By default, it's equal to the version set in the app package.
The title of the article.For multilingual articles, this will be the title of the default language's content.
The description of the article. For multilingual articles, this will be the description of the default language's content.
The content of the article in HTML. For multilingual articles, this will be the body of the default language's content. Mutually exclusive with body_markdown.
The content of the article in markdown. For multilingual articles, this will be the body of the default language's content. An alternative to body — you can provide content as markdown instead of HTML. Mutually exclusive with body.
Whether the article will be published or will be a draft. Defaults to draft. For multilingual articles, this will be the state of the default language's content.
The id of the article's parent collection or section. An article without this field stands alone.
The type of parent, which can either be a collection or section.
The Translated Content of an Article. The keys are the locale codes and the values are the translated content of the article.
The list of audience IDs to assign to this article for Fin AI Agent targeting. Sending a top-level audience_ids broadcasts the same set to every locale. For per-locale targeting, use translated_content.<locale>.audience_ids instead. Sending both top-level and per-locale in the same request causes top-level to win. Unknown audience IDs return a 404 error. No partial commit occurs.
[ 1, 2 ]
Whether the article should be available for AI Chatbot (Fin). For multilingual articles, this sets the default language's availability.
Whether the article should be available for AI Copilot. For multilingual articles, this sets the default language's availability.
Whether the article should be available for AI Sales Agent. For multilingual articles, this sets the default language's availability.
ISO 8601 timestamp at which to schedule a future publish of the article. When set together with state: "published", the article is scheduled instead of published immediately. Setting null cancels a pending publish schedule. Timestamps in the past or equal to the current time are rejected with 400 parameter_invalid — the value must be strictly in the future. Combining with state: "draft" returns 400 parameter_invalid. Sending in the same request as scheduled_unpublish_at returns 400 — only one pending schedule per article. Empty string returns 400 parameter_invalid.
ISO 8601 timestamp at which to schedule a future unpublish of the article. Setting null cancels a pending unpublish schedule. Timestamps in the past or equal to the current time are rejected with 400 parameter_invalid — the value must be strictly in the future. Rejected with 400 parameter_invalid if the article has never been published. Sending in the same request as scheduled_publish_at returns 400 — only one pending schedule per article. Empty string returns 400 parameter_invalid.
- The production API serverhttps://api.intercom.io/articles
- The european API serverhttps://api.eu.intercom.io/articles
- The australian API serverhttps://api.au.intercom.io/articles
- article created
- Bad Request
curl -i -X POST \
https://api.intercom.io/articles \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-H 'Intercom-Version: 2.16' \
-d '{
"title": "Thanks for everything",
"description": "Description of the Article",
"body": "Body of the Article",
"author_id": 991267497,
"state": "published",
"parent_id": 145,
"parent_type": "collection",
"translated_content": {
"fr": {
"title": "Merci pour tout",
"description": "Description de l'\''article",
"body": "Corps de l'\''article",
"author_id": 991267497,
"state": "published"
}
}
}'article created
The title of the article. For multilingual articles, this will be the title of the default language's content.
The description of the article. For multilingual articles, this will be the description of the default language's content.
The body of the article in HTML. For multilingual articles, this will be the body of the default language's content.
The body of the article in markdown. For multilingual articles, this will be the body of the default language's content.
Whether the article is published or is a draft. For multilingual articles, this will be the state of the default language's content.
The time when the article was created. For multilingual articles, this will be the timestamp of creation of the default language's content in seconds.
The time when the article was last updated. For multilingual articles, this will be the timestamp of last update of the default language's content in seconds.
Whether the published article has unpublished changes staged as a draft on top of its live content. For multilingual articles this reflects the default language's content; a pure draft (never published) reports false.
The time, in seconds, when the staged draft was last edited, or null when there is no staged draft.
The URL of the article. For multilingual articles, this will be the URL of the default language's content.
The ids of the article's parent collections or sections. An article without this field stands alone.
[ 18, 19 ]
Whether the article is available for AI Chatbot. For multilingual articles, this will be the value of the default language's content.
Whether the article is available for AI Copilot. For multilingual articles, this will be the value of the default language's content.
Whether the article is available for AI Sales Agent. For multilingual articles, this will be the value of the default language's content.
The ID of the teammate who created the article. For multilingual articles, this will be the creator of the default language's content.
The ID of the teammate who last updated the article. For multilingual articles, this will be the last editor of the default language's content.
Whether the article is excluded from Fin AI Agent article suggestions.
The audience that can view this article in the Help Center. everyone means all users and visitors can view it; restricted indicates a custom audience ruleset. For multilingual articles, this is the article-level audience.
The Unix timestamp (in seconds) at which the article is scheduled to be published. null when no publish is scheduled. Mutually exclusive with scheduled_unpublish_at — at most one pending schedule exists per article.
The Unix timestamp (in seconds) at which the article is scheduled to be unpublished. null when no unpublish is scheduled. Mutually exclusive with scheduled_publish_at — at most one pending schedule exists per article.
The default locale of the help center. This field is only returned for multilingual help centers.
The Translated Content of an Article. The keys are the locale codes and the values are the translated content of the article.
The statistics of an article.
{ "id": "42", "type": "article", "workspace_id": "this_is_an_id68_that_should_be_at_least_4", "parent_ids": [], "statistics": { "type": "article_statistics", "views": 0, "conversations": 0, "reactions": 0, "happy_reaction_percentage": 0, "neutral_reaction_percentage": 0, "sad_reaction_percentage": 0 }, "tags": { "type": "tag.list", "tags": [] }, "title": "Thanks for everything", "description": "Description of the Article", "body": "<p class=\"no-margin\">Body of the Article</p>", "author_id": 991267497, "state": "published", "created_at": 1734537288, "updated_at": 1734537288, "url": "http://help-center.test/myapp-68/en/articles/42-thanks-for-everything" }