Retrieve a paged list of inventory categories for your account or for a specific WordPress sync entry. Use this endpoint to get category IDs and names for building menus, syncing sites, or driving other API calls.
Prerequisites
- An active API token (apiKey) created under Settings → API Keys. Include it as ?apiKey=YOUR_KEY on the request URL.
- API token must have permission to access Categories (read) in its permissions profile. See API setup for granting permissions.
- If you are using the WordPress sync filter (wpid), the WordPress/API module should be enabled for your account.
- Rate limit: 300 calls per 300 seconds. Exceeding this returns HTTP 429 Too Many Requests.
- When creating a token, it is recommended to restrict allowed IP addresses for the calling servers (optional but recommended).
Step-by-step instructions
- Generate or copy an API token from Settings → API Keys.
- Confirm the token has Categories (read) permission in the token's permissions settings.
- Build a GET request to the categories_list endpoint and include your apiKey plus any filters:
GET https://rental.software/api6/categories_list/?apiKey=XXXXXX&wpid=0&offset=0&limit=25
- Send the request (example using curl):
curl "https://rental.software/api6/categories_list/?apiKey=XXXXXX&wpid=0&offset=0&limit=25" -H "Accept: application/json"
- Inspect the JSON response for pagination links and the items array containing category records (id, href, name, order).
Request (format)
GET /api6/categories_list/?apiKey=XXXXXX { wpid: 0 <--- id of WordPress sync (ID number at end of URL when viewing sync entry in IO) offset: 0 <--- start at record # limit: 25 <--- count of records to return (25 is default) }
Response (example)
{ "offset": "", "limit": 25, "first": "http://www.inflatableoffice.com/api1/categories?offset=0&limit=25", "next": "http://www.inflatableoffice.com/api1/categories?offset=25&limit=25", "previous": "http://www.inflatableoffice.com/api1/categories?offset=0&limit=25", "items": [ { "id": "19912", "href": "http://www.inflatableoffice.com/api1/categories/19912", "name": "Moonwalks & Bounce Houses", "order": "" }, { "id": "34", "href": "http://www.inflatableoffice.com/api1/categories/34", "name": "Bounce Houses", "order": "1" }, { "id": "928", "href": "http://www.inflatableoffice.com/api1/categories/928", "name": "Equipment", "order": "13" } ] }
Feature Options & Parameters
- wpid (query) — WordPress sync ID to filter categories for a specific WP sync entry. Use the ID shown at the end of the sync entry URL in IO. Use 0 or omit to request categories without applying a WP-sync filter.
- offset (query) — Start record number for paging. Default: 0.
- limit (query) — Number of records to return. Default: 25.
- Returned fields — The response includes:
- offset, limit — paging values
- first, next, previous — paging URLs
- items — array of category objects: id, href (category endpoint), name, order
Use Cases
- Populate a navigation menu or category list on your website or external app using category id and name.
- Get a category id to pass into the Rentals endpoint to retrieve all rentals in that category — see API - Rentals - Retrieve List.
Troubleshooting & FAQs
- No or empty response — Verify you included ?apiKey=YOUR_KEY and that the key is valid. If using wpid, confirm the sync ID is correct; try omitting wpid to list all categories.
- Permission denied / 403 — Check the API token's permissions in Settings → API Keys and ensure it has access to Categories (read).
- 429 Too Many Requests — You exceeded the rate limit (300 calls / 300 seconds). Wait and retry or reduce request frequency.
- Incorrect paging — Use the response's first/next/previous URLs or adjust offset/limit to page through results.
- Category IDs for Rentals — Use the category id from this response when calling the Rentals list endpoint to retrieve rentals for that category.
- 404 Not Found — Check the endpoint URL and ensure you are calling the correct environment and API base path (https://rental.software/api6/...).