Brokerage (1.0)

Download OpenAPI specification:Download

TradingExchangeRate

List the Daily Exchange Rates of a Trading Pair

Returns a list of all Daily Exchange Rates that correspond with the Trading Pair specified in the request URL.

Request
path Parameters
trading_pair_id
required
string

ID of the Trading Pair.

query Parameters
object
sort
Array of strings
object
Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/pairs/{trading_pair_id}/daily_rates
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/pairs/{trading_pair_id}/daily_rates?filter%5Battribute_name%5D=string&sort=string&pagination%5Bsize%5D=100'
Response samples
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

List the Hourly Exchange Rates of a Trading Pair

Returns an array containing all Hourly Exchange Rates that correspond with the Trading Pair specified in the request URL.

Request
path Parameters
trading_pair_id
required
string

ID of the Trading Pair.

query Parameters
object
sort
Array of strings
object
Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/pairs/{trading_pair_id}/hourly_rates
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/pairs/{trading_pair_id}/hourly_rates?filter%5Battribute_name%5D=string&sort=string&pagination%5Bsize%5D=100'
Response samples
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

List the Minute Exchange Rates of a Trading Pair

Returns a list containing all Minute Exchange Rates that correspond with a given Trading Pair.

Request
path Parameters
trading_pair_id
required
string

ID of the Trading Pair.

query Parameters
object
sort
Array of strings
object
Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/pairs/{trading_pair_id}/minute_rates
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/pairs/{trading_pair_id}/minute_rates?filter%5Battribute_name%5D=string&sort=string&pagination%5Bsize%5D=100'
Response samples
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

TradingLimit

Get trading limits for an Entity

Returns the current trading limits configuration for an Entity and the remaining amount they are allowed to trade.

Request
path Parameters
entity_id
required
string

ID of the Entity.

Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/entities/{entity_id}/trading_limits
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/entities/{entity_id}/trading_limits'
Response samples
application/json
{
  • "entity_id": "e0a26b1b54a6009d9ad9c6efd3aa5c77enty",
  • "interval": 604800,
  • "amount": "50000.00",
  • "remaining_amount": "49686.69",
  • "created_at": "2021-02-11T22:40:59Z",
  • "updated_at": "2021-02-11T22:40:59Z"
}

TradingPair

List all TradingPairs

Returns a list of all TradingPairs on the platform.

Request
query Parameters
object
sort
Array of strings
object
Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/pairs
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/pairs?filter%5Battribute_name%5D=string&sort=string&pagination%5Bsize%5D=100'
Response samples
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

Get a single TradingPair

Returns the TradingPair specified in the request URL by its unique ID.

Request
path Parameters
trading_pair_id
required
string

ID of the TradingPair.

Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/pairs/{trading_pair_id}
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/pairs/{trading_pair_id}'
Response samples
application/json
{
  • "id": "00000000000000000000000000000001trpr",
  • "from_asset_id": "00000000000000000000000000000001asst",
  • "to_asset_id": "f0000000000000000000000000000001asst",
  • "is_tradable": true,
  • "code": "BTC/EUR",
  • "price_precision": 2,
  • "from_asset_min_amount": "0.0001",
  • "from_asset_max_amount": "1.0",
  • "created_at": "2019-03-01T21:47:06Z",
  • "updated_at": "2019-03-01T21:47:06Z"
}

TradingPrice

Get the trade price of a TradingPair

Provides an indicative trade price for the given TradingPair. The amount attribute is optional and defaults to the smallest unit of the from_asset for the given TradingPair (e.g., 1 satoshi, 1 wei, 1 cent, etc.)
Note:

  • The price provided in the result can only be used as an estimation and does not guarantee the price during the actual trade on the platform.
  • Solaris recommends using this endpoint to retrieve the price as a reference. To get the price for displaying to an end user prior to making a Trade, please use GET /trading/pairs/{trading_pair_id}/simulate_trade.

Request
path Parameters
trading_pair_id
required
string

ID of the TradingPair.

query Parameters
amount
string

