Finix API

The Finix API is a HAL/HATEOAS REST API for accepting and sending card and bank payments. Resources include Identities, Merchants, Payment Instruments, Authorizations, Transfers, Settlements, Disputes, Fee Profiles, Verifications, Onboarding Forms, Devices, and Webhooks. Sandbox host finix.sandbox-payments-api.com; live host finix.live-payments-api.com. Current version 2022-02-01.

OpenAPI Specification

finix-openapi-original.yml Raw ↑
openapi: 3.0.2
x-stoplight:
  id: c6861590dda46
info:
  title: Finix API
  description:
    $ref: api-descriptions/main.md
  contact:
    name: Finix
    url: https://finix.com
    email: support@finixpayments.com
  version: '2022-02-01'
x-ignoredHeaderParameters:
- Accept
- finix-apiuser-role
- date
- x-request-id
servers:
- description: Sandbox server to be used for testing and development
  url: https://finix.sandbox-payments-api.com
tags:
- name: Authorizations
  description:
    $ref: api-descriptions/tags/authorizations.md
- name: Balance Transfers
  description:
    $ref: api-descriptions/tags/balance-transfers.md
- name: Disputes
  description:
    $ref: api-descriptions/tags/disputes.md
- name: Fee Profiles
  description:
    $ref: api-descriptions/tags/fee-profiles.md
- name: Identities
  description:
    $ref: api-descriptions/tags/identities.md
- name: Merchants
  description:
    $ref: api-descriptions/tags/merchants.md
- name: Payment Instruments
  description:
    $ref: api-descriptions/tags/payment-instruments.md
- name: Settlements
  description:
    $ref: api-descriptions/tags/settlements.md
- name: Transfers
  description:
    $ref: api-descriptions/tags/transfers.md
- name: Split Transfers
  description:
    $ref: api-descriptions/tags/split-transfers.md
- name: Webhooks
  description:
    $ref: api-descriptions/tags/webhooks.md
- name: Devices
  description:
    $ref: api-descriptions/tags/devices.md
- name: Merchant Profiles
  description:
    $ref: api-descriptions/tags/merchant-profiles.md
- name: Payout Profiles
  description:
    $ref: api-descriptions/tags/payout-profiles.md
- name: Reversals
  description:
    $ref: api-descriptions/tags/reversals.md
- name: Risk profiles
  description:
    $ref: api-descriptions/tags/risk-profiles.md
- name: Verifications
  description:
    $ref: api-descriptions/tags/verifications.md
- name: Files
  description:
    $ref: api-descriptions/tags/files.md
- name: Instrument Updates
  description:
    $ref: api-descriptions/tags/instrument-updates.md
- name: Onboarding Forms
  description:
    $ref: api-descriptions/tags/onboarding-forms.md
- name: Compliance Forms
  description:
    $ref: api-descriptions/tags/compliance-forms.md
x-tagGroups:
- name: MAIN RESOURCES
  tags:
  - Authorizations
  - Compliance Forms
  - Devices
  - Disputes
  - Fee Profiles
  - Files
  - Identities
  - Instrument Updates
  - Merchants
  - Onboarding Forms
  - Payment Instruments
  - Settlements
  - Split Transfers
  - Transfers
  - Users
  - Webhooks
- name: CORE-PAYFAC RESOURCES
  tags:
  - Application Profiles
  - Applications
  - Balance Transfers
  - Merchant Profiles
  - Payout Profiles
  - Verifications
- name: SUBSCRIPTION BILLING
  tags:
  - Subscription Schedules
  - Subscription Amounts
  - Subscription Enrollments
