Marqeta · Capability

Core API — direct deposits

Core API — direct deposits. 7 operations. Lead operation: Lists all direct deposits. Self-contained Naftiko capability covering one Marqeta business surface.

Run with Naftiko Marqetadirect deposits

What You Can Do

GET
Getdirectdeposits — Lists all direct deposits
/v1/directdeposits
GET
Getdirectdepositsaccountsuserorbusinesstoken — Returns an account and routing number which can be used for direct deposit
/v1/directdeposits/accounts/{user-or-business-token}
PUT
Putdirectdepositsaccountsuserorbusinesstoken — Updates a specific direct deposit account
/v1/directdeposits/accounts/{user-or-business-token}
GET
Getdirectdepositstransitions — Returns a list of direct deposit transitions
/v1/directdeposits/transitions
POST
Postdirectdepositstransitions — Creates a direct deposit transition
/v1/directdeposits/transitions
GET
Getdirectdepositstransitionstoken — Returns a direct deposit transition
/v1/directdeposits/transitions/{token}
GET
Getdirectdepositstoken — Returns a direct deposit entry
/v1/directdeposits/{token}

MCP Tools

lists-all-direct-deposits

Lists all direct deposits

read-only idempotent
returns-account-and-routing-number

Returns an account and routing number which can be used for direct deposit

read-only idempotent
updates-specific-direct-deposit-account

Updates a specific direct deposit account

idempotent
returns-list-direct-deposit-transitions

Returns a list of direct deposit transitions

read-only idempotent
creates-direct-deposit-transition

Creates a direct deposit transition

returns-direct-deposit-transition

Returns a direct deposit transition

read-only idempotent
returns-direct-deposit-entry

Returns a direct deposit entry

read-only idempotent

Capability Spec