The amount of the asset for which the price should be queried.

Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/pairs/{trading_pair_id}/price
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/pairs/{trading_pair_id}/price?amount=string'
Response samples
application/json
{
  • "trading_pair_id": "00000000000000000000000000000001trpr",
  • "from_amount": "1.12300000",
  • "to_amount": "10107.01",
  • "price": "9000.01",
  • "created_at": "2020-07-16T11:26:41Z",
  • "updated_at": "2020-07-16T11:26:41Z"
}

TradingSimulateTrade

Simulate a Trade for a given TradingPair

Retrieves an estimation for the given TradingPair and amount as if it were a real trade, including the applicable fees and the actual traded amount. Display the information from the response to the customer in your frontend when they go to make a Trade.
Note:

  • The price provided in the result can only be used as an estimation and does not guarantee the price during the actual trade on the platform.
  • Solaris recommends using this endpoint for displaying the estimated price of a Trade to an end user prior to making a Trade. To get information about the price for reference purposes, please use GET /trading/pairs/{trading_pair_id}/price.

Request
path Parameters
trading_pair_id
required
string

ID of the Trading Pair.

query Parameters
amount
required
string

The amount of the Asset for which the price should be queried.

Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/pairs/{trading_pair_id}/simulate_trade
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/pairs/{trading_pair_id}/simulate_trade?amount=string'
Response samples
application/json
{
  • "trading_pair_id": "00000000000000000000000000000001trpr",
  • "from_amount": "1.12300000",
  • "traded_from_amount": "1.12300000",
  • "traded_to_amount": "10056.47",
  • "to_amount": "9955.90",
  • "price": "9000.01",
  • "fee_amount": "100.57",
  • "created_at": "2020-07-16T11:26:41Z",
  • "updated_at": "2020-07-16T11:26:41Z"
}

Trade

List all Trades

Returns a list of all Trades created under your control.

Request
query Parameters
object
sort
Array of strings
object
Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/trades
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/trades?filter%5Battribute_name%5D=string&sort=string&pagination%5Bsize%5D=100'
Response samples
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

Create a new Trade

Creates a new Trade on the platform.

Request
Request Body schema: application/json
entity_id
string

ID of the Entity making the Trade.

trading_pair_id
string

ID of the Trading Pair to use for the Trade.

from_account_id
string

ID of the origin Account.

to_account_id
string

ID of the destination Account.

reference
string

A unique reference for the Trade. Used as an idempotency key.

from_amount
string

The Trade amount.

Responses
201

The Trade was successfully created.

400

The request contains invalid parameters.

This error response includes a params object, which contains all invalid attributes from the request and their associated error codes.

List of possible error codes:

  • blank: This attribute requires a value, but none was provided in the request.
  • invalid: An invalid value was provided for this attribute in the request. Some examples include an invalid data type, improper formatting, or an incorrect blockchain address.
  • not_found: A resource referenced by this attribute was not found. This may happen when sending a request that contains an attribute that references another resource, e.g., when creating an Account and using asset_id to reference the Asset.
  • taken: The value provided for this attribute is expected to be unique, but it is already taken by another resource, e.g., when creating a Transaction with a previously used reference key.
401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

post/trading/trades
Request samples
application/json
{
  • "from_amount": "209.1",
  • "entity_id": "b6ef80668690fa4dfbb51a3bc49a1fb7enty",
  • "trading_pair_id": "00000000000000000000000000000002trpr",
  • "from_account_id": "57e837a08685eff2cee29e82b6b09857cacc",
  • "to_account_id": "d4f01daea26362d0de5fe89cb0f8d905acct",
  • "reference": "9bcf5ffa4bb4d4ebbf92fb74f3a61f85"
}
Response samples
application/json
{
  • "id": "82d19e27542a21c950eaae13059cf5f5trad",
  • "from_amount": "209.10",
  • "filled_from_amount": "209.00",
  • "traded_from_amount": null,
  • "traded_to_amount": null,
  • "to_amount": null,
  • "fee_amount": null,
  • "price": null,
  • "state": "PENDING",
  • "reference": "9bcf5ffa4bb4d4ebbf92fb74f3a61f85",
  • "entity_id": "b6ef80668690fa4dfbb51a3bc49a1fb7enty",
  • "trading_pair_id": "00000000000000000000000000000002trpr",
  • "from_account_id": "57e837a08685eff2cee29e82b6b09857cacc",
  • "to_account_id": "d4f01daea26362d0de5fe89cb0f8d905acct",
  • "failure_reason": null,
  • "estimations": {
    },
  • "created_at": "2021-11-26T14:35:45Z",
  • "updated_at": "2021-11-26T14:35:45Z"
}

