Documentation Index

Fetch the complete documentation index at: https://apidocs.document360.com/llms.txt

Use this file to discover all available pages before exploring further.

Gets an article

Prev Next
Get
/v2/Articles/{articleId}/{langCode}

Returns one article translation. The response carries article body, metadata, available languages, security visibility, and any configured custom fields. Use isForDisplay=true only when rendering for end users (resolves snippet, variable, and glossary merge codes). Do not send the resolved content back to update endpoints. To resolve an article from its KB URL instead of its ID, use GET /v2/articles with the url query parameter.

Security
API Key: api_token
Header parameter nameapi_token

The API token used for authenticating the request. This must be passed as a header parameter. To generate an API token, go to Settings > Knowledge base portal > API tokens. This token must correspond to a valid workspace and permission level.

Path parameters
articleId
stringRequired

The ID of the article. Fetch via GET /v2/projectversions/{projectVersionId}/articles.

Examplea1096061-e842-41fd-9085-494095e401b9
langCode
stringRequired

Language code of the article translation (for example en, fr, de-DE, pt-BR). Use GET /v2/language/{projectVersionId} to list the codes enabled for a workspace. Defaults to en when omitted.

Default"en"
Exampleen
Query parameters
isForDisplay
boolean

Set to true when rendering the article for an end-user — the response will resolve snippet, variable, and glossary merge codes. Do not pass true and then send the resolved content to an update endpoint.

Defaultfalse
Examplefalse
isPublished
boolean

When true, returns the latest published version (falls back to the latest draft if no published version exists). When false, returns the latest draft regardless of publish state.

Defaultfalse
Examplefalse
appendSASToken
boolean

Set to false to skip appending a SAS token to image/file URLs. SAS tokens are required for private/mixed projects.

Defaulttrue
Exampletrue
Responses
200

Operation succeeded. Inspect the response envelope's success flag and the result/data payload.

Markdown article (published)

A typical Markdown article in a public workspace. The content field carries Markdown source; htmlContent carries the rendered HTML.

{
  "data": {
    "id": "a1096061-e842-41fd-9085-494095e401b9",
    "title": "Knowledge bases are much easier to design and edit",
    "content": "Have you ever edited a Wikipedia page? You have to break the flow of text to add tags, and when you want to connect two articles together you have to just hope that nobody changes the other article’s name, lest you end up with a rusty red “dead link.”To be fair,Wikipedia has actually made good strides in making their Wiki software easy to use for anybody, but opening up the editor is still a bit of a shock since you don’t see the familiar webpage you just clicked on. With a knowledge base, what you see is what you get.You don’t have to train anybody on how to add or edit pages because the whole thing is extremely intuitive. Anybody can learn to navigate an edit page in seconds flat.",
    "html_content": null,
    "category_id": "de104b39-db97-4509-8d4c-deeac74d448b",
    "project_version_id": "46f48bc7-760f-4b07-b2d2-fce4aa8ba234",
    "version_number": 1,
    "public_version": 1,
    "latest_version": 2,
    "enable_rtl": false,
    "hidden": false,
    "status": 0,
    "order": 0,
    "created_by": "f11efc6f-e968-4e95-82eb-85ad61559de8",
    "authors": [
      {
        "id": "f11efc6f-e968-4e95-82eb-85ad61559de8",
        "first_name": "peter",
        "last_name": "jone",
        "user_description": null,
        "unique_user_name": "peter-jone",
        "email_id": "peterjone@mail.com",
        "profile_logo_url": "https://www.gravatar.com/avatar/FE29D578CBEC3945FC88BF4F10906A3E?sv=2022-11-02&st=2024-06-18T07%3A12%3A34Z&se=2024-06-18T07%3A32%3A34Z&sr=b&sp=r&sig=LEA2ccLr1hMTZkAE48jsdaTYgRr6jNScPQ4x4E3vTss%3D",
        "profile_logo_cdn_url": "https://www.gravatar.com/avatar/FE29D578CBEC3945FC88BF4F10906A3E?sv=2022-11-02&st=2024-06-18T07%3A12%3A34Z&se=2024-06-18T07%3A32%3A34Z&sr=b&sp=r&sig=LEA2ccLr1hMTZkAE48jsdaTYgRr6jNScPQ4x4E3vTss%3D",
        "is_enterprise_user": false
      }
    ],
    "created_at": "2024-06-13T14:30:00Z",
    "modified_at": "2024-06-13T14:30:00Z",
    "slug": "Knowledge-bases-are-much-easier-to-design-and edit",
    "is_fall_back_content": false,
    "description": null,
    "stale_status": {
      "article_stale_status": 0,
      "stale_reason": "",
      "expired_at": "2024-06-13T14:30:00Z",
      "is_from_document_settings": false,
      "expire_days": 0
    },
    "category_type": 0,
    "content_type": null,
    "is_shared_article": false,
    "translation_option": 0,
    "url": "https://example.com/v1/docs/en/getting-started",
    "current_workflow_status_id": "56ad8f40-0d6d-4a23-897d-d85a26726791",
    "available_languages": [
      {
        "lang_code": "fr",
        "url": "getting-started",
        "translation_status": 2
      }
    ],
    "security_visibility": 0,
    "custom_fields": [
      {
        "field_id": "field-definition-id-1",
        "name": "Country",
        "type": 0,
        "value": "USA"
      },
      {
        "field_id": "field-definition-id-2",
        "name": "Priority",
        "type": 6,
        "value": 5
      },
      {
        "field_id": "field-definition-id-3",
        "name": "Status",
        "type": 2,
        "value": "option-id-active",
        "options": [
          {
            "id": "option-id-active",
            "label": "Active"
          },
          {
            "id": "option-id-inactive",
            "label": "Inactive"
          },
          {
            "id": "option-id-pending",
            "label": "Pending"
          }
        ]
      }
    ]
  },
  "extension_data": null,
  "success": true,
  "errors": [],
  "warnings": [],
  "information": []
}
Block-editor article (private workspace)

