Upvest User Identifiers API

Manage external identifiers associated with users.

Documentation

Specifications

Schemas & Data

OpenAPI Specification

upvest-user-identifiers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Upvest Investment Account Transfers User Identifiers API
  description: The Upvest Investment API provides a unified interface for building embedded investment experiences. It supports placing and managing orders, creating portfolios, configuring savings plans, handling securities transfers, and managing user accounts and positions. The API covers the full order lifecycle with asynchronous processing and webhook notifications for real-time event handling. Financial institutions can use the API to offer fractional investing, automated portfolio management, and localized investment products across European and UK markets.
  version: 1.0.0
  contact:
    name: Upvest Support
    url: https://upvest.co/
  termsOfService: https://upvest.co/legal
servers:
- url: https://api.upvest.co
  description: Production Server
- url: https://sandbox.upvest.co
  description: Sandbox Server
security:
- oauth2ClientCredentials: []
tags:
- name: User Identifiers
  description: Manage external identifiers associated with users.
paths:
  /users/{user_id}/identifiers:
    get:
      operationId: listUserIdentifiers
      summary: Upvest List user identifiers
      description: Retrieve all external identifiers associated with a user.
      tags:
      - User Identifiers
      parameters:
      - $ref: '#/components/parameters/UserId'
      responses:
        '200':
          description: List of user identifiers
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/UserIdentifier'
              examples:
                listUserIdentifiers200Example:
                  summary: Default listUserIdentifiers 200 response
                  x-microcks-default: true
                  value:
                    data:
                    - id: {}
                      type: {}
                      value: {}
                      created_at: {}
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                listUserIdentifiers401Example:
                  summary: Default listUserIdentifiers 401 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
        '404':
          description: User not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                listUserIdentifiers404Example:
                  summary: Default listUserIdentifiers 404 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: createUserIdentifier
      summary: Upvest Create a user identifier
      description: Add an external identifier to a user record.
      tags:
      - User Identifiers
      parameters:
      - $ref: '#/components/parameters/UserId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserIdentifierCreate'
            examples:
              createUserIdentifierRequestExample:
                summary: Default createUserIdentifier request
                x-microcks-default: true
                value:
                  type: standard
                  value: example-value
      responses:
        '201':
          description: Identifier created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserIdentifier'
              examples:
                createUserIdentifier201Example:
                  summary: Default createUserIdentifier 201 response
                  x-microcks-default: true
                  value:
                    id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                    type: standard
                    value: example-value
                    created_at: '2025-03-15T14:30:00Z'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                createUserIdentifier400Example:
                  summary: Default createUserIdentifier 400 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                createUserIdentifier401Example:
                  summary: Default createUserIdentifier 401 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /users/{user_id}/identifiers/{identifier_id}:
    get:
      operationId: retrieveUserIdentifier
      summary: Upvest Retrieve a user identifier
      description: Retrieve a specific external identifier for a user.
      tags:
      - User Identifiers
      parameters:
      - $ref: '#/components/parameters/UserId'
      - $ref: '#/components/parameters/IdentifierId'
      responses:
        '200':
          description: User identifier details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserIdentifier'
              examples:
                retrieveUserIdentifier200Example:
                  summary: Default retrieveUserIdentifier 200 response
                  x-microcks-default: true
                  value:
                    id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                    type: standard
                    value: example-value
                    created_at: '2025-03-15T14:30:00Z'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                retrieveUserIdentifier401Example:
                  summary: Default retrieveUserIdentifier 401 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
        '404':
          description: Identifier not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                retrieveUserIdentifier404Example:
                  summary: Default retrieveUserIdentifier 404 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      operationId: updateUserIdentifier
      summary: Upvest Update a user identifier
      description: Update an existing external identifier for a user.
      tags:
      - User Identifiers
      parameters:
      - $ref: '#/components/parameters/UserId'
      - $ref: '#/components/parameters/IdentifierId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserIdentifierUpdate'
            examples:
              updateUserIdentifierRequestExample:
                summary: Default updateUserIdentifier request
                x-microcks-default: true
                value:
                  value: example-value
      responses:
        '200':
          description: Identifier updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserIdentifier'
              examples:
                updateUserIdentifier200Example:
                  summary: Default updateUserIdentifier 200 response
                  x-microcks-default: true
                  value:
                    id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                    type: standard
                    value: example-value
                    created_at: '2025-03-15T14:30:00Z'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                updateUserIdentifier400Example:
                  summary: Default updateUserIdentifier 400 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                updateUserIdentifier401Example:
                  summary: Default updateUserIdentifier 401 response
                  x-microcks-default: true
                  value:
                    type: standard
                    status: 100
                    title: example-value
                    detail: example-value
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    UserIdentifierUpdate:
      type: object
      description: Request body for updating a user identifier.
      properties:
        value:
          type: string
          description: The updated identifier value.
          example: example-value
    UserIdentifierCreate:
      type: object
      description: Request body for creating a user identifier.
      required:
      - type
      - value
      properties:
        type:
          type: string
          description: The type of external identifier.
          example: standard
        value:
          type: string
          description: The identifier value.
          example: example-value
    UserIdentifier:
      type: object
      description: An external identifier associated with a user.
      properties:
        id:
          type: string
          format: uuid
          description: The unique identifier.
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        type:
          type: string
          description: The type of external identifier.
          example: standard
        value:
          type: string
          description: The identifier value.
          example: example-value
        created_at:
          type: string
          format: date-time
          description: When the identifier was created.
          example: '2025-03-15T14:30:00Z'
    Error:
      type: object
      description: An API error response.
      properties:
        type:
          type: string
          description: The error type identifier.
          example: standard
        status:
          type: integer
          description: The HTTP status code.
          example: 100
        title:
          type: string
          description: A short human-readable summary of the error.
          example: example-value
        detail:
          type: string
          description: A detailed human-readable explanation of the error.
          example: example-value
  parameters:
    UserId:
      name: user_id
      in: path
      required: true
      description: The unique identifier of the user.
      schema:
        type: string
        format: uuid
    IdentifierId:
      name: identifier_id
      in: path
      required: true
      description: The unique identifier of the user identifier.
      schema:
        type: string
        format: uuid
  securitySchemes:
    oauth2ClientCredentials:
      type: oauth2
      description: OAuth 2.0 client credentials flow. Obtain an access token by providing your client ID and client secret.
      flows:
        clientCredentials:
          tokenUrl: /auth/token
          scopes:
            users:read: Read user data
            users:admin: Onboard and manage users
            accounts:read: Read account data
            accounts:admin: Create and manage accounts
            orders:read: Read order data
            orders:admin: Place and manage orders
            instruments:read: Read instrument data
            portfolios:read: Read portfolio data
            portfolios:admin: Create and manage portfolios
            positions:read: Read position data
            payments:read: Read payment data
            payments:admin: Manage payments and direct debits
            reports:read: Read reports
            webhooks:read: Read webhook subscriptions
            webhooks:admin: Manage webhook subscriptions
            transactions:read: Read transaction data
            fees:read: Read fee data
            fees:admin: Configure fees
externalDocs:
  description: Upvest API Documentation
  url: https://docs.upvest.co/