These specifications are for CME ClearPort and CME Direct (Globex). ICC specifications are located here.
Contents
User Firms and Services
GET Call
Returns results for all clearing firms, and all account management services that the customer is permissioned for.
Method | GET |
---|---|
URL | _/v#/myFirms/ |
URL Parameters | None |
Pagination Enabled? | No |
HATOAS Links | Links to retrieve permissioned accounts by service:
|
Example Return Message
{ "entitlements": [ { "service": "CPC", "clearingFirms": [ { "firmName": "GREENTEA_API_CLEARING2", "firmLongName": "GREENTEA_API_CLEARING2", "clearingId": "780" } ] }, { "service": "CMED", "clearingFirms": [ { "firmName": "GREENTEA_API_CLEARING2", "firmLongName": "GREENTEA_API_CLEARING2", "clearingId": "780" } ] }, { "service": "ICC", "clearingFirms": [ { "firmName": "GREENTEA_API_CLEARING2", "firmLongName": "GREENTEA_API_CLEARING2", "clearingId": "780" } ] } ], "links": [ { "rel": "Retrieve CMED Accounts", "href": "_/v#/accounts/clearing/CMED/GREENTEA_API_CLEARING2" }, { "rel": "Retrieve CPC Accounts", "href": "_/v#/accounts/clearing/CPC/GREENTEA_API_CLEARING2" }, { "rel": "Retrieve ICC Accounts", "href": "_/v#/accounts/clearing/ICC/GREENTEA_API_CLEARING2" } ] }
Output Parameters
Retrieve all Accounts
GET Call
Retrieves all of the accounts the user has access to for a specific service (venue), type (clearing) and clearing firm. Account owner and number are optional.
Method | GET |
---|---|
URL | _/v#/accounts/[Type]/[Service]/[Clearing Firm]/[Account Owner]/[Account Number] |
Pagination Enabled? | Yes |
HATEOAS Links | Links to retrieve all other account-related details:
|
Input Parameters
Venue: CME ClearPort Example Return Messages
{ "service": "CPC", "counts": 1, "clearingAccounts": [ { "clearingFirm": "GREENTEA_API_CLEARING1", "accountNumber": "4343", "owner": "bancone", "segType": "C", "status": "Active", "ownerLongName": "Banc One", "links": [ { "rel": "self", "href": "https://amsapinr.cmegroup.com/rest/v2/accounts/clearing/CPC/GREENTEA_API_CLEARING1?accountNumber=4343" }, { "rel": "get accountLimitsUtilization", "href": "https://amsapinr.cmegroup.com/rest/v2/accountLimitsUtilization/clearing/CPC/GREENTEA_API_CLEARING1/4343" }, { "rel": "get marketPermissions", "href": "https://amsapinr.cmegroup.com/rest/v2/marketPermissions/clearing/CPC/GREENTEA_API_CLEARING1/4343" }, { "rel": "get productPermissions", "href": "https://amsapinr.cmegroup.com/rest/v2/productPermissions/clearing/CPC/GREENTEA_API_CLEARING1/4343" }, { "rel": "get brokerPermissions", "href": "https://amsapinr.cmegroup.com/rest/v2/brokerPermissions/clearing/CPC/GREENTEA_API_CLEARING1/4343" }, { "rel": "get eligibleBrokers", "href": "https://amsapinr.cmegroup.com/rest/v2/eligibleBrokers/clearing/CPC/GREENTEA_API_CLEARING1/4343" }, { "rel": "get eligibleProducts", "href": "https://amsapinr.cmegroup.com/rest/v2/eligibleProducts/clearing/CPC/GREENTEA_API_CLEARING1/4343" } ] }, ]
Venue: CME Direct
{ "service": "CMED", "counts": 2, "clearingAccounts": [ { "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "owner": "0202TP4", "segType": "C", "status": "Active", "senderComp": "XX0212", "links": [ { "rel": "self", "href": "_/v#/accounts/clearing/CMED/GREENTEA_API_CLEARING2?accountNumber=DV101218B" }, { "rel": "get accountLimitsUtilization", "href": "_/v#/accountLimitsUtilization/clearing/CMED/GREENTEA_API_CLEARING2/DV101218B" }, { "rel": "get marketPermissions", "href": "_/v#/marketPermissions/clearing/CMED/GREENTEA_API_CLEARING2/DV101218B" }, { "rel": "get productPermissions", "href": "_/v#/productPermissions/clearing/CMED/GREENTEA_API_CLEARING2/DV101218B" }, { "rel": "get brokerPermissions", "href": "_/v#/brokerPermissions/clearing/CMED/GREENTEA_API_CLEARING2/DV101218B" }, { "rel": "get eligibleBrokers", "href": "_/v#/eligibleBrokers/clearing/CMED/GREENTEA_API_CLEARING2/DV101218B" }, { "rel": "get eligibleProducts", "href": "_/v#/eligibleProducts/clearing/CMED/GREENTEA_API_CLEARING2/DV101218B" } ] } ], "limit": 50, "offset": 1, "availableOffsets": 1 }
Output Parameters
Limits and Utilization for an Account
GET Call
Retrieves all limits and utilization for a specific account by venue.
Method | GET |
---|---|
URL | _/v#/accountLimitsUtilization/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | No |
HATOAS Links | Links available from an Account Limits Utilization query:
|
Notes |
|
Input Parameters
Example Return Messages for Venue CME ClearPort
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "limits": [ { "currency": "USD", "limitType": "RAV Limit", "limit": 999999999999999, "usage": 0 }, { "product": "11.FUT.CBT", "productFullName": "$10 DOW JONES FUTURES", "productLimits": { "short": 10000, "long": 10000 }, "netFills": "", "workingLong": "", "workingShort": "" }, { "product": "11.OOF.CBT", "productFullName": "$10 DOW JONES OPTIONS", "productLimits": { "short": 10000, "long": 10000 }, "netFills": "", "workingLong": "", "workingShort": "" }, { "product": "CL.FUT.NYMEX", "productFullName": "Light Sweet Crude Oil Futures", "productLimits": { "short": "unlimited", "long": "unlimited" }, "netFills": 0, "workingLong": 0, "workingShort": 0 } ] } "links": [ { "rel": "get/update accountLimitsUtilization", "href": "_/v#/accountLimitsUtilization/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_DV101218B" }, { "rel": "delete accountLimitsUtilization", "href": "_/v1/accountLimitsUtilization/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_DV101218B?delete=true" } ] }
Output Parameters
POST Call
Update, add or delete account limits using the accountsLimitsUtilization POST call.
To post a delete, append the call with ?delete=true
When Request body is submitted for Limits Update (Post) or Delete - usage field is ignored, it cannot be updated
- Usage, Working Long, Working Short, and Net Fills cannot be edited
Method | POST |
---|---|
Function | Update or Delete Limits for an Account |
URL | _/v#/accountLimitsUtilization/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | No |
HATOAS Links | Links available from an Account Limits Utilization query:
|
Input Parameters
Example Input Body and Return Messages
Input Body for Limits Update
Update product 11.FUT.CBT short limit from 10000 to 500.
See input specifications for RAV Limit or Credit Limit.
{ "service": "CPC", "clearingFirm": "072", "accountNumber": "-DG-262626", "limits": [ { "product": "11.FUT.CBT", "productFullName": "$10 DOW JONES FUTURES", "productLimits": { "short": 5000, "long": 10000 } } ] }
Output After Update
Will have all records, updated limit and reference links.
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "limits": [ { "currency": "USD", "limitType": "RAV Limit", "limit": 999999999999999, "usage": 0 }, { "product": "11.FUT.CBT", "productFullName": "$10 DOW JONES FUTURES", "productLimits": { "short": 5000, "long": 10000 }, "netFills": "", "workingLong": "", "workingShort": "" }, { "product": "11.OOF.CBT", "productFullName": "$10 DOW JONES OPTIONS", "productLimits": { "short": 10000, "long": 10000 }, "netFills": "", "workingLong": "", "workingShort": "" }, { "product": "CL.FUT.NYMEX", "productFullName": "Light Sweet Crude Oil Futures", "productLimits": { "short": "unlimited", "long": "unlimited" }, "netFills": 0, "workingLong": 0, "workingShort": 0 } ] } "links": [ { "rel": "get/update accountLimitsUtilization", "href": "_/v#/accountLimitsUtilization/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CDV101218B" }, { "rel": "delete accountLimitsUtilization", "href": "_/v1/accountLimitsUtilization/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_DV101218B?delete=true" } ] }
Market Type Permissions for an Account
GET Call
Retrieves market permissions for a specific account, by service, clearing firm and account number. CPC and CMED only.
Method | GET |
---|---|
URL | _/v#/marketPermissions/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | Yes |
HATOAS Links | Links available from a Market Permissions query:
|
Input Parameters
Example Return Message
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "marketPermissions": [ { "marketTypeName": "CBOT (ClearPort)", "permission": "Specific" }, { "marketTypeName": "CBOT IRS (Clearport)", "permission": "All" }, { "marketTypeName": "CBOT Swaps (ClearPort)", "permission": "All" } ], "links": [ { "rel": "get/update marketPermissions", "href": "_/v#/marketPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0002" }, { "rel": "delete marketPermissions", "href": "_/v#/marketPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0002?delete=true" } ] }
Output Parameters
POST Call
Add or delete market permissions for a specific account, by service.
To post a delete, append the call with ?delete=true
Method | POST |
---|---|
URL | _/v#/marketPermissions/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | Yes |
HATOAS Links | Links available from a Market Permissions query:
|
Input Parameters
Example Input Body and Return Messages
Input Body for Market Permissions
Update Market permissions for CBOT (CME ClearPort) from "Specific" to "None."
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "marketPermissions": [ { "marketTypeName": "CBOT (ClearPort)", "permission": "None" } ] }
Output After Update
Will have all records, updated market permissions and reference links. CBOT (CME ClearPort) market permissions are now "None."
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "marketPermissions": [ { "marketTypeName": "CBOT (ClearPort)", "permission": "None" }, { "marketTypeName": "CBOT IRS (Clearport)", "permission": "All" }, { "marketTypeName": "CBOT Swaps (ClearPort)", "permission": "All" } ], "links": [ { "rel": "get/update marketPermissions", "href": "_/v#/marketPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0002" }, { "rel": "delete marketPermissions", "href": "_/v#/marketPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0002?delete=true" } ] }
Eligible Products and Permissioned Products for an Account
GET Call to Retrieve Eligible Products
Retrieves all eligible products for a specific account, by venue.
Method | GET |
---|---|
URL | _/v#/eligibleProducts/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | Yes |
HATOAS Links | Links available from an Eligible Products query::
|
Input Parameters
Example Return Message with Venue CME ClearPort
This is a partial list, all eligible products will be returned on the call.
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "products": [ { "marketTypeName": "CBOT (ClearPort)", "productList": [ { "product": "11.FUT.CBT", "productFullName": "$10 DOW JONES FUTURES" }, { "product": "11.OOF.CBT", "productFullName": "$10 DOW JONES OPTIONS" }, { "product": "N2E.FUT.CBT", "productFullName": "10 Year EUR IRS Secondary" } ] }, { "marketTypeName": "CBOT IRS (Clearport)", "productList": [ { "product": "TYD.IRS.CBT", "productFullName": "10 Year Treasury Invoice Swap Candidate 1 First" } ] }, { "marketTypeName": "CME (ClearPort)", "productList": [ { "product": "EM.FUT.CME", "productFullName": "One-Month SOFR Futures" }, { "product": "EM.OOF.CME", "productFullName": "One-Month SOFR Futures" } ] } ], "links": [ { "rel": "get/update productPermissions", "href": "_/v#/productPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001" }, { "rel": "delete productPermissions", "href": "_/v#/productPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001?delete=true" } ], "limit": 50, "offset": 1, "availableOffsets": 1 }
Output Parameters
GET Call to Retrieve Permissioned Products
Retrieves all products permissioned for the Account by service, clearing firm and account number.
Method | GET |
---|---|
URL | _/v#/productPermissions/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | Yes |
HATOAS Links | Links to available from a Product Permissions query:
|
Input Parameters
Example Return Message for CPC service
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "products": [ "marketTypeName": "CBOT (ClearPort)", "productList": [ { "product": "11.FUT.CBT", "productFullName": "$10 DOW JONES FUTURES" }, { "product": "11.OOF.CBT", "productFullName": "$10 DOW JONES OPTIONS" } ] }, { "marketTypeName": "CBOT IRS (Clearport)", "productList": [ { "product": "TYD.IRS.CBT", "productFullName": "10 Year Treasury Invoice Swap Candidate 1 First" } ] } ], "links": [ { "rel": "get/update productPermissions", "href": "_/v#/productPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001" }, { "rel": "delete productPermissions", "href": "_/v#/productPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001?delete=true" } ] }
Output Parameters
POST Call to Update or Delete Product Permissions
To add products, the account must be permissioned for the market type for the product.
To post a delete, append the call with ?delete=true
Method | POST |
---|---|
URL | _/v#/productPermissions/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | No |
HATOAS Links | Links available from a Product Permissions query:
|
Input Parameters
Example Input Body and Return Messages
Example Input Body
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "products": [ { "marketTypeName": "CBOT (ClearPort)", "productList": [ { "product": "DO.FUT.CBT", "productFullName": "$25 DOW JONES FUTURES" } ] } ] }
Example Return Message
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "products": [ "marketTypeName": "CBOT (ClearPort)", "productList": [ { "product": "11.FUT.CBT", "productFullName": "$10 DOW JONES FUTURES" }, { "product": "11.OOF.CBT", "productFullName": "$10 DOW JONES OPTIONS" }, { "product": "DO.FUT.CBT", "productFullName": "$25 DOW JONES FUTURES" } ] }, { "marketTypeName": "CBOT IRS (Clearport)", "productList": [ { "product": "TYD.IRS.CBT", "productFullName": "10 Year Treasury Invoice Swap Candidate 1 First" } ] } ], "links": [ { "rel": "get/update productPermissions", "href": "_/v#/productPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001" }, { "rel": "delete productPermissions", "href": "_/v#/productPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001?delete=true" } ] }
Eligible Brokers and Permissioned Brokers for an Account
GET Call to Retrieve Eligible Brokers
Input Parameters
Example Return Message
Example return message for CPC service.
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "brokers": [ { "shortName": "0101_AA", "fullName": "235231" }, { "shortName": "CMEG", "fullName": "CME Group Inc. GCC" } ], "links": [ { "rel": "get/update brokerPermissions", "href": "_/v#/brokerPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001" }, { "rel": "delete brokerPermissions", "href": "_/v#/brokerPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001?delete=true" } ] }
Output Parameters
GET Call to Retrieve Broker Permissions
Return permissions for eligible brokers for an account, based on account market permissions.
Method | GET |
---|---|
URL | _/v#/brokerPermissions/[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | Yes |
HATOAS Links | Links available from a Broker Permissions query:
|
Input Parameters
Example: GET Call to Retrieve Broker Permissions
{ "service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "brokers": [ { "shortName": "000", "fullName": "Test broker name" }, { "shortName": "003", "fullName": "Test broker name 1" }, { "shortName": "011", "fullName": "Test broker name 2" }, { "shortName": "013", "fullName": "Test broker name 3" } ], "links": [ { "rel": "get/update brokerPermissions", "href": "_/v#/brokerPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001" }, { "rel": "delete brokerPermissions", "href": "_/v#/brokerPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001?delete=true" } ] }
Output Parameters
POST Call to Update or Delete for Broker Permissions
To post a delete, append the call with ?delete=true
Method | POST |
---|---|
URL | _/v#/brokerPermissions /[Type]/[Service]/[Clearing Firm]/[Account Number] |
Pagination Enabled? | No |
HATOAS Links | Links available from a Broker Permissions query:
|
Input Parameters
Example Input Body and Return Message
Example Input Body
{ "service": "CPC", "clearingFirm": "027", "accountNumber": "DG-11", "brokers": [ { "shortName": "0101_AA", "fullName": "Test broker name 5" } ] }
Output after Update
"service": "CPC", "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "brokers": [ { "shortName": "000", "fullName": "Test broker name" }, { "shortName": "003", "fullName": "Test broker name 1" }, { "shortName": "0101_AA", "fullName": "Test broker name5" } { "shortName": "011", "fullName": "Test broker name 2" }, { "shortName": "013", "fullName": "Test broker name 3" } ], "links": [ { "rel": "get/update brokerPermissions", "href": "_/v#/brokerPermissions/clearing/CPC/0GREENTEA_API_CLEARING2/GREENTEA_CM02A0001" }, { "rel": "delete brokerPermissions", "href": "_/v#/brokerPermissions/clearing/CPC/GREENTEA_API_CLEARING2/GREENTEA_CM02A0001?delete=true" } ] }
Copy an Existing Account to Create New Accounts
Note: This option is only applicable to accounts with CME ClearPort and/or CME Direct (CME Globex) services.
Method | POST |
---|---|
URL | _/v#/copy/[Type]/[Clearing Firm] |
Pagination Enabled? | No |
Input Parameters | Definition | Example | Required? | Supported Values | Data Types | Notes |
---|---|---|---|---|---|---|
templateAccountNumber | Template account, copy from | 01080815 | string | |||
accountNumbers | List of the accounts numbers that have to be created | newCopyic12, newCopyic13 | List of string |
Example: Copy an Existing Account to Create New Accounts
Input for Copy Existing Account
The body content for copy an existing account has the template account that will be copied from, and the numbers for the new accounts will be created.
{ "templateAccountNumber":"01080815", "accountNumbers": [ "newCopyic12", "newCopyic13" ] }
Output for Copy Existing Accounts
The output will have information for the new accounts. This example shows a successful account creation and the error message that will display if the new account number that is used is a duplicate of an existing account.
{ "templateAccountNumber": "01080815", "accounts": [ { "accountNumber": "newCopyic12", "status": "Error", "error": "Duplicate account number" }, { "accountNumber": "newCopyic13", "status": "Successful" } ] }
Update an Account to Active or Inactive
Method | POST |
---|---|
URL | _/v#/status/[type]/[clearingFirm] |
Pagination Enabled? | No |
Input Parameters
Example: Update an Account to Active or Inactive
Account Information Before Update
Clearing Firm account information only, as shown in a "Retrieve all Accounts" call.
{ "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "owner": "050", "segType": "C", "status": "Active" }
Input body for POST to update status to Active or Inactive
{ "service": "CPC", "clearingAccounts": [ { "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "status": "I" } ] }
Successful Return Message
{ "clearingAccounts": [ { "accountNumber": "DV101218B", "status": "Successful" } ] }
Account information after update
Output Parameters will be account parameters with updated status. Status is now "Inactive."
{ "clearingFirm": "GREENTEA_API_CLEARING2", "accountNumber": "DV101218B", "owner": "050", "segType": "C", "status": "Inactive" }