Nomics Cryptocurrency & Bitcoin API (1.0.0)

Download OpenAPI specification:Download

Introduction

Welcome to the Nomics Cryptocurrency & Bitcoin API. To sign up for an API key please go here.

nomics.com is built entirely with the Nomics API. Everything we've done on nomics.com you can do with our API. There are no internal API endpoints.

API Server URL

The Nomics API runs at https://api.nomics.com/v1. All requests should be prefixed by the server URL.

Errors

The Nomics API uses standard HTTP status codes to indicate success or failure. 200 represents success, 4xx represents a user error (such as a problem with your key), and 5xx represents a problem with our API.

Versioning

We follow Semantic Versioning. That means our API is versioned as Major.Minor.Patch. For example, Version 1.2.3 has major version 1, minor version 2, and patch version 3.

Major version changes indicate that we have altered the API significantly and it is no longer compatible with a previous version. Major versions are also used as the API URL prefix.

When we update the major version, we will not remove the previous version without notice to API customers and a deprecation period to allow everyone to smoothly update to the new version.

Minor version changes indicate that we have added new functionality without breaking any existing functionality. An API client is compatible with future minor versions. Note that a minor version update may add a new field to an existing API endpoint's response. Your API client must ignore fields it does not understand in order to be compatible with future minor versions.

Patch version changes indicate we fixed a bug or security vulnerability. Patch versions don't add new functionality.

JSON and CSV Support

By default, all endpoints serve data as JSON. However, by passing format=csv in the URL, an endpoint will return CSV data. This can be used in Google Sheets via the IMPORTDATA function.

CSV responses will not contain a header row, this is so that data can be easily concatenated from multiple requests. The fields will be rendered in the same order as the JSON fields. See the endpoint's documentation for an example.

Cross Origin Resource Sharing (CORS)

This API supports Cross Origin Resource Sharing, which allows you to make API requests directly from your user's browser.

To use CORS, you must provide Nomics with the domains on which your application will run so that we can whitelist them for CORS access.

Requests from localhost, 127.0.0.1, and 0.0.0.0 will always succeed to aid in development.

Demo

A demo application using the Nomics API, CORS, and React is available on Glitch.com. This can help you get started using the Nomics API. Keep in mind it uses the demo key, which is rotated frequently. You should get your own API key before deploying an app to production. Check it out:

Authentication

Key

You must include your API Key as a query parameter in every request you make.

For example:

https://api.nomics.com/v1/markets?key=your-api-key-goes-here

The key used in the examples on this page is changed regularly and is intended only as a demo. Get your free Nomics API key here

Security scheme type: API Key
query parameter name: key

Currencies

The currencies endpoint returns all the currencies that Nomics supports.

Authorizations:

Responses

200

A list of Nomics Currency IDs

401

Authentication information is missing or invalid

get /currencies
API Server
https://api.nomics.com/v1/currencies

Request samples

Copy
curl "https://api.nomics.com/v1/currencies?key=2018-09-demo-dont-deploy-b69315e440beb145"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Markets

The markets endpoint returns information on the exchanges and markets that Nomics supports, in addition to the Nomics currency identifiers for the base and quote currency.

Authorizations:
query Parameters
exchange
string
Example: "binance"

Nomics Exchange ID to filter by

base
string
Example: "BTC,ETH,LTC,XMR"

Comma separated list of base currencies to filter by

quote
string
Example: "BTC,ETH,BNB"

Comma separated list of quote currencies to filter by

Responses

200

A list of markets

401

Authentication information is missing or invalid

get /markets
API Server
https://api.nomics.com/v1/markets

Request samples

Copy
curl "https://api.nomics.com/v1/markets?key=2018-09-demo-dont-deploy-b69315e440beb145&exchange=binance&base=BTC,ETH,LTC,XMR&quote=BTC,ETH,BNB"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Market Interval

The market interval endpoint returns a summary of information about all markets based in a given currency over a configurable time interval.

Authorizations:
query Parameters
currency
required
string
Example: "BTC"

Nomics Currency ID to query information for

hours
integer [ 1 .. 8760 ]
Default: 1

Number of hours back to calculate data

start
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped). If not provided, it is computed using the hours parameter.

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

A list of markets with price and volume information for a currency

401

Authentication information is missing or invalid

get /markets/interval
API Server
https://api.nomics.com/v1/markets/interval

Request samples

Copy
curl "https://api.nomics.com/v1/markets/interval?key=2018-09-demo-dont-deploy-b69315e440beb145&currency=BTC&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Market Prices

The market prices endpoint returns prices in USD for the last trade in each market with the given base currency.

Authorizations:
query Parameters
currency
required
string
Example: "BTC"

Nomics Currency ID of the desired base currency

Responses

200

A list of markets with their price

401

Authentication information is missing or invalid

