Cryptohopper API

Cryptohopper API as documented publicly: 10 operations. Contract generated from the documentation by API Evangelist (2026-11-04); not the provider's own document.

Operations 10

GET /hopper/{id} Retrieve hopper #
POST /hopper/{id}/backtest Backtests #
GET /hopper/{id}/backtest/{start}/{limit} Backtests #
POST /hopper/{id}/order Orders #
POST /hopper/{id}/position/sell Orders #
POST /hopper/{id}/position/sell/{positionId} Orders #
GET /v1 GET /v1 #
GET /v1/hopper GET /v1/hopper #
POST /v1/hopper POST /v1/hopper #
GET /v1/user GET /v1/user #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cryptohopper-com:cryptohopper-com-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cryptohopper-com-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: Cryptohopper API
  version: '2026-11-04'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-11-04: 10 operation(s) read from 40 public documentation page(s) (each
    operation names its page in x-source). This is not the provider''s published contract; Cryptohopper has published no machine-readable contract
    that the pipeline could find. Engine: local.'
  x-evidence-tiers:
    code-example: 7
    documentation: 3
    pages-with-code: 39
    pages-read: 40
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-11-04'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://www.cryptohopper.com/api-documentation/api-reference
  - https://www.cryptohopper.com/developers
  - https://www.cryptohopper.com/developers/sdks
  - https://www.cryptohopper.com/developers?view=home
  - https://www.cryptohopper.com/developers?setlanguage=cs-CZ
  - https://www.cryptohopper.com/developers?setlanguage=de-DE
  - https://www.cryptohopper.com/developers?setlanguage=en-GB
  - https://www.cryptohopper.com/developers?setlanguage=es-ES
  - https://www.cryptohopper.com/developers?setlanguage=fr-FR
  - https://www.cryptohopper.com/developers?setlanguage=id-ID
  - https://www.cryptohopper.com/developers?setlanguage=it-IT
  - https://www.cryptohopper.com/developers?setlanguage=ja-JP
  - https://www.cryptohopper.com/developers?setlanguage=ko-KR
  - https://www.cryptohopper.com/developers?setlanguage=nl-NL
  - https://www.cryptohopper.com/developers?setlanguage=pl-PL
  - https://www.cryptohopper.com/developers?setlanguage=pt-BR
  - https://www.cryptohopper.com/developers?setlanguage=ru-RU
  - https://www.cryptohopper.com/developers?setlanguage=tr-TR
  - https://www.cryptohopper.com/developers?setlanguage=zh-CN
  - https://www.cryptohopper.com/developers/sdks?setlanguage=cs-CZ
  - https://www.cryptohopper.com/developers/sdks?setlanguage=de-DE
  - https://www.cryptohopper.com/developers/sdks?setlanguage=en-GB
  - https://www.cryptohopper.com/developers/sdks?setlanguage=es-ES
  - https://www.cryptohopper.com/developers/sdks?setlanguage=fr-FR
  - https://www.cryptohopper.com/developers/sdks?setlanguage=id-ID
  - https://www.cryptohopper.com/developers/sdks?setlanguage=it-IT
  - https://www.cryptohopper.com/developers/sdks?setlanguage=ja-JP
  - https://www.cryptohopper.com/developers/sdks?setlanguage=ko-KR
  - https://www.cryptohopper.com/developers/sdks?setlanguage=nl-NL
  - https://www.cryptohopper.com/developers/sdks?setlanguage=pl-PL
  - https://www.cryptohopper.com/developers/sdks?setlanguage=pt-BR
  - https://www.cryptohopper.com/developers/sdks?setlanguage=ru-RU
  - https://www.cryptohopper.com/developers/sdks?setlanguage=tr-TR
  - https://www.cryptohopper.com/developers/sdks?setlanguage=zh-CN
  - https://www.cryptohopper.com/api-documentation/rate-limits-and-errors
  - https://www.cryptohopper.com/api-documentation/api-reference/hoppers/get-hoppers-of-users
  - https://www.cryptohopper.com/api-documentation/api-reference/hoppers/create-a-new-hopper
  - https://www.cryptohopper.com/api-documentation/api-reference/hoppers/update-mobile-notifications
  - https://www.cryptohopper.com/api-documentation/api-reference/hoppers/retrieve-hopper
  - https://www.cryptohopper.com/api-documentation/api-reference/hoppers/update-hopper
