API Reference
Complete reference for all Ultimate Custom Order Status API endpoints
Overview
The Ultimate Custom Order Status API provides programmatic access to manage order statuses, send notifications, and retrieve order information. All endpoints require authentication and follow RESTful conventions.
Base URL: https://api.ultimate-custom-order-status.apps.msmtech.ca/api
Order ID Types
The API supports two types of order identifiers. You can choose which type to use based on your integration needs:
- •Internal UUID: Unique identifier assigned by our system (e.g., 550e8400-e29b-41d4-a716-446655440000). This is the default.
- •Shopify Order ID: Numeric ID from Shopify's GID format (e.g., extract 450789469 from gid://shopify/Order/450789469).
- •Use the use_shopify_order_id parameter (query or body depending on endpoint) set to true to look up orders using Shopify IDs instead of internal UUIDs.
Available Endpoints
/v1/ordersRetrieve a paginated list of orders with filtering, sorting, and search capabilities.
/v1/orders/:order_idRetrieve detailed information about a specific order by its ID.
/v1/statusesRetrieve a list of all custom order statuses configured in your system.
/v1/statuses/:status_idRetrieve detailed information about a specific custom order status by its ID.
/v1/orders/:order_id/statusUpdate the custom status of a specific order. Automatically sends notifications based on status configuration.
/v1/orders/:order_id/notifyForcibly send customer notifications (email, SMS, WhatsApp) for a specific order.
/v1/orders/status-bulkUpdate the custom status for multiple orders in a single request.
/v1/orders/notify-bulkSend notifications to customers for multiple orders in a single request.
Authentication
All API requests require authentication using API keys. To get started, you'll need to generate an API key from your app's settings:
- Navigate to your Ultimate Custom Order Status app
- Go to Settings → API Keys
- Click "Generate New API Key"
- Configure the appropriate permissions for your use case
- Save the API key securely (it will only be shown once)
Include your API key in the X-API-Key header with every request:
X-API-Key: your_api_key_hereLearn more in the Authentication Guide
Rate Limiting
All API endpoints are subject to rate limiting to ensure service stability. Rate limits are applied per API key with two separate windows:
- Per-minute limit: Configurable per API key (default: 60 requests/minute)
- Per-day limit: Configurable per API key (default: 10,000 requests/day)
Rate limit information is included in response headers:
X-RateLimit-Limit-Minute- Maximum requests per minuteX-RateLimit-Remaining-Minute- Remaining requests in current minuteX-RateLimit-Reset-Minute- Unix timestamp when minute window resetsX-RateLimit-Limit-Day- Maximum requests per dayX-RateLimit-Remaining-Day- Remaining requests in current dayX-RateLimit-Reset-Day- Unix timestamp when day window resetsRetry-After- Seconds to wait before retrying (only present when rate limited)
Error Handling
The API uses standard HTTP status codes to indicate success or failure:
200 OK-Request succeeded400 Bad Request-Invalid request parameters401 Unauthorized-Missing or invalid authentication403 Forbidden-Insufficient permissions404 Not Found-Resource not found500 Server Error-Internal server error