Saxo Bank Documents API

Provide services to save\upload documents.

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-documents-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-documents-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Services.AutoTrading Account Values Documents 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: Documents
  description: Provide services to save\upload documents.
paths:
  /cm/v1/documents:
    post:
      tags:
      - Documents
      summary: Upload documents
      description: Upload documents for an existing client
      operationId: DocumentsUploadDocuments
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SaveDocumentRequest'
            example:
              ClientKey: 7m4I|vtYLUnEGg77o9uQhw==
              Documents:
              - Data: iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4
                DocumentType: TaxSavingAccount
                FileName: TaxSavingAccount.pdf
      responses:
        '201':
          description: Indicates that the request was performed correctly.
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - InvalidDataFormat
                    - InvalidDocumentName
                    - NoDocumentProvided
                    type: string
                    example: None
                    x-enum-descriptions:
                      NoDocumentProvided: At least one document must be passed.
                      InvalidDocumentName: Document name should have extension.
                      InvalidDataFormat: Document data should be Base64 string.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - NotFound
                    type: string
                    example: None
                    x-enum-descriptions:
                      NotFound: ''
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '500':
          description: Internal Server Error
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Write
components:
  schemas:
    Document:
      title: Document details to be saved
      required:
      - DocumentType
      - FileName
      - Data
      type: object
      properties:
        Data:
          title: Document data in Base64 encoded string
          type: string
          example: stringValue
        DocumentType:
          title: Document type
          allOf:
          - $ref: '#/components/schemas/DocumentType'
        FileName:
          title: Document name with extension
          type: string
          example: stringValue
      additionalProperties: false
      example:
        Data: iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4
        DocumentType: TaxSavingAccount
        FileName: TaxSavingAccount.pdf
    ModelStateDictionary:
      type: object
      additionalProperties:
        type: array
        items:
          type: string
    SaveDocumentRequest:
      title: Save document request
      required:
      - ClientKey
      - Documents
      type: object
      properties:
        ClientKey:
          title: ClientKey of the user for which documents are to be uploaded
          minLength: 1
          type: string
          x-type-name: ClientKey
        Documents:
          title: Details of documents to be uploaded
          type: array
          items:
            $ref: '#/components/schemas/Document'
          example:
          - Data: iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4
            DocumentType: TaxSavingAccount
            FileName: TaxSavingAccount.pdf
      additionalProperties: false
      example:
        ClientKey: 7m4I|vtYLUnEGg77o9uQhw==
        Documents:
        - Data: iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4
          DocumentType: TaxSavingAccount
          FileName: TaxSavingAccount.pdf
    DocumentType:
      title: Document types available
      enum:
      - PensionTransferRequest
      - TaxSavingAccount
      - TaxSavingAccountWithTransfer
      type: string
      example: PensionTransferRequest
      x-enum-descriptions:
        PensionTransferRequest: Document detailing Pension Transfer Request
        TaxSavingAccount: Document detailing Tax Saving Account
        TaxSavingAccountWithTransfer: Tax saving account with transfer
  responses:
    Unauthorized:
      description: Indicates that the request was rejected because the 'Authorization' header was missing in the request or contained an invalid security token.
    ServiceUnavailable:
      description: Service Unavailable.
    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: {}