naftiko: 1.0.0-alpha2 info: label: Core API — Credit Account Disputes description: 'Core API — Credit Account Disputes. 4 operations. Lead operation: List account disputes. Self-contained Naftiko capability covering one Marqeta business surface.' tags: - Marqeta - Credit Account Disputes created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MARQETA_API_KEY: MARQETA_API_KEY capability: consumes: - type: http namespace: core-credit-account-disputes baseUri: '' description: Core API — Credit Account Disputes business capability. Self-contained, no shared references. resources: - name: accounts-account_token-disputes path: /accounts/{account_token}/disputes operations: - name: getdisputesbyaccount method: GET description: List account disputes outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: account_token in: path type: string description: Unique identifier of the credit account for which to retrieve the disputes. required: true - name: count in: query type: integer description: Number of disputes resources to retrieve. - name: start_index in: query type: integer description: Sort order index of the first resource in the returned array. - name: sort_by in: query type: string description: Field on which to sort. - name: ledger_entry_tokens in: query type: array description: Unique identifier of the journal entry in dispute. - name: statuses in: query type: array description: Status of the dispute. - name: createdisputeforaccount method: POST description: Create account dispute outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: account_token in: path type: string description: Unique identifier of the credit account for which to create a dispute. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: accounts-account_token-disputes-dispute_token path: /accounts/{account_token}/disputes/{dispute_token} operations: - name: retrievedispute method: GET description: Retrieve account dispute outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: account_token in: path type: string description: Unique identifier of the credit account from which to retrieve a dispute. required: true - name: dispute_token in: path type: string description: Unique identifier of the dispute to retrieve. required: true - name: accounts-account_token-disputes-dispute_token-transitions path: /accounts/{account_token}/disputes/{dispute_token}/transitions operations: - name: transitiondispute method: POST description: Update account dispute outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: account_token in: path type: string description: Unique identifier of the credit account from which to update a dispute. required: true - name: dispute_token in: path type: string description: Unique identifier of the dispute to update. required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: basic username: '{{env.MARQETA_USER}}' password: '{{env.MARQETA_PASS}}' exposes: - type: rest namespace: core-credit-account-disputes-rest port: 8080 description: REST adapter for Core API — Credit Account Disputes. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/accounts/{account-token}/disputes name: accounts-account-token-disputes description: REST surface for accounts-account_token-disputes. operations: - method: GET name: getdisputesbyaccount description: List account disputes call: core-credit-account-disputes.getdisputesbyaccount with: account_token: rest.account_token count: rest.count start_index: rest.start_index sort_by: rest.sort_by ledger_entry_tokens: rest.ledger_entry_tokens statuses: rest.statuses outputParameters: - type: object mapping: $. - method: POST name: createdisputeforaccount description: Create account dispute call: core-credit-account-disputes.createdisputeforaccount with: account_token: rest.account_token body: rest.body outputParameters: - type: object mapping: $. - path: /v1/accounts/{account-token}/disputes/{dispute-token} name: accounts-account-token-disputes-dispute-token description: REST surface for accounts-account_token-disputes-dispute_token. operations: - method: GET name: retrievedispute description: Retrieve account dispute call: core-credit-account-disputes.retrievedispute with: account_token: rest.account_token dispute_token: rest.dispute_token outputParameters: - type: object mapping: $. - path: /v1/accounts/{account-token}/disputes/{dispute-token}/transitions name: accounts-account-token-disputes-dispute-token-transitions description: REST surface for accounts-account_token-disputes-dispute_token-transitions. operations: - method: POST name: transitiondispute description: Update account dispute call: core-credit-account-disputes.transitiondispute with: account_token: rest.account_token dispute_token: rest.dispute_token body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: core-credit-account-disputes-mcp port: 9090 transport: http description: MCP adapter for Core API — Credit Account Disputes. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-account-disputes description: List account disputes hints: readOnly: true destructive: false idempotent: true call: core-credit-account-disputes.getdisputesbyaccount with: account_token: tools.account_token count: tools.count start_index: tools.start_index sort_by: tools.sort_by ledger_entry_tokens: tools.ledger_entry_tokens statuses: tools.statuses outputParameters: - type: object mapping: $. - name: create-account-dispute description: Create account dispute hints: readOnly: false destructive: false idempotent: false call: core-credit-account-disputes.createdisputeforaccount with: account_token: tools.account_token body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-account-dispute description: Retrieve account dispute hints: readOnly: true destructive: false idempotent: true call: core-credit-account-disputes.retrievedispute with: account_token: tools.account_token dispute_token: tools.dispute_token outputParameters: - type: object mapping: $. - name: update-account-dispute description: Update account dispute hints: readOnly: false destructive: false idempotent: false call: core-credit-account-disputes.transitiondispute with: account_token: tools.account_token dispute_token: tools.dispute_token body: tools.body outputParameters: - type: object mapping: $.