core-direct-deposits.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Core API — direct deposits
  description: 'Core API — direct deposits. 7 operations. Lead operation: Lists all direct deposits. Self-contained Naftiko
    capability covering one Marqeta business surface.'
  tags:
  - Marqeta
  - direct deposits
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MARQETA_API_KEY: MARQETA_API_KEY
capability:
  consumes:
  - type: http
    namespace: core-direct-deposits
    baseUri: ''
    description: Core API — direct deposits business capability. Self-contained, no shared references.
    resources:
    - name: directdeposits
      path: /directdeposits
      operations:
      - name: getdirectdeposits
        method: GET
        description: Lists all direct deposits
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: count
          in: query
          type: integer
          description: Number of direct deposits to retrieve
        - name: start_index
          in: query
          type: integer
          description: Start index
        - name: reversed_after_grace_period
          in: query
          type: boolean
          description: Reversed after grace period
        - name: user_token
          in: query
          type: string
          description: User token
        - name: business_token
          in: query
          type: string
          description: Business token
        - name: direct_deposit_state
          in: query
          type: string
          description: Direct deposit state
        - name: start_settlement_date
          in: query
          type: string
          description: Start settlement date
        - name: end_settlement_date
          in: query
          type: string
          description: End settlement date
        - name: sort_by
          in: query
          type: string
          description: Sort order
    - name: directdeposits-accounts-user_or_business_token
      path: /directdeposits/accounts/{user_or_business_token}
      operations:
      - name: getdirectdepositsaccountsuserorbusinesstoken
        method: GET
        description: Returns an account and routing number which can be used for direct deposit
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: user_or_business_token
          in: path
          type: string
          required: true
      - name: putdirectdepositsaccountsuserorbusinesstoken
        method: PUT
        description: Updates a specific direct deposit account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: user_or_business_token
          in: path
          type: string
          description: User or business token
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: directdeposits-transitions
      path: /directdeposits/transitions
      operations:
      - name: getdirectdepositstransitions
        method: GET
        description: Returns a list of direct deposit transitions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: count
          in: query
          type: integer
          description: Number of direct deposit transitions to retrieve
        - name: user_token
          in: query
          type: string
          description: User token
        - name: business_token
          in: query
          type: string
          description: Business token
        - name: direct_deposit_token
          in: query
          type: string
          description: Direct deposit token
        - name: start_index
          in: query
          type: integer
          description: Start index
        - name: sort_by
          in: query
          type: string
          description: Sort order
        - name: states
          in: query
          type: string
          description: Comma-delimited list of direct deposit states to display e.g. PENDING | REVERSED | APPLIED | REJECTED
      - name: postdirectdepositstransitions
        method: POST
        description: Creates a direct deposit transition
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: directdeposits-transitions-token
      path: /directdeposits/transitions/{token}
      operations:
      - name: getdirectdepositstransitionstoken
        method: GET
        description: Returns a direct deposit transition
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: token
          in: path
          type: string
          required: true
    - name: directdeposits-token
      path: /directdeposits/{token}
      operations:
      - name: getdirectdepositstoken
        method: GET
        description: Returns a direct deposit entry
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: token
          in: path
          type: string
          required: true
    authentication:
      type: basic
      username: '{{env.MARQETA_USER}}'
      password: '{{env.MARQETA_PASS}}'
  exposes:
  - type: rest
    namespace: core-direct-deposits-rest
    port: 8080
    description: REST adapter for Core API — direct deposits. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/directdeposits
      name: directdeposits
      description: REST surface for directdeposits.
      operations:
      - method: GET
        name: getdirectdeposits
        description: Lists all direct deposits
        call: core-direct-deposits.getdirectdeposits
        with:
          count: rest.count
          start_index: rest.start_index
          reversed_after_grace_period: rest.reversed_after_grace_period
          user_token: rest.user_token
          business_token: rest.business_token
          direct_deposit_state: rest.direct_deposit_state
          start_settlement_date: rest.start_settlement_date
          end_settlement_date: rest.end_settlement_date
          sort_by: rest.sort_by
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/directdeposits/accounts/{user-or-business-token}
      name: directdeposits-accounts-user-or-business-token
      description: REST surface for directdeposits-accounts-user_or_business_token.
      operations:
      - method: GET
        name: getdirectdepositsaccountsuserorbusinesstoken
        description: Returns an account and routing number which can be used for direct deposit
        call: core-direct-deposits.getdirectdepositsaccountsuserorbusinesstoken
        with:
          user_or_business_token: rest.user_or_business_token
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: putdirectdepositsaccountsuserorbusinesstoken
        description: Updates a specific direct deposit account
        call: core-direct-deposits.putdirectdepositsaccountsuserorbusinesstoken
        with:
          user_or_business_token: rest.user_or_business_token
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/directdeposits/transitions
      name: directdeposits-transitions
      description: REST surface for directdeposits-transitions.
      operations:
      - method: GET
        name: getdirectdepositstransitions
        description: Returns a list of direct deposit transitions
        call: core-direct-deposits.getdirectdepositstransitions
        with:
          count: rest.count
          user_token: rest.user_token
          business_token: rest.business_token
          direct_deposit_token: rest.direct_deposit_token
          start_index: rest.start_index
          sort_by: rest.sort_by
          states: rest.states
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postdirectdepositstransitions
        description: Creates a direct deposit transition
        call: core-direct-deposits.postdirectdepositstransitions
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/directdeposits/transitions/{token}
      name: directdeposits-transitions-token
      description: REST surface for directdeposits-transitions-token.
      operations:
      - method: GET
        name: getdirectdepositstransitionstoken
        description: Returns a direct deposit transition
        call: core-direct-deposits.getdirectdepositstransitionstoken
        with:
          token: rest.token
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/directdeposits/{token}
      name: directdeposits-token
      description: REST surface for directdeposits-token.
      operations:
      - method: GET
        name: getdirectdepositstoken
        description: Returns a direct deposit entry
        call: core-direct-deposits.getdirectdepositstoken
        with:
          token: rest.token
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: core-direct-deposits-mcp
    port: 9090
    transport: http
    description: MCP adapter for Core API — direct deposits. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: lists-all-direct-deposits
      description: Lists all direct deposits
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-direct-deposits.getdirectdeposits
      with:
        count: tools.count
        start_index: tools.start_index
        reversed_after_grace_period: tools.reversed_after_grace_period
        user_token: tools.user_token
        business_token: tools.business_token
        direct_deposit_state: tools.direct_deposit_state
        start_settlement_date: tools.start_settlement_date
        end_settlement_date: tools.end_settlement_date
        sort_by: tools.sort_by
      outputParameters:
      - type: object
        mapping: $.
    - name: returns-account-and-routing-number
      description: Returns an account and routing number which can be used for direct deposit
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-direct-deposits.getdirectdepositsaccountsuserorbusinesstoken
      with:
        user_or_business_token: tools.user_or_business_token
      outputParameters:
      - type: object
        mapping: $.
    - name: updates-specific-direct-deposit-account
      description: Updates a specific direct deposit account
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: core-direct-deposits.putdirectdepositsaccountsuserorbusinesstoken
      with:
        user_or_business_token: tools.user_or_business_token
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: returns-list-direct-deposit-transitions
      description: Returns a list of direct deposit transitions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-direct-deposits.getdirectdepositstransitions
      with:
        count: tools.count
        user_token: tools.user_token
        business_token: tools.business_token
        direct_deposit_token: tools.direct_deposit_token
        start_index: tools.start_index
        sort_by: tools.sort_by
        states: tools.states
      outputParameters:
      - type: object
        mapping: $.
    - name: creates-direct-deposit-transition
      description: Creates a direct deposit transition
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: core-direct-deposits.postdirectdepositstransitions
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: returns-direct-deposit-transition
      description: Returns a direct deposit transition
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-direct-deposits.getdirectdepositstransitionstoken
      with:
        token: tools.token
      outputParameters:
      - type: object
        mapping: $.
    - name: returns-direct-deposit-entry
      description: Returns a direct deposit entry
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: core-direct-deposits.getdirectdepositstoken
      with:
        token: tools.token
      outputParameters:
      - type: object
        mapping: $.