DriveWealth AutoPilot API

The AutoPilot API from DriveWealth — 4 operation(s) for autopilot.

Operations 4

POST /managed/autopilot/{partnerID} Create Autopilot Run
GET /managed/autopilot/{rebalanceRunID} Retrieve Autopilot Run
GET /accounts/{accountID}/portfolio Retrieve Portfolio by Account
GET /users/{userID}/managed/autopilot List AutoPilot Runs by Advisor

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/drivewealth-autopilot-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

drivewealth-autopilot-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DriveWealth Accounts Auto Pilot 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: AutoPilot
  x-displayName: AutoPilot
paths:
  /managed/autopilot/{partnerID}:
    post:
      deprecated: true
      tags:
      - AutoPilot
      parameters:
      - in: path
        name: partnerID
        schema:
          type: string
        required: true
        example: 66304da9-3h6f-2234-935f-ac6b7933d706
        description: This is the parentIBID or userID of the registered investment advisor.
      summary: Create Autopilot Run
      description: Create an Autopilot Run.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/autopilotReq'
        required: true
      responses:
        '200':
          description: Creating an Autopilot Run was Successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/autopilotRes'
      security:
      - bearerAuth: []
        dwAppKey: []
      - sessionToken: []
        dwAppKey: []
  /managed/autopilot/{rebalanceRunID}:
    get:
      deprecated: true
      tags:
      - AutoPilot
      parameters:
      - in: path
        name: rebalanceRunID
        schema:
          type: string
        required: true
        example: ria_rebalance_ebf7e878-e2d6-4b3d-a333-b8ff05b92b83
        description: The unique re-balance run identifier `rebalanceRunID` associated with a specific re-balance.
      summary: Retrieve Autopilot Run
      description: Retrieves an Autopilot Run by rebalanceRunID.
      responses:
        '200':
          description: Retrieving an Autopilot Run by rebalanceRunID was Successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/runStatusRes'
      security:
      - bearerAuth: []
        dwAppKey: []
      - sessionToken: []
        dwAppKey: []
  /accounts/{accountID}/portfolio:
    get:
      deprecated: true
      tags:
      - AutoPilot
      parameters:
      - in: path
        name: accountID
        schema:
          $ref: '#/components/schemas/accountID'
        required: true
      summary: Retrieve Portfolio by Account
      description: Retrieve Portfolio details by accountID.
      responses:
        '200':
          description: Fetching Portfolio details was Successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PortfolioStatusRes'
      security:
      - bearerAuth: []
        dwAppKey: []
      - sessionToken: []
        dwAppKey: []
  /users/{userID}/managed/autopilot:
    get:
      deprecated: true
      tags:
      - AutoPilot
      summary: List AutoPilot Runs by Advisor
      description: Fetches a list of autopilot runs by userID.
      parameters:
      - in: path
        name: userID
        schema:
          $ref: '#/components/schemas/userID'
        required: true
        example: cc07f91b-7ee1-4868-b8fc-823c70a1b932
        description: The User's unique identifier.
      - in: query
        name: from
        schema:
          type: string
        required: false
        example: '2022-12-08T18:36:40.609Z'
        description: The date and time in which to start from.
      - in: query
        name: to
        schema:
          type: string
        required: false
        example: '2022-12-25T18:36:40.609Z'
        description: The date and time in which to end at.
      - in: query
        name: direction
        schema:
          type: string
          enum:
          - NEXT
          - PREVIOUS
        required: false
        example: NEXT
      - in: query
        name: offset
        schema:
          type: string
        required: false
        example: '2022-12-08T18:36:40.609Z'
      responses:
        '200':
          description: Fetching A List Of Autopilot Runs By userID was Successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AutoPilotRunsByUserID'
      security:
      - bearerAuth: []
        dwAppKey: []
      - sessionToken: []
        dwAppKey: []
