Spiko Subscription Orders (deprecated) API

The Subscription Orders (deprecated) API from Spiko — 3 operation(s) for subscription orders (deprecated).

Operations 4

POST /subscription-orders/ Create a new subscription order #
GET /subscription-orders/ Get list of an investor's subscription orders #
POST /subscription-orders/direct-debit/ Create a new subscription order via SEPA Direct Debit #
GET /subscription-orders/{subscriptionOrderId} Get subscription order #

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/spiko-subscription-orders-deprecated-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

spiko-subscription-orders-deprecated-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Spiko Investor Subscription Orders (deprecated) API
  version: v1
  description: The Investor API allows investors to manage their accounts, view their portfolios, and perform transactions such as subscriptions and redemptions.
servers:
- url: https://investor-api.spiko.io/v1
  description: Production Server
- url: https://investor-api.preprod.spiko.io/v1
  description: Pre-production Server
security: []
tags:
- name: Subscription Orders (deprecated)
paths:
  /subscription-orders/:
    post:
      tags:
      - Subscription Orders (deprecated)
      operationId: subscriptionOrders.createSubscriptionOrder
      parameters: []
      security:
      - basicAuth: []
      - oauth2: []
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - id
                - investorId
                - amount
                - amountInShareClassCurrency
                - sharesAmount
                - accountId
                - shareClassId
                - wireReference
                - createdAt
                - executedAt
                - canceledAt
                - status
                - shareClassAccountId
                - custodialAccountId
                properties:
                  id:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  investorId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  amount:
                    $ref: '#/components/schemas/Amount'
                  amountInShareClassCurrency:
                    $ref: '#/components/schemas/Amount'
                  sharesAmount:
                    anyOf:
                    - $ref: '#/components/schemas/BigDecimal'
                    - type: 'null'
                  accountId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  shareClassId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  wireReference:
                    anyOf:
                    - type: string
                      description: a wire reference
                      title: WireReference
                      pattern: ^[0-9A-Z]{5,15}$
                    - type: 'null'
                  createdAt:
                    $ref: '#/components/schemas/Date'
                  executedAt:
                    anyOf:
                    - $ref: '#/components/schemas/Date'
                    - type: 'null'
                  canceledAt:
                    anyOf:
                    - $ref: '#/components/schemas/Date'
                    - type: 'null'
                  status:
                    type: string
                    enum:
                    - pending
                    - executed
                    - canceled
                  shareClassAccountId:
                    type: string
                    title: UUID
                    description: please now use pair `{accountId, shareClassId}` instead
                    deprecated: true
                  custodialAccountId:
                    type: string
                    title: UUID
                    description: please now use pair `{accountId, shareClassId}` instead
                    deprecated: true
                additionalProperties: false
        '400':
          description: The request did not match the expected schema
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/HttpApiDecodeError'
                - $ref: '#/components/schemas/ApplicationError'
                - $ref: '#/components/schemas/SubscriptionNotAllowedError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/Unauthorized'
                - $ref: '#/components/schemas/InvestorAuthenticationError'
        '403':
          description: Forbidden
        '404':
          description: NotFound
      description: '**Deprecated - use deposit endpoints instead.** Create a new subscription order and return the order info. This subscription shall be paid via bank transfer.'
      summary: Create a new subscription order
      deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - amount
              - shareClassId
              - accountId
              properties:
                amount:
                  $ref: '#/components/schemas/NonNegativeAmount'
                shareClassId:
                  type: string
                  description: a Universally Unique Identifier
                  format: uuid
                accountId:
                  type: string
                  description: a Universally Unique Identifier
                  format: uuid
              additionalProperties: false
        required: true
    get:
      tags:
      - Subscription Orders (deprecated)
      operationId: subscriptionOrders.getSubscriptionOrders
      parameters:
      - name: investorId
        in: query
        schema:
          type: string
          description: a Universally Unique Identifier
          format: uuid
        required: true
        description: a Universally Unique Identifier
      - name: status
        in: query
        schema:
          type: string
          enum:
          - pending
          - executed
          - canceled
        required: false
      security:
      - basicAuth: []
      - oauth2: []
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  required:
                  - id
                  - investorId
                  - amount
                  - amountInShareClassCurrency
                  - sharesAmount
                  - accountId
                  - shareClassId
                  - wireReference
                  - createdAt
                  - executedAt
                  - canceledAt
                  - status
                  - shareClassAccountId
                  - custodialAccountId
                  properties:
                    id:
                      type: string
                      description: a Universally Unique Identifier
                      format: uuid
                    investorId:
                      type: string
                      description: a Universally Unique Identifier
                      format: uuid
                    amount:
                      $ref: '#/components/schemas/Amount'
                    amountInShareClassCurrency:
                      $ref: '#/components/schemas/Amount'
                    sharesAmount:
                      anyOf:
                      - $ref: '#/components/schemas/BigDecimal'
                      - type: 'null'
                    accountId:
                      type: string
                      description: a Universally Unique Identifier
                      format: uuid
                    shareClassId:
                      type: string
                      description: a Universally Unique Identifier
                      format: uuid
                    wireReference:
                      anyOf:
                      - type: string
                        description: a wire reference
                        title: WireReference
                        pattern: ^[0-9A-Z]{5,15}$
                      - type: 'null'
                    createdAt:
                      $ref: '#/components/schemas/Date'
                    executedAt:
                      anyOf:
                      - $ref: '#/components/schemas/Date'
                      - type: 'null'
                    canceledAt:
                      anyOf:
                      - $ref: '#/components/schemas/Date'
                      - type: 'null'
                    status:
                      type: string
                      enum:
                      - pending
                      - executed
                      - canceled
                    shareClassAccountId:
                      type: string
                      title: UUID
                      description: please now use pair `{accountId, shareClassId}` instead
                      deprecated: true
                    custodialAccountId:
                      type: string
                      title: UUID
                      description: please now use pair `{accountId, shareClassId}` instead
                      deprecated: true
                  additionalProperties: false
        '400':
          description: The request did not match the expected schema
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpApiDecodeError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/Unauthorized'
                - $ref: '#/components/schemas/InvestorAuthenticationError'
        '403':
          description: Forbidden
        '404':
          description: NotFound
      description: '**Deprecated - use deposit endpoints instead.** Get all subscription orders for a given investor with optional status filter.


        > ⚠️ **For displaying an account''s activity, prefer the account transaction history endpoint.** It returns deposits, withdrawals, transfers and yield accruals as a single time-ordered stream, with cursor pagination, so you don''t need to call multiple per-order-type endpoints and reconcile their results.'
      summary: Get list of an investor's subscription orders
      deprecated: true
  /subscription-orders/direct-debit/:
    post:
      tags:
      - Subscription Orders (deprecated)
      operationId: subscriptionOrders.createSubscriptionOrderByDirectDebit
      parameters: []
      security:
      - basicAuth: []
      - oauth2: []
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - investorId
                - amount
                - shareClassId
                - accountId
                - bankAccountId
                - status
                - createdAt
                - scheduledDate
                properties:
                  investorId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  amount:
                    $ref: '#/components/schemas/NonNegativeAmount'
                  shareClassId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  accountId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  bankAccountId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  status:
                    type: string
                    enum:
                    - pending
                    - scheduled
                    - confirmed
                    - returned
                    - canceled
                    - failed
                  createdAt:
                    $ref: '#/components/schemas/Date'
                  scheduledDate:
                    $ref: '#/components/schemas/Date'
                additionalProperties: false
        '400':
          description: The request did not match the expected schema
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpApiDecodeError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/Unauthorized'
                - $ref: '#/components/schemas/InvestorAuthenticationError'
        '403':
          description: Forbidden
        '404':
          description: NotFound
      description: '**Deprecated - use deposit endpoints instead.** Create a new SEPA Direct Debit collection for an account. Only allowed for EUTBL and eurSAFO share classes, for professional investors for whom the feature has been enabled and who have signed a mandate on app.spiko.io.'
      summary: Create a new subscription order via SEPA Direct Debit
      deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - amount
              - shareClassId
              - accountId
              - bankAccountId
              properties:
                amount:
                  $ref: '#/components/schemas/NonNegativeAmount'
                shareClassId:
                  type: string
                  description: a Universally Unique Identifier
                  format: uuid
                accountId:
                  type: string
                  description: a Universally Unique Identifier
                  format: uuid
                bankAccountId:
                  type: string
                  description: a Universally Unique Identifier
                  format: uuid
              additionalProperties: false
        required: true
  /subscription-orders/{subscriptionOrderId}:
    get:
      tags:
      - Subscription Orders (deprecated)
      operationId: subscriptionOrders.getSubscriptionOrder
      parameters:
      - name: subscriptionOrderId
        in: path
        schema:
          type: string
          description: a Universally Unique Identifier
          format: uuid
        required: true
        description: a Universally Unique Identifier
      security:
      - basicAuth: []
      - oauth2: []
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - id
                - investorId
                - amount
                - amountInShareClassCurrency
                - sharesAmount
                - accountId
                - shareClassId
                - wireReference
                - createdAt
                - executedAt
                - canceledAt
                - status
                - shareClassAccountId
                - custodialAccountId
                properties:
                  id:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  investorId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  amount:
                    $ref: '#/components/schemas/Amount'
                  amountInShareClassCurrency:
                    $ref: '#/components/schemas/Amount'
                  sharesAmount:
                    anyOf:
                    - $ref: '#/components/schemas/BigDecimal'
                    - type: 'null'
                  accountId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  shareClassId:
                    type: string
                    description: a Universally Unique Identifier
                    format: uuid
                  wireReference:
                    anyOf:
                    - type: string
                      description: a wire reference
                      title: WireReference
                      pattern: ^[0-9A-Z]{5,15}$
                    - type: 'null'
                  createdAt:
                    $ref: '#/components/schemas/Date'
                  executedAt:
                    anyOf:
                    - $ref: '#/components/schemas/Date'
                    - type: 'null'
                  canceledAt:
                    anyOf:
                    - $ref: '#/components/schemas/Date'
                    - type: 'null'
                  status:
                    type: string
                    enum:
                    - pending
                    - executed
                    - canceled
                  shareClassAccountId:
                    type: string
                    title: UUID
                    description: please now use pair `{accountId, shareClassId}` instead
                    deprecated: true
                  custodialAccountId:
                    type: string
                    title: UUID
                    description: please now use pair `{accountId, shareClassId}` instead
                    deprecated: true
                additionalProperties: false
        '400':
          description: The request did not match the expected schema
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpApiDecodeError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                anyOf:
                - $ref: '#/components/schemas/Unauthorized'
                - $ref: '#/components/schemas/InvestorAuthenticationError'
        '403':
          description: Forbidden
        '404':
          description: NotFound
      description: '**Deprecated - use deposit endpoints instead.** Get info of a specific subscription order by its ID'
      summary: Get subscription order
      deprecated: true
