External WMS Integration Guide
Overview
External WMS (Warehouse Management System) systems integrate with YMS through two complementary channels:
- Webhook notifications — receive real-time event data pushed from YMS to your system
- Public API — send data to YMS by creating or updating resources via REST endpoints
Together, these two paths enable full bidirectional communication between your WMS and YMS.
Prerequisites
Before starting integration, ensure you have the following:
| Requirement | Purpose |
|---|---|
| HTTPS endpoint (publicly accessible) | Required to receive Webhook event notifications from YMS |
| API credentials (Client ID and Secret) | Required to authenticate Public API requests to YMS |
| Administrator access to YMS | Required to configure Webhook subscriptions |
Authentication
All API interactions with YMS require authentication. Refer to the Get Authorization page for instructions on obtaining and using access tokens.
- For Webhook notifications, YMS includes tenant and yard identifiers in request headers. You can also configure custom authentication headers (e.g., an API key or token) in the Webhook settings to verify that incoming requests originate from YMS.
- For Public API requests, your WMS must include a valid Bearer token in the
Authorizationheader of each request.
Receiving Events from YMS (Webhook)
YMS pushes real-time notifications to your registered endpoint when key business events occur in the yard. Supported event types include:
| Event | Description |
|---|---|
| GATE_CHECK_IN | Vehicle completes check-in at the gate |
| WINDOW_CHECK_IN | Vehicle arrives at the dock and completes check-in |
| GATE_CHECK_OUT | Vehicle completes check-out at the gate |
| ENTRY_REJECT | Vehicle entry request is rejected |
| TASK_SYNC | Task creation, update, or cancellation (synchronous) |
Notifications are delivered as HTTP POST requests with a JSON payload. Your endpoint must respond within 5 seconds. Failed deliveries are retried automatically with exponential backoff.
For complete details on configuration, payload formats, retry behavior, and sample code, see the Webhook Integration Guide.
Sending Data to YMS (Public API)
Your WMS can create and update resources in YMS by calling the Public API endpoints:
| Endpoint | Description |
|---|---|
POST /public/appointment/create | Create a new appointment |
POST /public/order/create | Create a new order |
POST /public/load/create | Create a new load |
POST /public/receipt/create | Create a new receipt |
Additional endpoints are available for updating and querying these resources. Refer to the YMS Public API documentation for the full endpoint reference, request/response schemas, and field definitions.
Integration Flow Summary
A typical integration follows these steps:
- Obtain API credentials — follow the Get Authorization guide to set up authentication.
- Configure Webhooks — in the YMS admin console, register your HTTPS endpoint and subscribe to the event types relevant to your workflow.
- Implement your receiver — build an endpoint that accepts POST requests, validates the source, and processes event payloads.
- Integrate with the Public API — implement calls from your WMS to create or update appointments, orders, loads, and receipts in YMS as needed.
- Test end-to-end — verify both directions of data flow in a staging environment before going live.
Technical Support
If you encounter any issues during integration, please contact the YMS technical support team for assistance.