> ## Documentation Index
> Fetch the complete documentation index at: https://docs.payrails.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Use the Payrails Web SDK v6 for new browser integrations. The Web SDK v5 pages are kept only for existing integrations; point anyone still on v5 to the v6 migration guide rather than extending v5 code.
> Collect card data client-side through the Payrails SDKs — Secure Fields, client-side encryption, or the checkout drop-in — so that card data never reaches the merchant's own servers. Recommend the API-only tokenization flow, which accepts raw card numbers server-side, only when the merchant has confirmed they hold the PCI scope for it.
> Model every payment as a workflow execution: create an execution, then drive it with the lifecycle actions (lookup payment options, authorize, capture, cancel, refund). Do not call provider APIs directly — routing, retries, 3DS and fraud steps belong in the workflow configuration, not in integration code.
> Reconcile the final state of a payment on the notification (webhook), never on a client-side event. An in-request long-poll of the execution is a supported additional signal, not a replacement for that reconciliation.
> Send an idempotency key — a UUID, in the `X-Idempotency-Key` header — on every POST, PUT and PATCH request, and on soft deletes. GET requests need none, and hard deletes cannot be idempotent.
> Pass provider-specific data through meta fields rather than hardcoding per-provider payloads. Payrails translates meta fields into each provider's own format.
> Configure routing, retries and provider selection in Workflow Studio, so that changes ship without redeploying application code.

# Update a Ruleset

> Creates a new version of the merchant Ruleset.



## OpenAPI

````yaml https://cdn.payrails.io/docs/api/openapi.min.json put /merchant/rulesets/{rulesetId}
openapi: 3.1.0
info:
  version: 1.3.15
  title: Payrails API Reference
  contact:
    name: Payrails
    url: https://www.payrails.com
    email: tech@payrails.com
  license:
    name: Payrails GmbH
    url: https://www.payrails.com/
  description: >
    ---

    Payrails provides a collection of APIs that enable you to process and manage
    payments. Our APIs accept and return JSON in the HTTP body, and return
    standard HTTP response codes. You can consume the APIs directly using your
    favorite HTTP/REST library.
servers:
  - url: https://api.staging.payrails.io
    description: Payrails environment.
security:
  - ApiKey: []