servers:
- url: https://api.cryptohopper.com
paths:
  /hopper/{id}:
    get:
      operationId: get_hopper_id
      tags:
      - Hopper
      summary: Retrieve hopper
      description: Returns one hopper with its subscription, status, exchange, base currency, open position count and start balance.
      x-source: https://www.cryptohopper.com/api-documentation/api-reference/hoppers/retrieve-hopper
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: access-token
        in: header
        required: true
        schema:
          type: string
        description: The OAuth access token of the user.
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetHopperIdResponse'
      x-evidence:
        kind: documentation
  /hopper/{id}/backtest:
    post:
      operationId: post_hopper_id_backtest
      tags:
      - Hopper
      summary: Backtests
      x-source: https://www.cryptohopper.com/api-documentation/rate-limits-and-errors
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /hopper/{id}/backtest/{start}/{limit}:
    get:
      operationId: get_hopper_id_backtest_start_limit
      tags:
      - Hopper
      summary: Backtests
      x-source: https://www.cryptohopper.com/api-documentation/rate-limits-and-errors
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: start
        in: path
        required: true
        schema:
          type: string
      - name: limit
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /hopper/{id}/order:
    post:
      operationId: post_hopper_id_order
      tags:
      - Hopper
      summary: Orders
      x-source: https://www.cryptohopper.com/api-documentation/rate-limits-and-errors
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /hopper/{id}/position/sell:
    post:
      operationId: post_hopper_id_position_sell
      tags:
      - Hopper
      summary: Orders
      x-source: https://www.cryptohopper.com/api-documentation/rate-limits-and-errors
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /hopper/{id}/position/sell/{positionId}:
    post:
      operationId: post_hopper_id_position_sell_positionId
      tags:
      - Hopper
      summary: Orders
      x-source: https://www.cryptohopper.com/api-documentation/rate-limits-and-errors
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      - name: positionId
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /v1:
    get:
      operationId: get_v1
      tags:
      - Api
      summary: GET /v1
      x-source: https://www.cryptohopper.com/api-documentation/api-reference
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl, JavaScript, Python and PHP, and an example response. \n Base URL https://api.cryptohopper.com/v1 \n Token header access-token\
          \ \n Format JSON \n OpenAPI Swagger 2.0 file \n Hoppers \n Create, update and delete hoppers (trading bots), switch trading on or off,\
          \ manage paper trading balances, and read stats, assets and the output log. \n GET \n Get hoppers of users \n /hopper \n POST \n Create\
          \ a new hopper"
  /v1/hopper:
    get:
      operationId: get_v1_hopper
      tags:
      - Hopper
      summary: GET /v1/hopper
      x-source: https://www.cryptohopper.com/api-documentation/api-reference/hoppers/get-hoppers-of-users
      responses:
        '200':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1HopperResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl \"https://api.cryptohopper.com/v1/hopper\"  -H \"access-token: YOUR_ACCESS_TOKEN\" \n Copy \n const response = await fetch('https://api.cryptohopper.com/v1/hopper',\
          \ {\n method: 'GET',\n headers: {\n \"access-token\": \"YOUR_ACCESS_TOKEN\"\n }\n});\nconst data = await response.json(); \n Copy \n\
          \ import requests\nresponse = requests.get(\n \"https://api.cryptohopper.com/v1/hopper\",\n headers={\n \"access-token\": \"YOUR"
    post:
      operationId: post_v1_hopper
      tags:
      - Hopper
      summary: POST /v1/hopper
      x-source: https://www.cryptohopper.com/api-documentation/api-reference/hoppers/create-a-new-hopper
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostV1HopperRequest'
      responses:
        '201':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV1HopperResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -X POST \"https://api.cryptohopper.com/v1/hopper\"  -H \"access-token: YOUR_ACCESS_TOKEN\"  -H \"Content-Type: application/json\"\
          \  -d '{\"name\":\"My BTC bot\",\"enabled\":0,\"bot_type\":0,\"template_id\":\"market_12345\",\"config\":{\"exchange\":\"binance\",\"\
          base_currency\":\"usdt\",\"paper_trading\":0},\"api_config\":{\"api_key\":\"your-exchange-api-key\",\"api_secret\":\"your-exchange-api-secret\"\
          }}' \n Copy \n const response = a"
  /v1/user:
    get:
      operationId: get_v1_user
      tags:
      - User
      summary: GET /v1/user
      x-source: https://www.cryptohopper.com/developers
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl https://api.cryptohopper.com/v1/user  -H \"access-token: YOUR_ACCESS_TOKEN\" \n Every request carries the user's OAuth\
          \ access token in the access-token header. \n API Documentation \n Get Started The key concepts behind the API and how it fits together.\
          \ How the API works Endpoints, request methods, parameters, response codes and rate limits. Authentication Let users connect their account\
          \ to your a"
components:
  schemas:
    GetHopperIdResponse:
      type: object
      properties:
        data:
          type: object
          description: Root object containing hopper data.
        hopper:
          type: object
          description: Hopper details.
    GetV1HopperResponse:
      type: object
      properties:
        method:
          type: string
        headers:
          type: object
          properties:
            access-token:
              type: string
    PostV1HopperRequest:
      type: object
      properties:
        name:
          type: string
        enabled:
          type: integer
        bot_type:
          type: integer
        template_id:
          type: string
        config:
          type: object
          properties:
            exchange:
              type: string
            base_currency:
              type: string
            paper_trading:
              type: integer
        api_config:
          type: object
          properties:
            api_key:
              type: string
            api_secret:
              type: string
    PostV1HopperResponse:
      type: object
      properties:
        access-token:
          type: string
tags:
- name: Api
- name: Hopper
- name: User