Get all report schedules
Call this endpoint to retrieve all report schedules for a specific reportType. Use it to audit what schedules exist, confirm schedule settings, and find the scheduleId values you need to view, update, or delete schedules.
Note:
reportTypeis required in the query string. UsenextCursorfrom the response to paginate when more schedules are available.For more information, refer to the Reports Scheduler API reference.
Endpoint
GET https://marketplace.walmartapis.com/v3/reports/schedules?reportType=ITEM
Sample request
This sample request retrieves all schedules for the ITEM report type. If more than the default number of records exist, the response includes nextCursor.
Scheduling workflow
- Choose the
reportTypeyou want to manage (for example,ITEM,INVENTORY, orBUYBOX). - Call GET
/v3/reports/schedules?reportType=<REPORT_TYPE>. - If the response includes
nextCursor, call the endpoint again using only the cursor value as the query string. - Keep each returned
scheduleIdfor later calls to retrieve, update, or delete a schedule.
Note: Schedule timing fields such as
payload.hourare based on UTC.
curl -X GET "https://marketplace.walmartapis.com/v3/reports/schedules?reportType=ITEM" \ -H 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....' \ -H 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6' \ -H 'WM_SVC.NAME: Walmart Marketplace' \ -H 'Accept: application/json'
import requests url = "https://marketplace.walmartapis.com/v3/reports/schedules"
params = {"reportType": "ITEM"} headers = { "WM_SEC.ACCESS_TOKEN": "<ACCESS_TOKEN>", "WM_SVC.NAME": "Walmart Marketplace", "WM_QOS.CORRELATION_ID": "<CORRELATION_ID>", "Accept": "application/json",
} response = requests.get(url, headers=headers, params=params)
print("Status code:", response.status_code)
print("Response JSON:", response.json())
Modify your code
- Use a unique
WM_QOS.CORRELATION_IDfor each request. - Replace
WM_SEC.ACCESS_TOKENwith your valid access token obtained through authentication. - Update
reportTypeto the report you want to list schedules for. - If the response includes
nextCursor, call the endpoint again with?{nextCursor}. Do not repeat the original query parameters.
Sample response
The example below shows one schedule returned for reportType=ITEM. If more schedules exist than the current limit, the response includes nextCursor.
{ "page": 1, "totalCount": 1, "limit": 1, "schedules": [ { "scheduleId": "b269dc31-df8b-4421-b59d-6cc00aa50160", "requestSubmissionDate": "2025-05-02T08:16:15Z", "reportType": "ITEM", "reportVersion": "v4", "reportSummary": "reportSummary", "scheduleStartDate": "2025-05-02T08:00:00Z", "nextScheduledTime": "2026-05-02T04:00:00Z", "payload": { "dayOfMonth": 2, "monthOfYear": 5, "hour": 9, "frequency": "YEARLY", "repeatsEvery": 2, "filters": { "rowFilters": [ { "type": "enumFilter", "values": ["PUBLISHED"], "columnName": "Publish Status" } ] } }, "requestModifiedTime": "2025-05-02T08:16:15Z" } ]
}
Result
If the request is successful, the API returns HTTP 200 OK with a JSON body that includes:
- Pagination fields (
page,limit,totalCount) - An array of schedules (
schedules[]), including eachscheduleId - The schedule definition (
payload) and the next scheduled run time (nextScheduledTime) nextCursorwhen more results are available
Keep each scheduleId for later calls to retrieve a single schedule or to update or delete the schedule.
Updated 9 days ago
