Silverflow Disputes API

The Disputes API from Silverflow — 9 operation(s) for disputes.

Business capability
Card Transaction Processing Management BC-1340.70

Operations 10

GET /disputes List Disputes #
GET /disputes/{disputeKey} Get Dispute #
GET /disputes/{disputeKey}/documents List Dispute Documents #
POST /disputes/{disputeKey}/documents Add Dispute Document #
POST /disputes/{disputeKey}/accept Accept Dispute #
POST /disputes/{disputeKey}/submitEvidence Submit Evidence #
POST /disputes/{disputeKey}/rejectEvidence Reject Evidence #
POST /disputes/{disputeKey}/defend Defend Dispute #
GET /disputes/{disputeKey}/eventHistory List Dispute History Events #
GET /disputes/eventHistory/{eventHistoryKey} Get Dispute History Event #

Documentation

Specifications

Other Resources

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/silverflow-disputes-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 email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

silverflow-disputes-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Silverflow Disputes API
  version: 1.417.0
  contact:
    name: API Support
    email: support@silverflow.com
  license:
    name: Commercial
  description: 'Operations tagged Disputes across 2 of this provider''s published API definitions: silverflow-openapi.yml, silverflow-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://eu-west-1.api.silverflow.com/v1
  description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
- url: https://us-east-2.api.silverflow.com/v1
  description: Production URL for North America
- url: https://eu-west-1.api-sbx.silverflow.com/v1
  description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
