Skip to main content
The API uses a JSON-based query language passed as a URL parameter named query. The query object can include:
  • filter - Filter conditions
  • sort - Sort configuration
  • pagination - Pagination settings
  • aggregate - Aggregation configuration (for aggregate endpoints)
Every endpoint has a corresponding /meta endpoint that returns the available fields, allowed operators, and valid values.

Basic Example

URL Encoding

The query object must be JSON-stringified and URL-encoded:
In the API, platforms are referenced as protocol in field names (e.g., protocol_slug, protocol_id) for historical reasons. The terms are interchangeable — “platform” and “protocol” refer to the same entity.

Filtering

Filters allow you to narrow down results based on field values.

Basic Filter

Composite Filter (AND)

Composite Filter (OR)

Supported Operators

Comparison Operators:
  • equals - Exact match
  • notEquals - Not equal to
  • gt - Greater than (numbers)
  • gte - Greater than or equal (numbers)
  • lt - Less than (numbers)
  • lte - Less than or equal (numbers)
String Operators:
  • like - Case-sensitive pattern match (use % as wildcard)
  • ilike - Case-insensitive pattern match (use % as wildcard)
  • notLike - Case-sensitive negative match
  • startsWith - Starts with value
  • endsWith - Ends with value
Array Operators:
  • in - Value is in array (for array fields)
  • not-in - Value is not in array
  • includes - Array includes value (for array fields)
  • not-includes - Array does not include value
Date Operators:
  • before - Before date
  • onOrBefore - On or before date
  • after - After date
  • onOrAfter - On or after date
Logical Operators:
  • and - All filters must match
  • or - Any filter must match

Filter Examples

Filter by platform:
Filter by minimum market cap:
Search by name (case-insensitive):

Sorting

Sort results by any field in ascending or descending order. Sort Structure:
Directions:
  • asc - Ascending order
  • desc - Descending order
  • "" - No sorting (use default)
Example:

Pagination

Control the number of results returned and navigate through pages. Pagination Structure:
Parameters:
  • page - Page number (starts at 1)
  • perPage - Number of results per page (max varies by endpoint, typically 100)
Example:

Aggregation

For aggregate and timeseries endpoints, you can specify aggregation parameters. Aggregate Structure:
Parameters:
  • groupBy - Field to group by (e.g., network_id, asset_class_id, date)
  • aggregateFunction - Function to apply: sum, avg, min, max
  • interval - Time interval (for timeseries): day, week, month, year
  • mode - Aggregation mode:
    • stock - Point-in-time snapshot (latest value per period)
    • flow - Aggregate over period (sum/avg/etc. of all values)
Example:

Code Examples

JavaScript/TypeScript

Python