What type of API does Walmart provide?
Based on the search results provided, it appears that Walmart uses a REST API for their Marketplace platform. The key points are:
-
The API documentation shows REST-style endpoints and HTTP methods, such as GET requests to retrieve item information, POST requests to set up items, and PUT requests to update items.
-
The API uses standard REST-style URLs, such as https://marketplace.walmartapis.com/v3/items/0935829?productIdType=ITEM_ID
.
-
The API uses standard HTTP methods like GET, POST, and PUT, which is typical of REST APIs.
-
The documentation mentions JSON payloads for requests and responses, which is common in REST APIs.
-
The API includes versioning (e.g. v3) in the URLs, which is a common practice in REST APIs.
There is no mention of GraphQL or SOAP in relation to Walmart's API in the provided search results.
Does the Walmart API have webhooks?
Webhook Availability
Yes, the official Walmart API does have webhooks, which they refer to as "push notifications" or "Web Hooks".
Types of Events
Walmart offers webhooks for various event types. Some of the events you can subscribe to include:
-
Item-related events:
- OFFER_PUBLISHED: When an offer is published
- OFFER_UNPUBLISHED: When an offer is unpublished
-
Inventory-related events:
- INVENTORY_OOS: When an item's inventory goes out of stock
-
Order-related events:
- PO_CREATED: When a new Purchase Order is created
- PO_LINE_AUTOCANCELLED: When a Purchase Order line is auto-cancelled
-
Buy Box-related events:
-
Report-related events:
- Report Status Notification
-
Return-related events:
-
Order cancellation events:
- Order Intent To Cancel Event
Key Points to Consider
-
To get a list of all available events and resource names, you can use the Event Types API.
-
Each event type is associated with a specific resource name (e.g., ITEM, INVENTORY, ORDER).
-
You need to have the appropriate delegated access scope for the resource to subscribe to its events.
-
The subscription process involves testing your destination URL, creating a subscription, and setting up notification acknowledgement.
-
Walmart will retry sending notifications up to three times if there's no acknowledgement.
-
You can subscribe to multiple events in a single subscription request.
Best Practices
-
Always test your destination URL before creating a subscription.
-
Ensure your destination URL is a public http or https URL.
-
Set up your system to respond to notifications with a standard HTTP status of 2xx for acknowledgement.
-
Use the Event Types API to get the most up-to-date list of available events before subscribing.
-
Make sure you have the necessary delegated access scope for the resources you want to subscribe to.
By using Walmart's webhook system, you can optimize your integration, automate workflows, and reduce the need for frequent polling of Walmart's APIs within throttle limits.
Rate Limits and other limitations
Here are the key points about the API rate limits for the Walmart API:
ASYNC API Throttling Limits
- Item feeds: 10 requests per hour, 25 MB max file size, 4 hour processing time
- Prices: 10 requests per hour, 10 MB max file size, 30 minute processing time
- Promotions: 6 requests per day, 10 MB max file size, 30 minute processing time
- Inventory: 10 requests per hour, 5 MB max file size, 30 minute processing time
- Returns Overrides: 20 requests per day, 400 KB max file size, 4 hour processing time
SYNC API Throttling Limits
- Listing Quality: 150 requests per minute
- API Platform Status: 100 requests per minute
General Throttling Rules
- If limits are exceeded, API calls will return a 429 "Too Many Requests" error
- Hourly and daily limits are replenished gradually throughout the period
- Non-feed APIs are intended for emergency use only and are highly throttled
- X-Current-Token-Count: Current number of requests allowed in current window
- X-Next-Replenishment-Time: Time when current window ends and count resets
Best Practices
- Use feed/bulk update APIs for day-to-day updates rather than individual API calls
- Send updates in batches rather than one-by-one to avoid hitting feed limits
- Review algorithms and optimize for fewer calls if consistently hitting limits
- Use response headers to track current usage and next replenishment time
The specific limits can vary by partner, so it's recommended to contact Walmart Partner Support for the exact limits that apply to your integration if you are consistently running into throttling issues.
Latest API Version
Based on the search results provided, here are the key points regarding the most recent version of the Walmart API:
Current API Version
The most recent version of the Walmart API appears to be v3. This can be inferred from several references in the search results:
- The item setup API endpoint is mentioned as
/v3/feeds
.
- The search API endpoint is referenced as
/v3/items
.
Key Points to Consider
-
Item Spec Versions:
- The current item spec version is v4.X.
- There's also mention of a new Item Spec 5.0, which has been launched with new and updated requests in the Item Management API.
-
API Deprecation:
- The legacy version v3.2 of the item spec is being deprecated on March 31, 2024.
-
New Features:
- Item Spec 5.0 introduces Product Type Groups and Product Types aimed at improving content quality during item setup and maintenance.
- New functionality for Item Management API calls is mentioned to be launching in June 2024.
-
API Sandbox:
- Walmart provides an API Sandbox environment for testing APIs before moving to production.
-
Authentication:
- The API uses OAuth 2.0 for authentication.
Best Practices
- Use the latest item spec version (v4.X or v5.0) when setting up or maintaining items.
- Utilize the API Sandbox for testing before moving to production.
- Keep track of API deprecation notices and update your integration accordingly.
- When setting up items, follow the recommended workflow, including monitoring feed status and published status of items.
It's important to note that while the API version appears to be v3, Walmart regularly updates and introduces new features within this version. Always refer to the official Walmart Developer Portal for the most up-to-date information on API versions and features.
How to get a Walmart developer account and API Keys?
Register as a Walmart Seller
To get started with Walmart's Marketplace APIs, you first need to register and be approved as a Walmart seller:
- Go through the registration process on Walmart Seller Help.
- Make sure you have been approved to sell items on Walmart Marketplace.
Get API Credentials
Once approved as a seller, you can get your API credentials:
- Log in to the Walmart Seller Center.
- Click on the gear icon in the top-right to open the General Settings menu.
- In the API section, click on "Consumer IDs & Private Keys".
- Generate your Consumer ID and Private Key.
Key points:
- Keep a record of your Private Key, Consumer ID, and Channel Type in a secure external file.
- Be careful when copying credentials - don't include extra spaces or characters.
- Generating new credentials will invalidate existing ones.
Access the Developer Portal
With your credentials, you can now access the Walmart Developer Portal:
- Go to developer.walmart.com
- Log in using your Seller Center credentials.
- You'll have access to API documentation, sandboxes, and other developer tools.
Best Practices
- Validate your XML requests against Walmart's XSDs before sending.
- Use realistic test data when integrating, even for test items.
- Ensure you have resources that understand API methodology, as Walmart doesn't provide basic API training.
What can you do with the Walmart API?
Based on the search results provided, here are the key data models that can be interacted with using the Walmart API:
Items
- Set up new items for sale on Walmart.com
- Ingest and publish items to the Walmart catalog
- Update existing items
- Search for items in Walmart's catalog by keyword, UPC, or GTIN
- Search for items in the seller's own catalog
- Add item SKUs to shipping templates
- Set up item variants
Key capabilities:
- Bulk item setup (up to 10,000 items at once for most sellers)
- Item spec versions with enhanced attributes (latest is v5.0)
- Product type-specific setup and maintenance
- Support for both Marketplace and Walmart Fulfilled items
Inventory
- Update inventory for one or more items
- Bulk inventory updates
Prices
- Update prices for individual items
- Bulk price updates
Orders
- Manage orders (specific capabilities not detailed in results)
Feeds
- Submit bulk item/inventory/price updates via feeds
- Monitor feed and item submission status
Product Taxonomy
- Access Walmart's product taxonomy structure
- Retrieve product type groups and product types
- Filter by product type group or product type
Additional Data Models
The results also mention APIs for:
- Promotions
- Shipping
- Returns
- Reviews
- Insights
- Reports
- Walmart Fulfillment Services
- Payments
However, specific details on the capabilities for these models are not provided in the search results.
The Walmart API allows for comprehensive item management and integration with Walmart's ecommerce platform across these key data models. The API documentation provides detailed schemas and endpoints for interacting with each model.