Copper.co Trades API

The trades API from Copper.co — 19 operation(s) for trades.

Operations 20

GET /trades Get Trades
POST /trades Create Trade
PATCH /trades/{acceptClosureTradeId} Accept Trade Close
PATCH /trades/{acceptDefaultTradeId} Accept Trade Default
PATCH /trades/{acceptTradeId} Accept Trade
PATCH /trades/{cancelClosureTradeId} Cancel Trade Close
PATCH /trades/{cancelCollateralTopUpTradeId} Cancel Collateral Top-Up Request
PATCH /trades/{cancelCollateralTradeId} Cancel Collateral Release Request
PATCH /trades/{cancelDefaultTradeId} Cancel Trade Default
PATCH /trades/{cancelTradeId} Cancel Trade
PATCH /trades/{closeTradeId} Close Trade
PATCH /trades/{collateralTopUpTradeId} Top Up Trade Collateral
PATCH /trades/{declineTradeId} Decline Trade
PATCH /trades/{defaultTradeId} Default Trade
PATCH /trades/{requestCollateralReleaseTradeId} Request Collateral Release
PATCH /trades/{requestCollateralTradeId} Request Collateral Top-Up
PATCH /trades/{reviewCollateralReleaseTradeId} Review Collateral Release Request
PATCH /trades/{reviewCollateraltradeId} Review Collateral Top-Up Request
PATCH /trades/{secureTradeId} Secure Trade Collateral
GET /trades/{tradeId} Get Trade by ID

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/copper-co-trades-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

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

OpenAPI Specification

copper-co-trades-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'Copper API is based on the REST API interface provided for data exchange between a client and a server with the use of HTTPS requests and responses.

    By default, the request should include a Content-Type header set as application/json. Some requests require different header fields, as well as other Content-Type values. In this case, a proper header will be stated in an example.

    When interacting with the API, please note that all numerical values, such as order amounts or timestamps, should be transmitted as strings. This ensures consistent data representation and prevents potential issues with floating-point precision'
  title: Copper Platform Trades API
  version: latest
servers:
- description: platform.copper.co
  url: https://api.copper.co/platform
- description: demo.copper.co
  url: https://api.stage.copper.co/platform
- description: testnet.copper.co
  url: https://api.testnet.copper.co/platform
