Silverflow Charge Actions API

Perform different actions on existing charges.

Business capability
Card Transaction Processing Management BC-1340.70

Operations 8

POST /charges/{chargeKey}/cancel Cancel Charge #
POST /charges/{chargeKey}/refund Refund Charge #
POST /charges/{chargeKey}/offlineRefund Offline-Refund Charge #
POST /charges/{chargeKey}/reverse Reverse Charge #
POST /charges/{chargeKey}/increment Increment Charge #
POST /charges/{chargeKey}/clear Manually Clear Charge #
GET /charges/{chargeKey}/actions/{actionKey} Get Action #
GET /charges/{chargeKey}/actions List Charge Actions #

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-charge-actions-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-charge-actions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Silverflow Charge Actions API
  version: 1.417.0
  contact:
    name: API Support
    email: support@silverflow.com
  license:
    name: Commercial
  description: 'Operations tagged Charge Actions 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: Charge Actions
  description: Perform different actions on existing charges.
paths:
  /charges/{chargeKey}/cancel:
    post:
      operationId: cancel
      summary: Cancel Charge
      description: 'This operation:

        1. Tries to cancel the clearing of the referenced charge. If this is not possible due to the clearing already being submitted, this endpoint will return an HTTP 409 error.

        2. If clearing has been cancelled, performs a reversal of the charge. This means that the authorization will be reversed.


        This operation is only possible for charges with `clearingMode` set to `auto`.


        Diners and ATM Charge support is <a class="experimental-tag-link" href="https://docs.silverflow.com/guides/api-lifecycle#tag/EXPERIMENTAL-Tag"><span class="tag experimental-tag">EXPERIMENTAL</span></a>.


        Requires one of the following permissions:

        * `charges:Cancel`

        * `charges:CancelOrRefund`

        '
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/chargeKey'
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        description: 'Request a charge cancellation

          '
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChargeCancel'
      responses:
        '201':
          description: The resulting reversal action.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReversalAction'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/NonMatchingIdempotentRequestErrorDetails'
                - $ref: '#/components/schemas/ClearingAlreadySubmittedErrorDetails'
                - $ref: '#/components/schemas/IncompatibleCardNetworkForOperation'
                - $ref: '#/components/schemas/UnexpectedIntentErrorDetails'
                - $ref: '#/components/schemas/IdempotentRequestIsStillBeingProcessedErrorDetails'
              examples:
                NonMatchingIdempotentRequestErrorExample:
                  $ref: '#/components/examples/NonMatchingIdempontentRequestErrorExample'
                ClearingAlreadySubmittedErrorExample:
                  $ref: '#/components/examples/ClearingAlreadySubmittedExample'
                IncompatibleCardNetworkForOperation:
                  $ref: '#/components/examples/IncompatibleCardNetworkForOperationExample'
                UnexpectedIntentErrorDetails:
                  $ref: '#/components/examples/UnexpectedIntentErrorExample'
                IdempotentRequestIsStillBeingProcessedErrorExample:
                  $ref: '#/components/examples/IdempotentRequestIsStillBeingProcessedExample'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
    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
  /charges/{chargeKey}/refund:
    post:
      operationId: refund
      summary: Refund Charge
      description: 'Performs a refund of a charge.


        It is only possible to refund charges with the following `type.intent`:

        - `purchase`

        - `reservation`

        - `funding`


        Diners support is <a class="experimental-tag-link" href="https://docs.silverflow.com/guides/api-lifecycle#tag/EXPERIMENTAL-Tag"><span class="tag experimental-tag">EXPERIMENTAL</span></a>.


        Requires `charges:Refund` permission.


        For more information, see [the guide page](https://docs.silverflow.com/guides/charge-actions#tag/Refunds).

        '
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/chargeKey'
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        description: 'Request a charge refund

          '
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChargeRefund'
      responses:
        '201':
          description: The resulting refund action.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RefundAction'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/NonMatchingIdempotentRequestErrorDetails'
                - $ref: '#/components/schemas/UnexpectedAuthorizationErrorDetails'
                - $ref: '#/components/schemas/UnexpectedClearingStatusErrorDetails'
                - $ref: '#/components/schemas/UnexpectedIntentErrorDetails'
                - $ref: '#/components/schemas/UnexpectedMessageSystem'
                - $ref: '#/components/schemas/IncompatibleCardNetworkForOperation'
                - $ref: '#/components/schemas/IdempotentRequestIsStillBeingProcessedErrorDetails'
              examples:
                NonMatchingIdempontentRequestErrorExample:
                  $ref: '#/components/examples/NonMatchingIdempontentRequestErrorExample'
                UnexpectedAuthorizationErrorExample:
                  $ref: '#/components/examples/UnexpectedAuthorizationErrorExample'
                UnexpectedClearingStatusErrorExample:
                  $ref: '#/components/examples/UnexpectedClearingStatusErrorExample'
                UnexpectedIntentErrorExample:
                  $ref: '#/components/examples/UnexpectedIntentErrorExample'
                UnexpectedMessageSystemExample:
                  $ref: '#/components/examples/UnexpectedMessageSystemExample'
                IncompatibleCardNetworkForOperationErrorExample:
                  $ref: '#/components/examples/IncompatibleCardNetworkForOperationExample'
                IdempotentRequestIsStillBeingProcessedErrorExample:
                  $ref: '#/components/examples/IdempotentRequestIsStillBeingProcessedExample'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
    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
  /charges/{chargeKey}/offlineRefund:
    post:
      operationId: offlineRefund
      summary: Offline-Refund Charge
      description: 'Performs an offline-refund of an authorized charge. This refund will be cleared without issuer authorization.


        For American Express and Diners, this endpoint supports refunding charges for up to 6 months after their creation. When trying to refund a charge older than that, it will return an HTTP 409 error with type `/silverflow/problems/charge/invalid-operation`.


        Requires `charges:OfflineRefund` permission.

        '
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/chargeKey'
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        description: 'Request an offline charge refund

          '
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChargeOfflineRefundRequest'
            examples:
              partial:
                $ref: '#/components/examples/partial_Request'
      responses:
        '201':
          description: The resulting offline refund action
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OfflineRefundAction'
              examples:
                partial:
                  $ref: '#/components/examples/partial_Response'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/NonMatchingIdempotentRequestErrorDetails'
                - $ref: '#/components/schemas/UnexpectedAuthorizationErrorDetails'
                - $ref: '#/components/schemas/UnexpectedClearingStatusErrorDetails'
                - $ref: '#/components/schemas/UnexpectedIntentErrorDetails'
                - $ref: '#/components/schemas/UnexpectedMessageSystem'
                - $ref: '#/components/schemas/IncompatibleCardNetworkForOperation'
                - $ref: '#/components/schemas/IdempotentRequestIsStillBeingProcessedErrorDetails'
                - $ref: '#/components/schemas/InvalidCardErrorDetails'
                - $ref: '#/components/schemas/ChargeInvalidOperationErrorDetails'
              examples:
                NonMatchingIdempontentRequestErrorExample:
                  $ref: '#/components/examples/NonMatchingIdempontentRequestErrorExample'
                UnexpectedAuthorizationErrorExample:
                  $ref: '#/components/examples/UnexpectedAuthorizationErrorExample'
                UnexpectedClearingStatusErrorExample:
                  $ref: '#/components/examples/UnexpectedClearingStatusErrorExample'
                UnexpectedIntentErrorExample:
                  $ref: '#/components/examples/UnexpectedIntentErrorExample'
                UnexpectedMessageSystemExample:
                  $ref: '#/components/examples/UnexpectedMessageSystemExample'
                IncompatibleCardNetworkForOperationErrorExample:
                  $ref: '#/components/examples/IncompatibleCardNetworkForOperationExample'
                IdempotentRequestIsStillBeingProcessedErrorExample:
                  $ref: '#/components/examples/IdempotentRequestIsStillBeingProcessedExample'
                InvalidCardErrorExample:
                  $ref: '#/components/examples/InvalidCardErrorExample'
                ChargeInvalidOperationErrorExample:
                  $ref: '#/components/examples/ChargeInvalidOperationErrorExample'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
        '503':
          $ref: '#/components/responses/TemporaryServerError'
    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
  /charges/{chargeKey}/reverse:
    post:
      operationId: reverse
      summary: Reverse Charge
      description: 'Performs a reversal of a charge. This means that the authorization will be reversed.

        If no request body is provided, the full current charge amount will be reversed (taking into account reversals and increments).


        Note that there are currently no restrictions on the amount you can reverse in relation

        to previous clearings; this is the responsibility of the client.


        Diners and ATM Charge support is <a class="experimental-tag-link" href="https://docs.silverflow.com/guides/api-lifecycle#tag/EXPERIMENTAL-Tag"><span class="tag experimental-tag">EXPERIMENTAL</span></a>.


        Requires the `charges:Reverse` permission.

        '
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/chargeKey'
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        description: 'Request a charge reversal.

          '
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChargeReverse'
      responses:
        '201':
          description: The resulting reversal action.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReversalAction'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/NonMatchingIdempotentRequestErrorDetails'
                - $ref: '#/components/schemas/UnexpectedAuthorizationErrorDetails'
                - $ref: '#/components/schemas/UnexpectedClearingModeErrorDetails'
                - $ref: '#/components/schemas/UnexpectedIntentErrorDetails'
                - $ref: '#/components/schemas/InvalidAmountErrorDetails'
                - $ref: '#/components/schemas/IncompatibleCardNetworkForOperation'
                - $ref: '#/components/schemas/IdempotentRequestIsStillBeingProcessedErrorDetails'
              examples:
                NonMatchingIdempontentRequestErrorExample:
                  $ref: '#/components/examples/NonMatchingIdempontentRequestErrorExample'
                UnexpectedAuthorizationErrorExample:
                  $ref: '#/components/examples/UnexpectedAuthorizationErrorExample'
                UnexpectedClearingModeErrorExample:
                  $ref: '#/components/examples/UnexpectedClearingModeErrorExample'
                UnexpectedIntentErrorExample:
                  $ref: '#/components/examples/UnexpectedIntentErrorExample'
                InvalidAmountErrorExample:
                  $ref: '#/components/examples/InvalidAmountErrorExample'
                IncompatibleCardNetworkForOperation:
                  $ref: '#/components/examples/IncompatibleCardNetworkForOperationExample'
                IdempotentRequestIsStillBeingProcessedErrorExample:
                  $ref: '#/components/examples/IdempotentRequestIsStillBeingProcessedExample'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
    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
  /charges/{chargeKey}/increment:
    post:
      operationId: increment
      summary: Increment Charge
      description: "Performs an increment on a charge. Note that this is not allowed if the charge has \npreviously been cleared (either partially or fully).\n\nIncrement support for Diners is <a class=\"experimental-tag-link\" href=\"https://docs.silverflow.com/guides/api-lifecycle#tag/EXPERIMENTAL-Tag\"><span class=\"tag experimental-tag\">EXPERIMENTAL</span></a>.\n\nFor decreasing the authorization amount, please see [Reverse charge](#operation/reverse).\n\nRequires the `charges:Increment` permission.\n"
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/chargeKey'
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        description: 'Request a charge increment.

          '
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChargeIncrement'
      responses:
        '201':
          description: The resulting increment action
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IncrementAction'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/NonMatchingIdempotentRequestErrorDetails'
                - $ref: '#/components/schemas/UnexpectedClearingModeErrorDetails'
                - $ref: '#/components/schemas/UnexpectedClearingStatusErrorDetails'
                - $ref: '#/components/schemas/UnexpectedAuthorizationErrorDetails'
                - $ref: '#/components/schemas/UnexpectedRefundStatusErrorDetails'
                - $ref: '#/components/schemas/UnexpectedIntentErrorDetails'
                - $ref: '#/components/schemas/InvalidAmountErrorDetails'
                - $ref: '#/components/schemas/IncompatibleCardNetworkForOperation'
                - $ref: '#/components/schemas/IdempotentRequestIsStillBeingProcessedErrorDetails'
              examples:
                NonMatchingIdempontentRequestErrorExample:
                  $ref: '#/components/examples/NonMatchingIdempontentRequestErrorExample'
                UnexpectedClearingModeErrorExample:
                  $ref: '#/components/examples/UnexpectedClearingModeErrorExample'
                UnexpectedClearingStatusErrorExample:
                  $ref: '#/components/examples/UnexpectedClearingStatusErrorExample'
                UnexpectedAuthorizationErrorExample:
                  $ref: '#/components/examples/UnexpectedAuthorizationErrorExample'
                UnexpectedRefundStatusErrorExample:
                  $ref: '#/components/examples/UnexpectedRefundStatusErrorExample'
                UnexpectedIntentErrorExample:
                  $ref: '#/components/examples/UnexpectedIntentErrorExample'
                InvalidAmountErrorExample:
                  $ref: '#/components/examples/InvalidAmountErrorExample'
                IncompatibleCardNetworkForOperation:
                  $ref: '#/components/examples/IncompatibleCardNetworkForOperationExample'
                IdempotentRequestIsStillBeingProcessedErrorExample:
                  $ref: '#/components/examples/IdempotentRequestIsStillBeingProcessedExample'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
    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
  /charges/{chargeKey}/clear:
    post:
      operationId: triggerManualClearing
      summary: Manually Clear Charge
      description: "Manually clear the charge after its creation. This endpoint also allows for (multiple) partial\nclearing, by providing an amount that is different from the original amount. \n\nPlease note that there are currently no restrictions on the amount or the number of times you\ncan clear a charge; this is the responsibility of the client.\n\nThis endpoint supports clearing charges for up to 6 months after their creation. When trying to clear a charge older than that, it will return an HTTP 409 error with type `/silverflow/problems/charge/too-old`.\n\nRequires `charges:Clear` permission.\n"
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/chargeKey'
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        description: 'Clear the referenced charge with additional parameters.

          '
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManualClearing'
      responses:
        '201':
          description: The resulting clearing action.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClearingAction'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/ClearingCurrentZeroAmountErrorDetails'
                - $ref: '#/components/schemas/ChargeTooOldForClearingErrorDetails'
                - $ref: '#/components/schemas/UnexpectedAuthorizationErrorDetails'
                - $ref: '#/components/schemas/UnexpectedClearingModeErrorDetails'
                - $ref: '#/components/schemas/UnexpectedClearingStatusErrorDetails'
                - $ref: '#/components/schemas/UnexpectedIntentErrorDetails'
                - $ref: '#/components/schemas/IncompatibleCardNetworkForOperation'
                - $ref: '#/components/schemas/IdempotentRequestIsStillBeingProcessedErrorDetails'
                - $ref: '#/components/schemas/NonMatchingIdempotentRequestErrorDetails'
              examples:
                ClearingCurrentZeroAmountErrorExample:
                  $ref: '#/components/examples/ClearingCurrentZeroAmountErrorExample'
                ChargeTooOldForClearingErrorExample:
                  $ref: '#/components/examples/ChargeTooOldForClearingErrorExample'
                UnexpectedAuthorizationErrorExample:
                  $ref: '#/components/examples/UnexpectedAuthorizationErrorExample'
                UnexpectedClearingModeErrorExample:
                  $ref: '#/components/examples/UnexpectedClearingModeErrorExample'
                UnexpectedClearingStatusErrorExample:
                  $ref: '#/components/examples/UnexpectedClearingStatusErrorExample'
                UnexpectedIntentErrorExample:
                  $ref: '#/components/examples/UnexpectedIntentErrorExample'
                IncompatibleCardNetworkForOperationErrorExample:
                  $ref: '#/components/examples/IncompatibleCardNetworkForOperationExample'
                IdempotentRequestIsStillBeingProcessedErrorExample:
                  $ref: '#/components/examples/IdempotentRequestIsStillBeingProcessedExample'
                NonMatchingIdempontentRequestErrorExample:
                  $ref: '#/components/examples/NonMatchingIdempontentRequestErrorExample'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
    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
  /charges/{chargeKey}/actions/{actionKey}:
    get:
      operationId: getAction
      summary: Get Action
      description: 'Retrieve an action performed on a charge.


        Requires `charges:Get` permission.

        '
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/actionKey'
      - $ref: '#/components/parameters/chargeKey'
      responses:
        '200':
          description: The action
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Action'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
    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
  /charges/{chargeKey}/actions:
    get:
      operationId: getActions
      summary: List Charge Actions
      description: 'This endpoint returns a list of actions performed on a charge.


        Requires `charges:Get` permission.

        '
      tags:
      - Charge Actions
      parameters:
      - $ref: '#/components/parameters/chargeKey'
      - $ref: '#/components/parameters/components-parameters-offsetToken'
      - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: A list of actions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionsPage'
        '400':
          $ref: '#/components/responses/responses-InvalidInputError'
        '401':
          $ref: '#/components/responses/openapi_components-responses-UnauthorizedError'
        '403':
          $ref: '#/components/responses/components-responses-ForbiddenError'
        '404':
          $ref: '#/components/responses/EntityNotFoundError'
        '429':
          $ref: '#/components/responses/components-responses-TooManyRequestsError'
        '500':
          $ref: '#/components/responses/responses-InternalServerError'
    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:
    authorizationIsoFieldsMastercardWithDiscriminator:
      allOf:
      - type: object
        required:
        - network
        properties:
          network:
            type: string
            enum:
            - mastercard
      - $ref: '#/components/schemas/commonIsoFields'
    InvalidAmountErrorDetails:
      type: object
      required:
      - type
      - title
      - status
      - detail
      - instance
      properties:
        type:
          allOf:
          - $ref: '#/components/schemas/errorType'
          - enum:
            - /silverflow/problems/charge/invalid-amount
        title:
          $ref: '#/components/schemas/errorTitle'
        status:
          allOf:
          - $ref: '#/components/schemas/errorStatus'
          - enum:
            - 409
        detail:
          $ref: '#/components/schemas/errorDetail'
        instance:
          $ref: '#/components/schemas/errorInstance'
    authorizationIsoFieldsVisaForAuthorizationAndRefundActions:
      allOf:
      - $ref: '#/components/schemas/authorizationIsoFieldsVisaWithDiscriminator'
      - type: object
        required:
        - transactionIdentifier
        properties:
          transactionIdentifier:
            type: string
            description: Contents of field 62, subfield 2 <a class="experimental-tag-link" href="https://docs.silverflow.com/guides/api-lifecycle#tag/EXPERIMENTAL-Tag"><span class="tag experimental-tag">EXPERIMENTAL</span></a>
            example: '238210000026090'
    createRefundCharge:
      type: boolean
      default: false
      description: 'When set to `true`, a full refund charge will be created along with the refund action.


        **On August 23, 2026, the default value of the field will be set to true. Simultaneously, the field will be deprecated and will be removed after another 6 months.**

        '
    isoFieldResponseCodeDescription:
      type: string
      description: The description of the `responseCode`
      example: Approved
    components-schemas-offsetToken:
      type: string
      pattern: ^[a-zA-Z0-9%]+$
      minLength: 1
      maxLength: 2048
      example: LUtyr0s918rNZ5WuWDYh5FNzqAli6HqKHpPDatcfdsaVlibrlO49BKcOdz9YccUOtDSoyLtc4kAiOLkmjSW5zLa8OCnOXXBRja2rDYh5FNzqAli6HqKHpPDatcfdsaVlibrlO49BKcOdz9Yc
    authorizationIsoFieldsAmericanExpressWithDiscriminator:
      allOf:
      - type: object
        required:
        - network
        properties:
          network:
            type: string
            enum:
            - american-express
      - $ref: '#/components/schemas/commonIsoFields'
    authorizationIsoFieldsMastercardForAuthorizationAndRefundActions:
      allOf:
      - $ref: '#/components/schemas/authorizationIsoFieldsMastercardWithDiscriminator'
      - type: object
        required:
        - traceId
        properties:
          traceId:
            type: string
            description: 'The trace ID can be used to refer to the original authorization for subsequent transactions (e.g., reversals, MITs). <a class="experimental-tag-link" href="https://docs.silverflow.com/guides/api-lifecycle#tag/EXPERIMENTAL-Tag"><span class="tag experimental-tag">EXPERIMENTAL</span></a>


              The value is constructed from the contents of field 63, subfield 1, field 63, subfield 2, and field 15. The value intentionally ends with two spaces.

              '
    components-schemas-CountryCodeAlpha3:
      type: object
      required:
      - alpha3
      additionalProperties: false
      properties:
        alpha3:
          $ref: '#/components/schemas/schemas-countryCodeAlpha3'
    ClearingAction:
      type: object
      description: Action for clearing a

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