TD Ameritrade Holding · Capability

TD Ameritrade Accounts and Trading API — User Management

TD Ameritrade Accounts and Trading API — User Management. 3 operations. Lead operation: Get Preferences. Self-contained Naftiko capability covering one Td Ameritrade Holding business surface.

Run with Naftiko Td Ameritrade HoldingUser Management

What You Can Do

GET
Getpreferences — Get Preferences
/v1/accounts/{accountid}/preferences
PUT
Updatepreferences — Update Preferences
/v1/accounts/{accountid}/preferences
GET
Getuserprincipals — Get User Principals
/v1/userprincipals

MCP Tools

get-preferences

Get Preferences

read-only idempotent
update-preferences

Update Preferences

idempotent
get-user-principals

Get User Principals

read-only idempotent

Capability Spec

td-ameritrade-accounts-trading-user-management.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: TD Ameritrade Accounts and Trading API — User Management
  description: 'TD Ameritrade Accounts and Trading API — User Management. 3 operations. Lead operation: Get Preferences. Self-contained
    Naftiko capability covering one Td Ameritrade Holding business surface.'
  tags:
  - Td Ameritrade Holding
  - User Management
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TD_AMERITRADE_HOLDING_API_KEY: TD_AMERITRADE_HOLDING_API_KEY
capability:
  consumes:
  - type: http
    namespace: td-ameritrade-accounts-trading-user-management
    baseUri: https://api.tdameritrade.com/v1
    description: TD Ameritrade Accounts and Trading API — User Management business capability. Self-contained, no shared references.
    resources:
    - name: accounts-accountId-preferences
      path: /accounts/{accountId}/preferences
      operations:
      - name: getpreferences
        method: GET
        description: Get Preferences
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatepreferences
        method: PUT
        description: Update Preferences
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: userprincipals
      path: /userprincipals
      operations:
      - name: getuserprincipals
        method: GET
        description: Get User Principals
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: fields
          in: query
          type: string
          description: Comma-separated list of additional fields to include
    authentication:
      type: bearer
      token: '{{env.TD_AMERITRADE_HOLDING_API_KEY}}'
  exposes:
  - type: rest
    namespace: td-ameritrade-accounts-trading-user-management-rest
    port: 8080
    description: REST adapter for TD Ameritrade Accounts and Trading API — User Management. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/accounts/{accountid}/preferences
      name: accounts-accountid-preferences
      description: REST surface for accounts-accountId-preferences.
      operations:
      - method: GET
        name: getpreferences
        description: Get Preferences
        call: td-ameritrade-accounts-trading-user-management.getpreferences
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatepreferences
        description: Update Preferences
        call: td-ameritrade-accounts-trading-user-management.updatepreferences
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/userprincipals
      name: userprincipals
      description: REST surface for userprincipals.
      operations:
      - method: GET
        name: getuserprincipals
        description: Get User Principals
        call: td-ameritrade-accounts-trading-user-management.getuserprincipals
        with:
          fields: rest.fields
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: td-ameritrade-accounts-trading-user-management-mcp
    port: 9090
    transport: http
    description: MCP adapter for TD Ameritrade Accounts and Trading API — User Management. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: get-preferences
      description: Get Preferences
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: td-ameritrade-accounts-trading-user-management.getpreferences
      outputParameters:
      - type: object
        mapping: $.
    - name: update-preferences
      description: Update Preferences
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: td-ameritrade-accounts-trading-user-management.updatepreferences
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-user-principals
      description: Get User Principals
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: td-ameritrade-accounts-trading-user-management.getuserprincipals
      with:
        fields: tools.fields
      outputParameters:
      - type: object
        mapping: $.