tags:
- name: trades
paths:
  /trades:
    get:
      description: Retrieve a list of trades for the given organization.
      parameters:
      - description: Organization ID to scope the search
        in: query
        name: organizationId
        required: true
        schema:
          type: string
      - description: Filter by trade ID
        in: query
        name: tradeId
        required: false
        schema:
          type: string
      - description: Filter by external trade reference ID
        in: query
        name: tradeReferenceId
        required: false
        schema:
          type: string
      - description: Filter trades with effective date on or after this. Format is unix timestamp (ms)
        in: query
        name: effectiveDateFrom
        required: false
        schema:
          type: string
      - description: Filter trades with effective date on or before this. Format is unix timestamp (ms)
        in: query
        name: effectiveDateTo
        required: false
        schema:
          type: string
      - description: Filter trades with maturity date on or after this. Format is unix timestamp (ms)
        in: query
        name: maturityDateFrom
        required: false
        schema:
          type: string
      - description: Filter trades with maturity date on or before this. Format is unix timestamp (ms)
        in: query
        name: maturityDateTo
        required: false
        schema:
          type: string
      - description: Filter by trade side (buy, sell, not-applicable)
        in: query
        name: tradeSide
        required: false
        schema:
          $ref: '#/components/schemas/TradeSide'
          type: string
      - description: Filter by trade status
        example:
        - active
        in: query
        name: tradeStatus
        required: false
        schema:
          $ref: '#/components/schemas/TradeStatus'
          type: string
      - description: Filter by trade type (forward, option, swap, other, not-applicable)
        example:
        - forward
        in: query
        name: tradeType
        required: false
        schema:
          $ref: '#/components/schemas/TradeType'
          type: string
      - description: Filter by counterparty ID (creator or acceptor)
        in: query
        name: counterpartyId
        required: false
        schema:
          type: string
      - description: When true, includes collateral details in the response
        in: query
        name: includeCollateral
        required: false
        schema:
          type: boolean
      - description: When true, includes counterparty details in the response
        in: query
        name: includeCounterparties
        required: false
        schema:
          type: boolean
      - description: When true, includes trade actions in the response
        in: query
        name: includeTradeActions
        required: false
        schema:
          type: boolean
      - description: When true, includes collateral transactions in the response
        in: query
        name: includeCollateralTransactions
        required: false
        schema:
          type: boolean
      - description: Maximum number of results to return.
        in: query
        name: limit
        required: false
        schema:
          default: '100'
          type: string
      - description: Number of results to skip for pagination
        in: query
        name: offset
        required: false
        schema:
          default: '0'
          type: string
      - description: When true, returns only open trades; when false, returns only closed trades
        in: query
        name: isOpen
        required: false
        schema:
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Trades'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Get Trades
      tags:
      - trades
    post:
      description: Initiate a new trade. The counterparty will need to accept the trade.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTrade'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Create Trade
      tags:
      - trades
  /trades/{acceptClosureTradeId}:
    patch:
      description: Accept a pending trade closure initiated by the counterparty.
      parameters:
      - description: application/vnd.accept-close-trade+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: acceptClosureTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.accept-close-trade+json:
            schema:
              $ref: '#/components/schemas/ActionTrade'
      responses:
        '200':
          content:
            application/vnd.accept-close-trade+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Accept Trade Close
      tags:
      - trades
  /trades/{acceptDefaultTradeId}:
    patch:
      description: Accept a pending trade default initiated by the counterparty.
      parameters:
      - description: application/vnd.accept-trade-default+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: acceptDefaultTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.accept-trade-default+json:
            schema:
              $ref: '#/components/schemas/ActionTrade'
      responses:
        '200':
          content:
            application/vnd.accept-trade-default+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Accept Trade Default
      tags:
      - trades
  /trades/{acceptTradeId}:
    patch:
      description: Accept a trade. This action can only be carried out by the counterparty.
      parameters:
      - description: application/vnd.accept-trade+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: acceptTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.accept-trade+json:
            schema:
              $ref: '#/components/schemas/AcceptTrade'
      responses:
        '200':
          content:
            application/vnd.accept-trade+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Accept Trade
      tags:
      - trades
  /trades/{cancelClosureTradeId}:
    patch:
      description: Cancel a pending trade closure before it has been accepted.
      parameters:
      - description: application/vnd.cancel-close-trade+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: cancelClosureTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.cancel-close-trade+json:
            schema:
              $ref: '#/components/schemas/ActionTrade'
      responses:
        '200':
          content:
            application/vnd.cancel-close-trade+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Cancel Trade Close
      tags:
      - trades
  /trades/{cancelCollateralTopUpTradeId}:
    patch:
      description: Cancel a pending collateral top-up request before it has been reviewed.
      parameters:
      - description: application/vnd.cancel-collateral-top-up-request+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: cancelCollateralTopUpTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.cancel-collateral-top-up-request+json:
            schema:
              $ref: '#/components/schemas/CancelTopUpRequest'
      responses:
        '200':
          content:
            application/vnd.cancel-collateral-top-up-request+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Cancel Collateral Top-Up Request
      tags:
      - trades
  /trades/{cancelCollateralTradeId}:
    patch:
      description: Cancel a pending collateral release request before it has been reviewed.
      parameters:
      - description: application/vnd.cancel-collateral-release-request+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: cancelCollateralTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.cancel-collateral-release-request+json:
            schema:
              $ref: '#/components/schemas/CancelCollateralReleaseRequest'
      responses:
        '200':
          content:
            application/vnd.cancel-collateral-release-request+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Cancel Collateral Release Request
      tags:
      - trades
  /trades/{cancelDefaultTradeId}:
    patch:
      description: Cancel a pending trade default before it has been accepted.
      parameters:
      - description: application/vnd.cancel-trade-default+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: cancelDefaultTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.cancel-trade-default+json:
            schema:
              $ref: '#/components/schemas/ActionTrade'
      responses:
        '200':
          content:
            application/vnd.cancel-trade-default+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Cancel Trade Default
      tags:
      - trades
  /trades/{cancelTradeId}:
    patch:
      description: Cancel a trade. Can be initiated by either party before the trade is active.
      parameters:
      - description: application/vnd.cancel-trade+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: cancelTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.cancel-trade+json:
            schema:
              $ref: '#/components/schemas/CancelTrade'
      responses:
        '200':
          content:
            application/vnd.cancel-trade+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Cancel Trade
      tags:
      - trades
  /trades/{closeTradeId}:
    patch:
      description: Initiate the closure of an active trade and release collateral.
      parameters:
      - description: application/vnd.close-trade+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: closeTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.close-trade+json:
            schema:
              $ref: '#/components/schemas/CloseTrade'
      responses:
        '200':
          content:
            application/vnd.close-trade+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Close Trade
      tags:
      - trades
  /trades/{collateralTopUpTradeId}:
    patch:
      description: Add additional collateral to an active trade.
      parameters:
      - description: application/vnd.top-up-collateral+json
        in: header
        name: Content-Type
        required: false
        schema:
          type: string
      - in: path
        name: collateralTopUpTradeId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/vnd.top-up-collateral+json:
            schema:
              $ref: '#/components/schemas/TopUpTradeCollateral'
      responses:
        '200':
          content:
            application/vnd.top-up-collateral+json:
              schema:
                $ref: '#/components/schemas/Trade'
          description: OK
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - bad-request
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - forbidden
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: The machine-readable error code
                    examples:
                    - conflict
                    type: string
                  message:
                    description: A human-readable message providing more details about the error
                    type: string
                type: object
          description: Conflict
      summary: Top Up Trade Collateral
      tags:
      - trades
  /trades/{declineTradeId}:
    patch:
 

# --- truncated at 32 KB (78 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/copper-co/refs/heads/main/openapi/copper-co-trades-api-openapi.yml