Shopify Reports API

The Reports API from Shopify — 12 operation(s) for reports.

Business capability
Analytics & BI Management BC-610.50

Operations 18

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /admin/api/2020-01/reports.json Create a custom analytics report (2020-01) · Shopify Creates A New Report #
Ask an LLM
“How do I create a custom report from a ShopifyQL query with API version 2020-01?”
“Can I give a new report its own name on the 2020-01 version?”
Tell an agent
Create a report named {name} running {shopify_ql} using API version 2020-01.
Add a custom report built on the query {shopify_ql} on the 2020-01 version.
PUT /admin/api/2020-01/reports/{report_id}.json Update a report (2020-01) · Shopify Updates A Report #
Ask an LLM
“Can I change a custom report I already made through API version 2020-01?”
“Which 2020-01 call edits an existing report?”
Tell an agent
Update report {report_id} using API version 2020-01.
Edit existing report {report_id} on the 2020-01 version.
DELETE /admin/api/2020-01/reports/{report_id}.json Delete a report (2020-01) · Shopify Deletes A Report #
Ask an LLM
“How do I permanently remove a custom report on 2020-01?”
“Can a report be deleted through the 2020-01 API version?”
Tell an agent destructive · confirm first
Delete report {report_id} using API version 2020-01.
Remove report {report_id} from the admin on the 2020-01 version.
POST /admin/api/2020-04/reports.json Create a ShopifyQL report (2020-04) · Shopify Creates A New Report #
Ask an LLM
“Can I save a ShopifyQL query as a named report with the 2020-04 release?”
“Which 2020-04 endpoint creates a new report?”
Tell an agent
Using release 2020-04, save {shopify_ql} as a report called {name}.
Make a new report titled {name} with the 2020-04 release.
PUT /admin/api/2020-04/reports/{report_id}.json Modify a report (2020-04) · Shopify Updates A Report #
Ask an LLM
“Can release 2020-04 modify a report after it is created?”
“What's the 2020-04 call to save changes to a report?”
Tell an agent
Modify report {report_id} through release 2020-04.
Using release 2020-04, save changes to report {report_id}.
DELETE /admin/api/2020-04/reports/{report_id}.json Remove a report (2020-04) · Shopify Deletes A Report #
Ask an LLM
“Which 2020-04 call deletes a report for good?”
“Can I get rid of an unused report with release 2020-04?”
Tell an agent destructive · confirm first
Get rid of unused report {report_id} with release 2020-04.
Using release 2020-04, permanently delete report {report_id}.
POST /admin/api/2020-07/reports.json Add a new report (2020-07) · Shopify Creates A New Report #
Ask an LLM
“Does the 2020-07 API let my app publish a report defined by ShopifyQL?”
“What's involved in creating a report on the 2020-07 API?”
Tell an agent
Publish a report named {name} from the ShopifyQL {shopify_ql} on the 2020-07 API.
For the 2020-07 API, create a report called {name}.
PUT /admin/api/2020-07/reports/{report_id}.json Edit a report (2020-07) · Shopify Updates A Report #
Ask an LLM
“Does the 2020-07 API allow editing a report that already exists?”
“Can I adjust a report through 2020-07?”
Tell an agent
Apply changes to report {report_id}, API 2020-07.
Edit report {report_id} with the 2020-07 API.
DELETE /admin/api/2020-07/reports/{report_id}.json Delete a report (2020-07) · Shopify Deletes A Report #
Ask an LLM
“Is deleting a report supported on the 2020-07 API?”
“How would I clear out an old report on 2020-07?”
Tell an agent destructive · confirm first
Clear out old report {report_id} on the 2020-07 API.
Delete report {report_id} (API 2020-07).
POST /admin/api/2020-10/reports.json Create a report (2020-10, current version) · Shopify Creates A New Report #
Ask an LLM
“What's the way to create a report on the current 2020-10 version?”
“Can the non-deprecated 2020-10 API build a report from a ShopifyQL query?”
Tell an agent
Create a report called {name} with query {shopify_ql} on 2020-10.
Build a report from {shopify_ql} using the non-deprecated 2020-10 API.
PUT /admin/api/2020-10/reports/{report_id}.json Update a report (2020-10) · Shopify Updates A Report #
Ask an LLM
“How do I update an existing report with the current 2020-10 version?”
“Can a report be changed via 2020-10?”
Tell an agent
Update report {report_id} on 2020-10.
Change report {report_id} with the non-deprecated 2020-10 API.
DELETE /admin/api/2020-10/reports/{report_id}.json Delete a report (2020-10) · Shopify Deletes A Report #
Ask an LLM
“Can I delete a report with the non-deprecated 2020-10 API?”
“Which 2020-10 call removes a report?”
Tell an agent destructive · confirm first
Delete report {report_id} on 2020-10.
Remove report {report_id} using the current 2020-10 version.
POST /admin/api/2021-01/reports.json Create a report (2021-01) · Shopify Creates A New Report #
Ask an LLM
“Is creating a report possible with version 2021-01?”
“What's the 2021-01 endpoint for adding a ShopifyQL report?”
Tell an agent
With version 2021-01, create a report named {name}.
Set up a report that runs {shopify_ql} via the 2021-01 version.
PUT /admin/api/2021-01/reports/{report_id}.json Modify a report (2021-01) · Shopify Updates A Report #
Ask an LLM
“Can I modify an existing report in version 2021-01?”
“Which 2021-01 call updates a report?”
Tell an agent
With version 2021-01, update report {report_id}.
Revise report {report_id} through the 2021-01 version.
DELETE /admin/api/2021-01/reports/{report_id}.json Delete a report (2021-01) · Shopify Deletes A Report #
Ask an LLM
“Is it possible to delete a report through version 2021-01?”
“Which 2021-01 endpoint removes a report?”
Tell an agent destructive · confirm first
With version 2021-01, delete report {report_id}.
Discard report {report_id} via the 2021-01 version.
POST /admin/api/unstable/reports.json Create a report (unstable version) · Shopify Creates A New Report #
Ask an LLM
“Can I test creating a ShopifyQL report against the unstable API version?”
“What does the unstable version expect when adding a report?”
Tell an agent
On the unstable API version, create a report named {name} from {shopify_ql}.
Try adding a report called {name} using the unstable version.
PUT /admin/api/unstable/reports/{report_id}.json Update a report (unstable version) · Shopify Updates A Report #
Ask an LLM
“Can I update an existing report against the unstable API version?”
“How does the unstable version handle edits to a report?”
Tell an agent
On the unstable API version, update report {report_id}.
Try editing report {report_id} using the unstable version.
DELETE /admin/api/unstable/reports/{report_id}.json Delete a report (unstable version) · Shopify Deletes A Report #
Ask an LLM
“Can I delete a report through the unstable API version?”
“Does the unstable version support removing a report?”
Tell an agent destructive · confirm first
On the unstable API version, delete report {report_id}.
Try removing report {report_id} with the unstable version.

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/shopify-reports-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