get /markets/prices
API Server
https://api.nomics.com/v1/markets/prices

Request samples

Copy
curl "https://api.nomics.com/v1/markets/prices?key=2018-09-demo-dont-deploy-b69315e440beb145&currency=BTC"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Exchange Market Interval

The exchange market interval endpoint returns a summary of information about all markets over a configurable time interval in their native values.

Authorizations:
query Parameters
currency
string
Example: "BTC"

Nomics Currency ID to filter by. If present, only markets with this currency as the base or quote will be returned.

exchange
string

Nomics Exchange ID to filter by. If present, only markets on this exchange will be returned

start
required
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped).

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

A list of markets with price and volume information for a currency

401

Authentication information is missing or invalid

get /exchange-markets/interval
API Server
https://api.nomics.com/v1/exchange-markets/interval

Request samples

Copy
curl "https://api.nomics.com/v1/exchange-markets/interval?key=2018-09-demo-dont-deploy-b69315e440beb145&currency=BTC&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Exchange Market Prices

The exchange market prices endpoint returns prices for the last trade in each market

Authorizations:
query Parameters
currency
string
Example: "BTC"

Nomics Currency ID to filter by. If present, only markets with this currency as the base or quote will be returned.

exchange
string
Example: "binance"

Nomics Exchange ID to filter by. If present, only markets on this exchange will be returned

Responses

200

A list of markets with their prices

401

Authentication information is missing or invalid

get /exchange-markets/prices
API Server
https://api.nomics.com/v1/exchange-markets/prices

Request samples

Copy
curl "https://api.nomics.com/v1/exchange-markets/prices?key=2018-09-demo-dont-deploy-b69315e440beb145&currency=BTC&exchange=binance"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Prices

The prices endpoint returns current prices for all currencies. Prices are updated every 10 seconds.

Authorizations:

Responses

200

A list of currencies with their price

401

Authentication information is missing or invalid

get /prices
API Server
https://api.nomics.com/v1/prices

Request samples

Copy
curl "https://api.nomics.com/v1/prices?key=2018-09-demo-dont-deploy-b69315e440beb145"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Aggregated OHLCV Candles

The candles endpoint returns aggregated open, high, low, close, and volume information for Nomics currencies. When asking for candles, a currency is provided as a parameter. Nomics aggregates all markets where the given currency is the base currency and the quote currency is a fiat currency, BTC, or ETH and returns all values in USD.

Candles are aggregated across all markets for the base currencies, which necessitates converting to a common quote currency. Nomics converts all markets into USD in order to aggregated candles.

Candles have the following history based on size:

  • 1d: Inception
  • 1h: 30 days
Authorizations:
query Parameters
interval
required
string
Enum:"1d" "1h"
Example: "1d"

Time interval of the candle

currency
required
string
Example: "BTC"

Currency ID

start
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped). If not provided, starts from first candle.

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

A list of candles

401

Authentication information is missing or invalid

get /candles
API Server
https://api.nomics.com/v1/candles

Request samples

Copy
curl "https://api.nomics.com/v1/candles?key=2018-09-demo-dont-deploy-b69315e440beb145&interval=1d&currency=BTC&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Exchange OHLCV Candles

The exchange candles endpoint returns raw open, close, high, low, and volume information for Nomics Markets. The data is not aggregated, therefore prices are in the quote currency of the market and volume is in the base currency of the market.

Candles have the following history based on size:

  • 1d: Inception
  • 4h: 120 days
  • 1h: 30 days
  • 30m: 14 days
  • 5m: 3 days
  • 1m: 24 hours
Authorizations:
query Parameters
interval
required
string
Enum:"1d" "4h" "1h" "30m" "5m" "1m"
Example: "1d"

Time interval of the candle

exchange
required
string
Example: "binance"

Exchange ID

market
required
string
Example: "BTCUSDT"

Market ID

start
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped). If not provided, starts from first candle.

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

A list of candles

401

Authentication information is missing or invalid

get /exchange_candles
API Server
https://api.nomics.com/v1/exchange_candles

Request samples

Copy
curl "https://api.nomics.com/v1/exchange_candles?key=2018-09-demo-dont-deploy-b69315e440beb145&interval=1d&exchange=binance&market=BTCUSDT&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Dashboard

The dashboard endpoint is a high level view of the current state of the market. It contains a wide variety of information and is updated every 10 seconds.

Authorizations:

Responses

200

A list of currency summaries

401

Authentication information is missing or invalid

get /dashboard
API Server
https://api.nomics.com/v1/dashboard

Request samples

Copy
curl "https://api.nomics.com/v1/dashboard?key=2018-09-demo-dont-deploy-b69315e440beb145"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Sparkline

Deprecated in favor of Currencies Sparkline

The sparkline endpoint is a high level view of currency performance over a variety of intervals.

