openapi: 3.2.0 info: title: FX Orchestrator Fx Orders API version: 1.FXRFQ servers: - url: /9f0a128f-cf1a-4503-b126-09dd2ae1e24f/133535775647469590 tags: - name: Fx Orders paths: /fx/v1/order: post: tags: - Fx Orders summary: Creates FX Order operationId: Order.Create parameters: - name: Authorization in: header description: Your API token, obtained from the ClearBank Portal. required: true schema: type: string - name: DigitalSignature in: header description: Signed hash of the body of the request. The hash is signed by your private key. required: true schema: type: string - name: X-Request-Id in: header description: A unique identifer for the request; valid for 24 hours, max length 83. required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateFxOrderRequest' responses: '202': description: Accepted '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ProblemDetails' components: schemas: RequestTradeDetails: required: - buyCurrency - fixedSide - sellCurrency type: object properties: instructedAmount: type: number description: Amount format: double example: '1000.00' fixedSide: minLength: 1 type: string description: Fixed side buy or sell sellCurrency: minLength: 1 type: string description: SellCurrency buyCurrency: minLength: 1 type: string description: BuyCurrency additionalProperties: false description: Information about FX trade RequestAccountInfo: required: - owner type: object properties: owner: maxLength: 140 minLength: 1 pattern: ^[a-zA-Z \-]+$ type: string description: The account owner name example: FX Service Ltd iban: type: - string - 'null' description: The IBAN of the account. minLength: 1 example: GB57CLRB04040100057354 additionalProperties: false description: The account information RequestTradeInfo: required: - details - endToEndId type: object properties: valueDate: type: string description: The date info of FX trade in the format yyyy-MM-ddTHH:mm:ssZ format: date-time details: $ref: '#/components/schemas/RequestTradeDetails' margin: $ref: '#/components/schemas/RequestMarginInfo' endToEndId: maxLength: 35 minLength: 1 pattern: '[A-z0-9/\-?:().," + ]' type: string description: Customer assigned unique ID unstructuredInformation: maxLength: 140 type: - string - 'null' description: Free-form reference or other information additionalProperties: false description: The payment info of FX trade CreateFxOrderRequest: required: - customerInformation - tradeInformation type: object properties: customerInformation: $ref: '#/components/schemas/RequestCustomerInfo' tradeInformation: $ref: '#/components/schemas/RequestTradeInfo' additionalProperties: false description: FX Trade Creation Model RequestMarginInfo: required: - account type: object properties: amount: minimum: 0 type: number description: The optional margin (as a percentage) from the trade to be credited to a margin account. Must be below 0.05 (for example, 0.002 = 0.2% margin). format: double example: '0.01' exclusiveMaximum: 0.0499 account: $ref: '#/components/schemas/RequestAccountInfo' additionalProperties: false RequestCustomerInfo: required: - attestation - buyAccount - sellAccount type: object properties: sellAccount: $ref: '#/components/schemas/RequestAccountInfo' buyAccount: $ref: '#/components/schemas/RequestAccountInfo' attestation: type: string description: Confirmation accounts are owned by the same person (Must be Y) additionalProperties: false description: The customer info od FX trade ProblemDetails: type: object properties: type: type: - string - 'null' title: type: - string - 'null' status: type: - integer - 'null' format: int32 detail: type: - string - 'null' instance: type: - string - 'null' additionalProperties: {}