--- title: Article - Storefront API description: An article in an online store blog. api_version: 2025-01 api_name: storefront type: object api_type: graphql source_url: html: https://shopify.dev/docs/api/storefront/2025-01/objects/article md: https://shopify.dev/docs/api/storefront/2025-01/objects/article.md --- # Article object Requires `unauthenticated_read_content` access scope. An article in an online store blog. ## Fields * author​V2 [Article​Author](https://shopify.dev/docs/api/storefront/2025-01/objects/ArticleAuthor) The article's author. * blog [Blog!](https://shopify.dev/docs/api/storefront/2025-01/objects/Blog) non-null The blog that the article belongs to. * comments [Comment​Connection!](https://shopify.dev/docs/api/storefront/2025-01/connections/CommentConnection) non-null List of comments posted on the article. * first [Int](https://shopify.dev/docs/api/storefront/2025-01/scalars/Int) ### Arguments Returns up to the first `n` elements from the list. * after [String](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) Returns the elements that come after the specified cursor. * last [Int](https://shopify.dev/docs/api/storefront/2025-01/scalars/Int) Returns up to the last `n` elements from the list. * before [String](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) Returns the elements that come before the specified cursor. * reverse [Boolean](https://shopify.dev/docs/api/storefront/2025-01/scalars/Boolean) Default:false Reverse the order of the underlying list. *** * content [String!](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) non-null Stripped content of the article, single line with HTML tags removed. * truncate​At [Int](https://shopify.dev/docs/api/storefront/2025-01/scalars/Int) ### Arguments Truncates a string after the given length. *** * content​Html [HTML!](https://shopify.dev/docs/api/storefront/2025-01/scalars/HTML) non-null The content of the article, complete with HTML formatting. * excerpt [String](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) Stripped excerpt of the article, single line with HTML tags removed. * truncate​At [Int](https://shopify.dev/docs/api/storefront/2025-01/scalars/Int) ### Arguments Truncates a string after the given length. *** * excerpt​Html [HTML](https://shopify.dev/docs/api/storefront/2025-01/scalars/HTML) The excerpt of the article, complete with HTML formatting. * handle [String!](https://shopify.dev/docs/api/storefront/2025-01/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/2025-01/scalars/ID) non-null A globally-unique ID. * image [Image](https://shopify.dev/docs/api/storefront/2025-01/objects/Image) The image associated with the article. * metafield [Metafield](https://shopify.dev/docs/api/storefront/2025-01/objects/Metafield) 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. * namespace [String](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) ### Arguments The container the metafield belongs to. If omitted, the app-reserved namespace will be used. * key [String!](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) required The identifier for the metafield. *** * metafields [\[Metafield\]!](https://shopify.dev/docs/api/storefront/2025-01/objects/Metafield) non-null 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/2025-01/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/2025-01/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/2025-01/scalars/DateTime) non-null The date and time when the article was published. * seo [SEO](https://shopify.dev/docs/api/storefront/2025-01/objects/SEO) The article’s SEO information. * tags [\[String!\]!](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) non-null A categorization that a article can be tagged with. * title [String!](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) non-null The article’s name. * tracking​Parameters [String](https://shopify.dev/docs/api/storefront/2025-01/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/current/queries/search) or [predictiveSearch](https://shopify.dev/docs/api/storefront/current/queries/predictiveSearch) queries, otherwise returns null. * author [Article​Author!](https://shopify.dev/docs/api/storefront/2025-01/objects/ArticleAuthor) non-nullDeprecated *** ## Map ### Fields and connections with this object * <->[ArticleConnection.nodes](https://shopify.dev/docs/api/storefront/2025-01/connections/ArticleConnection#returns-nodes) * {}[ArticleEdge.node](https://shopify.dev/docs/api/storefront/2025-01/objects/ArticleEdge#field-ArticleEdge.fields.node) * {}[Blog.articleByHandle](https://shopify.dev/docs/api/storefront/2025-01/objects/Blog#field-Blog.fields.articleByHandle) * {}[Blog.articles](https://shopify.dev/docs/api/storefront/2025-01/objects/Blog#field-Blog.fields.articles) * {}[PredictiveSearchResult.articles](https://shopify.dev/docs/api/storefront/2025-01/objects/PredictiveSearchResult#field-PredictiveSearchResult.fields.articles) ### Possible type in * [Menu​Item​Resource](https://shopify.dev/docs/api/storefront/2025-01/unions/MenuItemResource) * [Metafield​Parent​Resource](https://shopify.dev/docs/api/storefront/2025-01/unions/MetafieldParentResource) * [Search​Result​Item](https://shopify.dev/docs/api/storefront/2025-01/unions/SearchResultItem) *** ## Queries * [article](https://shopify.dev/docs/api/storefront/2025-01/queries/article) query Fetch a specific Article by its ID. * id [ID!](https://shopify.dev/docs/api/storefront/2025-01/scalars/ID) required ### Arguments The ID of the `Article`. *** * [articles](https://shopify.dev/docs/api/storefront/2025-01/queries/articles) query List of the shop's articles. * first [Int](https://shopify.dev/docs/api/storefront/2025-01/scalars/Int) ### Arguments Returns up to the first `n` elements from the list. * after [String](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) Returns the elements that come after the specified cursor. * last [Int](https://shopify.dev/docs/api/storefront/2025-01/scalars/Int) Returns up to the last `n` elements from the list. * before [String](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) Returns the elements that come before the specified cursor. * reverse [Boolean](https://shopify.dev/docs/api/storefront/2025-01/scalars/Boolean) Default:false Reverse the order of the underlying list. * sort​Key [Article​Sort​Keys](https://shopify.dev/docs/api/storefront/2025-01/enums/ArticleSortKeys) Default:ID Sort the underlying list by the given key. * query [String](https://shopify.dev/docs/api/storefront/2025-01/scalars/String) Apply one or multiple filters to the query. Refer to the detailed [search syntax](https://shopify.dev/api/usage/search-syntax) for more information about using filters. * author * blog\_title * created\_at * tag * tag\_not * updated\_at *** *** ## \Article Queries ### Queried by * \[article](https://shopify.dev/docs/api/storefront/2025-01/queries/article) * \[articles](https://shopify.dev/docs/api/storefront/2025-01/queries/articles) *** ## Interfaces * * [Has​Metafields](https://shopify.dev/docs/api/storefront/2025-01/interfaces/HasMetafields) interface * [Node](https://shopify.dev/docs/api/storefront/2025-01/interfaces/Node) interface * [Online​Store​Publishable](https://shopify.dev/docs/api/storefront/2025-01/interfaces/OnlineStorePublishable) interface * [Trackable](https://shopify.dev/docs/api/storefront/2025-01/interfaces/Trackable) interface *** ## ||-Article Implements ### Implements * ||-[Has​Metafields](https://shopify.dev/docs/api/storefront/2025-01/interfaces/HasMetafields) * ||-[Node](https://shopify.dev/docs/api/storefront/2025-01/interfaces/Node) * ||-[Online​Store​Publishable](https://shopify.dev/docs/api/storefront/2025-01/interfaces/OnlineStorePublishable) * ||-[Trackable](https://shopify.dev/docs/api/storefront/2025-01/interfaces/Trackable)