DriveWealth Auth API

The Auth API from DriveWealth — 2 operation(s) for auth.

OpenAPI Specification

drivewealth-auth-api-openapi.yml Raw ↑
openapi: 3.0.2
info:
  title: DriveWealth Accounts Auth API
  version: '1.0'
servers:
- url: https://bo-api.drivewealth.io/back-office
  description: Sandbox server (Uses test data)
- url: https://bo-api.drivewealth.net/back-office
  description: Production Server (Uses LIVE data)
tags:
- name: Auth
  x-displayName: Auth
paths:
  /auth:
    post:
      tags:
      - Auth
      summary: Create Authentication Token
      description: Creates an authentication token for an implementer to utilize for subsequent API requests.
      deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateAuthTokenReq'
      responses:
        '200':
          description: Creating Authentication Token was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAuthToken'
      security: []
  /auth/tokens:
    post:
      tags:
      - Auth
      summary: Create Session Token
      description: Creates a session token for an implementer to utilize for subsequent API requests.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSessTokenReq'
      responses:
        '200':
          description: Creating Session Token was Successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateSessToken'
      security: []
components:
  schemas:
    CreateSessToken:
      type: object
      properties:
        token_type:
          type: string
          example: Bearer
          description: The type of token that was generated.
          enum:
          - Bearer
        expires_in:
          type: string
          example: '3600'
          description: The length of time in seconds for which the session token is valid.
        access_token:
          type: string
          example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
          description: The session token.
        scope:
          type: string
          example: all_trading
          description: The scope of permission set for the JSON Web Token (JWT).
    CreateAuthTokenReq:
      type: object
      required:
      - username
      - password
      - appTypeID
      properties:
        username:
          type: string
          example: bo.sample.api
          description: The B2B (business to business) back office username.
        password:
          type: string
          example: 188ff5b0-8f13-4676-8bb2-305b9e08a3ba
          description: The B2B (business to business) back office password.
        appTypeID:
          type: number
          example: 4
          description: The version type identifier.
    CreateSessTokenReq:
      type: object
      required:
      - clientID
      - clientSecret
      properties:
        clientID:
          type: string
          example: 0oafccTendies67BTx113
          description: The identifier of the client accessing the DriveWealth system.
        clientSecret:
          type: string
          example: 8WfNzC4oTendiesTradingCompanyPuQNwg7BPByWqQOj
          description: The secret of the client accessing the DriveWealth system.
    userID:
      type: string
      example: cc07f91b-7ee1-4868-b8fc-823c70a1b932
      description: A unique identifier created for each User on DriveWealth's platform.
    CreateAuthToken:
      type: object
      properties:
        username:
          type: string
          example: bo.sample.api
          description: The B2B (business to business) back office username.
        authToken:
          type: string
          example: acb33c99-3a6f-4494-85bf-8dae70977552.2018-07-26T14:45:47.391Z
          description: The B2B (business to business) back office session token.
        expiresAt:
          type: string
          example: '2022-12-28T01:09:33.714Z'
          description: The date and time the session token expires.
        security:
          type: object
          properties:
            description:
              type: string
              example: Partner Principal
              description: A custom description that describes the permission set.
            permissionSet:
              type: array
              description: A list of the permissions the back office permissions assigned.
              example:
              - ACCOUNTS_CREATE_LIVE
              - ACCOUNTS_CREATE_MANAGED
              - ACCOUNTS_CREATE_MARGIN
              - ACCOUNTS_CREATE_PRACTICE
              - ACCOUNTS_CREATE_RIA_MANAGED
              - ACCOUNTS_EDIT
            permissionID:
              type: string
              example: 4380ee75-5acd-f5af-4347-04146bb3f61a
              description: A unique identifier for the permission set.
        userID:
          $ref: '#/components/schemas/userID'
        firstName:
          type: string
          example: Tendies Trading Company
          description: The Firm Name.
        lastName:
          type: string
          example: LLC
          description: The Firm Type.
        parentIBID:
          $ref: '#/components/schemas/userID'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    dwAppKey:
      type: apiKey
      in: header
      name: dw-client-app-key
    sessionToken:
      type: apiKey
      in: header
      name: dw-auth-token