security:
- ApiKey: []
- BearerToken: []
tags:
- name: Disputes
paths:
  /disputes:
    get:
      operationId: getDisputes
      summary: List Disputes
      description: 'This operation returns a (paged) list of all Disputes for the authenticated Agent.


        Requires `disputes:List` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputesSort'
      - $ref: '#/components/parameters/amountFrom'
      - $ref: '#/components/parameters/amountTo'
      - $ref: '#/components/parameters/disputeDateFrom'
      - $ref: '#/components/parameters/disputeDateTo'
      - $ref: '#/components/parameters/actionDueDateFrom'
      - $ref: '#/components/parameters/actionDueDateTo'
      - $ref: '#/components/parameters/disputeStatuses'
      - $ref: '#/components/parameters/disputeStages'
      - $ref: '#/components/parameters/networkQps'
      - $ref: '#/components/parameters/parameters-merchantKeyQs'
      - $ref: '#/components/parameters/acceptorKeyQp'
      - $ref: '#/components/parameters/searchKeyword'
      - $ref: '#/components/parameters/closed'
      - $ref: '#/components/parameters/actionRequired'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/components-parameters-offsetToken'
      responses:
        '200':
          description: A (paged) list of Disputes
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DisputesPage'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/{disputeKey}:
    get:
      operationId: getDispute
      summary: Get Dispute
      description: 'This operations returns the Dispute identified by the specified key.


        Requires `disputes:Get` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      responses:
        '200':
          description: The referenced Dispute
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dispute'
              examples:
                received-dispute:
                  $ref: '#/components/examples/visa-dispute-received'
                dispute-liability-accepted:
                  $ref: '#/components/examples/dispute-liability-accepted'
                dispute-expires:
                  $ref: '#/components/examples/dispute-expires'
                dispute-won:
                  $ref: '#/components/examples/dispute-closedWon'
                dispute-awaiting-response:
                  $ref: '#/components/examples/dispute-awaiting-response'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/{disputeKey}/documents:
    get:
      operationId: getDisputeDocumentsMetadata
      summary: List Dispute Documents
      description: 'This operation returns a (paged) list of (active) Documents (metadata) for a Dispute.


        Requires `disputes:ListDocuments` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      - $ref: '#/components/parameters/parameters-sortOrder'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/components-parameters-offsetToken'
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/status'
      responses:
        '200':
          description: A (paged) list of Documents (metadata)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DisputeDocumentsPage'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    post:
      operationId: addDisputeDocumentsMetadata
      summary: Add Dispute Document
      description: 'This operations adds a new Document (metadata) for the associated Dispute.


        The maximum file size is **10MB** and the maximum combined size of all documents uploaded for a Dispute is **14.5MB**.


        Requires `disputes:AddDocument` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      requestBody:
        description: 'The request body allows to set metadata information for the Dispute document.

          '
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentCreate'
            examples:
              create-dispute-document:
                $ref: '#/components/examples/create-dispute-document'
      responses:
        '200':
          description: A document metadata object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DisputeDocumentWithoutFile'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/{disputeKey}/accept:
    post:
      operationId: acceptDispute
      summary: Accept Dispute
      description: 'This operation is to accept liability of a dispute.


        Requires `disputes:Accept` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      - $ref: '#/components/parameters/ifMatch'
      responses:
        '200':
          description: The accepted dispute
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dispute'
        '400':
          $ref: '#/components/responses/responses-BadRequestError'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '409':
          $ref: '#/components/responses/responses-ConflictError'
        '412':
          $ref: '#/components/responses/responses-PreconditionFailedError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/{disputeKey}/submitEvidence:
    post:
      operationId: submitEvidence
      summary: Submit Evidence
      description: 'Evidence submission is required to defend a Dispute. Evidence can be submitted if the Dispute is in `received`, `evidenceRejected` or `defenseFailed` status.


        Requires `disputes:submitEvidence` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      - $ref: '#/components/parameters/ifMatch'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitEvidence'
      responses:
        '200':
          description: The dispute
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dispute'
        '400':
          $ref: '#/components/responses/responses-BadRequestError'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '409':
          $ref: '#/components/responses/responses-ConflictError'
        '412':
          $ref: '#/components/responses/responses-PreconditionFailedError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/{disputeKey}/rejectEvidence:
    post:
      operationId: rejectEvidence
      summary: Reject Evidence
      description: 'Evidence rejection will move the Dispute to `evidenceRejected` status to allow the Merchant or Acquirer to update their defense.


        Requires `disputes:rejectEvidence` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      - $ref: '#/components/parameters/ifMatch'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RejectDispute'
      responses:
        '200':
          description: The dispute
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dispute'
        '400':
          $ref: '#/components/responses/responses-BadRequestError'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '409':
          $ref: '#/components/responses/responses-ConflictError'
        '412':
          $ref: '#/components/responses/responses-PreconditionFailedError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/{disputeKey}/defend:
    post:
      operationId: defendDispute
      summary: Defend Dispute
      description: 'Defending a Dispute will publish all documents that have been uploaded. Disputes in `received`, `evidenceSubmitted` or `defenseFailed` status can be defended, `actionRequired` flag will be true for these Disputes.

        It is possible to submit evidence while defending a Dispute. In that case the required information needs to be send in the body.


        Requires `disputes:Defend` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      - $ref: '#/components/parameters/ifMatch'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DisputeDefense'
      responses:
        '200':
          description: The defended dispute
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Dispute'
        '400':
          $ref: '#/components/responses/responses-BadRequestError'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '409':
          $ref: '#/components/responses/responses-ConflictError'
        '412':
          $ref: '#/components/responses/responses-PreconditionFailedError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/{disputeKey}/eventHistory:
    get:
      operationId: getDisputeEventHistory
      summary: List Dispute History Events
      description: 'This operation returns a (paged) Dispute History Events for a Dispute.


        Requires `disputes:ListHistory` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/disputeKey'
      - $ref: '#/components/parameters/parameters-sortOrder'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/components-parameters-offsetToken'
      - $ref: '#/components/parameters/initiator'
      - name: status
        description: The status of a Dispute Document. [Removal date is 06.12.2026]
        in: query
        deprecated: true
        required: false
        schema:
          type: string
          enum:
          - pending
          - active
          - archived
      responses:
        '200':
          description: A (paged) list of Dispute History Events
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DisputeEventHistoryPage'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
  /disputes/eventHistory/{eventHistoryKey}:
    get:
      operationId: getEventHistory
      summary: Get Dispute History Event
      description: 'Returns the Dispute History Event identified by the specified key.


        Requires `disputes:GetHistory` permission.

        '
      tags:
      - Disputes
      parameters:
      - $ref: '#/components/parameters/eventHistoryKey'
      responses:
        '200':
          description: The referenced Dispute History Event
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DisputeEventHistory'
              examples:
                defenseSuccessfullyProcessedMastercard:
                  $ref: '#/components/examples/mc-defense-successfully-processed'
                defenseSuccessfullyProcessedVisa:
                  $ref: '#/components/examples/visa-defense-successfully-processed'
                disputeExpirerAcquirerSide:
                  $ref: '#/components/examples/dispute-expires-acquirer-side'
                disputeWon:
                  $ref: '#/components/examples/dispute-won'
                liabilityAccepted:
                  $ref: '#/components/examples/liability-accepted'
                mastercardChargebackReceived:
                  $ref: '#/components/examples/mc-chargeback-received'
                mastercardCollaborationRequestReceived:
                  $ref: '#/components/examples/collaboration-request-received'
                mastercardPrearbitrationReceived:
                  $ref: '#/components/examples/mc-prearbitration-received'
                visaChargebackReceived:
                  $ref: '#/components/examples/visa-chargeback-received'
                visaPrearbitrationReceived:
                  $ref: '#/components/examples/visa-prearbitration-received'
                visaPrearbitrationResponseReceived:
                  $ref: '#/components/examples/prearbitration-response-received'
        '401':
          $ref: '#/components/responses/responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/responses-NotFoundError'
        '429':
          $ref: '#/components/responses/responses-TooManyRequestsError'
    servers:
    - url: https://eu-west-1.api.silverflow.com/v1
      description: Production URL for Europe - Equivalent to https://api.silverflow.co/v1
    - url: https://us-east-2.api.silverflow.com/v1
      description: Production URL for North America
    - url: https://eu-west-1.api-sbx.silverflow.com/v1
      description: Sandbox URL - Equivalent to https://api-sbx.silverflow.co/v1
