Skip to main content

Multicode API (v1.0.0)

The Multicode API is designed to be consumed through a middleware-based integration layer, allowing a broker's application to invoke ODIN's trading and account features programmatically on behalf of any client code registered in ODIN , without needing to establish or maintain a separate session for each client.

📥 Downloads & Resources

✨ Salient Features

Some key features included in the Multicode API are:

  • User Details
  • Order Flow
    • Order Entry
    • Order Modification
    • Order Cancellation
    • Trade Information
    • Position Management
    • Status Updates
  • User Holdings Information
  • User Limits Information

Getting Started

Multicode APIs provide a REST-based interface to communicate with the ODIN Order Management System (OMS) and enable brokers to build custom trading applications and platforms.

🚀 Basic Implementation Flow

STEP 1 — Make a Login API call using login credentials to obtain the access_token.

STEP 2 — Use the access_token obtained from the Login API in all subsequent API calls.

STEP 3 — Set the obtained access_token and Content-Type in your request headers as shown below.

🔑 Header Example

Content-Type: application/json
Authorization: Bearer eyJ1c2VySUQiOiJSVVBFU0giLCJpYXQiOjE1NTIxMjIwOTEsImV4cCI6MTU1MjIwODQ5MX0

Response Structure

All GET and DELETE request parameters must be passed as query parameters.

All POST and PUT request parameters must be passed as JSON (application/json) payloads.

Responses from the API are always returned in JSON format.

Any non-alphanumeric characters should be URL encoded in query string and path parameters.


✅ Successful Request

All successful responses from the API server are returned in JSON format with the content-type application/json, unless explicitly stated otherwise.

A successful 200 OK response always contains:

  • status as "success"
  • data containing the actual response payload
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"code": "",
"message": "",
"data": "{}"
}

❌ Failed Request

A failed response is returned with the corresponding 4xx or 5xx HTTP status code.

The response contains:

  • status as "error"
  • message containing the error description
  • code containing the unique error code
  • errors containing field-level validation errors for POST and PUT requests
HTTP/1.1 500 Server Error
Content-Type: application/json

{
"status": "error",
"code": "",
"message": "",
"errors": "[]"
}
Contact & Resources