openapi: 3.1.0 info: title: Shopify Admin REST About Comments API description: The Shopify Admin REST API lets you build apps and integrations that extend and enhance the Shopify admin. Access products, customers, orders, inventory, fulfillment, and more. Endpoints are organized by resource type and versioned by release date. version: 2025-01 contact: name: Shopify url: https://shopify.dev/docs/api/admin-rest email: api@shopify.com license: name: Shopify API Terms url: https://www.shopify.com/legal/api-terms x-date: '2026-03-04' servers: - url: https://{store}.myshopify.com/admin/api/2025-01 description: Shopify Admin REST API variables: store: default: my-store description: The Shopify store subdomain security: - AccessToken: [] tags: - name: Comments paths: /admin/api/2020-01/comments.json: get: summary: Shopify Retrieves A List Of Comments description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#index-2020-01 parameters: - in: query name: limit description: "The maximum number of results to retrieve.\n (default: 50, maximum: 250)" schema: {} required: false - in: query name: since_id description: Restrict results to after the specified ID. schema: {} required: false - in: query name: created_at_min description: 'Show comments created after date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: created_at_max description: 'Show comments created before date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: updated_at_min description: 'Show comments last updated after date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: updated_at_max description: 'Show comments last updated before date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: published_at_min description: 'Show comments published after date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: published_at_max description: 'Show comments published before date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: fields description: Show only certain fields, specified by a comma-separated list of field names. schema: {} required: false - in: query name: published_status description: "Filter results by their published status.\n (default: any)\n \n published: Show only published comments.\n unpublished: Show only unpublished comments.\n any: Show comments of any published status." schema: {} required: false - in: query name: status description: "Filter results by their status.\n \n pending: Show only pending comments.\n published: Show only published comments.\n unapproved: Show only unapproved comments." schema: {} required: false - in: query name: article_id schema: type: integer description: article_id required: false - in: query name: blog_id schema: type: integer description: blog_id required: false tags: - Comments responses: '200': description: '' operationId: deprecated_202001_get_comments x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true post: requestBody: content: application/json: schema: {} examples: example1: value: comment: body: 'I like comments And I like posting them *RESTfully*.' author: Your name email: your@email.com ip: 107.20.160.121 blog_id: 241253187 article_id: 134645308 summary: Create a comment for an article of a blog using basic Textile markup example2: value: comment: article_id: 134645308 summary: Creating a comment without a body, author, and email fails and returns an error summary: Shopify Creates A Comment For An Article description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#create-2020-01 parameters: [] tags: - Comments responses: '200': description: '' operationId: deprecated_202001_create_comments x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true /admin/api/2020-01/comments/count.json: get: summary: Shopify Retrieves A Count Of Comments description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#count-2020-01 parameters: - in: query name: created_at_min description: 'Count comments created after date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: created_at_max description: 'Count comments created before date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: updated_at_min description: 'Count comments last updated after date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: updated_at_max description: 'Count comments last updated before date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: published_at_min description: 'Count comments published after date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: published_at_max description: 'Count comments published before date (format: 2014-04-25T16:15:47-04:00).' schema: {} required: false - in: query name: published_status description: "Retrieve a count of comments with a given published status.\n (default: any)\n \n published: Count only published comments.\n unpublished: Count only unpublished comments.\n any: Count comments of any published status." schema: {} required: false - in: query name: status description: "Retrieve a count of comments with a given status.\n \n pending: Count pending comments.\n published: Count published comments.\n unapproved: Count unapproved comments." schema: {} required: false - in: query name: article_id schema: type: integer description: article_id required: false - in: query name: blog_id schema: type: integer description: blog_id required: false tags: - Comments responses: '200': description: '' operationId: deprecated_202001_get_comments_count x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true /admin/api/2020-01/comments/{comment_id}.json: get: summary: Shopify Retrieves A Single Comment By Its Id description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#show-2020-01 parameters: - in: path name: comment_id required: true schema: type: string description: comment_id - in: query name: fields description: Show only certain fields, specified by a comma-separated list of field names. schema: {} required: false tags: - Comments responses: '200': description: '' operationId: deprecated_202001_get_comments_param_comment_id x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true put: requestBody: content: application/json: schema: {} examples: example1: value: comment: id: 118373535 body: You can even update through a web service. author: Your new name email: your@updated-email.com published_at: '2020-11-05T00:48:11.132Z' summary: Update the body of an existing comment summary: Shopify Updates A Comment Of An Article description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#update-2020-01 parameters: - in: path name: comment_id required: true schema: type: string description: comment_id tags: - Comments responses: '200': description: '' operationId: deprecated_202001_update_comments_param_comment_id x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true /admin/api/2020-01/comments/{comment_id}/spam.json: post: requestBody: content: application/json: schema: {} examples: example1: value: {} summary: Mark a comment as spam summary: Shopify Marks A Comment As Spam description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#spam-2020-01 parameters: - in: path name: comment_id required: true schema: type: string description: comment_id tags: - Comments responses: '200': description: '' operationId: deprecated_202001_create_comments_param_comment_id_spam x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true /admin/api/2020-01/comments/{comment_id}/not_spam.json: post: requestBody: content: application/json: schema: {} examples: example1: value: {} summary: Mark a comment as not spam, restoring it to an unapproved or published state summary: Shopify Marks A Comment As Not Spam description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#not_spam-2020-01 parameters: - in: path name: comment_id required: true schema: type: string description: comment_id tags: - Comments responses: '200': description: '' operationId: deprecated_202001_create_comments_param_comment_id_not_spam x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true /admin/api/2020-01/comments/{comment_id}/approve.json: post: requestBody: content: application/json: schema: {} examples: example1: value: {} summary: Approve a comment and publish it to the blog summary: Shopify Approves A Comment description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#approve-2020-01 parameters: - in: path name: comment_id required: true schema: type: string description: comment_id tags: - Comments responses: '200': description: '' operationId: deprecated_202001_create_comments_param_comment_id_approve x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true /admin/api/2020-01/comments/{comment_id}/remove.json: post: requestBody: content: application/json: schema: {} examples: example1: value: {} summary: Remove a comment summary: Shopify Removes A Comment description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#remove-2020-01 parameters: - in: path name: comment_id required: true schema: type: string description: comment_id tags: - Comments responses: '200': description: '' operationId: deprecated_202001_create_comments_param_comment_id_remove x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true /admin/api/2020-01/comments/{comment_id}/restore.json: post: requestBody: content: application/json: schema: {} examples: example1: value: {} summary: Restore a removed comment summary: Shopify Restores A Previously Removed Comment description: https://shopify.dev/docs/admin-api/rest/reference/online-store/comment#restore-2020-01 parameters: - in: path name: comment_id required: true schema: type: string description: comment_id tags: - Comments responses: '200': description: '' operationId: deprecated_202001_create_comments_param_comment_id_restore x-api-evangelist-processing: PascalCaseOperationSummaries: true ChooseTags: true components: securitySchemes: AccessToken: type: apiKey name: X-Shopify-Access-Token in: header description: Access token obtained via OAuth