# Update an article

You can update the details of a single article by making a PUT 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.

Endpoint: PUT /articles/{article_id}
Version: 2.15
Security: bearerAuth

## Header parameters:

  - `Intercom-Version` (string)
    Intercom API version.By default, it's equal to the version set in the app package.
    Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14"

## Path parameters:

  - `article_id` (integer, required)
    The unique identifier for the article which is given by Intercom.
    Example: 123

## Request fields (application/json):

  - `title` (string)
    The title of the article.For multilingual articles, this will be the title of the default language's content.
    Example: "Thanks for everything"

  - `description` (string)
    The description of the article. For multilingual articles, this will be the description of the default language's content.
    Example: "Description of the Article"

  - `body` (string)
    The content of the article. For multilingual articles, this will be the body of the default language's content.
    Example: "<p>This is the body in html</p>"

  - `author_id` (integer)
    The id of the author of the article. For multilingual articles, this will be the id of the author of the default language's content. Must be a teammate on the help center's workspace.
    Example: 1295

  - `state` (string)
    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.
    Enum: "published", "draft"

  - `parent_id` (string)
    The id of the article's parent collection or section. An article without this field stands alone.
    Example: "18"

  - `parent_type` (string)
    The type of parent, which can either be a collection or section.
    Example: "collection"

  - `translated_content` (object,null)
    The Translated Content of an Article. The keys are the locale codes and the values are the translated content of the article.

  - `translated_content.type` (string,null)
    The type of object - article_translated_content.
    Enum: null, "article_translated_content"

  - `translated_content.ar` (object,null)
    The Content of an Article.

  - `translated_content.ar.type` (string,null)
    The type of object - article_content .
    Enum: null, "article_content"

  - `translated_content.ar.title` (string)
    The title of the article.
    Example: "How to create a new article"

  - `translated_content.ar.description` (string)
    The description of the article.
    Example: "This article will show you how to create a new article."

  - `translated_content.ar.body` (string)
    The body of the article.
    Example: "This is the body of the article."

  - `translated_content.ar.author_id` (integer)
    The ID of the author of the article.
    Example: "5017691"

  - `translated_content.ar.state` (string)
    Whether the article is published or is a draft .
    Enum: "published", "draft"

  - `translated_content.ar.created_at` (integer)
    The time when the article was created (seconds).
    Example: 1663597223

  - `translated_content.ar.updated_at` (integer)
    The time when the article was last updated (seconds).
    Example: 1663597260

  - `translated_content.ar.url` (string)
    The URL of the article.
    Example: "http://intercom.test/help/en/articles/3-default-language"

  - `translated_content.bg` (object,null)
    The Content of an Article.

  - `translated_content.bs` (object,null)
    The Content of an Article.

  - `translated_content.ca` (object,null)
    The Content of an Article.

  - `translated_content.cs` (object,null)
    The Content of an Article.

  - `translated_content.da` (object,null)
    The Content of an Article.

  - `translated_content.de` (object,null)
    The Content of an Article.

  - `translated_content.el` (object,null)
    The Content of an Article.

  - `translated_content.en` (object,null)
    The Content of an Article.

  - `translated_content.es` (object,null)
    The Content of an Article.

  - `translated_content.et` (object,null)
    The Content of an Article.

  - `translated_content.fi` (object,null)
    The Content of an Article.

  - `translated_content.fr` (object,null)
    The Content of an Article.

  - `translated_content.he` (object,null)
    The Content of an Article.

  - `translated_content.hr` (object,null)
    The Content of an Article.

  - `translated_content.hu` (object,null)
    The Content of an Article.

  - `translated_content.id` (object,null)
    The Content of an Article.

  - `translated_content.it` (object,null)
    The Content of an Article.

  - `translated_content.ja` (object,null)
    The Content of an Article.

  - `translated_content.ko` (object,null)
    The Content of an Article.

  - `translated_content.lt` (object,null)
    The Content of an Article.

  - `translated_content.lv` (object,null)
    The Content of an Article.

  - `translated_content.mn` (object,null)
    The Content of an Article.

  - `translated_content.nb` (object,null)
    The Content of an Article.

  - `translated_content.nl` (object,null)
    The Content of an Article.

  - `translated_content.pl` (object,null)
    The Content of an Article.

  - `translated_content.pt` (object,null)
    The Content of an Article.

  - `translated_content.ro` (object,null)
    The Content of an Article.

  - `translated_content.ru` (object,null)
    The Content of an Article.

  - `translated_content.sl` (object,null)
    The Content of an Article.

  - `translated_content.sr` (object,null)
    The Content of an Article.

  - `translated_content.sv` (object,null)
    The Content of an Article.

  - `translated_content.tr` (object,null)
    The Content of an Article.

  - `translated_content.vi` (object,null)
    The Content of an Article.

  - `translated_content.pt-BR` (object,null)
    The Content of an Article.

  - `translated_content.zh-CN` (object,null)
    The Content of an Article.

  - `translated_content.zh-TW` (object,null)
    The Content of an Article.

