Saxo Bank CashManagement - Cash Withdrawal API

This endpoint provides the functionality necessary to allow a client to withdraw money from his account

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/saxo-cashmanagement-cash-withdrawal-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

saxo-cashmanagement-cash-withdrawal-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Services.AutoTrading Account Values CashManagement - Cash Withdrawal API
  description: 'The AutoTrading service group provides endpoints for interacting with Saxo Bank''s SaxoSelect offering.Through these interfaces a client application can get Saxo Select trade leaders, portfolios and investments. Portfolio investments can be created and modifed.<div class=well style=''border: 1px solid rgb(204, 82, 0); border-image: none; background-color: rgb(255, 209, 179);padding:1px;''><strong> Note:</strong> </br>This service is subject to special licensing agreements and not generally available to all OpenAPI applications.</div>'
  version: 2.4.138+710c760591
  x-framework-version: 38.0.2+439c5b0ec3
  x-machine: SIMOAWEB11-DK2
servers:
- url: https://gateway.saxobank.com/sim/openapi
tags:
- name: CashManagement - Cash Withdrawal
  description: This endpoint provides the functionality necessary to allow a client to withdraw money from his account
paths:
  /atr/v1/cashmanagement/withdrawals:
    post:
      tags:
      - CashManagement - Cash Withdrawal
      summary: Submit Cash Withdrawal Request
      description: "Allow client to do cash transfers by giving account key, amount, beneficiary instruction Id, currency and optionally sending “message to beneficiary” with a character limit of 140.\n             \nNote:\n\nIf withdrawal request is created, service will return \"201 Created\" with cut exchange rate &amp; withdrawal request Id in response.\n\nIf withdrawal request is rejected, the service will return bad request with reason for failure of transaction."
      operationId: CashWithdrawalWithdrawl
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WithdrawalRequest'
            example: null
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WithdrawalResponse'
              example:
                CutExchangeRate: 1
                WithdrawalRequestId: '2425'
        '503':
          description: Service Unavailable
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - AccountAccessDenied
                    - AccountNotFound
                    - AccountNotValid
                    - CashAccessDenied
                    - CashBelowLimit
                    - CashLargeExposure
                    - CashNotAllowedOnTrialAccounts
                    - CashWithdrawlRequestRejected
                    - ClientAccessDenied
                    - IncorrectAccountDetails
                    - IncorrectAmount
                    - IncorrectReferenceNumber
                    - InstructedClientNameNotSpecified
                    - InsufficientCashOnAccount
                    - InvalidRequestParameter
                    - MissingOrWrongValueDate
                    - Other
                    - SendOTPFailed
                    - TwoFactorAuthenticationRequestedButNotEnabledforClient
                    - WouldExceedCreditLine
                    type: string
                    example: None
                    x-enum-descriptions:
                      ClientAccessDenied: User is not authorized to access requested Client
                      AccountAccessDenied: User is not authorized to access Account
                      CashWithdrawlRequestRejected: Cash Withdrawal Request rejected for not meeting required conditions
                      SendOTPFailed: Request parameters for sending verification code are invalid
                      TwoFactorAuthenticationRequestedButNotEnabledforClient: Two factor auth is not enabled while skip two factor authentication flag set to false in request
                      AccountNotFound: One or more of the provided parameters are invalid.
                      AccountNotValid: One or more of the provided parameters are invalid.
                      CashAccessDenied: One or more of the provided parameters are invalid.
                      CashBelowLimit: One or more of the provided parameters are invalid.
                      CashLargeExposure: One or more of the provided parameters are invalid.
                      CashNotAllowedOnTrialAccounts: One or more of the provided parameters are invalid.
                      InsufficientCashOnAccount: One or more of the provided parameters are invalid.
                      WouldExceedCreditLine: One or more of the provided parameters are invalid.
                      InvalidRequestParameter: One or more of the provided parameters are invalid.
                      IncorrectAccountDetails: One or more of the provided parameters are invalid.
                      IncorrectAmount: One or more of the provided parameters are invalid.
                      InstructedClientNameNotSpecified: One or more of the provided parameters are invalid.
                      MissingOrWrongValueDate: One or more of the provided parameters are invalid.
                      Other: One or more of the provided parameters are invalid.
                      IncorrectReferenceNumber: One or more of the provided parameters are invalid.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '200':
          description: OK
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - TrialClientNotSupported
                    type: string
                    example: None
                    x-enum-descriptions:
                      TrialClientNotSupported: Trial clients are not supported
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        confidential: Write
components:
  schemas:
    WithdrawalResponse:
      title: Response to withdrawal request
      type: object
      properties:
        CutExchangeRate:
          title: Cut exchange rate.
          type: number
          example: 10
        WithdrawalRequestId:
          title: Outgoing request Id created.
          type: string
          example: stringValue
      additionalProperties: false
      example:
        CutExchangeRate: 1
        WithdrawalRequestId: '2425'
    ModelStateDictionary:
      type: object
      additionalProperties:
        type: array
        items:
          type: string
    WithdrawalRequest:
      title: Cash Withdrawal Request
      required:
      - AccountKey
      - BeneficiaryInstructionId
      - Amount
      - Currency
      type: object
      properties:
        AccountKey:
          title: The account identifier in key format from which to transfer money.
          minLength: 1
          type: string
          x-type-name: AccountKey
        Amount:
          title: The amount to be withdrawn.
          type: number
          example: 10
        BeneficiaryInstructionId:
          title: Id of the beneficiary instruction to be used for the withdrawal
          type: string
          example: stringValue
        Currency:
          title: The currency the amount is in.
          pattern: ^[A-Z]{3}$
          type: string
          x-type-name: CurrencyCode
        MessageToBeneficiary:
          title: "For MT103 type messages this is a free text field and for MT202 messages it is used to specify additional \n            information to one of the parties involved in the transaction in a structured format.\n            See the Cash Withdrawal learn page for more information about the format for MT202 messages.Maximum length is 140 ASCII characters."
          maxLength: 140
          minLength: 0
          type: string
          example: stringValue
      additionalProperties: false
      example: null
  responses:
    Unauthorized:
      description: Indicates that the request was rejected because the 'Authorization' header was missing in the request or contained an invalid security token.
    TooManyRequests:
      description: The request was rejected due to rate limit being exceeded.
  securitySchemes:
    OpenApiJWTSecurityScheme:
      type: http
      scheme: bearer
      bearerFormat: JWT
    OpenApiOAuthSecurityScheme:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://sim.logonvalidation.net/authorize
          tokenUrl: https://sim.logonvalidation.net/token
          scopes: {}