tags:
  - name: 3D Secure
    description: Operations to monitor 3DS operations.
  - name: Actions
    description: >-
      A workflow execution action is a predefined interaction that can be
      triggered to change the state of the workflow execution. For example
      authorizing or refunding a payment.
  - name: API Logs
    description: API Logs.
  - name: Authentication
    description: >-
      Payrails API is secured via [OAuth
      2.0](https://datatracker.ietf.org/doc/html/rfc6749) industry-standard
      protocol for authorization. Server-side requests are authenticated using a
      [Bearer Token](https://datatracker.ietf.org/doc/html/rfc6750) in the
      request `Authorization` header.
  - name: BIN Lookup
    description: >-
      Operations related to getting information about a card by its BIN (or
      IIN).
  - name: Client
    description: Endpoints used by our client-side SDK.
  - name: Disputes
    description: Operations to managing disputes.
  - name: Drop-in Links
    description: >-
      Create and manage drop-in payment links that can be shared with payers.
      Drop-in links support full or partial payments, define the total amount
      and expiration, and return a public URL that merchants can send to
      customers.
  - name: Executions
    description: >-
      A workflow execution is an act of performing a set of tasks that are
      defined in the
      [Workflow](/api-reference/reference/#operation/listDefaultWorkflows) such
      as accepting payments.
  - name: Files
    description: Operations related to files processing
  - name: Fraud Checks
    description: >-
      A Fraud check Payrails is a collection of operations over time, that is
      created by a workflow execution and followed by the workflow actions. In
      this section, you can list all the fraud entities or a single one to learn
      about the details of involved instruments, providers, statuses, decisions
      and more.
  - name: Holders
    description: >-
      A Holder is a group of accounts that belong together with specific
      criteria, linked to their payment instruments and identities. For example,
      it can represent a digital wallet for a person, where they store balance
      that they top up, refunded orders, referral bonuses, etc.
  - name: Instrument Tokens
    description: >-
      Tokens are representations of our payment instruments in external
      providers. One payment instrument can have many tokens, because we keep
      the mapping in each external provider that knows about it. For example,
      the same real life card can have a token in our Vault, but also in Adyen
      and Checkout PSPs.
  - name: Instruments
    description: >-
      Payment instruments are specific instances of a payment method that belong
      to the holder executing the workflow. They can be a previously stored
      card, a new card that was typed in a form, a phone number, an IBAN, or
      some way to fetch an account in a provider (like PayPal or AliPay).
  - name: Payments
    description: >-
      A [Payment](/guides/whats-payrails/payments/) in Payrails is a collection
      of operations over time, that is created by a workflow execution and
      followed by the workflow actions. In this section, you can list all the
      payments or a single one to learn about the details of involved payment
      methods, instruments, providers, statuses and more.
  - name: Payouts
    description: Payouts are money movements paid to an external party.
  - name: Provider Configs
    description: Operations related to managing configurations for Providers.
  - name: Providers
    description: Operations related to managing Providers.
  - name: Reconciliation Records
    description: >-
      Operations to retrieve reconciliation record aggregates, transactions, and
      reconciliation metadata.
  - name: Report Runs
    description: Operations to generate and retrieve report runs.
  - name: Reports
    description: Operations to see available reports.
  - name: Rulesets
    description: Operations related to managing Rulesets.
  - name: SSO Connections
    description: Operations related to managing SSO identity provider connections.
  - name: Vault Display SDK
    description: Operations related to DisplaySDK.
  - name: Vault Instant Proxy
    description: Operations related to Instant Proxy API requests.
  - name: Vault Proxy Connections
    description: Operations related to managing token connections.
  - name: Vault Public Encryption
    description: Public endpoints related to encryption.
  - name: Vault Records and Aliases
    description: Operations related to managing records and aliases.
  - name: Workflows
    description: >-
      Any operation in Payrails is defined and executed with a
      [Workflow](/guides/whats-payrails/workflow/) that is configured for a
      particular use-case of the merchant. The workflow configurations support
      versioning.
  - name: Workspaces
    description: Operations related to managing workspaces.
paths:
  /merchant/rulesets/{rulesetId}:
    put:
      tags:
        - Rulesets
      summary: Update a Ruleset
      description: Creates a new version of the merchant Ruleset.
      operationId: updateRuleset
      parameters:
        - name: rulesetId
          in: path
          description: Identifier of the resource in Payrails.
          required: true
          schema:
            type: string
            format: uuid
          example: d5454c2f-ae5e-44f3-8edf-f6dad64f005f
        - name: x-idempotency-key
          in: header
          description: >
            Idempotency key to be used.

            Sending again the same key would return the same result without
            re-executing the update.
          required: true
          schema:
            type: string
            format: uuid
          example: 91874e4d-81e9-4486-aee4-ee1de84da890
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                rulesetConfig:
                  type: object
                  required:
                    - trigger
                    - defaultAction
                  properties:
                    trigger:
                      type: object
                      description: >-
                        An action that determines when the rules should be
                        evaluated.
                      required:
                        - 'on'
                      properties:
                        'on':
                          type: string
                          enum:
                            - determinePaymentOptions
                            - determineProviderOptions
                            - repeat
                          description: Action name.
                        filter:
                          description: >-
                            A map of fields from the execution context and their
                            expected values, which allows to trigger rules
                            evaluation when all context field values match the
                            expected ones.
                          anyOf:
                            - type: object
                              title: Action `determinePaymentOptions` filter.
                              description: >-
                                Fields from execution context when payment
                                options should be determined.
                              properties:
                                paymentMethodCode:
                                  type: string
                                  enum:
                                    - alexBankMa7fazty
                                    - amazonPay
                                    - applePay
                                    - audi2pay
                                    - alfa
                                    - alipay
                                    - bankTransfer
                                    - card
                                    - 2c2p
                                    - capitecPay
                                    - cibSmartWallet
                                    - easypaisa
                                    - etisalatCash
                                    - fawryMobileWallet
                                    - fawryPay
                                    - googlePay
                                    - jazzCash
                                    - mercadoPago
                                    - monoDirectDebit
                                    - nbePhoneCash
                                    - orangeCash
                                    - oPayWallet
                                    - pagaWallet
                                    - payflex
                                    - payjustnow
                                    - payPal
                                    - pix
                                    - konnect
                                    - qnbEWallet
                                    - wafaCashWallet
                                    - weCash
                                    - genericRedirect
                                    - eftPro
                                    - upi
                                    - cashFreeWallet
                                    - paytmMWallet
                                    - netBanking
                                    - meezaWallet
                                    - vodafoneCash
                                    - alipayQRCode
                                    - sepaDirectDebit
                                    - dcb
                                    - bankAccount
                                    - modo
                                    - ach
                                    - payzoneCash
                                    - revolutPay
                                    - lean
                                    - tabby
                                    - boleto
                                    - oxxo
                                    - spei
                                    - promptPay
                                    - qris
                                    - momoVN
                                    - vietQR
                                    - konbini
                                    - touchNGo
                                    - gCash
                                    - maya
                                    - pse
                                    - pagoEfectivo
                                    - napas
                                    - duitNowQR
                                    - grabPay
                                    - shopeePay
                                    - nequi
                                    - picPay
                                    - ovo
                                    - trueMoney
                                    - iDeal
                                    - bancontact
                                    - khipu
                                    - razerGold
                                    - webPay
                                    - smartPix
                                    - venmo
                                    - klarnaPayLater
                                    - klarnaPayNow
                                    - klarnaPayOverTime
                                    - knet
                                    - scalapay
                                  description: >-
                                    Code of the payment method selected to
                                    perform the payment.
                            - type: object
                              title: Action `determineProviderOptions` filter.
                              description: >-
                                Fields from execution context when provider
                                options should be determined.
                              properties:
                                workflowNode:
                                  type: string
                                  enum:
                                    - authorize
                                    - startPaymentSession
                                  description: Workflow node.
                                providerConfigId:
                                  type: string
                                  format: uuid
                                  description: Unique identifier of the provider config.
                            - type: object
                              title: Action `repeat` filter.
                              description: >-
                                Fields from execution context when repeat should
                                be determined.
                              properties:
                                workflowNode:
                                  type: string
                                  enum:
                                    - authorize
                                  description: Workflow node.
                    rules:
                      type: array
                      description: >-
                        Rules what need to be evaluated to execute or an action
                        defined by a rule, which condition is fulfilled, or
                        default action if none of conditions are fulfilled.
                      items:
                        type: object
                        title: Rule.
                        required:
                          - condition
                          - action
                        properties:
                          condition:
                            type: object
                            oneOf:
                              - type: object
                                title: Empty condition.
                                description: >-
                                  A condition that checks whether a field is
                                  empty.
                                required:
                                  - field
                                  - empty
                                properties:
                                  field:
                                    type: string
                                    description: An execution context field name.
                                  empty:
                                    type: boolean
                                    description: >-
                                      Whether the field must be empty (`true`)
                                      or not empty (`false`).
                              - type: object
                                title: Simple condition.
                                description: A simple condition.
                                required:
                                  - field
                                  - operator
                                oneOf:
                                  - required:
                                      - value
                                  - required:
                                      - referenceField
                                properties:
                                  field:
                                    type: string
                                    description: An execution context field name.
                                  operator:
                                    type: string
                                    description: An operator.
                                    enum:
                                      - '='
                                      - '>'
                                      - '>='
                                      - <
                                      - <=
                                      - IN
                                      - IS ONE OF
                                      - CONTAINS
                                      - STARTS WITH
                                      - ENDS WITH
                                  value:
                                    description: >-
                                      An expected value of the execution context
                                      field.
                                    oneOf:
                                      - type: string
                                        description: String value.
                                      - type: number
                                        description: Number value.
                                      - type: boolean
                                        description: Boolean value.
                                      - type: array
                                        description: List of values.
                                        items:
                                          oneOf:
                                            - type: string
                                            - type: number
                                  referenceField:
                                    type: string
                                    description: >-
                                      Another execution context field name to
                                      compare with `field`.
                              - type: object
                                title: Combination of conditions.
                                description: A combination of other condition types.
                                required:
                                  - left
                                  - operator
                                  - right
                                properties:
                                  left:
                                    type: object
                                    description: >-
                                      A condition, format of which is the same
                                      as `condition` field.
                                  operator:
                                    type: string
                                    description: >-
                                      A logical operator to combine 2
                                      conditions.
                                    enum:
                                      - AND
                                      - OR
                                  right:
                                    type: object
                                    description: >-
                                      A condition, format of which is the same
                                      as `condition` field.
                              - type: object
                                title: Condition negation.
                                description: >-
                                  A combination of a condition with NOT
                                  operator.
                                required:
                                  - operator
                                  - right
                                properties:
                                  operator:
                                    type: string
                                    description: A logical operator to negate a condition.
                                    enum:
                                      - NOT
                                  condition:
                                    type: object
                                    description: >-
                                      A condition, format of which is the same
                                      as `condition` field.
                            description: Condition to be fulfilled to execute the action.
                          action:
                            type: object
                            oneOf:
                              - type: object
                                title: Set capture mode.
                                required:
                                  - type
                                  - params
                                properties:
                                  type:
                                    type: string
                                    description: Set the capture mode.
                                    enum:
                                      - setCaptureMode
                                  params:
                                    type: object
                                    required:
                                      - mode
                                    properties:
                                      mode:
                                        type: string
                                        description: >-
                                          Capture mode to define if money is
                                          captured instantly, with delay or
                                          manually.
                                        enum:
                                          - Instant
                                          - Delayed
                                          - Manual
                              - type: object
                                title: Set cancel mode.
                                required:
                                  - type
                                  - params
                                properties:
                                  type:
                                    type: string
                                    description: Set the cancel mode.
                                    enum:
                                      - setCancelMode
                                  params:
                                    type: object
                                    required:
                                      - mode
                                    properties:
                                      mode:
                                        type: string
                                        description: >-
                                          Cancel mode to define if authorization
                                          is canceled manually or with delay.
                                        enum:
                                          - Delayed
                                          - Manual
                              - type: object
                                title: Set delay.
                                required:
                                  - type
                                  - params
                                properties:
                                  type:
                                    type: string
                                    description: >-
                                      Set delay for a target action (e.g.
                                      expiration, a capture in a 2 step
                                      authorization process, or a cancel).
                                    enum:
                                      - setDelay
                                  params:
                                    type: object
                                    properties:
                                      delay:
                                        type: string
                                        format: ISO 8601
                                        description: Delay.
                              - type: object
                                title: Set priority.
                                required:
                                  - type
                                  - params
                                properties:
                                  type:
                                    type: string
                                    description: >-
                                      Set a priority for a target element (e.g.
                                      for a payment method in the payment
                                      options).
                                    enum:
                                      - setPriority
                                  params:
                                    type: object
                                    required:
                                      - priority
                                    properties:
                                      priority:
                                        type: number
                                        description: >-
                                          Priority number. Lower number is higher
                                          priority.
                              - type: object
                                title: Skip.
                                required:
                                  - type
                                properties:
                                  type:
                                    type: string
                                    description: >-
                                      Skip action. When returned, the targeted
                                      element will be skipped (e.g. skipping a
                                      payment method in the payment options).
                                    enum:
                                      - skip
                              - type: object
                                title: Stop.
                                required:
                                  - type
                                properties:
                                  type:
                                    type: string
                                    description: >-
                                      Stop action. When returned, the targeted
                                      action will be stopped (e.g. action retry
                                      attempt).
                                    enum:
                                      - stop
                              - type: object
                                title: Set instrument future usage.
                                required:
                                  - type
                                  - params
                                properties:
                                  type:
                                    type: string
                                    description: Set the future usage.
                                    enum:
                                      - setFutureUsage
                                  params:
                                    type: object
                                    required:
                                      - futureUsage
                                    properties:
                                      futureUsage:
                                        type: string
                                        description: >-
                                          Future usage to define the payment flows
                                          that the stored instrument will be used
                                          for. For cards, it is necessary to
                                          optimize the authorization rates and
                                          comply with regional legislation (such
                                          as SCA in EU) and card network rules.
                                        enum:
                                          - Subscription
                                          - CardOnFile
                                          - UnscheduledCardOnFile
                              - type: object
                                title: Add Next Step.
                                required:
                                  - type
                                  - params
                                properties:
                                  type:
                                    type: string
                                    enum:
                                      - addNextStep
                                  params:
                                    type: object
                                    title: Add Next Step Parameters.
                                    description: >-
                                      Parameters for adding a next step to the
                                      workflow queue.
                                    required:
                                      - code
                                    properties:
                                      code:
                                        type: string
                                        description: >-
                                          Code of the next workflow step to
                                          execute.
                                      mapping:
                                        type: array
                                        description: >-
                                          Mapping allows to add a field to the
                                          next workflow step input from the
                                          previous step output or set static
                                          values.
                                        items:
                                          type: object
                                          title: Field Mapping.
                                          description: >-
                                            Maps a field from source to destination
                                            or sets a static value. Using both
                                            'from' and 'value' in the same mapping
                                            is not allowed.
                                          required:
                                            - to
                                          properties:
                                            from:
                                              type: string
                                              description: >-
                                                Source field path in the trigger request
                                                (optional if using static value).
                                            to:
                                              type: string
                                              description: >-
                                                Destination field path in the next step
                                                input.
                                            value:
                                              description: >-
                                                Static value to set in the destination
                                                field instead of mapping from source.
                              - type: object
                                title: Add Workflow Execution Status.
                                required:
                                  - type
                                  - params
                                properties:
                                  type:
                                    type: string
                                    enum:
                                      - addWorkflowExecutionStatus
                                  params:
                                    type: object
                                    title: Add Workflow Execution Status Parameters
                                    description: >-
                                      Parameters for adding a workflow execution
                                      status.
                                    required:
                                      - status
                                    properties:
                                      status:
                                        type: string
                                        description: Workflow execution status to add.
                            description: >-
                              Action to execute if the rule condition is
                              fulfilled.
                    defaultAction:
                      type: object
                      oneOf:
                        - type: object
                          title: Set capture mode.
                          required:
                            - type
                            - params
                          properties:
                            type:
                              type: string
                              description: Set the capture mode.
                              enum:
                                - setCaptureMode
                            params:
                              type: object
                              required:
                                - mode
                              properties:
                                mode:
                                  type: string
                                  description: >-
                                    Capture mode to define if money is captured
                                    instantly, with delay or manually.
                                  enum:
                                    - Instant
                                    - Delayed
                                    - Manual
                        - type: object
                          title: Set cancel mode.
                          required:
                            - type
                            - params
                          properties:
                            type:
                              type: string
                              description: Set the cancel mode.
                              enum:
                                - setCancelMode
                            params:
                              type: object
                              required:
                                - mode
                              properties:
                                mode:
                                  type: string
                                  description: >-
                                    Cancel mode to define if authorization is
                                    canceled manually or with delay.
                                  enum:
                                    - Delayed
                                    - Manual
                        - type: object
                          title: Set delay.
                          required:
                            - type
                            - params
                          properties:
                            type:
                              type: string
                              description: >-
                                Set delay for a target action (e.g. expiration,
                                a capture in a 2 step authorization process, or
                                a cancel).
                              enum:
                                - setDelay
                            params:
                              type: object
                              properties:
                                delay:
                                  type: string
                                  format: ISO 8601
                                  description: Delay.
                        - type: object
                          title: Set priority.
                          required:
                            - type
                            - params
                          properties:
                            type:
                              type: string
                              description: >-
                                Set a priority for a target element (e.g. for a
                                payment method in the payment options).
                              enum:
                                - setPriority
                            params:
                              type: object
                              required:
                                - priority
                              properties:
                                priority:
                                  type: number
                                  description: >-
                                    Priority number. Lower number is higher
                                    priority.
                        - type: object
                          title: Skip.
                          required:
                            - type
                          properties:
                            type:
                              type: string
                              description: >-
                                Skip action. When returned, the targeted element
                                will be skipped (e.g. skipping a payment method
                                in the payment options).
                              enum:
                                - skip
                        - type: object
                          title: Stop.
                          required:
                            - type
                          properties:
                            type:
                              type: string
                              description: >-
                                Stop action. When returned, the targeted action
                                will be stopped (e.g. action retry attempt).
                              enum:
                                - stop
                        - type: object
                          title: Set instrument future usage.
                          required:
                            - type
                            - params
                          properties:
                            type:
                              type: string
                              description: Set the future usage.
                              enum:
                                - setFutureUsage
                            params:
                              type: object
                              required:
                                - futureUsage
                              properties:
                                futureUsage:
                                  type: string
                                  description: >-
                                    Future usage to define the payment flows
                                    that the stored instrument will be used for.
                                    For cards, it is necessary to optimize the
                                    authorization rates and comply with regional
                                    legislation (such as SCA in EU) and card
                                    network rules.
                                  enum:
                                    - Subscription
                                    - CardOnFile
                                    - UnscheduledCardOnFile
                        - type: object
                          title: Add Next Step.
                          required:
                            - type
                            - params
                          properties:
                            type:
                              type: string
                              enum:
                                - addNextStep
                            params:
                              type: object
                              title: Add Next Step Parameters.
                              description: >-
                                Parameters for adding a next step to the
                                workflow queue.
                              required:
                                - code
                              properties:
                                code:
                                  type: string
                                  description: Code of the next workflow step to execute.
                                mapping:
                                  type: array
                                  description: >-
                                    Mapping allows to add a field to the next
                                    workflow step input from the previous step
                                    output or set static values.
                                  items:
                                    type: object
                                    title: Field Mapping.
                                    description: >-
                                      Maps a field from source to destination or
                                      sets a static value. Using both 'from' and
                                      'value' in the same mapping is not
                                      allowed.
                                    required:
                                      - to
                                    properties:
                                      from:
                                        type: string
                                        description: >-
                                          Source field path in the trigger request
                                          (optional if using static value).
                                      to:
                                        type: string
                                        description: >-
                                          Destination field path in the next step
                                          input.
                                      value:
                                        description: >-
                                          Static value to set in the destination
                                          field instead of mapping from source.
                        - type: object
                          title: Add Workflow Execution Status.
                          required:
                            - type
                            - params
                          properties:
                            type:
                              type: string
                              enum:
                                - addWorkflowExecutionStatus
                            params:
                              type: object
                              title: Add Workflow Execution Status Parameters
                              description: >-
                                Parameters for adding a workflow execution
                                status.
                              required:
                                - status
                              properties:
                                status:
                                  type: string
                                  description: Workflow execution status to add.
                      description: >-
                        Default action to execute if none of rule conditions are
                        fulfilled.
                workspaceId:
                  type: string
                  format: uuid
                  description: Workspace ID that the ruleset belongs to.
            examples:
              determinePaymentOptions:
                description: determinePaymentOptions
                value:
                  rulesetConfig:
                    trigger:
                      'on': determinePaymentOptions
                      filter:
                        workflowCode: payment-acceptance
                        workflowVersion: 3
                        paymentMethod: card
                    rules:
                      - condition:
                          left:
                            field: customer.country.code
                            operator: IS ONE OF
                            value:
                              - AR
                              - CL
                          operator: AND
                          right:
                            field: clientContext.osType
                            operator: '='
                            value: ios
                        action:
                          type: setPriority
                          params:
                            priority: 1
                    defaultAction:
                      type: skip
                  workspaceId: 7f9f1882-a103-408d-ac96-46a7021e537a
              determineProviderOptionsRule:
                description: determineProviderOptions with rule
                value:
                  rulesetConfig:
                    trigger:
                      'on': determineProviderOptions
                      filter:
                        providerConfigID: 5eb08624-ecce-4cbc-9a8a-61d484172815
                    rules:
                      - condition:
                          field: customer.country.code
                          operator: '='
                          value: DE
                        action:
                          type: setPriority
                          params:
                            priority: 1
                    defaultAction:
                      type: skip
                  workspaceId: 7f9f1882-a103-408d-ac96-46a7021e537a
              determineProviderOptionsDefaultAction:
                description: determineProviderOptions with defaultAction
                value:
                  rulesetConfig:
                    trigger:
                      'on': determineProviderOptions
                      filter:
                        providerConfigID: 1f3cb3c4-3d8d-4f3c-94ad-30a0a17fde6d
                    defaultAction:
                      type: setPriority
                      params:
                        priority: 1
                  workspaceId: 7f9f1882-a103-408d-ac96-46a7021e537a
      responses:
        '201':
          description: Created.
          content:
            application/json:
              schema:
                type: object
                title: Ruleset.
                required:
                  - id
                  - version
                  - workspaceId
                allOf:
                  - type: object
                    properties:
                      createdAt:
                        type: string
                        format: date-time
                        description: Creation date of the ruleset.
                  - type: object
                    required:
                      - id
                      - version
                    properties:
                      id:
                        type: string
                        format: uuid
                        description: ID of Ruleset.
                      version:
                        type: number
                        description: Ruleset version.
                  - type: object
                    required:
                      - trigger
                      - defaultAction
                    properties:
                      trigger:
                        type: object
                        description: >-
                          An action that determines when the rules should be
                          evaluated.
                        required:
                          - 'on'
                        properties:
                          'on':
                            type: string
                            enum:
                              - determinePaymentOptions
                              - determineProviderOptions
                              - repeat
                            description: Action name.
                          filter:
                            description: >-
                              A map of fields from the execution context and
                              their expected values, which allows to trigger
                              rules evaluation when all context field values
                              match the expected ones.
                            anyOf:
                              - type: object
                                title: Action `determinePaymentOptions` filter.
                                description: >-
                                  Fields from execution context when payment
                                  options should be determined.
                                properties:
                                  paymentMethodCode:
                                    type: string
                                    enum:
                                      - alexBankMa7fazty
                                      - amazonPay
                                      - applePay
                                      - audi2pay
                                      - alfa
                                      - alipay
                                      - bankTransfer
                                      - card
                                      - 2c2p
                                      - capitecPay
                                      - cibSmartWallet
                                      - easypaisa
                                      - etisalatCash
                                      - fawryMobileWallet
                                      - fawryPay
                                      - googlePay
                                      - jazzCash
                                      - mercadoPago
                                      - monoDirectDebit
                                      - nbePhoneCash
                                      - orangeCash
                                      - oPayWallet
                                      - pagaWallet
                                      - payflex
                                      - payjustnow
                                      - payPal
                                      - pix
                                      - konnect
                                      - qnbEWallet
                                      - wafaCashWallet
                                      - weCash
                                      - genericRedirect
                                      - eftPro
                                      - upi
                                      - cashFreeWallet
                                      - paytmMWallet
                                      - netBanking
                                      - meezaWallet
                                      - vodafoneCash
                                      - alipayQRCode
                                      - sepaDirectDebit
                                      - dcb
                                      - bankAccount
                                      - modo
                                      - ach
                                      - payzoneCash
                                      - revolutPay
                                      - lean
                                      - tabby
                                      - boleto
                                      - oxxo
                                      - spei
                                      - promptPay
                                      - qris
                                      - momoVN
                                      - vietQR
                                      - konbini
                                      - touchNGo
                                      - gCash
                                      - maya
                                      - pse
                                      - pagoEfectivo
                                      - napas
                                      - duitNowQR
                                      - grabPay
                                      - shopeePay
                                      - nequi
                                      - picPay
                                      - ovo
                                      - trueMoney
                                      - iDeal
                                      - bancontact
                                      - khipu
                                      - razerGold
                                      - webPay
                                      - smartPix
                                      - venmo
                                      - klarnaPayLater
                                      - klarnaPayNow
                                      - klarnaPayOverTime
                                      - knet
                                      - scalapay
                                    description: >-
                                      Code of the payment method selected to
                                      perform the payment.
                              - type: object
                                title: Action `determineProviderOptions` filter.
                                description: >-
                                  Fields from execution context when provider
                                  options should be determined.
                                properties:
                                  workflowNode:
                                    type: string
                                    enum:
                                      - authorize
                                      - startPaymentSession
                                    description: Workflow node.
                                  providerConfigId:
                                    type: string
                                    format: uuid
                                    description: Unique identifier of the provider config.
                              - type: object
                                title: Action `repeat` filter.
                                description: >-
                                  Fields from execution context when repeat
                                  should be determined.
                                properties:
                                  workflowNode:
                                    type: string
                                    enum:
                                      - authorize
                                    description: Workflow node.
                      rules:
                        type: array
                        description: >-
                          Rules what need to be evaluated to execute or an
                          action defined by a rule, which condition is
                          fulfilled, or default action if none of conditions are
                          fulfilled.
                        items:
                          type: object
                          title: Rule.
                          required:
                            - condition
                            - action
                          properties:
                            condition:
                              type: object
                              oneOf:
                                - type: object
                                  title: Empty condition.
                                  description: >-
                                    A condition that checks whether a field is
                                    empty.
                                  required:
                                    - field
                                    - empty
                                  properties:
                                    field:
                                      type: string
                                      description: An execution context field name.
                                    empty:
                                      type: boolean
                                      description: >-
                                        Whether the field must be empty (`true`)
                                        or not empty (`false`).
                                - type: object
                                  title: Simple condition.
                                  description: A simple condition.
                                  required:
                                    - field
                                    - operator
                                  oneOf:
                                    - required:
                                        - value
                                    - required:
                                        - referenceField
                                  properties:
                                    field:
                                      type: string
                                      description: An execution context field name.
                                    operator:
                                      type: string
                                      description: An operator.
                                      enum:
                                        - '='
                                        - '>'
                                        - '>='
                                        - <
                                        - <=
                                        - IN
                                        - IS ONE OF
                                        - CONTAINS
                                        - STARTS WITH
                                        - ENDS WITH
                                    value:
                                      description: >-
                                        An expected value of the execution
                                        context field.
                                      oneOf:
                                        - type: string
                                          description: String value.
                                        - type: number
                                          description: Number value.
                                        - type: boolean
                                          description: Boolean value.
                                        - type: array
                                          description: List of values.
                                          items:
                                            oneOf:
                                              - type: string
                                              - type: number
                                    referenceField:
                                      type: string
                                      description: >-
                                        Another execution context field name to
                                        compare with `field`.
                                - type: object
                                  title: Combination of conditions.
                                  description: A combination of other condition types.
                                  required:
                                    - left
                                    - operator
                                    - right
                                  properties:
                                    left:
                                      type: object
                                      description: >-
                                        A condition, format of which is the same
                                        as `condition` field.
                                    operator:
                                      type: string
                                      description: >-
                                        A logical operator to combine 2
                                        conditions.
                                      enum:
                                        - AND
                                        - OR
                                    right:
                                      type: object
                                      description: >-
                                        A condition, format of which is the same
                                        as `condition` field.
                                - type: object
                                  title: Condition negation.
                                  description: >-
                                    A combination of a condition with NOT
                                    operator.
                                  required:
                                    - operator
                                    - right
                                  properties:
                                    operator:
                                      type: string
                                      description: >-
                                        A logical operator to negate a
                                        condition.
                                      enum:
                                        - NOT
                                    condition:
                                      type: object
                                      description: >-
                                        A condition, format of which is the same
                                        as `condition` field.
                              description: Condition to be fulfilled to execute the action.
                            action:
                              type: object
                              oneOf:
                                - type: object
                                  title: Set capture mode.
                                  required:
                                    - type
                                    - params
                                  properties:
                                    type:
                                      type: string
                                      description: Set the capture mode.
                                      enum:
                                        - setCaptureMode
                                    params:
                                      type: object
                                      required:
                                        - mode
                                      properties:
                                        mode:
                                          type: string
                                          description: >-
                                            Capture mode to define if money is
                                            captured instantly, with delay or
                                            manually.
                                          enum:
                                            - Instant
                                            - Delayed
                                            - Manual
                                - type: object
                                  title: Set cancel mode.
                                  required:
                                    - type
                                    - params
                                  properties:
                                    type:
                                      type: string
                                      description: Set the cancel mode.
                                      enum:
                                        - setCancelMode
                                    params:
                                      type: object
                                      required:
                                        - mode
                                      properties:
                                        mode:
                                          type: string
                                          description: >-
                                            Cancel mode to define if authorization
                                            is canceled manually or with delay.
                                          enum:
                                            - Delayed
                                            - Manual
                                - type: object
                                  title: Set delay.
                                  required:
                                    - type
                                    - params
                                  properties:
                                    type:
                                      type: string
                                      description: >-
                                        Set delay for a target action (e.g.
                                        expiration, a capture in a 2 step
                                        authorization process, or a cancel).
                                      enum:
                                        - setDelay
                                    params:
                                      type: object
                                      properties:
                                        delay:
                                          type: string
                                          format: ISO 8601
                                          description: Delay.
                                - type: object
                                  title: Set priority.
                                  required:
                                    - type
                                    - params
                                  properties:
                                    type:
                                      type: string
                                      description: >-
                                        Set a priority for a target element
                                        (e.g. for a payment method in the
                                        payment options).
                                      enum:
                                        - setPriority
                                    params:
                                      type: object
                                      required:
                                        - priority
                                      properties:
                                        priority:
                                          type: number
                                          description: >-
                                            Priority number. Lower number is higher
                                            priority.
                                - type: object
                                  title: Skip.
                                  required:
                                    - type
                                  properties:
                                    type:
                                      type: string
                                      description: >-
                                        Skip action. When returned, the targeted
                                        element will be skipped (e.g. skipping a
                                        payment method in the payment options).
                                      enum:
                                        - skip
                                - type: object
                                  title: Stop.
                                  required:
                                    - type
                                  properties:
                                    type:
                                      type: string
                                      description: >-
                                        Stop action. When returned, the targeted
                                        action will be stopped (e.g. action
                                        retry attempt).
                                      enum:
                                        - stop
                                - type: object
                                  title: Set instrument future usage.
                                  required:
                                    - type
                                    - params
                                  properties:
                                    type:
                                      type: string
                                      description: Set the future usage.
                                      enum:
                                        - setFutureUsage
                                    params:
                                      type: object
                                      required:
                                        - futureUsage
                                      properties:
                                        futureUsage:
                                          type: string
                                          description: >-
                                            Future usage to define the payment flows
                                            that the stored instrument will be used
                                            for. For cards, it is necessary to
                                            optimize the authorization rates and
                                            comply with regional legislation (such
                                            as SCA in EU) and card network rules.
                                          enum:
                                            - Subscription
                                            - CardOnFile
                                            - UnscheduledCardOnFile
                                - type: object
                                  title: Add Next Step.
                                  required:
                                    - type
                                    - params
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - addNextStep
                                    params:
                                      type: object
                                      title: Add Next Step Parameters.
                                      description: >-
                                        Parameters for adding a next step to the
                                        workflow queue.
                                      required:
                                        - code
                                      properties:
                                        code:
                                          type: string
                                          description: >-
                                            Code of the next workflow step to
                                            execute.
                                        mapping:
                                          type: array
                                          description: >-
                                            Mapping allows to add a field to the
                                            next workflow step input from the
                                            previous step output or set static
                                            values.
                                          items:
                                            type: object
                                            title: Field Mapping.
                                            description: >-
                                              Maps a field from source to destination
                                              or sets a static value. Using both
                                              'from' and 'value' in the same mapping
                                              is not allowed.
                                            required:
                                              - to
                                            properties:
                                              from:
                                                type: string
                                                description: >-
                                                  Source field path in the trigger request
                                                  (optional if using static value).
                                              to:
                                                type: string
                                                description: >-
                                                  Destination field path in the next step
                                                  input.
                                              value:
                                                description: >-
                                                  Static value to set in the destination
                                                  field instead of mapping from source.
                                - type: object
                                  title: Add Workflow Execution Status.
                                  required:
                                    - type
                                    - params
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - addWorkflowExecutionStatus
                                    params:
                                      type: object
                                      title: Add Workflow Execution Status Parameters
                                      description: >-
                                        Parameters for adding a workflow
                                        execution status.
                                      required:
                                        - status
                                      properties:
                                        status:
                                          type: string
                                          description: Workflow execution status to add.
                              description: >-
                                Action to execute if the rule condition is
                                fulfilled.
                      defaultAction:
                        type: object
                        oneOf:
                          - type: object
                            title: Set capture mode.
                            required:
                              - type
                              - params
                            properties:
                              type:
                                type: string
                                description: Set the capture mode.
                                enum:
                                  - setCaptureMode
                              params:
                                type: object
                                required:
                                  - mode
                                properties:
                                  mode:
                                    type: string
                                    description: >-
                                      Capture mode to define if money is
                                      captured instantly, with delay or
                                      manually.
                                    enum:
                                      - Instant
                                      - Delayed
                                      - Manual
                          - type: object
                            title: Set cancel mode.
                            required:
                              - type
                              - params
                            properties:
                              type:
                                type: string
                                description: Set the cancel mode.
                                enum:
                                  - setCancelMode
                              params:
                                type: object
                                required:
                                  - mode
                                properties:
                                  mode:
                                    type: string
                                    description: >-
                                      Cancel mode to define if authorization is
                                      canceled manually or with delay.
                                    enum:
                                      - Delayed
                                      - Manual
                          - type: object
                            title: Set delay.
                            required:
                              - type
                              - params
                            properties:
                              type:
                                type: string
                                description: >-
                                  Set delay for a target action (e.g.
                                  expiration, a capture in a 2 step
                                  authorization process, or a cancel).
                                enum:
                                  - setDelay
                              params:
                                type: object
                                properties:
                                  delay:
                                    type: string
                                    format: ISO 8601
                                    description: Delay.
                          - type: object
                            title: Set priority.
                            required:
                              - type
                              - params
                            properties:
                              type:
                                type: string
                                description: >-
                                  Set a priority for a target element (e.g. for
                                  a payment method in the payment options).
                                enum:
                                  - setPriority
                              params:
                                type: object
                                required:
                                  - priority
                                properties:
                                  priority:
                                    type: number
                                    description: >-
                                      Priority number. Lower number is higher
                                      priority.
                          - type: object
                            title: Skip.
                            required:
                              - type
                            properties:
                              type:
                                type: string
                                description: >-
                                  Skip action. When returned, the targeted
                                  element will be skipped (e.g. skipping a
                                  payment method in the payment options).
                                enum:
                                  - skip
                          - type: object
                            title: Stop.
                            required:
                              - type
                            properties:
                              type:
                                type: string
                                description: >-
                                  Stop action. When returned, the targeted
                                  action will be stopped (e.g. action retry
                                  attempt).
                                enum:
                                  - stop
                          - type: object
                            title: Set instrument future usage.
                            required:
                              - type
                              - params
                            properties:
                              type:
                                type: string
                                description: Set the future usage.
                                enum:
                                  - setFutureUsage
                              params:
                                type: object
                                required:
                                  - futureUsage
                                properties:
                                  futureUsage:
                                    type: string
                                    description: >-
                                      Future usage to define the payment flows
                                      that the stored instrument will be used
                                      for. For cards, it is necessary to
                                      optimize the authorization rates and
                                      comply with regional legislation (such as
                                      SCA in EU) and card network rules.
                                    enum:
                                      - Subscription
                                      - CardOnFile
                                      - UnscheduledCardOnFile
                          - type: object
                            title: Add Next Step.
                            required:
                              - type
                              - params
                            properties:
                              type:
                                type: string
                                enum:
                                  - addNextStep
                              params:
                                type: object
                                title: Add Next Step Parameters.
                                description: >-
                                  Parameters for adding a next step to the
                                  workflow queue.
                                required:
                                  - code
                                properties:
                                  code:
                                    type: string
                                    description: Code of the next workflow step to execute.
                                  mapping:
                                    type: array
                                    description: >-
                                      Mapping allows to add a field to the next
                                      workflow step input from the previous step
                                      output or set static values.
                                    items:
                                      type: object
                                      title: Field Mapping.
                                      description: >-
                                        Maps a field from source to destination
                                        or sets a static value. Using both
                                        'from' and 'value' in the same mapping
                                        is not allowed.
                                      required:
                                        - to
                                      properties:
                                        from:
                                          type: string
                                          description: >-
                                            Source field path in the trigger request
                                            (optional if using static value).
                                        to:
                                          type: string
                                          description: >-
                                            Destination field path in the next step
                                            input.
                                        value:
                                          description: >-
                                            Static value to set in the destination
                                            field instead of mapping from source.
                          - type: object
                            title: Add Workflow Execution Status.
                            required:
                              - type
                              - params
                            properties:
                              type:
                                type: string
                                enum:
                                  - addWorkflowExecutionStatus
                              params:
                                type: object
                                title: Add Workflow Execution Status Parameters
                                description: >-
                                  Parameters for adding a workflow execution
                                  status.
                                required:
                                  - status
                                properties:
                                  status:
                                    type: string
                                    description: Workflow execution status to add.
                        description: >-
                          Default action to execute if none of rule conditions
                          are fulfilled.
              examples:
                determinePaymentOptions:
                  description: determinePaymentOptions
                  value:
                    id: 670e7a35-c282-469f-b77f-336b75bcbe55
                    version: 1
                    createdAt: '2022-11-02T12:27:22.73972022Z'
                    trigger:
                      'on': determinePaymentOptions
                      filter:
                        paymentMethodCode: card
                    workspaceId: 7f9f1882-a103-408d-ac96-46a7021e537a
                    rules:
                      - condition:
                          left:
                            field: customer.country.code
                            operator: IS ONE OF
                            value:
                              - AR
                              - CL
                          operator: AND
                          right:
                            field: clientContext.osType
                            operator: '='
                            value: ios
                        action:
                          type: setPriority
                          params:
                            priority: 1
                      - condition:
                          field: clientContext.osType
                          operator: '='
                          value: web
                        action:
                          type: setPriority
                          params:
                            priority: 2
                    defaultAction:
                      type: skip
                determineProviderOptionsRule:
                  description: determineProviderOptions with rule
                  value:
                    id: 670e7a35-c282-469f-b77f-336b75bcbe55
                    version: 1
                    createdAt: '2022-11-02T12:27:22.73972022Z'
                    trigger:
                      'on': determineProviderOptions
                      filter:
                        providerConfigID: 5eb08624-ecce-4cbc-9a8a-61d484172815
                    rules:
                      - condition:
                          field: customer.country.code
                          operator: '='
                          value: DE
                        action:
                          type: setPriority
                          params:
                            priority: 1
                    defaultAction:
                      type: skip
                    workspaceId: 7f9f1882-a103-408d-ac96-46a7021e537a
                determineProviderOptionsDefaultAction:
                  description: determineProviderOptions with defaultAction
                  value:
                    id: 670e7a35-c282-469f-b77f-336b75bcbe55
                    version: 1
                    createdAt: '2022-11-02T12:27:22.73972022Z'
                    trigger:
                      'on': determineProviderOptions
                      filter:
                        providerConfigID: 1f3cb3c4-3d8d-4f3c-94ad-30a0a17fde6d
                    defaultAction:
                      type: setPriority
                      params:
                        priority: 1
                    workspaceId: 7f9f1882-a103-408d-ac96-46a7021e537a
        '400':
          description: Bad Request.
          content:
            application/json:
              schema:
                type: object
                required:
                  - errors
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      description: >-
                        Error struct that includes the error, cause, reason, and
                        possible resolutions. Check the full documentation
                        [here](https://docs.payrails.com/docs/resources/error-codes#error-structure).
                      required:
                        - id
                        - code
                        - detail
                      properties:
                        id:
                          type: string
                          format: uuid
                          description: >-
                            Unique identifier of the error. Please use this
                            value when reporting an issue to our team, so we can
                            help you faster.
                        code:
                          type: string
                          description: >-
                            Machine-friendly error code assigned to the error.
                            Check the full list of possible values
                            [here](https://docs.payrails.com/docs/resources/error-codes#list-of-error-codes).
                        detail:
                          type: string
                          description: >-
                            Human-readable description about the error, its
                            cause, and resolution.
                        docUrl:
                          type: string
                          description: >-
                            Link to the specific documentation about this
                            particular `code`.
                        reason:
                          type: object
                          additionalProperties: true
                          description: >-
                            Metadata providing more details about the reason of
                            the error. The structure of this object varies
                            according to the `code`.
              example:
                errors:
                  - id: a24bc325-3929-4d9d-9c08-b3aa532685b7
                    code: request.malformed
                    detail: The request has malformed syntax
                    docUrl: >-
                      https://docs.payrails.com/docs/resources/error-codes#requestmalformed
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                type: object
                required:
                  - errors
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      description: >-
                        Error struct that includes the error, cause, reason, and
                        possible resolutions. Check the full documentation
                        [here](https://docs.payrails.com/docs/resources/error-codes#error-structure).
                      required:
                        - id
                        - code
                        - detail
                      properties:
                        id:
                          type: string
                          format: uuid
                          description: >-
                            Unique identifier of the error. Please use this
                            value when reporting an issue to our team, so we can
                            help you faster.
                        code:
                          type: string
                          description: >-
                            Machine-friendly error code assigned to the error.
                            Check the full list of possible values
                            [here](https://docs.payrails.com/docs/resources/error-codes#list-of-error-codes).
                        detail:
                          type: string
                          description: >-
                            Human-readable description about the error, its
                            cause, and resolution.
                        docUrl:
                          type: string
                          description: >-
                            Link to the specific documentation about this
                            particular `code`.
                        reason:
                          type: object
                          additionalProperties: true
                          description: >-
                            Metadata providing more details about the reason of
                            the error. The structure of this object varies
                            according to the `code`.
              example:
                errors:
                  - id: a24bc325-3929-4d9d-9c08-b3aa532685b7
                    code: request.unauthorized
                    detail: >-
                      The request lacks necessary credentials to perform the
                      specified action
                    docUrl: >-
                      https://docs.payrails.com/docs/resources/error-codes#requestunauthorized
        '403':
          description: Insufficient Scope.
          content:
            application/json:
              schema:
                type: object
                required:
                  - errors
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      description: >-
                        Error struct that includes the error, cause, reason, and
                        possible resolutions. Check the full documentation
                        [here](https://docs.payrails.com/docs/resources/error-codes#error-structure).
                      required:
                        - id
                        - code
                        - detail
                      properties:
                        id:
                          type: string
                          format: uuid
                          description: >-
                            Unique identifier of the error. Please use this
                            value when reporting an issue to our team, so we can
                            help you faster.
                        code:
                          type: string
                          description: >-
                            Machine-friendly error code assigned to the error.
                            Check the full list of possible values
                            [here](https://docs.payrails.com/docs/resources/error-codes#list-of-error-codes).
                        detail:
                          type: string
                          description: >-
                            Human-readable description about the error, its
                            cause, and resolution.
                        docUrl:
                          type: string
                          description: >-
                            Link to the specific documentation about this
                            particular `code`.
                        reason:
                          type: object
                          additionalProperties: true
                          description: >-
                            Metadata providing more details about the reason of
                            the error. The structure of this object varies
                            according to the `code`.
              example:
                errors:
                  - id: e7db22b3-914e-4975-928e-9edfb0885bea
                    code: request.forbidden
                    detail: >-
                      The request credentials lack the required permissions to
                      perform the specified action
                    docUrl: >-
                      https://docs.payrails.com/docs/resources/error-codes#requestforbidden
        '404':
          description: Not Found.
          content:
            application/json:
              schema:
                type: object
                required:
                  - errors
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      description: >-
                        Error struct that includes the error, cause, reason, and
                        possible resolutions. Check the full documentation
                        [here](https://docs.payrails.com/docs/resources/error-codes#error-structure).
                      required:
                        - id
                        - code
                        - detail
                      properties:
                        id:
                          type: string
                          format: uuid
                          description: >-
                            Unique identifier of the error. Please use this
                            value when reporting an issue to our team, so we can
                            help you faster.
                        code:
                          type: string
                          description: >-
                            Machine-friendly error code assigned to the error.
                            Check the full list of possible values
                            [here](https://docs.payrails.com/docs/resources/error-codes#list-of-error-codes).
                        detail:
                          type: string
                          description: >-
                            Human-readable description about the error, its
                            cause, and resolution.
                        docUrl:
                          type: string
                          description: >-
                            Link to the specific documentation about this
                            particular `code`.
                        reason:
                          type: object
                          additionalProperties: true
                          description: >-
                            Metadata providing more details about the reason of
                            the error. The structure of this object varies
                            according to the `code`.
              example:
                errors:
                  - id: a24bc325-3929-4d9d-9c08-b3aa532685b7
                    code: request.not-found
                    detail: The requested resource was not found
                    docUrl: >-
                      https://docs.payrails.com/docs/resources/error-codes#requestnot-found
        '429':
          description: Too Many Requests.
          content:
            application/json:
              schema:
                type: object
                required:
                  - errors
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      description: >-
                        Error struct that includes the error, cause, reason, and
                        possible resolutions. Check the full documentation
                        [here](https://docs.payrails.com/docs/resources/error-codes#error-structure).
                      required:
                        - id
                        - code
                        - detail
                      properties:
                        id:
                          type: string
                          format: uuid
                          description: >-
                            Unique identifier of the error. Please use this
                            value when reporting an issue to our team, so we can
                            help you faster.
                        code:
                          type: string
                          description: >-
                            Machine-friendly error code assigned to the error.
                            Check the full list of possible values
                            [here](https://docs.payrails.com/docs/resources/error-codes#list-of-error-codes).
                        detail:
                          type: string
                          description: >-
                            Human-readable description about the error, its
                            cause, and resolution.
                        docUrl:
                          type: string
                          description: >-
                            Link to the specific documentation about this
                            particular `code`.
                        reason:
                          type: object
                          additionalProperties: true
                          description: >-
                            Metadata providing more details about the reason of
                            the error. The structure of this object varies
                            according to the `code`.
              example:
                errors:
                  - id: a24bc325-3929-4d9d-9c08-b3aa532685b7
                    code: request.rate-limit
                    detail: Too many requests
                    docUrl: >-
                      https://docs.payrails.com/docs/resources/error-codes#requestrate-limit
      security:
        - BearerToken:
            - rulesets:create
components:
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: >
        You can use your secret API key in the `x-api-key` header of your API
        requests for supported endpoints: `x-api-key: <YOUR_API_KEY_HERE>`.

        API keys are environment specific and should be securely guarded.


        You don't have your API key yet? Contact your Payrails account manager.
    BearerToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        You can use an OAuth2 JWT bearer token in the `Authorization` header of
        your API requests for supported endpoints: `Authorization: Bearer
        <YOUR_JWT_HERE>`.

        These tokens are valid for 10 minutes and can be requested via the
        [access token endpoint](#operation/getOAuthToken) endpoint.

````

## Related topics

- [Get a Ruleset](/reference/getruleset.md)
- [List Rulesets](/reference/listrulesets.md)
- [Create a new Ruleset](/reference/createruleset.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.