Authorizations:

Responses

200

Currency performance over time for all currencies over day, week, month, and year periods.

401

Authentication information is missing or invalid

get /sparkline
API Server
https://api.nomics.com/v1/sparkline

Request samples

Copy
curl "https://api.nomics.com/v1/sparkline?key=2018-09-demo-dont-deploy-b69315e440beb145"

Response samples

application/json
Copy
Expand all Collapse all
{
  • "day":
    [
    ],
  • "week":
    [
    ],
  • "month":
    [
    ],
  • "year":
    [
    ]
}

Currencies Sparkline

The currencies sparkline endpoint returns prices for all currencies within a customizable time interval suitable for sparkline charts.

Note the timestamps and prices are built off of OHLCV candles using the close price. This means that the timestamp represents the start of the candle, and the price is the close price of that candle. This means the response's final timestamp and price value are always as current as possible, but also that the price is effectively "off" by one candle. This endpoint is designed to serve as a convenient way to render sparklines, if you need exactly aligned times and prices you can use the Aggregated OHLCV Candles endpoint.

Authorizations:
query Parameters
start
required
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped)

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

Currency performance over time for all currencies over the requested time period.

401

Authentication information is missing or invalid

get /currencies/sparkline
API Server
https://api.nomics.com/v1/currencies/sparkline

Request samples

Copy
curl "https://api.nomics.com/v1/currencies/sparkline?key=2018-09-demo-dont-deploy-b69315e440beb145&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Market Cap Sparkline

Deprecated in favor of Market Cap History

The Market Cap Sparkline is a high level history of the market cap for all assets.

Authorizations:

Responses

200

Performance over time for the entire market over day, week, month, and year periods.

401

Authentication information is missing or invalid

get /market-cap/sparkline
API Server
https://api.nomics.com/v1/market-cap/sparkline

Request samples

Copy
curl "https://api.nomics.com/v1/market-cap/sparkline?key=2018-09-demo-dont-deploy-b69315e440beb145"

Response samples

application/json
Copy
Expand all Collapse all
{
  • "day":
    [
    ],
  • "week":
    [
    ],
  • "month":
    [
    ],
  • "year":
    [
    ]
}

Market Cap History

MarketCap History is the total market cap for all cryptoassets at intervals between the requested time period.

Authorizations:
query Parameters
start
required
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped)

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

Performance over time for the entire market.

401

Authentication information is missing or invalid

get /market-cap/history
API Server
https://api.nomics.com/v1/market-cap/history

Request samples

Copy
curl "https://api.nomics.com/v1/market-cap/history?key=2018-09-demo-dont-deploy-b69315e440beb145&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Global Volume History

Volume History is the total volume for all cryptoassets in USD at intervals between the requested time period.

Authorizations:
query Parameters
start
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped)

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

Volume over time for all currencies

401

Authentication information is missing or invalid

get /volume/history
API Server
https://api.nomics.com/v1/volume/history

Request samples

Copy
curl "https://api.nomics.com/v1/volume/history?key=2018-09-demo-dont-deploy-b69315e440beb145&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Exchange Rates

The exchange rates endpoint returns the current exchange rates used by Nomics to convert prices from markets into USD. This contains Fiat currencies as well as a BTC and ETH quote prices. This endpoint helps normalize data across markets as well as to provide localization for users.

Currently, this endpoint does not support historical data, but this feature is planned.

Authorizations:

Responses

200

List of exchange rates into USD

401

Authentication information is missing or invalid

get /exchange-rates
API Server
https://api.nomics.com/v1/exchange-rates

Request samples

Copy
curl "https://api.nomics.com/v1/exchange-rates?key=2018-09-demo-dont-deploy-b69315e440beb145"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Exchange Rates Interval

Exchange rates to convert from USD over a time interval. This endpoint can be used with other interval endpoints to convert values into a desired quote currency.

Authorizations:
query Parameters
start
required
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped)

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

List of exchange rates open and close information

401

Authentication information is missing or invalid

get /exchange-rates/interval
API Server
https://api.nomics.com/v1/exchange-rates/interval

Request samples

Copy
curl "https://api.nomics.com/v1/exchange-rates/interval?key=2018-09-demo-dont-deploy-b69315e440beb145&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Exchange Rates History

Exchange rates for every point in a time range. This endpoint can be used with other interval endpoints to convert values into a desired quote currency.

The currency parameter must be a Nomics Quote Currency, to get all Nomics Quote Currencies, use the /exchange-rates endpoint for all current rates.

Authorizations:
query Parameters
currency
required
string
Example: "BTC"

Currency ID

start
required
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped)

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

Exchange rates for every point in a time range

401

Authentication information is missing or invalid

get /exchange-rates/history
API Server
https://api.nomics.com/v1/exchange-rates/history