A Block-editor article inside a private workspace. The content field is null; htmlContent carries the serialised block JSON. Image and file URLs in the rendered HTML carry SAS tokens because the project is private.

{
  "data": {
    "id": "7c2e9f01-1a2b-4c3d-9e8f-2b3c4d5e6f70",
    "title": "Configure single sign-on with Okta",
    "content": null,
    "html_content": "

Prerequisites

You need an Okta admin account…

", "category_id": "9bd4c220-5a1f-4b2e-8d7c-1e2f3a4b5c6d", "project_version_id": "46f48bc7-760f-4b07-b2d2-fce4aa8ba234", "version_number": 4, "public_version": 3, "latest_version": 4, "enable_rtl": false, "hidden": false, "status": 3, "order": 2, "created_by": "f11efc6f-e968-4e95-82eb-85ad61559de8", "authors": [ { "id": "f11efc6f-e968-4e95-82eb-85ad61559de8", "first_name": "peter", "last_name": "jone", "user_description": null, "unique_user_name": "peter-jone", "email_id": "peterjone@mail.com", "profile_logo_url": "https://www.gravatar.com/avatar/FE29D578CBEC3945FC88BF4F10906A3E?sv=2022-11-02&st=2024-06-18T07%3A12%3A34Z&se=2024-06-18T07%3A32%3A34Z&sr=b&sp=r&sig=LEA2ccLr1hMTZkAE48jsdaTYgRr6jNScPQ4x4E3vTss%3D", "profile_logo_cdn_url": "https://www.gravatar.com/avatar/FE29D578CBEC3945FC88BF4F10906A3E?sv=2022-11-02&st=2024-06-18T07%3A12%3A34Z&se=2024-06-18T07%3A32%3A34Z&sr=b&sp=r&sig=LEA2ccLr1hMTZkAE48jsdaTYgRr6jNScPQ4x4E3vTss%3D", "is_enterprise_user": false } ], "created_at": "2024-06-13T14:30:00Z", "modified_at": "2024-06-13T14:30:00Z", "slug": "configure-single-sign-on-with-okta", "is_fall_back_content": false, "description": "Step-by-step guide to wiring up Okta SSO.", "stale_status": { "article_stale_status": 1, "stale_reason": "Scheduled review reminder reached", "expired_at": "2024-06-13T14:30:00Z", "is_from_document_settings": false, "expire_days": 0 }, "category_type": 0, "content_type": 2, "is_shared_article": false, "translation_option": 0, "url": "https://example.com/v1/docs/en/configure-single-sign-on-with-okta", "current_workflow_status_id": "56ad8f40-0d6d-4a23-897d-d85a26726791", "available_languages": [ { "lang_code": "en", "url": "configure-single-sign-on-with-okta", "translation_status": 2 }, { "lang_code": "de-DE", "url": "configure-single-sign-on-with-okta", "translation_status": 3 } ], "security_visibility": 1, "custom_fields": [] }, "extension_data": null, "success": true, "errors": [], "warnings": [], "information": [] }
Expand All
object
data
object | null

Article data

id
string | null

The ID of the article

title
string | null

The title of the article

content
string | null

If the article editor is Markdown, then the article content will be present in this property

html_content
string | null

If the article editor is WYSIWYG (HTML), then the content will be present in this property. Note: Markdown editor will also have HTML content (read-only).

category_id
string | null

The ID of the article's parent category

project_version_id
string | null

The ID of the project version where the article is located

version_number
integer (int32)

The currently fetched version number of the article

public_version
integer (int32)

The currently published version number of the article

latest_version
integer (int32)

The latest version number of the article

enable_rtl
boolean

True indicates that Right to Left alignment is enabled for the article language

hidden
boolean

False indicates that the article is visible on the site

status
string

The status of the article: 0 - Draft, 3 - Published

Valid values[ "draft", "published" ]
order
integer (int32)

The position inside the parent category

created_by
string | null

The ID of the team account who created the article

authors
Array of object (UserDetailsCustomer) | null

The list of contributors in the article

object

Compact representation of a team account — surfaced as an author/contributor on articles and categories.

id
string | null

The ID of the team account.

first_name
string | null

First name of the team account.

last_name
string | null

Last name of the team account.

user_description
string | null

Free-text description shown on the user's profile.

unique_user_name
string | null

The unique display name (handle) for the team account.

email_id
string | null

Email address of the team account.

profile_logo_url
string | null

URL of the user's profile picture (served via blob storage; a SAS token is appended for private/mixed projects).

profile_logo_cdn_url
string | null

CDN-fronted URL for the user's profile picture (with SAS token appended for private/mixed projects).

is_enterprise_user
boolean

True when the team account was provisioned via an enterprise SSO connection.

created_at
string (date-time)

The date on which the article was created

modified_at
string (date-time)

The date on which the article was last modified

slug
string | null

The slug of the article

is_fall_back_content
boolean

True indicates that the article content is a fallback of the default language content

description
string | null

The description of the article

stale_status
object | null

Fresh - Article is up-to-date Stale - Article requires review

article_stale_status
string

The freshness classification of the article (Fresh, Stale, ReviewPending, etc.). Defaults to Fresh.

Valid values[ "fresh", "stale" ]
stale_reason
string | null

Free-text explanation captured when the article was marked stale.

expired_at
string (date-time)

UTC date when this stale-status entry expires (article enters review).

is_from_document_settings
boolean

True if the stale policy was inherited from project-level documentation settings rather than set on the article directly.

expire_days
integer (int32)

Number of days from publication after which the article should next be reviewed.

category_type
string | null

0 - Folder, 1 - Page, 2 - Index

Valid values[ "default", "customContent", "linksToArticle" ]
content_type
string | null

0 - Markdown; 1 - WYSIWYG(HTML); 2 - Advanced WYSIWYG

Valid values[ "markdown", "wysiwyg", "block" ]
is_shared_article
boolean

True indicates that the article is shared

translation_option
string

The translation status of the document. Valid values: 0 - None, 1 - Need Translation, 2 - Translated, 3 - In Progress

Valid values[ "none", "needTranslation", "translated", "inProgress" ]
url
string | null

Url of the article

current_workflow_status_id
string | null

Current Workflow status of the article

available_languages
Array of object (AvailableLanguageInfo) | null

Lists the languages in which the article is available, along with their translation status and URL.

object

Represents information about an available language translation for an article or category.

lang_code
string | null

The language code of the translated document.

url
string | null

The URL of the translated document.

translation_status
string

The translation status of the document. Valid values: 0 - None, 1 - Need Translation, 2 - Translated, 3 - In Progress

Valid values[ "none", "needTranslation", "translated", "inProgress" ]
security_visibility
string

Indicates the visibility level of the article. 0 - Public, 1 - Private

Valid values[ "public", "private" ]
custom_fields
Array of object (CustomFieldValueResponse) | null

Custom field values associated with the article

object

Represents a custom field value with its definition metadata

field_id
string | null

Unique identifier of the custom field definition

name
string | null

The display name of the custom field

type
string

The type of the custom field. 0 = Text, 1 = TextArea, 2 = Dropdown, 3 = MultiSelectDropdown, 4 = Date, 5 = Boolean, 6 = Number

Valid values[ "text", "textArea", "dropdown", "multiSelectDropdown", "date", "boolean", "number" ]
value

The value of the custom field. Type depends on field type:

  • Text/TextArea: string
  • Number: int or double
  • Boolean: bool
  • Date: DateTime
  • Dropdown: string (selected option ID)
  • MultiSelectDropdown: List (array of selected option IDs)
options
Array of object (CustomFieldOptionResponse) | null

Available options for Dropdown and MultiSelectDropdown fields. Omitted for other field types.

object

Option definition for dropdown fields

id
string | null

The option ID (use this value when updating)

label
string | null

The display label for the option

extension_data
object | null

Extension data for customer API response

success
boolean

Indicates the status of the API response. A value of true signifies that the request was successfully processed, while false indicates a failure or error occurred.

errors
Array of object (BaseError) | null

A list of errors encountered during the API request. Each error object provides details about the problem, including an error code and a message explaining the issue. This field is populated when the request fails or encounters issues.

object

One structured error in a response's Document360.Core.Messages.Core.BaseResponse.errors array.

extension_data
object | null

This is the Extension data object

stack_trace
string | null

A technical trace showing where the error occurred within the system. Intended for backend debugging.

description
string | null

A clear message explaining what caused the error. This helps quickly understand what went wrong.

error_code
string | null

A short, predefined code that identifies the type of error. Useful for logging the error or raising a support request.

custom_data
object | null

Any structured metadata for the error object.

property*
warnings
Array of object (BaseWarning) | null

A list of warnings generated during the API request. These are non-critical issues or recommendations that might affect the request but won't stop it from processing. Each warning object provides a message to inform the user of potential problems.

object

One non-fatal warning attached to an otherwise-successful response.

extension_data
object | null

Extension Data for customer Api warning

description
string | null

A plain message that describes the warning and helps understand what should be reviewed.

warning_code
string | null

A short, predefined code that uniquely identifies the warning type.

information
Array of object (BaseInformation) | null

Contains additional non-critical information relevant to the request or response. This field provides extra details that might assist in understanding the context of the API response but is not essential for processing.

object

One informational message in a response's Document360.Core.Messages.Core.BaseResponse.information array. Non-error context the SPA may surface to the user.

extension_data
object | null

Extension data for customer Api response information

description
string | null

A plain message offering helpful context about the response, such as confirmation of fallback logic or skipped operations.

400

The request body or query parameters failed validation. Inspect errors[].description for the offending fields.

Article not found

The supplied articleId does not exist in the project, or no translation exists for the requested langCode. Verify both values with GET /v2/projectversions/{projectVersionId}/articles and GET /v2/language/{projectVersionId}.

{
  "extension_data": null,
  "success": false,
  "errors": [
    {
      "extension_data": null,
      "stack_trace": null,
      "description": "Article not found",
      "error_code": null,
      "custom_data": null
    }
  ],
  "warnings": [],
  "information": []
}
Language not enabled for workspace

The article exists but the requested langCode is not enabled for the workspace. Use GET /v2/language/{projectVersionId} to list enabled languages.

{
  "extension_data": null,
  "success": false,
  "errors": [
    {
      "extension_data": null,
      "stack_trace": null,
      "description": "Language 'de-DE' is not enabled for this workspace.",
      "error_code": null,
      "custom_data": null
    }
  ],
  "warnings": [],
  "information": []
}
Invalid API token

The api_token header is missing, malformed, or revoked. Re-issue the token under Settings → Knowledge base portal → API tokens in the Document360 portal.

{
  "extension_data": null,
  "success": false,
  "errors": [
    {
      "extension_data": null,
      "stack_trace": null,
      "description": "Invalid or missing API token.",
      "error_code": null,
      "custom_data": null
    }
  ],
  "warnings": [],
  "information": []
}
Expand All
object
extension_data
object | null

Extension data for customer API response

success
boolean

Indicates the status of the API response. A value of true signifies that the request was successfully processed, while false indicates a failure or error occurred.

errors
Array of object (BaseError) | null

A list of errors encountered during the API request. Each error object provides details about the problem, including an error code and a message explaining the issue. This field is populated when the request fails or encounters issues.

object

One structured error in a response's Document360.Core.Messages.Core.BaseResponse.errors array.

extension_data
object | null

This is the Extension data object

stack_trace
string | null

A technical trace showing where the error occurred within the system. Intended for backend debugging.

description
string | null

A clear message explaining what caused the error. This helps quickly understand what went wrong.

error_code
string | null

A short, predefined code that identifies the type of error. Useful for logging the error or raising a support request.

custom_data
object | null

Any structured metadata for the error object.

property*
warnings
Array of object (BaseWarning) | null

A list of warnings generated during the API request. These are non-critical issues or recommendations that might affect the request but won't stop it from processing. Each warning object provides a message to inform the user of potential problems.

object

One non-fatal warning attached to an otherwise-successful response.

extension_data
object | null

Extension Data for customer Api warning

description
string | null

A plain message that describes the warning and helps understand what should be reviewed.

warning_code
string | null

A short, predefined code that uniquely identifies the warning type.

information
Array of object (BaseInformation) | null

Contains additional non-critical information relevant to the request or response. This field provides extra details that might assist in understanding the context of the API response but is not essential for processing.

object

One informational message in a response's Document360.Core.Messages.Core.BaseResponse.information array. Non-error context the SPA may surface to the user.

extension_data
object | null

Extension data for customer Api response information

description
string | null

A plain message offering helpful context about the response, such as confirmation of fallback logic or skipped operations.

401

Authentication failed — the api_token header is missing, malformed, or has been revoked.

Expand All
object
extension_data
object | null

Extension data for customer API response

success
boolean

Indicates the status of the API response. A value of true signifies that the request was successfully processed, while false indicates a failure or error occurred.

errors
Array of object (BaseError) | null

A list of errors encountered during the API request. Each error object provides details about the problem, including an error code and a message explaining the issue. This field is populated when the request fails or encounters issues.

object

One structured error in a response's Document360.Core.Messages.Core.BaseResponse.errors array.

extension_data
object | null

This is the Extension data object

stack_trace
string | null

A technical trace showing where the error occurred within the system. Intended for backend debugging.

description
string | null

A clear message explaining what caused the error. This helps quickly understand what went wrong.

error_code
string | null

A short, predefined code that identifies the type of error. Useful for logging the error or raising a support request.

custom_data
object | null

Any structured metadata for the error object.

property*
warnings
Array of object (BaseWarning) | null

A list of warnings generated during the API request. These are non-critical issues or recommendations that might affect the request but won't stop it from processing. Each warning object provides a message to inform the user of potential problems.

object

One non-fatal warning attached to an otherwise-successful response.

extension_data
object | null

Extension Data for customer Api warning

description
string | null

A plain message that describes the warning and helps understand what should be reviewed.

warning_code
string | null

A short, predefined code that uniquely identifies the warning type.

information
Array of object (BaseInformation) | null

Contains additional non-critical information relevant to the request or response. This field provides extra details that might assist in understanding the context of the API response but is not essential for processing.

object

One informational message in a response's Document360.Core.Messages.Core.BaseResponse.information array. Non-error context the SPA may surface to the user.

extension_data
object | null

Extension data for customer Api response information

description
string | null

A plain message offering helpful context about the response, such as confirmation of fallback logic or skipped operations.

404

The requested resource was not found, or the supplied identifier does not exist in the project.

Expand All
object
extension_data
object | null

Extension data for customer API response

success
boolean

Indicates the status of the API response. A value of true signifies that the request was successfully processed, while false indicates a failure or error occurred.

errors
Array of object (BaseError) | null

A list of errors encountered during the API request. Each error object provides details about the problem, including an error code and a message explaining the issue. This field is populated when the request fails or encounters issues.

object

One structured error in a response's Document360.Core.Messages.Core.BaseResponse.errors array.

extension_data
object | null

This is the Extension data object

stack_trace
string | null

A technical trace showing where the error occurred within the system. Intended for backend debugging.

description
string | null

A clear message explaining what caused the error. This helps quickly understand what went wrong.

error_code
string | null

A short, predefined code that identifies the type of error. Useful for logging the error or raising a support request.

custom_data
object | null

Any structured metadata for the error object.

property*
warnings
Array of object (BaseWarning) | null

A list of warnings generated during the API request. These are non-critical issues or recommendations that might affect the request but won't stop it from processing. Each warning object provides a message to inform the user of potential problems.

object

One non-fatal warning attached to an otherwise-successful response.

extension_data
object | null

Extension Data for customer Api warning

description
string | null

A plain message that describes the warning and helps understand what should be reviewed.

warning_code
string | null

A short, predefined code that uniquely identifies the warning type.

information
Array of object (BaseInformation) | null

Contains additional non-critical information relevant to the request or response. This field provides extra details that might assist in understanding the context of the API response but is not essential for processing.

object

One informational message in a response's Document360.Core.Messages.Core.BaseResponse.information array. Non-error context the SPA may surface to the user.

extension_data
object | null

Extension data for customer Api response information

description
string | null

A plain message offering helpful context about the response, such as confirmation of fallback logic or skipped operations.

429

Rate limit exceeded for this api_token. Wait for the duration in the Retry-After header before retrying.

Headers
Retry-After
integer
Number of seconds to wait before retrying the request.
X-RateLimit-Limit
integer
The maximum number of requests allowed in the current window.
X-RateLimit-Remaining
integer
The number of requests remaining in the current window.
X-RateLimit-Reset
integer
Unix timestamp (seconds) at which the current rate-limit window resets.
Expand All
object
extension_data
object | null

Extension data for customer API response

success
boolean

Indicates the status of the API response. A value of true signifies that the request was successfully processed, while false indicates a failure or error occurred.

errors
Array of object (BaseError) | null

A list of errors encountered during the API request. Each error object provides details about the problem, including an error code and a message explaining the issue. This field is populated when the request fails or encounters issues.

object

One structured error in a response's Document360.Core.Messages.Core.BaseResponse.errors array.

extension_data
object | null

This is the Extension data object

stack_trace
string | null

A technical trace showing where the error occurred within the system. Intended for backend debugging.

description
string | null

A clear message explaining what caused the error. This helps quickly understand what went wrong.

error_code
string | null

A short, predefined code that identifies the type of error. Useful for logging the error or raising a support request.

custom_data
object | null

Any structured metadata for the error object.

property*
warnings
Array of object (BaseWarning) | null

A list of warnings generated during the API request. These are non-critical issues or recommendations that might affect the request but won't stop it from processing. Each warning object provides a message to inform the user of potential problems.

object

One non-fatal warning attached to an otherwise-successful response.

extension_data
object | null

Extension Data for customer Api warning

description
string | null

A plain message that describes the warning and helps understand what should be reviewed.

warning_code
string | null

A short, predefined code that uniquely identifies the warning type.

information
Array of object (BaseInformation) | null

Contains additional non-critical information relevant to the request or response. This field provides extra details that might assist in understanding the context of the API response but is not essential for processing.

object

One informational message in a response's Document360.Core.Messages.Core.BaseResponse.information array. Non-error context the SPA may surface to the user.

extension_data
object | null

Extension data for customer Api response information

description
string | null

A plain message offering helpful context about the response, such as confirmation of fallback logic or skipped operations.