---
title: article - Storefront API
description: >-
  Returns an [`Article`](/docs/api/storefront/2026-10/objects/Article)

  by its ID. Each article belongs to a

  [`Blog`](/docs/api/storefront/2026-10/objects/Blog) and

  includes content in both plain text and HTML formats,
  [`ArticleAuthor`](/docs/api/storefront/2026-10/objects/ArticleAuthor)
  information,

  [`Comment`](/docs/api/storefront/2026-10/objects/Comment)

  objects, tags, and

  [`SEO`](/docs/api/storefront/2026-10/objects/SEO) data.
api_version: 2026-10
source_url:
  html: 'https://shopify.dev/docs/api/storefront/latest/queries/article'
  md: 'https://shopify.dev/docs/api/storefront/latest/queries/article.md'
api_name: storefront
api_type: graphql
type: query
---

# article

query

Returns an [`Article`](https://shopify.dev/docs/api/storefront/2026-10/objects/Article) by its ID. Each article belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/2026-10/objects/Blog) and includes content in both plain text and HTML formats, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/2026-10/objects/ArticleAuthor) information, [`Comment`](https://shopify.dev/docs/api/storefront/2026-10/objects/Comment) objects, tags, and [`SEO`](https://shopify.dev/docs/api/storefront/2026-10/objects/SEO) data.

## Arguments

* id

  [ID!](https://shopify.dev/docs/api/storefront/latest/scalars/ID)

  required

  The ID of the `Article`.

***

## Possible returns

* Article

  [Article](https://shopify.dev/docs/api/storefront/latest/objects/Article)

  A post that belongs to a [`Blog`](https://shopify.dev/docs/api/storefront/2026-10/objects/Blog). Each article includes content with optional HTML formatting, an excerpt for previews, [`ArticleAuthor`](https://shopify.dev/docs/api/storefront/2026-10/objects/ArticleAuthor) information, and an associated [`Image`](https://shopify.dev/docs/api/storefront/2026-10/objects/Image).

  Articles can be organized with tags and include [`SEO`](https://shopify.dev/docs/api/storefront/2026-10/objects/SEO) metadata. You can manage [comments](https://shopify.dev/docs/api/storefront/2026-10/objects/Comment) when the blog's comment policy enables them.

  * author​V2

    [Article​Author](https://shopify.dev/docs/api/storefront/latest/objects/ArticleAuthor)

    The article's author.

  * blog

    [Blog!](https://shopify.dev/docs/api/storefront/latest/objects/Blog)

    non-null

    The blog that the article belongs to.

  * comments

    [Comment​Connection!](https://shopify.dev/docs/api/storefront/latest/connections/CommentConnection)

    non-null

    List of comments posted on the article.

    * after

      [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

      ### Arguments

      Returns the elements that come after the specified cursor.

    * before

      [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

      Returns the elements that come before the specified cursor.

    * first

      [Int](https://shopify.dev/docs/api/storefront/latest/scalars/Int)

      Returns up to the first `n` elements from the list.

    * last

      [Int](https://shopify.dev/docs/api/storefront/latest/scalars/Int)

      Returns up to the last `n` elements from the list.

    * reverse

      [Boolean](https://shopify.dev/docs/api/storefront/latest/scalars/Boolean)

      Default:false

      Reverse the order of the underlying list.

    ***

  * content

    [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    non-null

    Stripped content of the article, single line with HTML tags removed.

    * truncate​At

      [Int](https://shopify.dev/docs/api/storefront/latest/scalars/Int)

      ### Arguments

      Truncates a string after the given length.

    ***

  * content​Html

    [HTML!](https://shopify.dev/docs/api/storefront/latest/scalars/HTML)

    non-null

    The content of the article, complete with HTML formatting.

  * excerpt

    [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    Stripped excerpt of the article, single line with HTML tags removed.

    * truncate​At

      [Int](https://shopify.dev/docs/api/storefront/latest/scalars/Int)

      ### Arguments

      Truncates a string after the given length.

    ***

  * excerpt​Html

    [HTML](https://shopify.dev/docs/api/storefront/latest/scalars/HTML)

    The excerpt of the article, complete with HTML formatting.

  * handle

    [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    non-null

    A human-friendly unique string for the Article automatically generated from its title.

  * id

    [ID!](https://shopify.dev/docs/api/storefront/latest/scalars/ID)

    non-null

    A globally-unique ID.

  * image

    [Image](https://shopify.dev/docs/api/storefront/latest/objects/Image)

    The image associated with the article.

  * metafield

    [Metafield](https://shopify.dev/docs/api/storefront/latest/objects/Metafield)

    Token access required

    A [custom field](https://shopify.dev/docs/apps/build/custom-data), including its `namespace` and `key`, that's associated with a Shopify resource for the purposes of adding and storing additional information.

    * key

      [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

      required

      ### Arguments

      The identifier for the metafield.

    * namespace

      [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

      The container the metafield belongs to. If omitted, the app-reserved namespace will be used.

    ***

  * metafields

    [\[Metafield\]!](https://shopify.dev/docs/api/storefront/latest/objects/Metafield)

    non-null Token access required

    A list of [custom fields](https://shopify.dev/docs/apps/build/custom-data) that a merchant associates with a Shopify resource.

    * identifiers

      [\[Has​Metafields​Identifier!\]!](https://shopify.dev/docs/api/storefront/latest/input-objects/HasMetafieldsIdentifier)

      required

      ### Arguments

      The list of metafields to retrieve by namespace and key.

      The input must not contain more than `250` values.

    ***

  * online​Store​Url

    [URL](https://shopify.dev/docs/api/storefront/latest/scalars/URL)

    The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.

  * published​At

    [Date​Time!](https://shopify.dev/docs/api/storefront/latest/scalars/DateTime)

    non-null

    The date and time when the article was published.

  * seo

    [SEO](https://shopify.dev/docs/api/storefront/latest/objects/SEO)

    The article’s SEO information.

  * tags

    [\[String!\]!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    non-null

    A categorization that a article can be tagged with.

  * title

    [String!](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    non-null

    The article’s name.

  * tracking​Parameters

    [String](https://shopify.dev/docs/api/storefront/latest/scalars/String)

    URL parameters to be added to a page URL to track the origin of on-site search traffic for [analytics reporting](https://help.shopify.com/manual/reports-and-analytics/shopify-reports/report-types/default-reports/behaviour-reports). Returns a result when accessed through the [search](https://shopify.dev/docs/api/storefront/2026-10/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/2026-10/queries/predictiveSearch) queries, otherwise returns null.

  * author

    [Article​Author!](https://shopify.dev/docs/api/storefront/latest/objects/ArticleAuthor)

    non-nullDeprecated

***

## Examples

* ### article reference