Request samples

Copy
curl "https://api.nomics.com/v1/exchange-rates/history?key=2018-09-demo-dont-deploy-b69315e440beb145&currency=BTC&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Trades

!! This API endpoint is only available to customers of our paid API plans. Please go here to learn more.

The trades endpoint returns individual trades in a normalized format for an individual exchange market.

Getting the most recent trades

By default, the trades endpoint returns the 100 most recent trades in descending order. You only need to provide the required parameters.

Sequential ingestion

If you want to page through trades sequentially for ingestion, follow these steps:

  1. Get the first page of trades order=asc
  2. Get the timestamp of the last trade in the page, let's call it last
  3. Get the next page of trades order=asc&from=<last>
  4. Repeat 2 and 3

To reverse chronologically ingest, make a request for the most recent trades, and proceed as above but with order=desc.

Building your own candles

If you want to build your own candles, follow the steps for sequential ingestion, but start with from=<start> in step 1, where start is the start of your candle.

Then, stop when you see a trade past your candle's end timestamp, discard trades past end and perform your aggregation.

Authorizations:
query Parameters
exchange
required
string
Example: "binance"

Exchange ID

market
required
string
Example: "BTCUSDT"

Market ID

limit
integer [ 1 .. 2500 ]
Default: 100
Example: 100

Maximum number of trades returned

order
string
Default: "desc"
Enum:"asc" "desc"
Example: "asc"

Defines the sort order of returned trades and the direction from from.

from
string
Example: "1970-01-01T00%3A00%3A00Z"

Timestamp from which results should start in RFC3339. Please ensure you URI encode the timestamp. From is inclusive.

Responses

200

List of trades

401

Authentication information is missing or invalid

get /trades
API Server
https://api.nomics.com/v1/trades

Request samples

Copy
curl "https://api.nomics.com/v1/trades?key=2018-09-demo-dont-deploy-b69315e440beb145&exchange=binance&market=BTCUSDT&limit=100&order=asc&from=1970-01-01T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

All Time Highs

Returns all time high information for all currencies.

Authorizations:

Responses

200

All time highs for all currencies

401

Authentication information is missing or invalid

get /currencies/highs
API Server
https://api.nomics.com/v1/currencies/highs

Request samples

Copy
curl "https://api.nomics.com/v1/currencies/highs?key=2018-09-demo-dont-deploy-b69315e440beb145"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Currencies Interval

Open and close prices and volume for all currencies between a customizable time range.

Authorizations:
query Parameters
start
required
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped)

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

Open, close, and volume for all currencies in a time range

401

Authentication information is missing or invalid

get /currencies/interval
API Server
https://api.nomics.com/v1/currencies/interval

Request samples

Copy
curl "https://api.nomics.com/v1/currencies/interval?key=2018-09-demo-dont-deploy-b69315e440beb145&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Supplies Interval

Open and close supply information for all currencies between a customizable time interval.

Authorizations:
query Parameters
start
required
string
Example: "2018-04-14T00%3A00%3A00Z"

Start time of the interval in RFC3339 (URI escaped)

end
string
Example: "2018-05-14T00%3A00%3A00Z"

End time of the interval in RFC3339 (URI escaped). If not provided, the current time is used.

Responses

200

Open and close supply information

401

Authentication information is missing or invalid

get /supplies/interval
API Server
https://api.nomics.com/v1/supplies/interval

Request samples

Copy
curl "https://api.nomics.com/v1/supplies/interval?key=2018-09-demo-dont-deploy-b69315e440beb145&start=2018-04-14T00%3A00%3A00Z&end=2018-05-14T00%3A00%3A00Z"

Response samples

Copy
Expand all Collapse all
[
  • {
    }
]

Order Book Snapshot

!! This API endpoint is only available to customers of our paid API plans. Please go here to learn more.

The most recent order book snapshot for the given exchange and market.

CSV format is: timestamp,bidPrice,bidAmount,askPrice,askAmount

Order books are currently only available for the following exchange IDs:

  • binance
  • bitfinex
  • gdax
  • bittrex
  • poloniex
Authorizations:
query Parameters
exchange
required
string
Example: "binance"

Exchange ID

market
required
string
Example: "BTCUSDT"

Market ID

Responses

200

Order book snapshot

401

Authentication information is missing or invalid

get /orders/snapshot
API Server
https://api.nomics.com/v1/orders/snapshot

Request samples

Copy
curl "https://api.nomics.com/v1/orders/snapshot?key=2018-09-demo-dont-deploy-b69315e440beb145&exchange=binance&market=BTCUSDT"

Response samples

Copy
Expand all Collapse all
{
  • "timestamp": "2018-05-14T00:04:31Z",
  • "bids":
    [
    ],
  • "asks":
    [
    ]
}