Saxo Bank Exposure API

Read only end points serving exposure of positions. The exposure results are restricted by the supplied query parameters as well as whether or not the identity represented by the authorization token has access to the client/account owner of the underlying positions. * A user of a client will have access to accounts under that client * A user of an IB or WLC will have access to accounts on that client or clients there under * An employee has access to all accounts

OpenAPI Specification

saxo-exposure-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Services.AutoTrading Account Values Exposure 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: Exposure
  description: "Read only end points serving exposure of positions.\n            The exposure results are restricted by the supplied query parameters as well as whether or not the identity \n            represented by the authorization token has access to the client/account owner of the underlying positions.\n\n*   A user of a client will have access to accounts under that client\n*   A user of an IB or WLC will have access to accounts on that client or clients there under \n*   An employee has access to all accounts"
paths:
  /port/v2/exposure/currency/subscriptions/{ContextId}/{ReferenceId}:
    delete:
      tags:
      - Exposure
      summary: Remove subscription
      description: Removes subscription for the current session identified by subscription id..
      operationId: ExposureV2DeleteSubscription
      parameters:
      - name: ContextId
        in: path
        description: The context id part of the streaming session (used to identify the subscription within a streaming session).
        required: true
        schema:
          type: string
        example: '29931122'
      - name: ReferenceId
        in: path
        description: Unique id of the subscription
        required: true
        schema:
          type: string
        example: 0f8fad5b-d9cb-469f-a165-70867728950e
      responses:
        '204':
          description: No Content
        '202':
          description: Subscription delete request will be processed eventually.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Subscribe
        community: Subscribe
  /port/v2/exposure/currency/subscriptions/{ContextId}:
    delete:
      tags:
      - Exposure
      summary: Remove multiple subscriptions
      description: Removes multiple all subscriptions for the current session on this resource, and frees all resources on the server.
      operationId: ExposureV2DeleteSubscriptions
      parameters:
      - name: ContextId
        in: path
        description: The context id part of the streaming session (used to identify the subscription within a streaming session).
        required: true
        schema:
          type: string
        example: '29931122'
      - name: Tag
        in: query
        description: Optional. Remove only subscriptions that are marked with specified tag.
        schema:
          type: string
        example: '2345223'
      responses:
        '204':
          description: No Content
        '202':
          description: Subscription delete request will be processed eventually.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Subscribe
        community: Subscribe
  /port/v2/exposure/currency/subscriptions:
    post:
      tags:
      - Exposure
      summary: Create a subscription on a list of instrument exposure and make it active
      description: Sets up a subscription and returns an initial snapshot of list of instrument exposure specified by the parameters in the request.
      operationId: ExposureV2AddActiveSubscription
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CurrencyExposureSubscriptionRequest'
            example:
              Arguments:
                AccountGroupKey: stringValue
                AccountKey: 01b64edf-da03-4145-bf33-ae21527d4c86
                ClientKey: 493b43a5-fe85-4d1f-9071-dd4a9d4e42a4
                CurrencyCode: stringValue
                PriceMode: RegularTradingHours
              ContextId: '-'
              Format: stringValue
              ReferenceId: '-'
              RefreshRate: 106
              ReplaceReferenceId: '-'
              Tag: stringValue
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CurrencyExposureSubscriptionResponse'
              example:
                ContextId: stringValue
                Format: stringValue
                InactivityTimeout: 99
                ReferenceId: stringValue
                RefreshRate: 99
                Snapshot:
                  CurrencyExposures:
                  - AmountsInCurrency:
                      Cash: 10
                      Fx: 10
                      ProfitLoss: 10
                      Total: 10
                    AmountsInEntityCurrency:
                      Cash: 10
                      Fx: 10
                      ProfitLoss: 10
                      Total: 10
                    AmountsInRequestCurrency:
                      Cash: 10
                      Fx: 10
                      ProfitLoss: 10
                      Total: 10
                    Currency: stringValue
                    ExposureCurrencyCode: stringValue
                    ExposureLimit: 10
                    ExposureUtilization: 10
                    ValueDateCurrencyExposures:
                      Amounts:
                      - Exposures:
                          Cash: 10
                          Fx: 10
                          ProfitLoss: 10
                          Total: 10
                        ValueDate: '9999-12-31T23:59:59.999999Z'
                        ValueDateKey: stringValue
                      NonDatedExposure:
                        Cash: 10
                        Fx: 10
                        ProfitLoss: 10
                        Total: 10
                      Total:
                        Cash: 10
                        Fx: 10
                        ProfitLoss: 10
                        Total: 10
                  NetOpenPositionValue:
                    AmountInEntityCurrency: 10
                    AmountInRequestCurrency: 10
                    ExposureCurrencyCode: stringValue
                    ExposureLimit: 10
                    ExposureUtilization: 10
                State: Active
                Tag: stringValue
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - InvalidClientId
                    - InvalidInput
                    - InvalidModelState
                    - NoValidInput
                    - UnsupportedSubscriptionFormat
                    type: string
                    example: None
                    x-enum-descriptions:
                      InvalidModelState: Error code returned when model state is invalid.
                      UnsupportedSubscriptionFormat: Error code returned when a subscription format that isn't supported by the publisher is requested.
                      InvalidClientId: Indicates that the requested client id was invalid.
                      InvalidInput: An error was encountered when processing given input parameters.
                      NoValidInput: No valid input values passed.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - SubscriptionLimitExceeded
                    type: string
                    example: None
                    x-enum-descriptions:
                      SubscriptionLimitExceeded: Error code returned when more than the maximum allowed number of subscriptions for a specified type, is exceeded.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Subscribe
        community: Subscribe
      x-streaming-type:
        $ref: '#/components/schemas/CurrencyExposureResponse'
  /port/v1/exposure/fxspot:
    get:
      tags:
      - Exposure
      summary: Get net FxSpot exposures list for a client, accountGroup or account
      description: Returns a list of currency exposures from FxSpot positions for a requested client, account group or account.
      operationId: ExposureV1GetFxSpotNetExposuresForLoggedInUser
      parameters:
      - name: AccountGroupKey
        in: query
        description: The key of the account group to which the positions belong.
        schema:
          title: The key of the account group to which the positions belong.
          minLength: 1
          type: string
          x-type-name: AccountGroupKey
        example: stringValue
      - name: AccountKey
        in: query
        description: The key of the account to which the positions belong.
        schema:
          title: The key of the account to which the positions belong.
          minLength: 1
          type: string
          x-type-name: AccountKey
        example: 01b64edf-da03-4145-bf33-ae21527d4c86
      - name: ClientKey
        in: query
        description: The key of the client to which the positions belong.
        required: true
        schema:
          title: The key of the client to which the positions belong.
          minLength: 1
          type: string
          x-type-name: ClientKey
        example: 493b43a5-fe85-4d1f-9071-dd4a9d4e42a4
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CurrencyExposuresResponseListResult'
              example:
                Data:
                - Amount: 10
                  AmountInCalculationEntityCurrency: 10
                  Currency: stringValue
                MaxRows: 99
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - InvalidClientId
                    - InvalidExchangeId
                    - NoValidInput
                    type: string
                    example: None
                    x-enum-descriptions:
                      NoValidInput: No valid input values passed.
                      InvalidClientId: Indicates that the requested client id was invalid.
                      InvalidExchangeId: The provided exchange id is invalid.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '204':
          description: No Content
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Read
        community: Read
  /port/v1/exposure/fxspot/me:
    get:
      tags:
      - Exposure
      summary: Get net FxSpot exposures for a client, to which the logged in user belongs
      description: Returns a list of currency exposures from FxSpot positions for the client, to which the logged in user belongs.
      operationId: ExposureV1GetFxSpotNetExposures
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CurrencyExposuresResponseListResult'
              example:
                Data:
                - Amount: 10
                  AmountInCalculationEntityCurrency: 10
                  Currency: stringValue
                MaxRows: 99
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Read
        community: Read
  /port/v1/exposure/currency:
    get:
      tags:
      - Exposure
      summary: Get a currency exposures list for a client, accountGroup or account
      description: Returns a list of currencies in which there is an exposure.
      operationId: ExposureV1GetCurrencyExposuresForLoggedInUser
      parameters:
      - name: AccountGroupKey
        in: query
        description: The key of the account group to which the positions belong.
        schema:
          title: The key of the account group to which the positions belong.
          minLength: 1
          type: string
          x-type-name: AccountGroupKey
        example: stringValue
      - name: AccountKey
        in: query
        description: The key of the account to which the positions belong.
        schema:
          title: The key of the account to which the positions belong.
          minLength: 1
          type: string
          x-type-name: AccountKey
        example: 01b64edf-da03-4145-bf33-ae21527d4c86
      - name: ClientKey
        in: query
        description: The key of the client to which the positions belong.
        required: true
        schema:
          title: The key of the client to which the positions belong.
          minLength: 1
          type: string
          x-type-name: ClientKey
        example: 493b43a5-fe85-4d1f-9071-dd4a9d4e42a4
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CurrencyExposuresResponseListResult'
              example:
                Data:
                - Amount: 10
                  AmountInCalculationEntityCurrency: 10
                  Currency: stringValue
                MaxRows: 99
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - InvalidClientId
                    - InvalidExchangeId
                    - NoValidInput
                    type: string
                    example: None
                    x-enum-descriptions:
                      NoValidInput: No valid input values passed.
                      InvalidClientId: Indicates that the requested client id was invalid.
                      InvalidExchangeId: The provided exchange id is invalid.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '204':
          description: No Content
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Read
        community: Read
  /port/v1/exposure/currency/me:
    get:
      tags:
      - Exposure
      summary: Get currency exposures for a client, to which the logged in user belongs
      description: Returns a list of currencies and net exposures.
      operationId: ExposureV1GetCurrencyExposures
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CurrencyExposuresResponseListResult'
              example:
                Data:
                - Amount: 10
                  AmountInCalculationEntityCurrency: 10
                  Currency: stringValue
                MaxRows: 99
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Read
        community: Read
  /port/v1/exposure/instruments/subscriptions/{ContextId}/{ReferenceId}:
    delete:
      tags:
      - Exposure
      summary: Remove subscription
      description: Removes subscription for the current session identified by subscription id..
      operationId: ExposureV1DeleteSubscription
      parameters:
      - name: ContextId
        in: path
        description: The context id part of the streaming session (used to identify the subscription within a streaming session).
        required: true
        schema:
          type: string
        example: '29931122'
      - name: ReferenceId
        in: path
        description: Unique id of the subscription
        required: true
        schema:
          type: string
        example: 0f8fad5b-d9cb-469f-a165-70867728950e
      responses:
        '204':
          description: No Content
        '202':
          description: Subscription delete request will be processed eventually.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Subscribe
        community: Subscribe
  /port/v1/exposure/instruments/subscriptions/{ContextId}:
    delete:
      tags:
      - Exposure
      summary: Remove multiple subscriptions
      description: Removes multiple all subscriptions for the current session on this resource, and frees all resources on the server.
      operationId: ExposureV1DeleteSubscriptions
      parameters:
      - name: ContextId
        in: path
        description: The context id part of the streaming session (used to identify the subscription within a streaming session).
        required: true
        schema:
          type: string
        example: '29931122'
      - name: Tag
        in: query
        description: Optional. Remove only subscriptions that are marked with specified tag.
        schema:
          type: string
        example: '2345223'
      responses:
        '204':
          description: No Content
        '202':
          description: Subscription delete request will be processed eventually.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Subscribe
        community: Subscribe
  /port/v1/exposure/instruments/subscriptions:
    post:
      tags:
      - Exposure
      summary: Create a subscription on a list of instrument exposure and make it active
      description: Sets up a subscription and returns an initial snapshot of list of instrument exposure specified by the parameters in the request.
      operationId: ExposureV1AddActiveSubscription
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InstrumentExposureSubscriptionRequest'
            example:
              Arguments:
                AccountGroupKey: LZTc7DdejXODf-WSl2aCyQ==
                AccountKey: LZTc7DdejXODf-WSl2aCyQ==
                AssetType: FxSpot
                ClientKey: 7m4I|vtYLUnEGg77o9uQhw==
                PriceMode: RegularTradingHours
                Uic: 21
              ContextId: '-'
              Format: stringValue
              ReferenceId: '-'
              RefreshRate: 104
              ReplaceReferenceId: '-'
              Tag: stringValue
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstrumentExposureSubscriptionResponse'
              example:
                ContextId: '20221030064906529'
                Format: application/json
                InactivityTimeout: 120
                ReferenceId: E68752
                RefreshRate: 1000
                Snapshot:
                  Data:
                  - Amount: 200000
                    AssetType: FxSpot
                    AverageOpenPrice: 1.08414
                    CalculationReliability: Ok
                    CanBeClosed: false
                    DisplayAndFormat:
                      Currency: USD
                      Decimals: 4
                      Description: Euro/US Dollar
                      Format: AllowDecimalPips
                      Symbol: EURUSD
                    NetPositionId: EURUSD_FxSpot
                    Uic: 21
                State: Active
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - InvalidClientId
                    - InvalidInput
                    - InvalidModelState
                    - NoValidInput
                    - UnsupportedSubscriptionFormat
                    type: string
                    example: None
                    x-enum-descriptions:
                      InvalidModelState: Error code returned when model state is invalid.
                      UnsupportedSubscriptionFormat: Error code returned when a subscription format that isn't supported by the publisher is requested.
                      InvalidClientId: Indicates that the requested client id was invalid.
                      InvalidInput: An error was encountered when processing given input parameters.
                      NoValidInput: No valid input values passed.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - SubscriptionLimitExceeded
                    type: string
                    example: None
                    x-enum-descriptions:
                      SubscriptionLimitExceeded: Error code returned when more than the maximum allowed number of subscriptions for a specified type, is exceeded.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Subscribe
        community: Subscribe
      x-streaming-type:
        $ref: '#/components/schemas/InstrumentExposureResponseArray'
  /port/v1/exposure/instruments:
    get:
      tags:
      - Exposure
      summary: Get instrument net exposure list for a client, accountGroup or account
      description: Returns a list of instruments in which there is an exposure fulfilling the criteria specified by the query string parameters.
      operationId: ExposureV1GetInstrumentsExposuresForLoggedInUser
      parameters:
      - name: AccountGroupKey
        in: query
        description: The key of the account group to which the positions belong.
        schema:
          title: The key of the account group to which the positions belong.
          minLength: 1
          type: string
          x-type-name: AccountGroupKey
        example: stringValue
      - name: AccountKey
        in: query
        description: The key of the account to which the positions belong.
        schema:
          title: The key of the account to which the positions belong.
          minLength: 1
          type: string
          x-type-name: AccountKey
        example: 01b64edf-da03-4145-bf33-ae21527d4c86
      - name: AssetType
        in: query
        description: The AssetType.
        schema:
          title: The AssetType.
          allOf:
          - $ref: '#/components/schemas/AssetType'
        example: StockIndexOption
      - name: ClientKey
        in: query
        description: The key of the client to which the positions belong.
        required: true
        schema:
          title: The key of the client to which the positions belong.
          minLength: 1
          type: string
          x-type-name: ClientKey
        example: 493b43a5-fe85-4d1f-9071-dd4a9d4e42a4
      - name: ExpiryDate
        in: query
        description: The expiry date. Only used to distinguish FxOptions.
        schema:
          title: The expiry date. Only used to distinguish FxOptions.
          type: string
          format: date-time
          x-type-name: UtcDateTime
        example: '9999-12-31T23:59:59.9999990+00:00'
      - name: LowerBarrier
        in: query
        description: The Lower Barrier. Only used to distinguish Fx Barrier Options.
        schema:
          title: The Lower Barrier. Only used to distinguish Fx Barrier Options.
          type: number
        example: 2.55
      - name: PutCall
        in: query
        description: Put or Call. Only used to distinguish FxOptions.
        schema:
          title: Put or Call. Only used to distinguish FxOptions.
          allOf:
          - $ref: '#/components/schemas/PutCall'
        example: Put
      - name: Strike
        in: query
        description: The strike price of the option. Only used to distinguish FxOptions.
        schema:
          title: The strike price of the option. Only used to distinguish FxOptions.
          type: number
        example: 2.55
      - name: Uic
        in: query
        description: Unique id of the instrument.
        schema:
          title: Unique id of the instrument.
          type: integer
          format: int32
        example: 99
      - name: UpperBarrier
        in: query
        description: The Upper Barrier. Only used to distinguish Fx Barrier Options.
        schema:
          title: The Upper Barrier. Only used to distinguish Fx Barrier Options.
          type: number
        example: 2.55
      - name: ValueDate
        in: query
        description: The value date. Only used to distinguish FxForwards.
        schema:
          title: The value date. Only used to distinguish FxForwards.
          type: string
          format: date-time
          x-type-name: UtcDateTime
        example: '9999-12-31T23:59:59.9999990+00:00'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstrumentExposureResponseListResult'
              example:
                __next: /openapi/port/....../?$top=1&$skip=1
                Data:
                - Amount: 200000
                  AssetType: FxSpot
                  AverageOpenPrice: 1.08414
                  CalculationReliability: Ok
                  CanBeClosed: false
                  DisplayAndFormat:
                    Currency: USD
                    Decimals: 4
                    Description: Euro/US Dollar
                    Format: AllowDecimalPips
                    Symbol: EURUSD
                  NetPositionId: EURUSD_FxSpot
                  Uic: 21
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                required:
                - ErrorCode
                - Message
                type: object
                properties:
                  ErrorCode:
                    enum:
                    - InvalidClientId
                    - InvalidExchangeId
                    - NoValidInput
                    type: string
                    example: None
                    x-enum-descriptions:
                      NoValidInput: No valid input values passed.
                      InvalidClientId: Indicates that the requested client id was invalid.
                      InvalidExchangeId: The provided exchange id is invalid.
                  Message:
                    type: string
                  ModelState:
                    $ref: '#/components/schemas/ModelStateDictionary'
        '204':
          description: No Content
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
      - OpenApiOAuthSecurityScheme: []
      - OpenApiJWTSecurityScheme: []
      x-required-permissions:
        personal: Read
        community: Read
  /port/v1/exposure/instruments/me:
    get:
      tags:
      - Exposure
      summary: Get the net instrument exposure for a client, to which the logged in user belongs
      description: Returns a list instruments and net exposures.
      operationId: ExposureV1GetInstrumentsExposures
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstrumentExposureResponseListResult'
              example:
                __next: /openapi/port/....../?$top=1&$skip=1
                Data:
                - Amount: 200000
                  AssetType: FxSpot
                  AverageOpenPrice: 1.08414
                  CalculationReliability: Ok
                  CanBeClosed: false
                  DisplayAndFormat:
            

# --- truncated at 32 KB (75 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/saxo/refs/heads/main/openapi/saxo-exposure-api-openapi.yml