components:
  schemas:
    NonNegativeAmount:
      type: object
      required:
      - value
      - currency
      properties:
        value:
          type: string
          title: non-negative decimal number as a string
          description: a string representation of a non-negative decimal number e.g. "10000", "0.00" or "3420.92"
        currency:
          type: string
          enum:
          - EUR
          - USD
          - GBP
          - CHF
          - JPY
          - SGD
          title: Currency code
          identifier: CurrencyCode
          description: a currency code among "EUR", "USD", "GBP", "CHF", "JPY", "SGD"
      additionalProperties: false
      title: Non-Negative Amount
    HttpApiDecodeError:
      type: object
      required:
      - issues
      - message
      - _tag
      properties:
        issues:
          type: array
          items:
            $ref: '#/components/schemas/Issue'
        message:
          type: string
        _tag:
          type: string
          enum:
          - HttpApiDecodeError
      additionalProperties: false
      description: The request did not match the expected schema
    BigDecimal:
      type: string
      description: a string to be decoded into a BigDecimal
    Amount:
      type: object
      required:
      - value
      - currency
      properties:
        value:
          type: string
          title: decimal number as a string
          description: a string representation of a decimal number e.g. "10000", "0.00" or "-7432092.04"
        currency:
          type: string
          enum:
          - EUR
          - USD
          - GBP
          - CHF
          - JPY
          - SGD
          title: Currency code
          identifier: CurrencyCode
          description: a currency code among "EUR", "USD", "GBP", "CHF", "JPY", "SGD"
      additionalProperties: false
    InvestorAuthenticationError:
      type: object
      required:
      - reason
      - _tag
      properties:
        reason:
          type: string
        _tag:
          type: string
          enum:
          - InvestorAuthenticationError
      additionalProperties: false
      description: Authentication Error
    Issue:
      type: object
      required:
      - _tag
      - path
      - message
      properties:
        _tag:
          type: string
          enum:
          - Pointer
          - Unexpected
          - Missing
          - Composite
          - Refinement
          - Transformation
          - Type
          - Forbidden
          description: The tag identifying the type of parse issue
        path:
          type: array
          items:
            $ref: '#/components/schemas/PropertyKey'
          description: The path to the property where the issue occurred
        message:
          type: string
          description: A descriptive message explaining the issue
      additionalProperties: false
      description: Represents an error encountered while parsing a value to match the schema
    Unauthorized:
      $id: /schemas/void
      title: Unauthorized
    ApplicationError:
      type: object
      required:
      - reason
      - _tag
      properties:
        reason:
          type: string
        customErrorCode:
          type: string
          enum:
          - MissingNAV
          - NonBusinessDay
          - OrderInTheFuture
          - InitialDepositTooLow
          - InitialSubscriptionTooLow
          - SubsequentDepositTooLow
          - SubsequentSubscriptionTooLow
          - NewWalletSignatureNotProvided
          - NewWalletSignatureNotValid
          - CurrencyNotSupported
          - StablecoinNotSupported
          - AutopilotSynchronizedToBroken
          - IncomingBankTransferNotFound
          - IncomingBankTransferNotReceived
          - IncomingBankTransferAlreadyHandled
          - IncomingBankTransferAmountMismatch
        _tag:
          type: string
          enum:
          - ApplicationError
      additionalProperties: false
      description: Application Error
    SubscriptionNotAllowedError:
      type: object
      required:
      - shareClassId
      - shareClassSymbol
      - _tag
      properties:
        shareClassId:
          type: string
          description: a Universally Unique Identifier
          format: uuid
        shareClassSymbol:
          type: string
        _tag:
          type: string
          enum:
          - SubscriptionNotAllowedError
      additionalProperties: false
      description: EUR subscription orders are not allowed for this share class through the investor API, you should directly make a wire instead
    PropertyKey:
      anyOf:
      - type: string
      - type: number
      - type: object
        required:
        - _tag
        - key
        properties:
          _tag:
            type: string
            enum:
            - symbol
          key:
            type: string
        additionalProperties: false
        description: an object to be decoded into a globally shared symbol
    Date:
      type: string
      description: a string to be decoded into a Date
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: Use your API client_id as username and client_secret as password.
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://investor-auth.spiko.io/oauth2/auth
          tokenUrl: https://investor-auth.spiko.io/oauth2/token
          scopes:
            offline: Required for obtaining a refresh token