components:
  schemas:
    autoPilotStatus:
      type: string
      example: REBALANCE_NOT_STARTED
      description: The current status of the re-balance run.
      enum:
      - REBALANCE_NOT_STARTED
      - REBALANCE_ABORTED
      - REBALANCE_REVIEW_COMPLETED
      - REBALANCE_NO_ORDERS_GENERATED
      - REBALANCE_10
      - REBALANCE_20
      - REBALANCE_30
      - REBALANCE_40
      - REBALANCE_50
      - REBALANCE_60
      - REBALANCE_70
      - REBALANCE_80
      - REBALANCE_90
      - REBALANCE_COMPLETED
      - REBALANCE_FAILED
      - AMOUNTCASH_ORDERS_AGGREGATED
      - ORDERQTY_ORDERS_AGGREGATED
      - ORDERQTY_ORDERS_PREPARED
      - AMOUNTCASH_ORDERS_PREPARED
      - SELL_ORDERQTY_ORDERS_SUBMITTED
      - SUBACCOUNT_ORDERS_ADJUSTED
      - SELL_AMOUNTCASH_ORDERS_SUBMITTED
      - SELL_AMOUNTCASH_ORDERS_COMPLETED
      - SELL_AMOUNTCASH_ORDERS_FAILED
      - SELL_AMOUNTCASH_ORDERS_TIMEDOUT
      - SELL_ORDERQTY_ORDERS_COMPLETED
      - SELL_ORDERQTY_ORDERS_FAILED
      - SELL_ORDERQTY_ORDERS_TIMEDOUT
      - BUY_ORDERQTY_ORDERS_SUBMITTED
      - BUY_ORDERQTY_ORDERS_COMPLETED
      - BUY_ORDERQTY_ORDERS_FAILED
      - BUY_ORDERQTY_ORDERS_TIMEDOUT
      - BUY_AMOUNTCASH_ORDERS_SUBMITTED
      - BUY_AMOUNTCASH_ORDERS_COMPLETED
      - BUY_AMOUNTCASH_ORDERS_FAILED
      - BUY_AMOUNTCASH_ORDERS_TIMEDOUT
      - ORDERS_CLEANEDUP
      - RIA_NEXT_REBALANCE_UPDATED
      - ALLOCATION_PREPARED
      - ALLOCATION_SUBMITTED
      - ALLOCATION_NOT_STARTED
      - ALLOCATION_10
      - ALLOCATION_20
      - ALLOCATION_30
      - ALLOCATION_40
      - ALLOCATION_50
      - ALLOCATION_60
      - ALLOCATION_70
      - ALLOCATION_80
      - ALLOCATION_90
      - ALLOCATION_COMPLETED
      - ALLOCATION_FAILED
      - ALLOCATION_TIMEDOUT
      - SUBACCOUNT_HOLDINGS_UPDATED
      - SUBACCOUNT_HOLDINGS_UPDATE_FAILED
      - SUCCESS
    AutoPilotRunByUserID:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/autoPilotRebalanceID'
        created:
          type: string
          example: '2022-12-11T22:28:21.810Z'
          description: The date and time that the autopilot re-balance was created.
        status:
          $ref: '#/components/schemas/autoPilotStatus'
        moneyMovement:
          type: string
          example: true
          description: True, if the re-balance was apart of a funding or withdrawal process.
        regularRebalance:
          type: string
          example: false
          description: True, if the re-balance was apart of the regularly scheduled re-balancing cycle.
    PortfolioStatusRes:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/portfolioID'
        equity:
          type: number
          example: 11003.76
          description: The account value of the customers account.
        totalDrift:
          type: number
          example: 0.012
          description: Total drift away from target.
        rebalanceRequired:
          type: boolean
          example: true
          description: A flag that determines if a re-balance is required based on total drift.
        nextPortfolioRebalance:
          type: string
          example: '2018-12-11T15:00:00.846Z'
          description: The date of the next portfolio re-balance.
        lastPortfolioRebalance:
          type: string
          example: '2017-12-11T15:00:00.846Z'
          description: The date of the last portfolio rebalance.
        holdings:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/portfolioHoldings'
    holdingsObject:
      type: object
      description: An object in the holdings array that holds the instrumentID and target.
      properties:
        instrumentID:
          type: string
          example: 5b85fabb-d57c-44e6-a7f6-a3efc760226c
          description: A unique ID created by DriveWealth to identify a specific instrument.
        target:
          type: number
          example: 0.5
          description: The target percentage for the specific instrumentID within a fund.
    autopilotRes:
      type: object
      properties:
        id:
          type: string
          example: ria_rebalance_ebf7e764-e2d6-4b3d-a333-b8ff05b92b89
          description: The unique re-balance run identifier `rebalanceRunID` associated with a specific re-balance.
        created:
          type: string
          example: '2022-12-27T06:06:28.955Z'
          description: A timestamp of when the re-balance run was created.
        status:
          type: string
          example: REBALANCE_NOT_STARTED
          description: Status of the re-balance run. See [Autopilot Run Status](https://developer.drivewealth.com/reference/get-autopilot-run-status) for status values.
        riaID:
          $ref: '#/components/schemas/riaID'
    autoPilotRebalanceID:
      type: string
      example: ria_rebalance_721ff5c3-f6f2-48d8-aaa3-41a49a044f2c
      description: The unique identifier of the auto pilot re-balance run.
    portfolioHoldings:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/fundID'
        type:
          $ref: '#/components/schemas/fundType'
        name:
          $ref: '#/components/schemas/fundName'
        target:
          $ref: '#/components/schemas/fundTarget'
        actual:
          type: number
          example: 0.3054
          description: The percentage weight of a Fund in a Portfolio.
        value:
          type: number
          example: 33604.12
          description: The current value of the Fund in a Portfolio in USD.
        rebalanceRequired:
          type: boolean
          example: true
          description: A flag that determines if a re-balance is required based on total drift.
        holdings:
          $ref: '#/components/schemas/holdings'
    AutoPilotRunsByUserID:
      type: array
      description: A list of autopilot runs by userID.
      items:
        oneOf:
        - $ref: '#/components/schemas/AutoPilotRunByUserID'
    fundType:
      type: string
      example: FUND
      description: The type of fund.
      enum:
      - FUND
      - CASH_RESERVE
    runStatusRes:
      type: object
      properties:
        id:
          type: string
          example: ria_rebalance_ebf7e764-e2d6-4b3d-a333-b8ff05b92b89
          description: The unique re-balance run identifier `rebalanceRunID` associated with a specific re-balance.
        riaID:
          type: string
          example: 66304da9-3h6f-2234-935f-ac6b7933d706
          description: This is the parentIBID or userID of the registered investment advisor creating the re-balance run.
        status:
          type: string
          example: REBALANCE_NOT_STARTED
          description: Status of the re-balance run. See [Autopilot Run Status](https://developer.drivewealth.com/reference/get-autopilot-run-status) for status values.
        updated:
          type: string
          example: '2022-12-27T06:07:28.955Z'
          description: A timestamp of when the re-balance run was updated.
        created:
          type: string
          example: '2022-12-27T06:06:28.955Z'
          description: A timestamp of when the re-balance run was created.
        moneyMovement:
          type: boolean
          example: true
          description: Was this run part of the regular AutoPilot money movement process?
        regularRebalance:
          type: boolean
          example: true
          description: Was this run part of the regular AutoPilot rebalancing process?
        reviewOnly:
          type: boolean
          example: true
        orders:
          type: object
          description: An object containing the details of submitted orders for the re-balance.
          properties:
            total:
              type: number
              example: 0
              description: Total number of orders submitted.
            submitted:
              type: string
              example: https://uat.drivewealth.autopilot.s3.amazonaws.com/44304da9....
              description: Amazon S3 download containing the details of each submitted order.
            outcome:
              type: string
              example: https://uat.drivewealth.autopilot.s3....
              description: Amazon S3 download containing the status and final outcome of the orders that were submitted.
            amountBuys:
              type: number
              example: -1059.35
              description: An aggregate value of all buy orders. Expect a negative number.
            amountSells:
              type: number
              example: 862.69
              description: An aggregate value of all sell orders.
            cleanedUp:
              type: string
              example: null
        allocations:
          type: object
          description: An object containing the details of the allocations in a re-balance.
          properties:
            submitted:
              type: string
              example: https://uat.drivewealth.autopilot.s3....
              description: Amazon S3 download containing the details of each submitted allocation.
            outcome:
              type: string
              example: https://uat.drivewealth.autopilot.s3....
              description: Amazon S3 download containing the status and final outcome of each allocation that was submitted.
        subAccounts:
          type: object
          description: An object containing details on user accounts and their holdings.
          properties:
            total:
              type: number
              example: 4
              description: The total number of user accounts under the advisor.
            rebalanced:
              type: number
              example: 3
              description: The total number of user accounts that were rebalanced.
            error:
              type: number
              example: 0
              description: The total number of allocation errors at the users account level during the rebalance.
            outcome:
              type: string
              example: https://uat.drivewealth.autopilot.s3....
              description: Amazon S3 download containing the final outcome of the rebalance, includes users account details and their holdings.
    accountID:
      type: string
      example: cc07f91b-7ee1-4868-b8fc-823c70a1b932.1407775317759
      description: The user's unique account identifier.
    fundName:
      type: string
      example: Large Capitalization Fund
      description: A user defined name that describes the underlying fund.
    fundID:
      type: string
      example: fund_4c16152c-f8e7-4a5a-af6b-c36f4e5cc6e7
      description: The unique identifier of a fund.
    userID:
      type: string
      example: cc07f91b-7ee1-4868-b8fc-823c70a1b932
      description: A unique identifier created for each User on DriveWealth's platform.
    fundTarget:
      type: number
      example: 0.75
      description: The individual targeted weight of the instrument.
    holdings:
      type: array
      description: A list of the securities held in a Fund.
      items:
        oneOf:
        - $ref: '#/components/schemas/holdingsObject'
    riaID:
      type: string
      example: 66304da9-3h6f-2234-935f-ac6b7933d706
      description: This is the parentIBID or userID of the registered investment advisor creating the re-balance run.
    autopilotReq:
      type: object
      required:
      - reviewOnly
      - forceRebalance
      properties:
        reviewOnly:
          type: boolean
          example: true
          description: True, if a review should occur without a forced rebalance.
        forceRebalance:
          type: boolean
          example: true
          description: True, if a forces rebalance should occur.
        subAccounts:
          type: array
          description: A list of user's accountIDs to be rebalanced.
          items:
            oneOf:
            - $ref: '#/components/schemas/accountID'
    portfolioID:
      type: string
      example: portfolio_87fec25f-c350-4a53-83a0-fc6be0c2989e
      description: The unique identifier of a portfolio.
  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