shopify-reports-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Shopify Reports API
  description: Explore Shopify's API reference and templating documentation. Shopify provides a range of software tools, app templates, example apps, and libraries to accelerate your development process. The Admin API lets you build apps and integrations that extend and enhance the Shopify admin.
  version: 2020-10
tags:
- name: Reports
paths:
  /admin/api/2020-01/reports.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    name: A new app report
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -1m UNTIL today ORDER BY total_sales
                summary: Create a new report
      summary: Shopify Creates A New Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#create-2020-01
      parameters:
      - in: query
        name: name
        description: 'The name of the report. Maximum length: 255 characters.'
        schema: {}
        required: false
      - in: query
        name: shopify_ql
        description: The ShopifyQL the report will query.
        schema: {}
        required: false
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202001_create_reports
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-01/reports/{report_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    id: 517154478
                    name: Changed Report Name
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -12m UNTIL today ORDER BY total_sales
                summary: Update an existing report
      summary: Shopify Updates A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#update-2020-01
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202001_update_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
    delete:
      summary: Shopify Deletes A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#destroy-2020-01
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202001_delete_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-04/reports.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    name: A new app report
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -1m UNTIL today ORDER BY total_sales
                summary: Create a new report
      summary: Shopify Creates A New Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#create-2020-04
      parameters:
      - in: query
        name: name
        description: 'The name of the report. Maximum length: 255 characters.'
        schema: {}
        required: false
      - in: query
        name: shopify_ql
        description: The ShopifyQL the report will query.
        schema: {}
        required: false
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202004_create_reports
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-04/reports/{report_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    id: 517154478
                    name: Changed Report Name
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -12m UNTIL today ORDER BY total_sales
                summary: Update an existing report
      summary: Shopify Updates A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#update-2020-04
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202004_update_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
    delete:
      summary: Shopify Deletes A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#destroy-2020-04
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202004_delete_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-07/reports.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    name: A new app report
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -1m UNTIL today ORDER BY total_sales
                summary: Create a new report
      summary: Shopify Creates A New Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#create-2020-07
      parameters:
      - in: query
        name: name
        description: 'The name of the report. Maximum length: 255 characters.'
        schema: {}
        required: false
      - in: query
        name: shopify_ql
        description: The ShopifyQL the report will query.
        schema: {}
        required: false
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202007_create_reports
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-07/reports/{report_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    id: 517154478
                    name: Changed Report Name
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -12m UNTIL today ORDER BY total_sales
                summary: Update an existing report
      summary: Shopify Updates A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#update-2020-07
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202007_update_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
    delete:
      summary: Shopify Deletes A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#destroy-2020-07
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202007_delete_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-10/reports.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    name: A new app report
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -1m UNTIL today ORDER BY total_sales
                summary: Create a new report
      summary: Shopify Creates A New Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#create-2020-10
      parameters:
      - in: query
        name: name
        description: 'The name of the report. Maximum length: 255 characters.'
        schema: {}
        required: false
      - in: query
        name: shopify_ql
        description: The ShopifyQL the report will query.
        schema: {}
        required: false
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: create_reports
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2020-10/reports/{report_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    id: 517154478
                    name: Changed Report Name
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -12m UNTIL today ORDER BY total_sales
                summary: Update an existing report
      summary: Shopify Updates A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#update-2020-10
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: update_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
    delete:
      summary: Shopify Deletes A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#destroy-2020-10
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: delete_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2021-01/reports.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    name: A new app report
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -1m UNTIL today ORDER BY total_sales
                summary: Create a new report
      summary: Shopify Creates A New Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#create-2021-01
      parameters:
      - in: query
        name: name
        description: 'The name of the report. Maximum length: 255 characters.'
        schema: {}
        required: false
      - in: query
        name: shopify_ql
        description: The ShopifyQL the report will query.
        schema: {}
        required: false
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202101_create_reports
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/2021-01/reports/{report_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    id: 517154478
                    name: Changed Report Name
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -12m UNTIL today ORDER BY total_sales
                summary: Update an existing report
      summary: Shopify Updates A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#update-2021-01
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202101_update_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
    delete:
      summary: Shopify Deletes A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#destroy-2021-01
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_202101_delete_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/unstable/reports.json:
    post:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    name: A new app report
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -1m UNTIL today ORDER BY total_sales
                summary: Create a new report
      summary: Shopify Creates A New Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#create-unstable
      parameters:
      - in: query
        name: name
        description: 'The name of the report. Maximum length: 255 characters.'
        schema: {}
        required: false
      - in: query
        name: shopify_ql
        description: The ShopifyQL the report will query.
        schema: {}
        required: false
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_unstable_create_reports
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
  /admin/api/unstable/reports/{report_id}.json:
    put:
      requestBody:
        content:
          application/json:
            schema: {}
            examples:
              example1:
                value:
                  report:
                    id: 517154478
                    name: Changed Report Name
                    shopify_ql: SHOW total_sales BY order_id FROM sales SINCE -12m UNTIL today ORDER BY total_sales
                summary: Update an existing report
      summary: Shopify Updates A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#update-unstable
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_unstable_update_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true
    delete:
      summary: Shopify Deletes A Report
      description: https://shopify.dev/docs/admin-api/rest/reference/analytics/report#destroy-unstable
      parameters:
      - in: path
        name: report_id
        required: true
        schema:
          type: string
        description: report_id
      tags:
      - Reports
      responses:
        '200':
          description: ''
      operationId: deprecated_unstable_delete_reports_param_report_id
      x-api-evangelist-processing:
        PascalCaseOperationSummaries: true
        ChooseTags: true