components:
  schemas:
    DisputeEventHistory:
      type: object
      required:
      - key
      - agentKey
      - merchantKey
      - merchantAcceptorKey
      - disputeStatus
      - disputeStage
      - disputeAmount
      - created
      - eventDate
      - disputeKey
      - initiator
      - disputeVersion
      - status
      description: 'A Dispute

        '
      properties:
        key:
          $ref: '#/components/schemas/DisputeEventHistoryKey'
        agentKey:
          $ref: '#/components/schemas/components-schemas-agentKey'
        merchantAcceptorKey:
          $ref: '#/components/schemas/openapi_components-schemas-acceptorKey'
        merchantKey:
          $ref: '#/components/schemas/components-schemas-merchantKey'
        disputeStatus:
          $ref: '#/components/schemas/disputeStatus'
        disputeStage:
          $ref: '#/components/schemas/disputeStage'
        disputeAmount:
          $ref: '#/components/schemas/openapi_components-schemas-Amount'
        disputeReason:
          $ref: '#/components/schemas/Reason'
        created:
          $ref: '#/components/schemas/openapi_components-schemas-created-3'
        eventDate:
          $ref: '#/components/schemas/eventDate'
        comment:
          description: Comment from initiator
          type: string
        files:
          $ref: '#/components/schemas/EventFiles'
        disputeKey:
          $ref: '#/components/schemas/disputeKey'
        initiator:
          $ref: '#/components/schemas/schema'
        status:
          $ref: '#/components/schemas/common_status'
        disputeVersion:
          $ref: '#/components/schemas/openapi_components-schemas-version'
        submittedDefense:
          $ref: '#/components/schemas/submittedDefense'
        eventDetails:
          $ref: '#/components/schemas/EventDetails'
    disputeHandling:
      description: Represents the disputesHandling options set on the merchant acceptor by the time dispute has been received.
      type: object
      additionalProperties: false
      properties:
        autoDefense:
          type: boolean
    DisputeDocumentWithoutFile:
      allOf:
      - $ref: '#/components/schemas/DocumentWithoutFile'
      - type: object
        required:
        - disputeKey
        - disputeStage
        properties:
          disputeKey:
            $ref: '#/components/schemas/disputeKey'
          disputeStage:
            $ref: '#/components/schemas/disputeStage'
    filename:
      description: UUID formatted file name.
      type: string
      readOnly: false
    DisputeEventHistoryPage:
      allOf:
      - $ref: '#/components/schemas/components-schemas-PageWithMoreItems'
      - type: object
        required:
        - events
        properties:
          events:
            type: array
            items:
              $ref: '#/components/schemas/DisputeEventHistory'
    disputeResponseReasonIdMastercardCollaboration:
      description: Unique code of a `disputeResponseReason`
      type: string
      enum:
      - E
    clearingDateTime:
      type: string
      description: Clearing datetime of the disputed authorization.
      format: date-time
      example: '2021-05-27T10:57:52Z'
    DisputeEventHistoryKey:
      description: Uniquely identifies a dispute history event
      type: string
      pattern: ^deh-[a-zA-Z0-9]+$
      minLength: 1
      maxLength: 120
      readOnly: false
      example: deh-1UF2NafdfrdPMf2XrS2
    documents_status:
      description: The current status of the document.
      type: string
      enum:
      - pending
      - active
      - archived
    schemas-cardNetwork:
      type: string
      description: The card network
      enum:
      - mastercard
      - visa
      - american-express
    components-schemas-offsetToken:
      type: string
      pattern: ^[a-zA-Z0-9%]+$
      minLength: 1
      maxLength: 2048
      example: LUtyr0s918rNZ5WuWDYh5FNzqAli6HqKHpPDatcfdsaVlibrlO49BKcOdz9YccUOtDSoyLtc4kAiOLkmjSW5zLa8OCnOXXBRja2rDYh5FNzqAli6HqKHpPDatcfdsaVlibrlO49BKcOdz9Yc
    openapi_components-schemas-version:
      type: integer
      description: The version of this object
      format: int64
      minimum: 1
      maximum: 1000
      example: 1
      readOnly: false
    disputeStages:
      description: The list of stages of a Dispute
      type: array
      items:
        $ref: '#/components/schemas/disputeStage'
    disputeStatuses:
      description: The list of (flow)statuses of a Dispute
      type: array
      items:
        $ref: '#/components/schemas/disputeStatus'
    schemas-status:
      description: The status of a Dispute.
      type: string
      enum:
      - active
      - archived
    disputeResponseReasonIdMastercard:
      description: Unique code of a `disputeResponseReason`
      type: string
      enum:
      - '2700'
      - '2011'
      - '2001'
      - '2002'
      - '2004'
      - '2701'
      - '2702'
      - '2704'
      - '2709'
      - '2710'
      - '2713'
      - '2008'
      - '2870'
      - '2871'
      - '2003'
      - '2707'
    partialDefenseAmountValue:
      type: integer
      format: int64
      minimum: 1
      description: "The partial defense amount in minor units. Must be at least 1 and less than the total dispute amount. \nFor example, `$12.34` should be represented as `1234`.\n"
      example: 1234
    disputeDate:
      type: string
      description: Datetime of Dispute submission in [date time string format](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format).
      format: date-time
      example: '2021-05-27T10:57:52Z'
    disputeSubResponseReasonId:
      description: Unique code of a `disputeSubResponseReason`.
      type: string
      enum:
      - CE01
      - CE02
      - CE03
      - CE05
      - CE06
      - CE07
      - CE08
      - CE11
      - CE12
      - CE14
      - CE15
      - CE17
      - CE18
      - IDRA1
      - IDRA2
      - IDRA3
      - IDRA4
      - IDRA5
      - IDRA6
      - IDRA7
      - IDRP1
      - IDRP2
      - IDRP3
      - IDRP4
      - IDRC1
      - IDRC2
      - IDRC3
      - IDRC4
      - IDRC5
      - IDRC6
      - IDRC7
      - IDRC8
      - IDRC9
      - IDRC10
      - IDRC11
      - IDRC12
      - IDRC13
      - IDRC14
      - IDRC15
      - IDRC16
      - IDRC17
      - IDRC18
      - IDRC19
      - IDRC20
      - IDRC21
      - IDRC22
      - IDRC23
      - IDRC24
      - IDRC25
    schemas-mid:
      type: string
      description: 'Merchant ID assigned to the merchant (or Payfac) by the acquirer.

        Acceptors that use the same BIN, Doing Business As name, and location must have the same `mid`.

        Acceptors that use the same BIN cannot share a `mid` if they have a different Doing Business As name or location.

        '
      pattern: ^[a-zA-Z0-9-_\.]+$
      minLength: 1
      maxLength: 15
    defenseOptions:
      description: Represents the possible defense options when the Dispute is in a defendable status.
      type: array
      additionalProperties: false
      items:
        $ref: '#/components/schemas/defenseOption'
    PageWithMoreAndTotalItems:
      type: object
      properties:
        moreItems:
          $ref: '#/components/schemas/moreItems'
        offsetToken:
          $ref: '#/components/schemas/components-schemas-offsetToken'
        totalItems:
          $ref: '#/components/schemas/totalItems'
    DisputesPage:
      allOf:
      - $ref: '#/components/schemas/PageWithMoreAndTotalItems'
      - type: object
        required:
        - disputes
        properties:
          disputes:
            type: array
            items:
              $ref: '#/components/schemas/Dispute'
    schemas-localTransactionDateTime:
      type: string
      description: The date and time of the transaction
      format: date-time
      readOnly: false
      example: '2021-05-27T10:57:52Z'
    submittedDefense:
      description: Represents the most recent defense evidence, submitted by an Acquirer or a Merchant. `submittedEvidence` is filled when defense is initiated (dispute status = `defenseInitiated`) and removed when it is in `awaitingResponse` status.
      type: object
      additionalProperties: false
      properties:
        messageText:
          type: string
        elaboration:
          type: string
        disputeResponseReasonId:
          $ref: '#/components/schemas/disputeResponseReasonId'
        disputeSubResponseReasonId:
          $ref: '#/components/schemas/disputeSubResponseReasonId'
        creditOrReversalDetail:
          $ref: '#/components/schemas/creditOrReversalDetail'
        partialDefenseAmount:
          $ref: '#/components/schemas/openapi_components-schemas-Amount'
        isPartialDefense:
          $ref: '#/components/schemas/isPartialDefense'
        responseText:
          $ref: '#/components/schemas/amexResponseText'
        refundAmount:
          $ref: '#/components/schemas/openapi_components-schemas-Amount'
        files:
          type: array
          additionalProperties: false
          items:
            $ref: '#/components/schemas/EventFile'
    DefendVisaPreArbitration:
      type: object
      additionalProperties: false
      properties:
        elaboration:
          $ref: '#/components/schemas/elaborationVisa'
    schemas-fraudLiability:
      description: Identifies whether the acquirer or issuer has the liability of the dispute.
      type: string
      readOnly: false
      enum:
      - acquirer
      - issuer
    RejectDispute:
      type: object
      additionalProperties: false
      required:
      - rejectReason
      properties:
        rejectReason:
          $ref: '#/components/schemas/schemas-FreeTextField'
    lastEventDate:
      description: The datetime of the last event in card network.
      type: string
      format: date
      example: '2019-08-24T14:15:11'
    eventDate:
      description: Datetime of an action mentioned in the history record. (e.g. dispute acceptance date)
      format: date-time
      readOnly: false
      example: '2021-05-27T10:57:52Z'
    isPartial:
      description: Flag to indicate whether the Dispute was issued for the entire purchase amount.
      type: boolean
      readOnly: false
    totalItems:
      type: number
      format: int64
      minLength: 0
      example: '1'
    SubmitEvidenceAmexChargeback:
      allOf:
      - $ref: '#/components/schemas/DefendAmexChargeback'
    chargeInfo:
      description: Charge related information
      type: object
      required:
      - arn
      - amount
      - fraudLiability
      properties:
        networkReference:
          $ref: '#/components/schemas/networkReference'
        arn:
          $ref: '#/components/schemas/acquirerReferenceNumber'
        localTransactionDateTime:
          $ref: '#/components/schemas/schemas-localTransactionDateTime'
        amount:
          $ref: '#/components/schemas/openapi_components-schemas-Amount'
        chargeKey:
          $ref: '#/components/schemas/schemas-chargeKey'
        transactionReference:
          $ref: '#/components/schemas/schemas-transactionReference'
        fraudLiability:
          $ref: '#/components/schemas/schemas-fraudLiability'
        clearingDateTime:
          $ref: '#/components/schemas/clearingDateTime'
        crn:
          $ref: '#/components/schemas/clearingReferenceNumber'
    DisputeDocument:
      allOf:
      - $ref: '#/components/schemas/Document'
      - type: object
        required:
        - disputeKey
        - disputeStage
        properties:
          disputeKey:
            $ref: '#/components/schemas/disputeKey'
          disputeStage:
            $ref: '#/components/schemas/disputeStage'
    defenseOption:
      type: object
      additionalProperties: false
      properties:
        disputeResponseReason:
          $ref: '#/components/schemas/disputeResponseReason'
        disputeSubResponseReason:
          type: array
          additionalProperties: false
          items:
            $ref: '#/components/schemas/disputeSubResponseReason'
    SubmitEvidenceMastercardChargeback:
      type: object
      additionalProperties: false
      properties:
        messageText:
          $ref: '#/components/schemas/messageText'
        disputeResponseReasonId:
          $ref: '#/components/schemas/disputeResponseReasonIdMastercard'
        partialDefenseAmount:
          $ref: '#/components/schemas/partialDefenseAmountValue'
    disputeResponseReasonIdAmexRFI:
      description: Unique code of a `disputeResponseReason`.
      type: string
      enum:
      - '02'
      - '03'
      - '04'
      - '05'
      - '06'
      - '07'
      - 08
      - 09
      - '10'
      - '11'
      - '12'
      - '13'
      - '14'
      - '15'
      - '16'
      - '17'
      - '18'
      - '19'
      - '20'
      - '21'
      - '22'
      - '23'
      - '24'
      - '25'
      - '40'
      - '41'
      - '42'
      - '43'
      - '44'
      - '45'
      - '46'
      - '47'
      - '48'
      - '49'
      - '50'
      - '51'
      - '52'
      - '53'
      - '70'
      - '71'
      - '72'
      - '73'
      - '74'
    EventFile:
      type: object
      required:
   

# --- truncated at 32 KB (130 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/silverflow/refs/heads/main/openapi/silverflow-disputes-api-openapi.yml