Nestcoin exchange-orders API

The exchange-orders API from Nestcoin — 1 operation(s) for exchange-orders.

OpenAPI Specification

nestcoin-exchange-orders-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  version: 3.0.2
  title: Onboard External API Gateway auth-oauth exchange-orders API
  description: "**Introduction**\nAPI Gateway for Onboard\n\nThis specification describes API endpoints that are available to the public internet via the API gateway. The different endpoints require different authentication schemes, see documentation for what applies to the operation you want to access.\n\n**Errors**\nUses conventional HTTP response codes to indicate success or failure. In\ngeneral:\n \n- `2xx` status codes indicate success. Codes in the\n- `4xx` range\nindicate a client error (e.g. required parameters, failed request etc.).\n- `5xx` status codes indicate a server error occurred."
  contact:
    name: Nestcoin TechOps
    email: techops@nestcoin.com
  license:
    name: UNLICENSED
servers:
- url: https://external.dev.onboardpay.co
  description: Gateway for external API on staging environment.
tags:
- name: exchange-orders
paths:
  /exchange/orders/trade:
    x-original-path: /orders/trade
    get:
      tags:
      - exchange-orders
      summary: Start a trade
      operationId: createOrder
      parameters:
      - name: apiKey
        in: query
        description: CEX api key
        required: true
        schema:
          type: string
      - name: product
        in: query
        description: Integration product in use e.g web3 or custodial
        required: true
        schema:
          $ref: '#/components/schemas/CreateOrderProductEnum'
      - name: orderId
        in: query
        description: Order ID generated for offramp trades
        schema:
          type: string
      - name: tradeType
        in: query
        description: Type of trade
        required: true
        schema:
          $ref: '#/components/schemas/CreateOrderTradeTypeEnum'
      - name: fiat
        in: query
        description: Symbol of fiat currency
        required: true
        schema:
          type: string
      - name: fiatAmount
        in: query
        description: Fiat amount
        schema:
          type: number
      - name: token
        in: query
        description: Symbol of token asset
        required: true
        schema:
          type: string
      - name: tokenAmount
        in: query
        description: Token amount
        schema:
          type: number
      - name: networkId
        in: query
        description: Onboard blockchain network identifier or chain Id e.g Base will be `base` or `8453` or `0x2105`
        schema:
          type: string
      - name: address
        in: query
        description: Wallet address to be debited/credited in order
        schema:
          type: string
      - name: paymentChannel
        in: query
        description: Payment channel
        schema:
          type: string
      - name: email
        in: query
        description: Customer's email address
        schema:
          type: string
      - name: autoselect
        in: query
        description: Offer auto select flag
        schema:
          type: boolean
          default: true
      responses:
        '301':
          description: Redirect
          content: {}
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessageDto'
        '401':
          description: Unauthorized request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessageDto'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessageDto'
      security: []
      x-visibility: external
components:
  schemas:
    CreateOrderTradeTypeEnum:
      type: string
      enum:
      - BUY
      - SELL
      x-source-svc: exchange
    ErrorMessageDto:
      description: Default error object for services. This gives consistent error object that all services may use.
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          description: Error code
          example: UNKNOWN_ERROR
        message:
          type: string
          description: Descriptive error message
          example: Request could not be completed due to an error
        data:
          type: object
          description: Additional data for this error message.
          additionalProperties: true
          properties: {}
      x-common-model: ErrorMessageDto
    CreateOrderProductEnum:
      type: string
      enum:
      - WEB3
      - CUSTODIAL
      x-source-svc: exchange
  securitySchemes:
    authSignature:
      type: apiKey
      name: x-signature
      in: header
    authToken:
      type: apiKey
      name: x-auth-token
      in: header
      description: Auth Token header for inter-service communication
x-organization: onboard
x-service-id: external-gateway
x-preserve-refs:
- '#/components/schemas/IntegrationProduct'
- '#/components/schemas/AdAppliedEscrowBalanceDto'
- '#/components/schemas/P2PWalletRecipient'
- '#/components/schemas/BankAccountRecipient'
- '#/components/schemas/MobileMoneyRecipient'
- '#/components/schemas/OrderEvent'
- '#/components/schemas/PaymentMethodEventAction'
- '#/components/schemas/PaymentMethodEventPayload'
- '#/components/schemas/TransactionServiceErrorCode'
- '#/components/schemas/ErrorCodes'