CryptoCompare · Arazzo Workflow

CryptoCompare Exchange Discovery

Version 1.0.0

List exchanges, read general info, then rank top exchanges for a pair.

1 workflow 1 source API 1 provider
View Spec View on GitHub CryptocurrencyMarket DataReference RatesNewsSocialBlockchainOn-ChainOrder BookStreamingIndexArazzoWorkflows

Provider

cryptocompare

Workflows

exchange-discovery
List exchanges, read general info, then rank top exchanges for a pair.
Reads the full exchange-and-pairs map, the exchange general-info envelope, the top exchanges by 24-hour volume for a pair, and the full-data top exchanges envelope for that same pair.
4 steps inputs: apiKey, fsym, limit, tsym outputs: exchanges, generalInfo, topExchanges, topExchangesFull
1
listAllExchanges
getAllExchanges
Read the full map of integrated exchanges and the trading pairs each exchange currently exposes.
2
getExchangesGeneral
getExchangesGeneralInfo
Read descriptive metadata, ranking grade, country, and feature flags for every integrated exchange.
3
getTopExchangesForPair
getTopExchangesByPairVolume
Rank the top exchanges by 24-hour volume for the requested pair.
4
getTopExchangesFull
getTopExchangesFullByPairVolume
Read the full-data top-exchanges envelope for the same pair, including the coin info block and per-exchange ticker detail.

Source API Descriptions

Arazzo Workflow Specification

cryptocompare-exchange-discovery-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: CryptoCompare Exchange Discovery
  summary: List exchanges, read general info, then rank top exchanges for a pair.
  description: >-
    A venue-analysis flow that lists every integrated exchange and the pairs
    each exposes, reads descriptive metadata and ranking grades for all
    exchanges, and then ranks the top exchanges by 24-hour volume for a specific
    pair before reading the full-data envelope for that same pair. Every step
    spells out its request inline, including the api_key, so the flow can be
    read and executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: cryptocompareMinApi
  url: ../openapi/cryptocompare-min-api-openapi.yml
  type: openapi
workflows:
- workflowId: exchange-discovery
  summary: List exchanges, read general info, then rank top exchanges for a pair.
  description: >-
    Reads the full exchange-and-pairs map, the exchange general-info envelope,
    the top exchanges by 24-hour volume for a pair, and the full-data top
    exchanges envelope for that same pair.
  inputs:
    type: object
    required:
    - apiKey
    - fsym
    - tsym
    properties:
      apiKey:
        type: string
        description: CryptoCompare API key supplied as the api_key query parameter.
      fsym:
        type: string
        description: From-symbol (base cryptocurrency) of the pair, e.g. BTC.
      tsym:
        type: string
        description: To-symbol (quote currency) of the pair, e.g. USD.
      limit:
        type: integer
        description: Number of top exchanges to return for the pair.
        default: 10
  steps:
  - stepId: listAllExchanges
    description: >-
      Read the full map of integrated exchanges and the trading pairs each
      exchange currently exposes.
    operationId: getAllExchanges
    parameters:
    - name: api_key
      in: query
      value: $inputs.apiKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      exchanges: $response.body#/Data
  - stepId: getExchangesGeneral
    description: >-
      Read descriptive metadata, ranking grade, country, and feature flags for
      every integrated exchange.
    operationId: getExchangesGeneralInfo
    parameters:
    - name: api_key
      in: query
      value: $inputs.apiKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      generalInfo: $response.body#/Data
  - stepId: getTopExchangesForPair
    description: >-
      Rank the top exchanges by 24-hour volume for the requested pair.
    operationId: getTopExchangesByPairVolume
    parameters:
    - name: api_key
      in: query
      value: $inputs.apiKey
    - name: fsym
      in: query
      value: $inputs.fsym
    - name: tsym
      in: query
      value: $inputs.tsym
    - name: limit
      in: query
      value: $inputs.limit
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      topExchanges: $response.body#/Data
  - stepId: getTopExchangesFull
    description: >-
      Read the full-data top-exchanges envelope for the same pair, including the
      coin info block and per-exchange ticker detail.
    operationId: getTopExchangesFullByPairVolume
    parameters:
    - name: api_key
      in: query
      value: $inputs.apiKey
    - name: fsym
      in: query
      value: $inputs.fsym
    - name: tsym
      in: query
      value: $inputs.tsym
    - name: limit
      in: query
      value: $inputs.limit
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      coinInfo: $response.body#/Data/CoinInfo
      exchanges: $response.body#/Data/Exchanges
  outputs:
    exchanges: $steps.listAllExchanges.outputs.exchanges
    generalInfo: $steps.getExchangesGeneral.outputs.generalInfo
    topExchanges: $steps.getTopExchangesForPair.outputs.topExchanges
    topExchangesFull: $steps.getTopExchangesFull.outputs.exchanges