MyWalmart associate data API: clock, schedule and inventory
MyWalmart is the associate app Walmart store teams open for clock status, weekly schedules, shift offers, the daily roster and shelf inventory. Those screens talk to a workforce GraphQL gateway at /v1/graphql/associate (signed-in user, punches, shifts, roster, aisle state, work orders) and a profile GraphQL at /v1/graphql/profile (WIN, hire date, emergency contacts, tax address). Shelf inventory is a separate REST surface under /v1/inventory with department stock, delta, item-detail and exception-list calls. Signed-in requests send a Bearer token plus x-country-code, x-user-id, x-store-id and x-client-id identity headers.
MyWalmart is Walmart's associate app for U.S. store teams: clock status, weekly schedules, shift offers, the daily roster, a unified profile (WIN, hire date, job title) and emergency contacts, plus shelf-scan inventory that maps UPCs to aisle, section and bin locations. Those screens ride two GraphQL gateways — one for workforce calls at /v1/graphql/associate and one for profile reads at /v1/graphql/profile — plus a REST inventory surface under /v1/inventory. Signed-in calls send a Bearer token with country, user and store identity headers; shelf-inventory calls add a feature-key header for the scanner.
Screenshots
API surface
Signed-in associate (current session)
POST
/v1/graphql/associateosintReturns the signed-in associate envelope that seeds the home screen: WIN, preferred name, department, job category, employment status and current clock status.
Auth: Bearer associate token (Authorization: Bearer) plus identity headers x-country-code, x-user-id, x-store-id and x-client-id.
- associateId
- displayName
- employmentStatus
- department
- jobCategoryCode
- jobCategoryCodeDesc
- preferredFirstName
- preferredLastName
- walmartIdentificationNumber
- clockStatus
- facilityDivNumber
- facilityRegionNumber
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-user-id: u-18492031 x-store-id: 100 x-client-id: <client-id> Content-Type: application/json { "operationName": "getCurrentAssociate", "query": "query getCurrentAssociate { currentAssociate { associate { associateId displayName employmentStatus department jobCategoryCode jobCategoryCodeDesc preferredFirstName preferredLastName walmartIdentificationNumber clockStatus { status } } } }", "variables": {} }{ "data": { "currentAssociate": { "associate": { "associateId": "10001234", "displayName": "Jordan Lee", "employmentStatus": "A", "department": "82", "jobCategoryCode": "1", "jobCategoryCodeDesc": "Sales Associate", "preferredFirstName": "Jordan", "preferredLastName": "Lee", "walmartIdentificationNumber": "10001234", "clockStatus": { "status": "IN" }, "facilityDivNumber": "1", "facilityRegionNumber": "6" } } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
mirrors the associate card the home screen renders after sign-inthe same identity headers ride every workforce call in the app
Associate profile by user id
POST
/v1/graphql/profileosintLooks up the unified associate profile by user id — WIN, hire date, position title and preferred formatted name — used on the profile and team-card screens.
Auth: Bearer associate token with the same country / user / store identity headers.
- associateProfile
- hireDate
- positionTitle
- preferredFormattedName
- walmartIdentificationNumber
- userId
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/profile HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US Content-Type: application/json { "operationName": "getAssociateProfile", "query": "query getAssociateProfile($userId: String!) { associateProfile(userId: $userId) { hireDate positionTitle preferredFormattedName walmartIdentificationNumber } }", "variables": { "userId": "u-18492031" } }{ "data": { "associateProfile": { "hireDate": "2019-04-12", "positionTitle": "Customer Service Manager", "preferredFormattedName": "Jordan Lee", "walmartIdentificationNumber": "10001234" } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
backs the profile header and team-card screenslookups key off the user id issued at sign-in
Clock / punch status
POST
/v1/graphql/associateopendataReads store-level punch state for the daily roster: whether each WIN is clocked in, last punch type/time, and any absence or call-in codes.
Auth: Bearer associate token plus x-country-code, x-user-id, x-store-id and x-client-id headers.
- associateId
- win
- punch
- clockStatus
- clockStatusDesc
- lastPunchTime
- lastPunchType
- absenceRsnCode
- absenceTypeCode
- callInMethodCode
- callInTimestamp
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-store-id: 100 Content-Type: application/json { "operationName": "getPunchState", "query": "query getPunchState($countryCode: String!, $startDate: Date!, $storeId: String!) { rosterDay(countryCode: $countryCode, startDate: $startDate, storeId: $storeId) { associateId win punch { clockStatus clockStatusDesc lastPunchTime lastPunchType } absence(countryCode: $countryCode, date: $startDate) { absenceRsnCode absenceTypeCode callInMethodCode callInTimestamp } } }", "variables": { "countryCode": "US", "startDate": "2026-09-27", "storeId": "100" } }{ "data": { "rosterDay": [{ "associateId": "10001234", "win": "10001234", "punch": { "clockStatus": "IN", "clockStatusDesc": "Clocked in", "lastPunchTime": "2026-09-27T13:02:11Z", "lastPunchType": "IN" }, "absence": { "absenceRsnCode": null, "absenceTypeCode": null, "callInMethodCode": null, "callInTimestamp": null } }] } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
drives the clock-status badge and the daily roster stripabsence and call-in codes travel on the same roster row
Team schedules with live clock state
POST
/v1/graphql/associateopendataBatch-fetches shifts and live clock status for one or more WINs over a date range — the payload behind the schedule list and manager team-time views.
Auth: Bearer associate token plus x-country-code, x-user-id, x-store-id and x-client-id headers.
- associateId
- firstName
- lastName
- userId
- win
- clockStatus
- status
- lastPunchType
- lastPunchTime
- scheduleShifts
- shiftId
- shiftStartTime
- shiftEndTime
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> Content-Type: application/json { "operationName": "getTeamSchedules", "query": "query getTeamSchedules($wins: [String!]!, $startDate: String!, $endDate: String!) { teamSchedules(request: { wins: $wins, startDate: $startDate, endDate: $endDate }) { associateId firstName lastName userId win clockStatus { status lastPunchType lastPunchTime clockStatusDesc errorCode } scheduleShifts { shiftId shiftStartTime shiftEndTime } } }", "variables": { "wins": ["10001234"], "startDate": "2026-09-21", "endDate": "2026-09-27" } }{ "data": { "teamSchedules": [{ "associateId": "10001234", "firstName": "Jordan", "lastName": "Lee", "userId": "u-18492031", "win": "10001234", "clockStatus": { "status": "IN", "lastPunchType": "IN", "lastPunchTime": "2026-09-27T13:02:11Z", "clockStatusDesc": "Clocked in", "errorCode": null }, "scheduleShifts": [{ "shiftId": "88412001", "shiftStartTime": "2026-09-27T13:00:00Z", "shiftEndTime": "2026-09-27T21:00:00Z" }] }] } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
feeds the week-at-a-glance schedule listmanager views batch several WINs through the same query
Associate store schedule
POST
/v1/graphql/associateopendataReturns the associate's store schedule by WIN and store number, including the retail week, shift bounds and job-coded events used by the schedule calendar.
Auth: Bearer associate token plus x-country-code, x-user-id, x-store-id and x-client-id headers.
- winNbr
- sourceInfo
- weeks
- scheduleWeekStartDate
- scheduleWeekEndDate
- wmWeek
- shiftId
- shiftStartTime
- shiftEndTime
- storeNumber
- jobCode
- jobDescription
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> x-store-id: 100 Content-Type: application/json { "operationName": "getStoreSchedule", "query": "query getStoreSchedule($country: String!, $storeNbr: Int!, $win: Int!, $startDate: String!, $endDate: String!) { storeSchedule(country: $country, storeNbr: $storeNbr, win: $win, startDate: $startDate, endDate: $endDate) { winNbr sourceInfo weeks { scheduleWeekStartDate scheduleWeekEndDate wmWeek schedules { shiftId shiftStartTime shiftEndTime storeNumber events { type startTime endTime jobCode jobDescription } } } } }", "variables": { "country": "US", "storeNbr": 100, "win": 10001234, "startDate": "2026-09-21", "endDate": "2026-10-04" } }{ "data": { "storeSchedule": { "winNbr": 10001234, "sourceInfo": "WFM", "weeks": [{ "scheduleWeekStartDate": "2026-09-21", "scheduleWeekEndDate": "2026-09-27", "wmWeek": "2026-38", "schedules": [{ "shiftId": "88412001", "shiftStartTime": "2026-09-27T13:00:00Z", "shiftEndTime": "2026-09-27T21:00:00Z", "storeNumber": 100, "events": [{ "type": "SHIFT", "startTime": "2026-09-27T13:00:00Z", "endTime": "2026-09-27T21:00:00Z", "jobCode": "1-SALES", "jobDescription": "Sales Associate" }] }] }] } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
powers the schedule calendar's week pagesjob-coded events explain each shift block's role
Daily store roster
POST
/v1/graphql/associateosintLists active associates on the store's daily roster with preferred names, pay type, job category, punch state and assigned shift — the team roll-call view.
Auth: Bearer associate token plus x-country-code, x-user-id, x-store-id and x-client-id headers.
- associateId
- firstName
- lastName
- fullName
- preferredFullName
- payType
- jobCategoryCodeDesc
- userId
- clockStatus
- lastPunchType
- shift
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-store-id: 100 Content-Type: application/json { "operationName": "getStoreRoster", "query": "query getStoreRoster($storeNbr: Int!, $countryCode: String!, $days: Int!, $startDate: Date!, $storeId: String!) { storeRoster(countryCode: $countryCode, days: $days, employmentStatus: \"A\", startDate: $startDate, storeId: $storeId) { associateId firstName lastName fullName preferredFullName payType jobCategoryCodeDesc userId punch { clockStatus lastPunchType } shift { name number } } }", "variables": { "storeNbr": 100, "countryCode": "US", "days": 1, "startDate": "2026-09-27", "storeId": "100" } }{ "data": { "storeRoster": [{ "associateId": "10001234", "firstName": "Jordan", "lastName": "Lee", "fullName": "Jordan Lee", "preferredFullName": "Jordan Lee", "payType": "HOURLY", "jobCategoryCodeDesc": "Sales Associate", "userId": "u-18492031", "punch": { "clockStatus": "IN", "lastPunchType": "IN" }, "shift": { "name": "First", "number": 1 } }] } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
fills the team roll-call the day plan opens withfilters to active employment status by default
Emergency contacts
POST
/v1/graphql/profileosintReads the associate's emergency-contact book and compliance opt-in from the unified profile — names, relationship, phone and email used by the emergency contacts screen.
Auth: Bearer associate token. Lookups keyed by WIN or user id via an id-type argument.
- userID
- optInEmergencyCompliance
- firstName
- lastName
- relationship
- isPrimary
- emailAddress
- emailType
- internationalPhoneCode
- phoneNumber
- phoneType
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/profile HTTP/1.1 Authorization: Bearer <access-token> Content-Type: application/json { "operationName": "getEmergencyContacts", "query": "query getEmergencyContacts($idType: IdType!, $winOrId: String!) { associateById(id: $winOrId, idType: $idType) { profile { contactData { emergencyCompliance { optInEmergencyCompliance txnStatus } emergencyContacts { firstName lastName relationship isPrimary email { emailAddress emailType } phone { countryCode phoneNumber phoneType } } } userID } } }", "variables": { "idType": "WIN", "winOrId": "10001234" } }{ "data": { "associateById": { "profile": { "userID": "u-18492031", "contactData": { "emergencyCompliance": { "optInEmergencyCompliance": true, "txnStatus": "COMMITTED" }, "emergencyContacts": [{ "firstName": "Alex", "lastName": "Lee", "relationship": "SPOUSE", "isPrimary": true, "email": { "emailAddress": "[email protected]", "emailType": "HOME" }, "phone": { "countryCode": "1", "phoneNumber": "4795550100", "phoneType": "MOBILE" } }] } } } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
mirrors the emergency contacts screen's primary-contact cardthe compliance opt-in flag rides the same profile read
Tax / mailing address
POST
/v1/graphql/profileosintReturns the associate's tax and mailing address rows from the profile's contact data — line, city, state, postal code and mailing/primary flags.
Auth: Bearer associate token. WIN-scoped profile read.
- associateId
- addressLine1
- addressLine2
- city
- countryName
- postalCode
- stateCode
- stateName
- isMailing
- isPermanent
- isPrimary
- formattedAddress
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/profile HTTP/1.1 Authorization: Bearer <access-token> Content-Type: application/json { "operationName": "getTaxAddress", "query": "query getTaxAddress($win: String!) { associateById(id: $win) { associateId profile { contactData { addresses { addressLine1 addressLine2 city countryName postalCode stateCode stateName isMailing isPermanent isPrimary formattedAddress } } } } }", "variables": { "win": "10001234" } }{ "data": { "associateById": { "associateId": "10001234", "profile": { "contactData": { "addresses": [{ "addressLine1": "702 SW 8th St", "addressLine2": "", "city": "Bentonville", "countryName": "United States", "postalCode": "72716", "stateCode": "AR", "stateName": "Arkansas", "isMailing": true, "isPermanent": true, "isPrimary": true, "formattedAddress": "702 SW 8th St, Bentonville, AR 72716" }] } } } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
backs the address card on the profile screenmailing and primary flags decide which row the screen leads with
Create shift offer
POST
/v1/graphql/associateopendataPosts a shift into the pickup / offer pool for a WIN at a store and returns the offered shift events (job code, start/end).
Auth: Bearer associate token. WIN + store scoped; managers and eligible associates can offer a shift.
- winNbr
- shiftId
- isShiftOffered
- type
- startTime
- endTime
- jobCode
- hrdwJobCode
- jobDescription
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> Content-Type: application/json { "operationName": "offerShiftToPool", "query": "mutation offerShiftToPool($country: String!, $storeNbr: Int!, $win: Long!, $input: ShiftOfferInput) { offerShift(country: $country, storeNbr: $storeNbr, win: $win, input: $input) { winNbr shiftId isShiftOffered events { type startTime endTime jobCode hrdwJobCode jobDescription } } }", "variables": { "country": "US", "storeNbr": 100, "win": 10001234, "input": { "shiftId": "88412001" } } }{ "data": { "offerShift": { "winNbr": 10001234, "shiftId": "88412001", "isShiftOffered": true, "events": [{ "type": "SHIFT", "startTime": "2026-09-28T13:00:00Z", "endTime": "2026-09-28T21:00:00Z", "jobCode": "1-SALES", "hrdwJobCode": "1SALES", "jobDescription": "Sales Associate" }] } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
matches the offer-shift confirmation sheetthe returned events mirror the shift's calendar blocks
Store aisle / section state
POST
/v1/graphql/associateopendataReturns aisle/zone/section work state for shelf-stocking: which section is active, who last worked it, and the pick list of UPCs.
Auth: Bearer associate token. Country and store headers identify the site.
- aisleId
- zoneName
- sectionId
- isSectionActive
- sectionLastWorkedTs
- legacySectionId
- lastWorkedUser
- state
- pickList
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-store-id: 100 Content-Type: application/json { "operationName": "getAisleState", "query": "query getAisleState($country: String!, $storeId: Int!, $aisles: [String]) { aisleState(country: $country, storeId: $storeId, aisles: $aisles) { aisles { aisleId zoneName sections { sectionId isSectionActive sectionLastWorkedTs legacySectionId lastWorkedUser state pickList } } } }", "variables": { "country": "US", "storeId": 100, "aisles": ["12"] } }{ "data": { "aisleState": { "aisles": [{ "aisleId": "12", "zoneName": "Grocery", "sections": [{ "sectionId": "12-A", "isSectionActive": true, "sectionLastWorkedTs": "2026-09-27T15:41:00Z", "legacySectionId": "012A", "lastWorkedUser": "10001234", "state": "IN_PROGRESS", "pickList": ["0049000051234"] }] }] } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
drives the aisle map's per-section status chipsthe pick list is the same UPC set the scanner overlay highlights
Shelf inventory by department
GET
/v1/inventory/shelf-stockopendataDownloads department-scoped shelf inventory: CID, UPC, description, image and shelf location (aisle, section, SGLN, zone) used by the scanner overlay.
Auth: Bearer token plus identity headers (x-country-code, x-user-id, x-store-id, x-client-id) and an x-feature-key: shelf-scan header. A query token paginates.
- items
- cid
- upc
- description
- image
- isItemOnFeature
- section
- aisle
- mod_location
- sgln
- zone
- barcode
- token
Illustrative example reconstructed from the app's interface — not a live capture.
GET /v1/inventory/shelf-stock?dept=82 HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-user-id: u-18492031 x-store-id: 100 x-client-id: <client-id> x-feature-key: shelf-scan{ "items": [{ "cid": 5588123, "upc": "0049000051234", "description": "Great Value Whole Milk 1 gal", "image": "https://example.invalid/img/milk.jpg", "isItemOnFeature": false, "location": { "section": 12, "aisle": 12, "mod_location": "12-A-04", "sgln": "0078742000123.12.A", "zone": "Grocery", "barcode": ["0049000051234"] } }], "token": ["page-eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"] }Derived from the app's interface; endpoint details are illustrative, not a live capture.
fills the scanner overlay's item cards by departmentthe page token continues the download on the next call
Shelf inventory deltas by department
GET
/v1/inventory/shelf-stock/deltasopendataFetches CID/UPC eligibility deltas for a department between two timestamps so the on-device inventory cache can refresh without a full download.
Auth: Bearer token. Same shelf-scan headers as the department inventory call; a query token continues a delta page.
- cidUpdates
- upcUpdates
- token
- cid
- upc
- shelfEligible
- deptId
- startTimestamp
- endTimestamp
Illustrative example reconstructed from the app's interface — not a live capture.
GET /v1/inventory/shelf-stock/deltas?dept=82&from=1758902400000&to=1758988800000 HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-store-id: 100 x-feature-key: shelf-scan{ "cidUpdates": [{ "cid": 5588123, "shelfEligible": true }], "upcUpdates": [{ "upc": "0049000051234", "cid": 5588123 }], "token": ["page-eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"] }Derived from the app's interface; endpoint details are illustrative, not a live capture.
keeps the cached department stock fresh between full syncstimestamps bound the delta window the device asks for
Shelf overlay item details
GET
/v1/inventory/itemsopendataHydrates the item card when an associate taps a shelf overlay: UPC, CID, description, image and all known shelf locations.
Auth: Bearer token. Same shelf-scan headers; the upc query parameter is the scanned or tapped overlay code.
- upc
- description
- image
- cid
- locations
- section
- aisle
- mod_location
- sgln
- zone
Illustrative example reconstructed from the app's interface — not a live capture.
GET /v1/inventory/items?upc=0049000051234 HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-store-id: 100 x-feature-key: shelf-scan[{ "upc": "0049000051234", "description": "Great Value Whole Milk 1 gal", "image": "https://example.invalid/img/milk.jpg", "cid": 5588123, "locations": [{ "section": 12, "aisle": 12, "mod_location": "12-A-04", "sgln": "0078742000123.12.A", "zone": "Grocery" }] }]Derived from the app's interface; endpoint details are illustrative, not a live capture.
opens when an associate taps a highlighted shelf overlayreturns every known location for the scanned code
Shelf exception / filter UPCs
GET
/v1/inventory/exceptionsopendataDownloads exception UPC sets (clearance, deleted, feature) that the shelf scanner uses to filter overlay eligibility.
Auth: Bearer token. Same shelf-scan headers. Query filters=clearance,deleted and an optional pagination token.
- itemFilter
- itemDetails
- upc
- token
- filters
- paginationToken
Illustrative example reconstructed from the app's interface — not a live capture.
GET /v1/inventory/exceptions?filters=clearance,deleted HTTP/1.1 Authorization: Bearer <access-token> x-country-code: US x-store-id: 100 x-feature-key: shelf-scan[{ "itemFilter": "clearance", "itemDetails": [{ "upc": "0049000059999" }], "token": "page-2" }]Derived from the app's interface; endpoint details are illustrative, not a live capture.
the scanner hides codes on these exception listseach filter bucket paginates independently
Create facilities work order
POST
/v1/graphql/associateopendataOpens a facilities work order from a non-emergency alarm or task so associates can file store-maintenance tickets from the app.
Auth: Bearer associate token. User id and country code identify the actor; position is the associate job role.
- taskId
- eventId
- userId
- position
- countryCode
- status
- data
Illustrative example reconstructed from the app's interface — not a live capture.
POST /v1/graphql/associate HTTP/1.1 Authorization: Bearer <access-token> Content-Type: application/json { "operationName": "openWorkOrder", "query": "mutation openWorkOrder($taskId: String!, $eventId: String!, $userId: String!, $position: String!, $countryCode: String!) { openWorkOrder(input: { alarm: { taskId: $taskId, eventId: $eventId, countryCode: $countryCode }, userId: $userId, position: $position }) { status data } }", "variables": { "taskId": "WO-TASK-4412", "eventId": "evt-9981", "userId": "u-18492031", "position": "Sales Associate", "countryCode": "US" } }{ "data": { "openWorkOrder": { "status": "CREATED", "data": "884199" } } }Derived from the app's interface; endpoint details are illustrative, not a live capture.
submitted from the maintenance task's action sheetthe returned id is the ticket the facilities queue tracks
Data categories
- associate profiles
- Walmart Identification Numbers
- time and attendance
- schedules and shifts
- store roster
- emergency contacts
- tax addresses
- store inventory locations
Where teams use this data
Associate identity and WIN lookup
HR and store-ops tools can resolve a user id or WIN through the signed-in associate and profile queries to reach preferred name, hire date, position title, department and job category — the same fields the home and profile screens render.
Time, attendance and shift coverage
Workforce dashboards can poll the punch-state and team-schedule queries for clock state (clockStatus, lastPunchType, lastPunchTime) and shift bounds, then call the shift-offer mutation when a shift needs to enter the pickup pool.
Shelf-location inventory sync
In-store inventory jobs can page the department shelf-stock call for UPC and location (aisle, section, bin), apply eligibility deltas between syncs, and hydrate a scanned item through the item-detail call.
Emergency-contact and tax-address audit
Compliance workflows can read the emergency-contact book (relationship, phoneNumber, emailAddress, opt-in) and the tax address rows (mailing/primary flags, postalCode, stateCode) from the profile graph.
Frequently asked questions
How does MyWalmart identify an associate on the wire?
The workforce GraphQL user query returns associateId, walmartIdentificationNumber (WIN), preferred name, department and jobCategoryCode. Profile reads take a user id or WIN and return hireDate, positionTitle and preferredFormattedName. Later calls stamp the same identity on the x-user-id and x-store-id headers.
Which endpoints back clock-in and the weekly schedule?
The punch-state query reads clockStatus, lastPunchType and lastPunchTime off the daily roster row. Schedule queries return shiftId, shiftStartTime, shiftEndTime and job-coded events, and a shift-offer mutation posts a shift into the pickup pool.
Where does the shelf-location inventory come from?
The REST inventory surface lists department stock with UPC, description and aisle/section/bin location, serves eligibility deltas between two timestamps, hydrates a scanned item's detail card, and downloads exception lists such as clearance and deleted UPCs.
What auth headers do MyWalmart API calls send?
Associates authenticate once and the app attaches Authorization: Bearer plus x-country-code, x-user-id, x-store-id and x-client-id. Shelf-inventory requests add an x-feature-key header that marks the scanner feature.
Topics
- MyWalmart API
- Walmart associate data API
- WIN walmartIdentificationNumber
- associate clock status
- store schedule API
- shelf inventory locations
- emergency contacts profile
- shift offer API
Need this app's data API integrated?
We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.