Skip to main content

Welcome to OPLOG.ONE API

The OPLOG.ONE API provides comprehensive logistics and supply chain management capabilities through a RESTful interface. Our API enables businesses to integrate powerful logistics operations including product management, order processing, inventory tracking, and shipping coordination.

Products API

Manage your product catalog with comprehensive inventory control

Sales Orders API

Process orders with multiple payment methods and shipping options

Receiving Orders API

Handle incoming inventory with flexible transfer configurations

Returns API

Streamline return processing and customer service operations

Environments

OPLOG.ONE provides two separate environments. Each environment has its own base URL, credentials, and data — they are completely isolated from each other.
Base URL
https://api.oplog.one/openapi/v1
The production environment is your live system. All API requests here affect real orders, shipments, and inventory.Example Request
curl -X GET "https://api.oplog.one/openapi/v1/Products" \
  -H "X-Tenant-Id: your-tenant-id" \
  -H "Authorization: Bearer your-static-token" \
  -H "Content-Type: application/json"
Only use production after you have fully tested your integration in the staging environment.
Production and staging credentials are not interchangeable. Never use production credentials in staging or vice versa.

Authentication

OPLOG.ONE uses OAuth 2.0 authentication with tenant-specific tokens. Every API request must include the following headers:
X-Tenant-Id: your-tenant-id
Authorization: Bearer your-static-token
Content-Type: application/json
HeaderDescription
X-Tenant-IdYour unique tenant identifier, provided during integration setup
AuthorizationBearer token using your StaticToken
Content-TypeMust be application/json for all requests
Ensure you include both X-Tenant-Id and Authorization headers in every request. Missing authentication will result in a 401 Unauthorized error.

Response Format

All API responses follow a consistent JSON structure:

Success Response

{
  "data": {
    // Response data
  },
  "status": "success"
}

Error Response

{
  "error": {
    "code": 400,
    "message": "Validation Errors",
    "errors": [
      {
        "property": "fieldName",
        "message": "Error description",
        "errorCode": "ErrorCode"
      }
    ]
  },
  "requestId": "unique-request-id",
  "timestamp": "2025-06-24T13:37:00.123Z"
}
For detailed error codes and descriptions, see our Error Reference documentation.