## Response 200 fields (application/json):

  - `statistics` (object,null)
    The statistics of an article.

  - `statistics.type` (string)
    The type of object - article_statistics.
    Enum: "article_statistics"

  - `statistics.views` (integer)
    The number of total views the article has received.
    Example: 10

  - `statistics.conversions` (integer)
    The number of conversations started from the article.

  - `statistics.reactions` (integer)
    The number of total reactions the article has received.
    Example: 10

  - `statistics.happy_reaction_percentage` (number)
    The percentage of happy reactions the article has received against other types of reaction.
    Example: 40

  - `statistics.neutral_reaction_percentage` (number)
    The percentage of neutral reactions the article has received against other types of reaction.
    Example: 40

  - `statistics.sad_reaction_percentage` (number)
    The percentage of sad reactions the article has received against other types of reaction.
    Example: 20

  - `type` (string)
    The type of object - article.
    Enum: "article"

  - `id` (string)
    The unique identifier for the article which is given by Intercom.
    Example: "6871119"

  - `workspace_id` (string)
    The id of the workspace which the article belongs to.
    Example: "hfi1bx4l"

  - `title` (string)
    The title of the article. For multilingual articles, this will be the title of the default language's content.
    Example: "Default language title"

  - `description` (string,null)
    The description of the article. For multilingual articles, this will be the description of the default language's content.
    Example: "Default language description"

  - `body` (string,null)
    The body of the article in HTML. For multilingual articles, this will be the body of the default language's content.
    Example: "Default language body in html"

  - `author_id` (integer)
    The id of the author of the article. For multilingual articles, this will be the id of the author of the default language's content. Must be a teammate on the help center's workspace.
    Example: "5017691"

  - `state` (string)
    Whether the article is published or is a draft. For multilingual articles, this will be the state of the default language's content.
    Enum: "published", "draft"

  - `created_at` (integer)
    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.
    Example: 1672928359

  - `updated_at` (integer)
    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.
    Example: 1672928610

  - `url` (string,null)
    The URL of the article. For multilingual articles, this will be the URL of the default language's content.
    Example: "http://intercom.test/help/en/articles/3-default-language"

  - `parent_id` (integer,null)
    The id of the article's parent collection or section. An article without this field stands alone.
    Example: "125685"

  - `parent_ids` (array)
    The ids of the article's parent collections or sections. An article without this field stands alone.
    Example: [18,19]

  - `parent_type` (string,null)
    The type of parent, which can either be a collection or section.
    Example: "collection"

  - `default_locale` (string)
    The default locale of the help center. This field is only returned for multilingual help centers.
    Example: "en"

  - `translated_content` (object,null)
    The Translated Content of an Article. The keys are the locale codes and the values are the translated content of the article.

  - `tags` (object)
    A list of tags objects associated with a conversation

  - `tags.type` (string)
    The type of the object
    Enum: "tag.list"

  - `tags.tags` (array)
    A list of tags objects associated with the conversation.

  - `tags.tags.type` (string)
    value is "tag"
    Example: "tag"

  - `tags.tags.id` (string)
    The id of the tag
    Example: "123456"

  - `tags.tags.name` (string)
    The name of the tag
    Example: "Test tag"

  - `tags.tags.applied_at` (integer,null)
    The time when the tag was applied to the object. Only present when the tag is returned as part of a tagging operation on a contact, conversation, or ticket.
    Example: 1663597223

  - `tags.tags.applied_by` (object,null)
    The admin who applied the tag. Only present when the tag is returned as part of a tagging operation on a contact, conversation, or ticket.

  - `tags.tags.applied_by.type` (string)
    Example: "contact"

  - `tags.tags.applied_by.id` (string,null)
    Example: "1a2b3c"

## Response 401 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: "error.list"

  - `request_id` (string,null)
    Example: "f93ecfa8-d08a-4325-8694-89aeb89c8f85"

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: "unauthorized"

  - `errors.message` (string,null)
    Optional. Human readable description of the error.
    Example: "Access Token Invalid"

  - `errors.field` (string,null)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: "email"