Get a single Trade

Returns the Trade specified in the request URL by its unique ID.

Request
path Parameters
trade_id
required
string

ID of the Trade.

Responses
200

The operation was successful.

401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

get/trading/trades/{trade_id}
Request samples
curl -i -X GET \
  'https://api.solarisdigitalassets.com/trading/trades/{trade_id}'
Response samples
application/json
{
  • "id": "82d19e27542a21c950eaae13059cf5f5trad",
  • "from_amount": "209.10",
  • "traded_from_amount": null,
  • "filled_from_amount": null,
  • "traded_to_amount": null,
  • "to_amount": null,
  • "fee_amount": null,
  • "price": null,
  • "state": "PENDING",
  • "reference": "9bcf5ffa4bb4d4ebbf92fb74f3a61f85",
  • "entity_id": "b6ef80668690fa4dfbb51a3bc49a1fb7enty",
  • "trading_pair_id": "00000000000000000000000000000002trpr",
  • "from_account_id": "57e837a08685eff2cee29e82b6b09857cacc",
  • "to_account_id": "d4f01daea26362d0de5fe89cb0f8d905acct",
  • "failure_reason": null,
  • "estimations": {
    },
  • "created_at": "2021-11-26T14:35:45Z",
  • "updated_at": "2021-11-26T14:35:45Z"
}

Cancel a Trade

Cancels the Trade specified in the request URL by its unique ID. You can only cancel Trades that have a status value of PENDING.

Request
path Parameters
trade_id
required
string

ID of the Trade to cancel.

Responses
200

The Trade was successfully canceled.

400

The request contains invalid parameters.

This error response includes a params object, which contains all invalid attributes from the request and their associated error codes.

List of possible error codes:

  • blank: This attribute requires a value, but none was provided in the request.
  • invalid: An invalid value was provided for this attribute in the request. Some examples include an invalid data type, improper formatting, or an incorrect blockchain address.
  • not_found: A resource referenced by this attribute was not found. This may happen when sending a request that contains an attribute that references another resource, e.g., when creating an Account and using asset_id to reference the Asset.
  • taken: The value provided for this attribute is expected to be unique, but it is already taken by another resource, e.g., when creating a Transaction with a previously used reference key.
401

Authentication failed for the request, either because the authentication scheme is invalid (e.g., missing nonce), or the produced signature is invalid.

404

The requested resource was not found.

422

The request could not be processed because the referenced resource's current state prevents it.

For example, the API would return this error for an attempt to approve a FAILED ApprovalRequest, as this is not possible.

500

Internal server error. An underlying or external service failed in an unspecified manner.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

503

The request could not be processed because the underlying or external service is temporarily unavailable.

NOTE: This is a transient error. You may re-attempt the same request with the same attributes.

post/trading/trades/{trade_id}/cancel
Request samples
curl -i -X POST \
  'https://api.solarisdigitalassets.com/trading/trades/{trade_id}/cancel'
Response samples
application/json
{
  • "id": "82d19e27542a21c950eaae13059cf5f5trad",
  • "from_amount": "209.10",
  • "traded_from_amount": null,
  • "filled_from_amount": null,
  • "traded_to_amount": null,
  • "to_amount": null,
  • "fee_amount": null,
  • "price": null,
  • "state": "CANCELLED",
  • "reference": "9bcf5ffa4bb4d4ebbf92fb74f3a61f85",
  • "entity_id": "b6ef80668690fa4dfbb51a3bc49a1fb7enty",
  • "trading_pair_id": "00000000000000000000000000000002trpr",
  • "from_account_id": "57e837a08685eff2cee29e82b6b09857cacc",
  • "to_account_id": "d4f01daea26362d0de5fe89cb0f8d905acct",
  • "failure_reason": null,
  • "estimations": {
    },
  • "created_at": "2021-11-26T14:35:45Z",
  • "updated_at": "2021-11-26T14:35:45Z"
}