paths:
  /authorizations:
    post:
      tags:
      - Authorizations
      description: 'Create an `Authorization` to process a transaction.


        Related Guides: [Creating and Capturing an Authorization](/guides/payments/making-a-payment/creating-and-capturing-an-authorization/),
        [Level 2 and 3 Processing](/guides/payments/making-a-payment/level-2-and-level-3-processing/),
        [In-Person Cloud Payments](/guides/payments/in-person-payments/cloud/in-person-cloud-payments/),
        [Buyer Charges](/guides/payments/making-a-payment/buyer-charges/)'
      summary: Create an Authorization
      operationId: createAuthorization
      requestBody:
        $ref: '#/components/requestBodies/CreateAuthorizationRequest'
      responses:
        '201':
          $ref: '#/components/responses/Authorization'
        '400':
          $ref: '#/components/responses/ErrorUnprocessableEntity'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '402':
          $ref: '#/components/responses/ErrorPaymentRequired'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
        '422':
          $ref: '#/components/responses/Error422InvalidField'
      x-java-method-name: create
      parameters:
      - schema:
          type: string
          default: '2018-01-01'
          example: '2022-02-01'
        in: header
        name: Finix-Version
        description: Specify the API version of your request. For more details, see
          [Versioning.](/guides/developers/versioning/)
      x-python-method-name: create
    get:
      tags:
      - Authorizations
      description: 'Retrieve a list of `Authorizations`. '
      summary: List Authorizations
      operationId: listAuthorizations
      parameters:
      - $ref: '#/components/parameters/QueryAmountFilter'
      - $ref: '#/components/parameters/QueryAmountGtFilter'
      - $ref: '#/components/parameters/QueryAmountGteFilter'
      - $ref: '#/components/parameters/QueryAmountLtFilter'
      - $ref: '#/components/parameters/QueryAmountLteFilter'
      - $ref: '#/components/parameters/QueryBeforeCursor'
      - $ref: '#/components/parameters/QueryAfterCursor'
      - $ref: '#/components/parameters/QueryCreatedAtGteFilter'
      - $ref: '#/components/parameters/QueryCreatedAtLteFilter'
      - $ref: '#/components/parameters/QueryIdempotencyIdFilter'
      - $ref: '#/components/parameters/QueryLimit'
      - $ref: '#/components/parameters/TagsKey'
      - $ref: '#/components/parameters/TagsValue'
      - in: query
        name: state
        description: Filter by Transaction state.
        schema:
          enum:
          - SUCCEEDED
          - FAILED
          - PENDING
          - CANCELED
      - $ref: '#/components/parameters/QueryUpdatedAtGteFilter'
      - $ref: '#/components/parameters/QueryUpdatedAtLteFilter'
      - $ref: '#/components/parameters/QueryTraceIdFilter'
      - $ref: '#/components/parameters/QueryVoidFilter'
      - in: query
        name: instrument_bin
        description: Filter by Bank Identification Number (BIN). The BIN is the first
          6 digits of the masked number.
        schema:
          type: string
      - schema:
          type: string
        in: query
        name: instrument_account_last4
        description: "Filter Transactions by the last 4 digits of the bank account.\
          \ The bank account last 4 are the last 4 digits of the masked number\tinstrument_account_last4=9444\
          \ BIN."
      - schema:
          type: string
        in: query
        name: instrument_brand_type
        description: Filter by card brand. Available card brand types can be found
          in the drop-down.
      - schema:
          type: string
        in: query
        name: merchant_identity_id
        description: Filter by `Identity` ID.
      - schema:
          type: string
        in: query
        name: merchant_identity_name
        description: Filter Transactions by `Identity` name. The name is not case-sensitive.
      - schema:
          type: string
        in: query
        name: instrument_name
        description: Filter Transactions by `Payment Instrument` name.
      - schema:
          type: string
        in: query
        name: instrument_type
        description: 'Filter Transactions by `Payment Instrument` type. Available
          instrument types include: Bank Account or Payment Card.'
      - schema:
          type: string
        in: query
        name: merchant_id
        description: Filter by `Merchant` ID.
      - schema:
          type: string
        in: query
        name: merchant_mid
        description: Filter by Merchant Identification Number (MID).
      - schema:
          type: string
        in: query
        name: instrument_card_last4
        description: Filter by the payment card last 4 digits.
      - schema:
          type: string
        in: query
        name: merchant_processor_id
        description: Filter by `Processor` ID.
      - schema:
          type: string
        in: query
        name: type
        description: Type of the `Authorization`.
      - schema:
          type: string
          default: '2018-01-01'
          example: '2022-02-01'
        in: header
        name: Finix-Version
        description: Specify the API version of your request. For more details, see
          [Versioning.](/guides/developers/versioning/)
      responses:
        '200':
          $ref: '#/components/responses/AuthorizationsList'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: list
      x-group-parameters: true
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/authorizations\" \\\
          \n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: list
      x-returns-list: true
  /authorizations/{authorization_id}:
    get:
      tags:
      - Authorizations
      description: Retrieve the details of a previously created `Authorization`.
      summary: Fetch an Authorization
      operationId: getAuthorization
      responses:
        '200':
          $ref: '#/components/responses/Authorization'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: get
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/authorizations/AUsCN6f7qTLzxUD3Bp6iXQMQ\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: get
    parameters:
    - $ref: '#/components/parameters/AuthorizationId'
    put:
      tags:
      - Authorizations
      description: 'Use a PUT request to capture an `Authorization`. If captured successfully,
        the `transfer` field of the `Authorization` will contain the ID of the `Transfer`
        resource that moves funds.


        Related Guides: [Creating and Capturing an Authorization](/guides/payments/making-a-payment/creating-and-capturing-an-authorization/),
        [Level 2 and 3 Processing](/guides/payments/making-a-payment/level-2-and-level-3-processing/),
        [In-Person Cloud Payments](/guides/payments/in-person-payments/cloud/in-person-cloud-payments/),
        [Buyer Charges](/guides/payments/making-a-payment/buyer-charges/)'
      summary: Capture an Authorization
      operationId: captureAuthorization
      requestBody:
        $ref: '#/components/requestBodies/UpdateAuthorizationRequest'
      responses:
        '200':
          $ref: '#/components/responses/AuthorizationUpdated'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
        '422':
          $ref: '#/components/responses/Error422InvalidField'
      x-internal: false
      x-java-method-name: update
      parameters:
      - schema:
          type: string
          default: '2018-01-01'
          example: '2022-02-01'
        in: header
        name: Finix-Version
        description: Specify the API version of your request. For more details, see
          [Versioning.](/guides/developers/versioning/)
      x-python-method-name: update
  /authorizations/{authorization_id_void_to}:
    parameters:
    - schema:
        type: string
      name: authorization_id_void_to
      in: path
      required: true
    put:
      tags:
      - Authorizations
      description: 'Use a PUT request to void an `Authorization`. If voided successfully,
        funds get released and the transaction stops from completing. Additionally,
        voided `Authorization` can no longer be captured.


        Related Guides: [Creating and Capturing an Authorization](/guides/payments/making-a-payment/creating-and-capturing-an-authorization/),
        [Level 2 and 3 Processing](/guides/payments/making-a-payment/level-2-and-level-3-processing/),
        [In-Person Cloud Payments](/guides/payments/in-person-payments/cloud/in-person-cloud-payments/),
        [Buyer Charges](/guides/payments/making-a-payment/buyer-charges/)'
      summary: Void an Authorization
      operationId: voidAuthorization
      requestBody:
        $ref: '#/components/requestBodies/VoidAuthorizationRequest'
      responses:
        '200':
          $ref: '#/components/responses/AuthorizationUpdated'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
        '422':
          $ref: '#/components/responses/Error422InvalidField'
      x-internal: false
      x-java-method-name: update_authorization_void
      parameters:
      - schema:
          type: string
          default: '2018-01-01'
          example: '2022-02-01'
        in: header
        name: Finix-Version
        description: Specify the API version of your request. For more details, see
          [Versioning.](/guides/developers/versioning/)
      x-python-method-name: update_authorization_void
  /balance_transfers:
    post:
      summary: Create a Balance Transfer
      operationId: createBalanceTransfer
      responses:
        '201':
          $ref: '#/components/responses/BalanceTransfer'
        '400':
          $ref: '#/components/responses/ErrorUnprocessableEntity'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      description: Create a `balance_transfer`.
      tags:
      - Balance Transfers
      requestBody:
        $ref: '#/components/requestBodies/CreateBalanceTransferRequest'
      x-internal: false
      x-java-method-name: create
      x-codeSamples:
      - lang: cURL
        label: curl
        source:
          $ref: xcode/curl/balance-transfer/create-balance-transfer.md
      x-python-method-name: create
    get:
      summary: List Balance Transfers
      operationId: listBalanceTransfers
      responses:
        '200':
          $ref: '#/components/responses/BalanceTransferList'
        '400':
          $ref: '#/components/responses/ErrorUnprocessableEntity'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          description: Not Found
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      description: Retrieve a list of `balance_transfers`.
      parameters:
      - $ref: '#/components/parameters/QueryLimit'
      - schema:
          type: integer
        in: query
        name: pageNumber
        description: The page number to list.
      - schema:
          type: integer
        in: query
        name: pageSize
        description: The size of the page.
      - $ref: '#/components/parameters/QueryCreatedAtGteFilter'
      - $ref: '#/components/parameters/QueryCreatedAtLteFilter'
      - $ref: '#/components/parameters/QueryUpdatedAtGteFilter'
      - $ref: '#/components/parameters/QueryUpdatedAtLteFilter'
      - $ref: '#/components/parameters/QueryIdempotencyIdFilter'
      - $ref: '#/components/parameters/QueryAmountFilter'
      - in: query
        name: description
        schema:
          type: string
        description: Filter by the `Description` value .
      - schema:
          type: string
        in: query
        name: destination
        description: Filter by the `Payment Instrument` saved in `Destination`.
      - schema:
          type: string
        in: query
        name: external_reference_id
        description: Filter by the value saved in `external_reference_id`.
      - schema:
          type: string
        in: query
        name: reference_id
        description: Filter by the value saved in `reference_id`.
      - schema:
          type: string
        in: query
        description: Filter by the `Payment Instrument` saved in `source`.
        name: source
      tags:
      - Balance Transfers
      x-internal: false
      x-java-method-name: list
      x-group-parameters: true
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/balance_transfers/\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USbkjk46XqUTQHN3i2jaVnc1:ac915962-2757-49ea-aeee-10960a408b99\n"
      x-python-method-name: list
      x-returns-list: true
  /balance_transfers/{balance_transfers_id}:
    parameters:
    - schema:
        type: string
      name: balance_transfers_id
      in: path
      required: true
      description: ID of the `balance_transfer` resource.
    get:
      summary: Fetch a Balance Transfer
      tags:
      - Balance Transfers
      responses:
        '200':
          $ref: '#/components/responses/BalanceTransfer'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      operationId: getBalanceTransfers
      description: Retrieve the details of a `balance_transfer`.
      x-internal: false
      x-java-method-name: get
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/balance_transfers/BT_9SLA5BdQs6Z3xFpmjUoqhM\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USbkjk46XqUTQHN3i2jaVnc1:ac915962-2757-49ea-aeee-10960a408b99\n"
      x-python-method-name: get
  /devices/{device_id}:
    put:
      description: 'Initiate an action on a `Device`. Actions that are available include:

        - Activating the `Device`

        - Rebooting the `Device`

        - Setting an idle message

        - Deactivating the `Device`


        You can also use a PUT request to update the `configuration_details`, `description`,
        `name`, and `serial_number` of the `Device`.'
      summary: Initiate Action on Device
      operationId: updateDevice
      requestBody:
        $ref: '#/components/requestBodies/UpdateDeviceRequest'
      responses:
        '200':
          $ref: '#/components/responses/Device'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: update
      tags:
      - Devices
      parameters:
      - schema:
          type: string
          default: '2018-01-01'
          example: '2022-02-01'
        in: header
        name: Finix-Version
        description: Specify the API version of your request. For more details, see
          [Versioning.](/guides/developers/versioning/)
      x-python-method-name: update
    get:
      description: Retrieve the details of an existing `Device`.
      summary: Fetch a Device
      operationId: getDevice
      responses:
        '200':
          $ref: '#/components/responses/Device'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: get
      parameters:
      - schema:
          type: boolean
        in: query
        name: include_connection
        description: Specifies whether the connection information should be included.
      x-group-parameters: true
      tags:
      - Devices
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/devices/DVsEanpBtsAVvCHbNXkFaH6f\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USjHFGYvecE4LBitYG8KDE2g:b698f403-d9b7-4157-82d8-162cea8c8cc3\n"
      x-python-method-name: get
    parameters:
    - description: ID of the `Device`.
      required: true
      in: path
      name: device_id
      schema:
        type: string
  /devices/{device_id_connection}:
    get:
      description: To check the connection of the `Device`, include `?include_connection\=true\`
        at the end of the request endpoint.
      summary: Check Device Connection
      operationId: getDeviceConnection
      responses:
        '200':
          $ref: '#/components/responses/Device'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: get_device_connection
      parameters:
      - schema:
          type: boolean
        in: query
        name: include_connection
        description: Specifies whether the connection information should be included.
        required: true
      x-group-parameters: true
      tags:
      - Devices
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/devices/DVsEanpBtsAVvCHbNXkFaH6f?include_connection=true\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USjHFGYvecE4LBitYG8KDE2g:b698f403-d9b7-4157-82d8-162cea8c8cc3\n"
      x-python-method-name: get_device_connection
    parameters:
    - schema:
        type: string
      name: device_id_connection
      in: path
      required: true
  /disputes:
    get:
      tags:
      - Disputes
      description: Retrieve a list of `Disputes`.
      summary: List Disputes
      operationId: listDisputes
      parameters:
      - $ref: '#/components/parameters/QueryLimit'
      - $ref: '#/components/parameters/QueryCreatedAtGteFilter'
      - $ref: '#/components/parameters/QueryCreatedAtLteFilter'
      - $ref: '#/components/parameters/QueryUpdatedAtGteFilter'
      - $ref: '#/components/parameters/QueryUpdatedAtLteFilter'
      - schema:
          type: string
        in: query
        name: transfer_id
        description: 'Filter by the ID of the `Transfer` that''s being disputed. <br><br>**Note**:
          If included, all other filter parameters are ignored.'
      - schema:
          type: string
        in: query
        name: adjustment_transfer_id
        description: 'Filter by the ID of the adjustment `Transfer`. <br><br>**Note**:
          If included, all other filter parameters are ignored.'
      - $ref: '#/components/parameters/QueryAmountFilter'
      - $ref: '#/components/parameters/QueryAmountGteFilter'
      - $ref: '#/components/parameters/QueryAmountGtFilter'
      - $ref: '#/components/parameters/QueryAmountLtFilter'
      - schema:
          type: string
        in: query
        name: state
        description: Filter by the state of the `Dispute`.
      - schema:
          type: string
        in: query
        name: response_state
        description: Filter by the `response_state` of the `Dispute`.
      - schema:
          type: string
        in: query
        name: respond_by.lte
        description: Filter where `respond_by` is before the given date.
      - schema:
          type: string
        in: query
        name: respond_by.gte
        description: Filter where `respond_by` is after the given date.
      - schema:
          type: string
        in: query
        name: instrument_bin
        description: Filter by the Bank Identification Number (BIN). The BIN is the
          first 6 digits of the masked account number.
      - schema:
          type: string
        in: query
        name: instrument_brand_type
        description: Filter by the card brand used.
      - in: query
        name: merchant_identity_id
        description: Filter by the ID of the `Identity` used by the `Merchant`.
        schema:
          type: string
      - schema:
          type: string
        in: query
        name: merchant_identity_name
        description: Filter by the name used by the `Merchant`.
      - schema:
          type: string
        in: query
        name: instrument_name
        description: Filter by the name of the `Payment Instrument`.
      - schema:
          type: string
        in: query
        name: instrument_type
        description: Filter by `Payment Instrument` type.
      - schema:
          type: string
        in: query
        name: merchant_id
        description: Filter by the ID of the `Merchant`.
      - schema:
          type: string
        in: query
        name: merchant_mid
        description: Filter by the MID of the `Merchant`.
      - schema:
          type: string
        in: query
        name: instrument_card_last4
        description: Filter by the last 4 digits of the card used.
      - schema:
          type: string
        in: query
        name: instrument_card_type
        description: Filter by the card type.
      - schema:
          type: string
        in: query
        name: instrument_fingerprint
        description: Filter by the fingerprint of the `Payment Instrument`.
      - schema:
          type: string
        in: query
        name: before_cursor
        description: Returns every `Dispute` created before the cursor value.
      - $ref: '#/components/parameters/TagsKey'
      - $ref: '#/components/parameters/TagsValue'
      responses:
        '200':
          $ref: '#/components/responses/DisputesList'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: list
      x-group-parameters: true
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/disputes/\" \\\n  -H\
          \ \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: list
      x-returns-list: true
  /disputes/{dispute_id}:
    get:
      tags:
      - Disputes
      description: Retrieve the details of a previously created `Dispute`.
      summary: Fetch a Dispute
      operationId: getDispute
      responses:
        '200':
          $ref: '#/components/responses/Dispute'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: get
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/disputes/DIs7yQRkHDdMYhurzYz72SFk\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: get
    parameters:
    - description: ID of `Dispute`.
      required: true
      in: path
      name: dispute_id
      schema:
        type: string
    put:
      summary: Update a Dispute
      operationId: updateDispute
      responses:
        '200':
          $ref: '#/components/responses/Dispute'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      description: Update `tags` on `Disputes`.
      requestBody:
        $ref: '#/components/requestBodies/UpdateDisputeEvidence'
      x-java-method: put
      tags:
      - Disputes
      parameters:
      - schema:
          type: string
          default: '2018-01-01'
          example: '2022-02-01'
        in: header
        name: Finix-Version
        description: Specify the API version of your request. For more details, see
          [Versioning.](/guides/developers/versioning/)
      x-python-method-name: update_dispute
  /disputes/{dispute_id}/evidence:
    post:
      tags:
      - Disputes
      description: 'Upload a file as evidence for a `Dispute`.


        - You can upload up to 8 files; the total size of the uploaded files combined
        cannot exceed 10 MB.

        - The allowed file formats include JPG, PNG, PDF, or TIFF.

        - Individual PNG and JPEG files can''t exceed 50 KB; PDF and TIFF files can''t
        exceed 1 MB.'
      summary: Upload Files as Dispute Evidence
      operationId: createDisputeEvidence
      responses:
        '201':
          $ref: '#/components/responses/DisputeEvidence'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-codeSamples:
      - lang: cURL
        label: curl
        source:
          $ref: xcode/curl/disputes/uploadevidence.md
      requestBody:
        $ref: '#/components/requestBodies/CreateDisputeEvidenceRequest'
      x-python-method-name: create_dispute_evidence
    get:
      tags:
      - Disputes
      description: Retrieve a list of dispute evidence for a `Dispute`.
      summary: List Dispute Evidence
      operationId: listDisputeEvidence
      responses:
        '200':
          $ref: '#/components/responses/DisputeEvidenceList'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: listDisputeEvidenceByDisputeId
      x-group-parameters: true
      parameters:
      - $ref: '#/components/parameters/QueryLimit'
      - $ref: '#/components/parameters/QueryAfterCursor'
      - $ref: '#/components/parameters/QueryBeforeCursor'
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/disputes/DIs7yQRkHDdMYhurzYz72SFk/evidence\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: list_dispute_evidence_by_dispute_id
      x-returns-list: true
    parameters:
    - description: ID of `Dispute` to mange evidence for.
      required: true
      in: path
      name: dispute_id
      schema:
        type: string
  /disputes/{dispute_id}/evidence/{evidence_id}:
    get:
      tags:
      - Disputes
      description: "Fetch evidence uploaded for a `Dispute`. \n\nIf you don't have\
        \ the Finix Dashboard available, you can fetch the evidence to review the\
        \ `status` of the upload to confirm the evidence got sent to the processor."
      summary: Fetch Dispute Evidence
      operationId: getDisputeEvidence
      responses:
        '200':
          $ref: '#/components/responses/DisputeEvidence'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/disputes/DIs7yQRkHDdMYhurzYz72SFk/evidence/DF58kdVTa5eMQUjcXH2F7DH4\"\
          \ \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: get_dispute_evidence
    parameters:
    - d

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