Lightspark · Schema

AgentActionListResponse

CompanyPaymentsCross-Border PaymentsStablecoinsBitcoinLightning NetworkEmbedded FinanceAgentic PaymentsCardsKYCFinancial ServicesForeign Exchange

Properties

Name Type Description
data array List of agent actions matching the filter criteria.
hasMore boolean Indicates if more results are available beyond this page.
nextCursor string Cursor to retrieve the next page of results (only present if hasMore is true).
totalCount integer Total number of actions matching the criteria (excluding pagination).
View JSON Schema on GitHub

JSON Schema

lightspark-agent-action-list-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/lightspark/main/json-schema/lightspark-agent-action-list-response-schema.json",
  "title": "AgentActionListResponse",
  "x-generated": "2026-10-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/lightspark-agent-management-api-openapi.yml#/components/schemas/AgentActionListResponse",
  "type": "object",
  "required": [
    "data",
    "hasMore"
  ],
  "properties": {
    "data": {
      "type": "array",
      "description": "List of agent actions matching the filter criteria.",
      "items": {
        "$ref": "#/$defs/AgentAction"
      }
    },
    "hasMore": {
      "type": "boolean",
      "description": "Indicates if more results are available beyond this page."
    },
    "nextCursor": {
      "type": "string",
      "description": "Cursor to retrieve the next page of results (only present if hasMore is true)."
    },
    "totalCount": {
      "type": "integer",
      "description": "Total number of actions matching the criteria (excluding pagination)."
    }
  },
  "$defs": {
    "AccountDestination": {
      "title": "Account",
      "allOf": [
        {
          "$ref": "#/$defs/BaseDestination"
        },
        {
          "type": "object",
          "required": [
            "accountId",
            "destinationType"
          ],
          "properties": {
            "destinationType": {
              "type": "string",
              "enum": [
                "ACCOUNT"
              ]
            },
            "accountId": {
              "type": "string",
              "description": "Destination account identifier"
            },
            "paymentRail": {
              "allOf": [
                {
                  "$ref": "#/$defs/PaymentRail"
                },
                {
                  "description": "The payment rail to use for the transfer. Must be one of the rails supported by the destination account. If not specified, the system will select a default rail."
                }
              ]
            }
          },
          "description": "Destination account details"
        }
      ]
    },
    "AccountQuoteSource": {
      "title": "Account",
      "allOf": [
        {
          "$ref": "#/$defs/BaseQuoteSource"
        },
        {
          "type": "object",
          "required": [
            "accountId",
            "sourceType"
          ],
          "properties": {
            "sourceType": {
              "type": "string",
              "enum": [
                "ACCOUNT"
              ]
            },
            "accountId": {
              "type": "string",
              "description": "Source account identifier"
            },
            "customerId": {
              "type": "string",
              "description": "Required when funding from an FBO account to identify the customer on whose behalf the transaction is being initiated.  Otherwise, will default to the customerId of the account owner."
            }
          },
          "description": "Source account details"
        }
      ]
    },
    "AccountTransactionDestination": {
      "title": "Account Destination",
      "allOf": [
        {
          "$ref": "#/$defs/BaseTransactionDestination"
        },
        {
          "type": "object",
          "required": [
            "accountId",
            "destinationType"
          ],
          "properties": {
            "destinationType": {
              "type": "string",
              "enum": [
                "ACCOUNT"
              ]
            },
            "accountId": {
              "type": "string",
              "description": "Destination account identifier"
            },
            "onChainTransaction": {
              "$ref": "#/$defs/OnChainTransaction",
              "description": "On-chain transaction that delivered funds to this destination, when the destination is an external crypto wallet. Populated once the crypto transfer has settled."
            }
          },
          "description": "Destination account details"
        }
      ]
    },
    "AccountTransactionSource": {
      "title": "Account Source",
      "allOf": [
        {
          "$ref": "#/$defs/BaseTransactionSource"
        },
        {
          "type": "object",
          "required": [
            "accountId",
            "sourceType"
          ],
          "properties": {
            "sourceType": {
              "type": "string",
              "enum": [
                "ACCOUNT"
              ]
            },
            "accountId": {
              "type": "string",
              "description": "Source account identifier"
            },
            "onChainTransaction": {
              "$ref": "#/$defs/OnChainTransaction",
              "description": "On-chain transaction that delivered funds from this source, when the source is an external crypto wallet. Populated once the crypto transfer has settled."
            }
          },
          "description": "Source account details"
        }
      ]
    },
    "AedAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/AedAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "BANK_TRANSFER"
                ]
              }
            }
          }
        }
      ]
    },
    "AedAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "iban"
      ],
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "AED_ACCOUNT"
          ]
        },
        "iban": {
          "type": "string",
          "description": "UAE IBAN (23 characters, starting with AE)",
          "minLength": 23,
          "maxLength": 23,
          "pattern": "^AE[0-9]{21}$"
        },
        "swiftCode": {
          "type": "string",
          "description": "The SWIFT/BIC code of the bank",
          "minLength": 8,
          "maxLength": 11,
          "pattern": "^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$"
        }
      }
    },
    "AgentAction": {
      "type": "object",
      "description": "An action submitted by an agent that may require platform approval before execution. All agent-initiated operations (quote execution, transfers) are represented as AgentActions, giving the platform a consistent object to approve, reject, and audit regardless of the underlying operation type.",
      "required": [
        "id",
        "agentId",
        "customerId",
        "platformCustomerId",
        "status",
        "type",
        "createdAt",
        "updatedAt"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "System-generated unique identifier for this action."
        },
        "agentId": {
          "type": "string",
          "description": "The agent that submitted this action."
        },
        "customerId": {
          "type": "string",
          "description": "The customer on whose behalf the action was submitted."
        },
        "platformCustomerId": {
          "type": "string",
          "description": "Platform-specific ID of the customer."
        },
        "status": {
          "$ref": "#/$defs/AgentActionStatus"
        },
        "type": {
          "$ref": "#/$defs/AgentActionType"
        },
        "quote": {
          "allOf": [
            {
              "$ref": "#/$defs/Quote"
            }
          ],
          "description": "The quote being executed. Populated for `EXECUTE_QUOTE` actions; absent for transfer actions. Contains the full amount, currency, destination, and rate details needed to present an approval decision to the user."
        },
        "transferDetails": {
          "allOf": [
            {
              "$ref": "#/$defs/AgentTransferDetails"
            }
          ],
          "description": "Details of the transfer being requested. Populated for `TRANSFER_OUT` and `TRANSFER_IN` actions; absent for `EXECUTE_QUOTE` actions."
        },
        "transaction": {
          "allOf": [
            {
              "$ref": "#/$defs/TransactionOneOf"
            }
          ],
          "description": "The resulting transaction, populated once the action has been approved and execution has begun. Absent while the action is `PENDING_APPROVAL` or `REJECTED`."
        },
        "rejectionReason": {
          "type": "string",
          "description": "Human-readable reason provided by the platform when rejecting the action. Only present when status is `REJECTED`."
        },
        "createdAt": {
          "type": "string",
          "format": "date-time",
          "description": "When the action was submitted by the agent."
        },
        "updatedAt": {
          "type": "string",
          "format": "date-time",
          "description": "When the action was last updated."
        }
      }
    },
    "AgentActionStatus": {
      "type": "string",
      "enum": [
        "PENDING_APPROVAL",
        "APPROVED",
        "REJECTED",
        "FAILED"
      ],
      "description": "Status of an agent action.\n\n| Status | Description |\n|--------|-------------|\n| `PENDING_APPROVAL` | Submitted by the agent, awaiting platform approval before execution |\n| `APPROVED` | Approved by the platform; execution is in progress or completed |\n| `REJECTED` | Rejected by the platform; the underlying transaction was not executed |\n| `FAILED` | Approved but execution failed (e.g. quote expired, insufficient funds) |\n"
    },
    "AgentActionType": {
      "type": "string",
      "enum": [
        "EXECUTE_QUOTE",
        "TRANSFER_OUT",
        "TRANSFER_IN"
      ],
      "description": "The type of action the agent is requesting.\n\n| Type | Description |\n|------|-------------|\n| `EXECUTE_QUOTE` | Execute a cross-currency quote |\n| `TRANSFER_OUT` | Transfer from an internal account to an external account |\n| `TRANSFER_IN` | Transfer from an external account to an internal account |\n"
    },
    "AgentTransferDetails": {
      "type": "object",
      "description": "Details of a transfer-type agent action (TRANSFER_OUT or TRANSFER_IN).",
      "required": [
        "amount",
        "currency",
        "sourceAccountId",
        "destinationAccountId"
      ],
      "properties": {
        "amount": {
          "type": "integer",
          "format": "int64",
          "description": "Transfer amount in the smallest unit of the specified currency."
        },
        "currency": {
          "type": "string",
          "description": "ISO 4217 currency code for the transfer amount."
        },
        "sourceAccountId": {
          "type": "string",
          "description": "ID of the source account (internal or external)."
        },
        "destinationAccountId": {
          "type": "string",
          "description": "ID of the destination account (internal or external)."
        }
      }
    },
    "BaseDestination": {
      "type": "object",
      "required": [
        "destinationType"
      ],
      "properties": {
        "destinationType": {
          "$ref": "#/$defs/DestinationType"
        }
      }
    },
    "BasePaymentAccountInfo": {
      "type": "object",
      "required": [
        "accountType"
      ],
      "properties": {
        "accountType": {
          "$ref": "#/$defs/PaymentAccountType"
        }
      }
    },
    "BaseQuoteSource": {
      "type": "object",
      "required": [
        "sourceType"
      ],
      "properties": {
        "sourceType": {
          "$ref": "#/$defs/QuoteSourceType"
        }
      }
    },
    "BaseTransactionDestination": {
      "type": "object",
      "required": [
        "destinationType"
      ],
      "properties": {
        "destinationType": {
          "$ref": "#/$defs/TransactionDestinationType"
        },
        "currency": {
          "type": "string",
          "description": "Currency code for the destination"
        }
      }
    },
    "BaseTransactionSource": {
      "type": "object",
      "required": [
        "sourceType"
      ],
      "properties": {
        "sourceType": {
          "$ref": "#/$defs/TransactionSourceType"
        },
        "currency": {
          "type": "string",
          "description": "Currency code for the source"
        }
      }
    },
    "BaseWalletInfo": {
      "type": "object",
      "required": [
        "address",
        "accountType"
      ],
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "BASE_WALLET"
          ]
        },
        "address": {
          "type": "string",
          "description": "Base eth wallet address"
        }
      }
    },
    "BdtAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/BdtAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "BANK_TRANSFER",
                  "MOBILE_MONEY"
                ]
              }
            }
          }
        }
      ]
    },
    "BdtAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "bankName"
      ],
      "description": "Required fields depend on the selected paymentRails:\n- BANK_TRANSFER: accountNumber, bankName\n- MOBILE_MONEY: bankName, phoneNumber",
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "BDT_ACCOUNT"
          ]
        },
        "accountNumber": {
          "type": "string",
          "description": "The account number of the bank",
          "minLength": 1,
          "maxLength": 34
        },
        "bankName": {
          "type": "string",
          "description": "The name of the bank",
          "minLength": 1,
          "maxLength": 255
        },
        "branchCode": {
          "type": "string",
          "description": "The branch code",
          "minLength": 5,
          "maxLength": 5,
          "pattern": "^[0-9]{5}$"
        },
        "swiftCode": {
          "type": "string",
          "description": "The SWIFT/BIC code of the bank",
          "minLength": 8,
          "maxLength": 11,
          "pattern": "^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$"
        },
        "phoneNumber": {
          "type": "string",
          "description": "The phone number in international format",
          "minLength": 7,
          "maxLength": 15,
          "pattern": "^\\+[0-9]{6,14}$"
        }
      }
    },
    "BwpAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/BwpAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY"
                ]
              }
            }
          }
        }
      ]
    },
    "BwpAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "phoneNumber",
        "provider"
      ],
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "BWP_ACCOUNT"
          ]
        },
        "phoneNumber": {
          "type": "string",
          "description": "The phone number in international format",
          "minLength": 7,
          "maxLength": 15,
          "pattern": "^\\+[0-9]{6,14}$"
        },
        "provider": {
          "type": "string",
          "description": "The mobile money provider name",
          "minLength": 1,
          "maxLength": 255
        }
      }
    },
    "CadAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/CadAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "BANK_TRANSFER"
                ]
              }
            }
          }
        }
      ]
    },
    "CadAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "bankCode",
        "branchCode",
        "accountNumber"
      ],
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "CAD_ACCOUNT"
          ]
        },
        "bankCode": {
          "type": "string",
          "description": "Canadian financial institution number (3 digits)",
          "minLength": 3,
          "maxLength": 3,
          "pattern": "^[0-9]{3}$"
        },
        "branchCode": {
          "type": "string",
          "description": "Transit number identifying the branch (5 digits)",
          "minLength": 5,
          "maxLength": 5,
          "pattern": "^[0-9]{5}$"
        },
        "accountNumber": {
          "type": "string",
          "description": "Bank account number (7-12 digits)",
          "minLength": 7,
          "maxLength": 12,
          "pattern": "^[0-9]{7,12}$"
        }
      }
    },
    "CardMerchant": {
      "type": "object",
      "required": [
        "descriptor"
      ],
      "properties": {
        "descriptor": {
          "type": "string",
          "description": "Merchant descriptor string captured from the card network at authorization time."
        },
        "mcc": {
          "type": "string",
          "description": "Merchant Category Code (ISO 18245) — four-digit numeric string."
        },
        "country": {
          "type": "string",
          "description": "Two-letter ISO 3166-1 alpha-2 country code of the merchant."
        }
      }
    },
    "CardPullSummary": {
      "type": "object",
      "required": [
        "count",
        "totalAmount"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "description": "Total number of pulls (debits) executed against the funding source for this transaction. `> 1` indicates one or more post-hoc pulls — e.g. restaurant tip / over-auth clearings."
        },
        "totalAmount": {
          "type": "integer",
          "format": "int64",
          "description": "Sum of all pull amounts in the smallest unit of the funding source's currency."
        },
        "pendingCount": {
          "type": "integer",
          "description": "Number of pulls still in the `PENDING` state. Drops to zero when every pull has reached a terminal state. Non-zero values that persist beyond the expected settlement window are an early signal for the `EXCEPTION` path."
        }
      }
    },
    "CardRefundSummary": {
      "type": "object",
      "required": [
        "count",
        "totalAmount"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "description": "Number of refund (return) events received for this transaction."
        },
        "totalAmount": {
          "type": "integer",
          "format": "int64",
          "description": "Sum of all refund amounts in the smallest unit of the funding source's currency."
        }
      }
    },
    "CardSettlementSummary": {
      "type": "object",
      "required": [
        "count",
        "totalAmount"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "description": "Number of settlement (clearing) events received for this transaction."
        },
        "totalAmount": {
          "type": "integer",
          "format": "int64",
          "description": "Sum of all settled amounts in the smallest unit of the funding source's currency."
        }
      }
    },
    "CardTransaction": {
      "title": "Card Transaction",
      "type": "object",
      "required": [
        "type",
        "id",
        "status",
        "direction",
        "merchant",
        "authorizedAmount",
        "accountId",
        "customerId",
        "platformCustomerId",
        "authorizedAt",
        "createdAt",
        "updatedAt"
      ],
      "description": "Parent transaction row for a card authorization and all of the pulls / settlements / refunds that reconcile against it. Child events are rolled up into the `pullSummary`, `refundSummary`, and `settlementSummary` aggregates. Delivered as the payload of the generic transaction webhook stream (extends the Transaction model with a card destination type) on every transition.",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "CARD"
          ],
          "description": "Discriminator identifying this transaction as a card transaction in the `Transaction` list."
        },
        "id": {
          "type": "string",
          "description": "System-generated unique card transaction identifier",
          "readOnly": true
        },
        "cardId": {
          "type": "string",
          "description": "The id of the `Card` this transaction was made on."
        },
        "customerId": {
          "type": "string",
          "description": "System ID of the customer (cardholder) this transaction belongs to."
        },
        "platformCustomerId": {
          "type": "string",
          "description": "Platform-specific ID of the customer (cardholder) this transaction belongs to."
        },
        "issuerTransactionToken": {
          "type": "string",
          "description": "Opaque identifier for the transaction on the underlying issuer. Used to cross-reference Grid records against issuer dashboards and webhooks.",
          "readOnly": true
        },
        "status": {
          "$ref": "#/$defs/CardTransactionStatus"
        },
        "direction": {
          "$ref": "#/$defs/TransactionDirection",
          "description": "Card transactions debit the customer's account."
        },
        "merchant": {
          "$ref": "#/$defs/CardMerchant"
        },
        "authorizedAmount": {
          "$ref": "#/$defs/CurrencyAmount"
        },
        "settledAmount": {
          "$ref": "#/$defs/CurrencyAmount"
        },
        "refundedAmount": {
          "$ref": "#/$defs/CurrencyAmount"
        },
        "accountId": {
          "type": "string",
          "description": "Internal account id that funded this transaction (the funding source selected by Authorization Decisioning at auth time)."
        },
        "pullSummary": {
          "$ref": "#/$defs/CardPullSummary"
        },
        "refundSummary": {
          "$ref": "#/$defs/CardRefundSummary"
        },
        "settlementSummary": {
          "$ref": "#/$defs/CardSettlementSummary"
        },
        "authorizedAt": {
          "type": "string",
          "format": "date-time",
          "description": "When the auth was approved."
        },
        "lastEventAt": {
          "type": "string",
          "format": "date-time",
          "description": "Timestamp of the most recent reconcile event (pull / clearing / refund) against this transaction."
        },
        "createdAt": {
          "type": "string",
          "format": "date-time",
          "description": "Creation timestamp (same as `authorizedAt` for card transactions).",
          "readOnly": true
        },
        "updatedAt": {
          "type": "string",
          "format": "date-time",
          "description": "Last update timestamp.",
          "readOnly": true
        }
      }
    },
    "CardTransactionStatus": {
      "type": "string",
      "enum": [
        "AUTHORIZED",
        "PARTIALLY_SETTLED",
        "SETTLED",
        "REFUNDED",
        "EXCEPTION"
      ],
      "description": "Lifecycle status of a card transaction.\n\n| Status | Description |\n|--------|-------------|\n| `AUTHORIZED` | The auth has been approved and a hold placed on the funding source; no clearing has arrived yet. |\n| `PARTIALLY_SETTLED` | At least one clearing has arrived and posted, but more clearings are still expected (split shipments, tips, multi-leg trips). |\n| `SETTLED` | All clearings for the auth have posted and the transaction is closed against the funding source. |\n| `REFUNDED` | A `RETURN` was received from the merchant; the net settled amount has been refunded in part or whole. |\n| `EXCEPTION` | The transaction settled to the card network but the corresponding pull from the funding source failed (e.g. balance no longer covers the post-hoc clearing). Surfaces high-urgency alerts and is the dashboard query for stuck reconciliations. |\n"
    },
    "CnyAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/CnyAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "BANK_TRANSFER",
                  "MOBILE_MONEY"
                ]
              }
            }
          }
        }
      ]
    },
    "CnyAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "bankName"
      ],
      "description": "Required fields depend on the selected paymentRails:\n- BANK_TRANSFER: accountNumber, bankName\n- MOBILE_MONEY: bankName, phoneNumber",
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "CNY_ACCOUNT"
          ]
        },
        "accountNumber": {
          "type": "string",
          "description": "The account number of the bank",
          "minLength": 1,
          "maxLength": 34
        },
        "bankName": {
          "type": "string",
          "description": "The name of the bank",
          "minLength": 1,
          "maxLength": 255
        },
        "phoneNumber": {
          "type": "string",
          "description": "The phone number in international format",
          "minLength": 7,
          "maxLength": 15,
          "pattern": "^\\+[0-9]{6,14}$"
        }
      }
    },
    "CounterpartyInformation": {
      "type": "object",
      "description": "Additional information about the counterparty, if available and relevant to the transaction and platform.",
      "additionalProperties": true
    },
    "CryptoNetwork": {
      "type": "string",
      "enum": [
        "BITCOIN",
        "ETHEREUM",
        "SOLANA",
        "BASE",
        "POLYGON",
        "TRON",
        "SPARK"
      ],
      "description": "The blockchain network an on-chain transaction settled on. Whether this is the mainnet or a test network (e.g. Solana devnet) is determined by your platform's environment — sandbox platforms operate on test networks, production platforms on mainnet — mirroring how `cryptoNetwork` is interpreted elsewhere in the API."
    },
    "Currency": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string",
          "description": "Three-letter currency code (ISO 4217) for fiat currencies. Some cryptocurrencies may use their own ticker symbols (e.g. \"BTC\" for Bitcoin, \"USDC\" for USDC, etc.)"
        },
        "name": {
          "type": "string",
          "description": "Full name of the currency"
        },
        "symbol": {
          "type": "string",
          "description": "Symbol of the currency"
        },
        "decimals": {
          "type": "integer",
          "description": "Number of decimal places for the currency",
          "minimum": 0
        }
      }
    },
    "CurrencyAmount": {
      "type": "object",
      "required": [
        "amount",
        "currency"
      ],
      "properties": {
        "amount": {
          "type": "integer",
          "format": "int64",
          "description": "Amount in the smallest unit of the currency (e.g., cents for USD/EUR, satoshis for BTC)"
        },
        "currency": {
          "$ref": "#/$defs/Currency"
        }
      }
    },
    "DestinationType": {
      "type": "string",
      "enum": [
        "ACCOUNT",
        "UMA_ADDRESS"
      ],
      "description": "Type of payment destination"
    },
    "DkkAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/DkkAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "SEPA",
                  "SEPA_INSTANT"
                ]
              }
            }
          }
        }
      ]
    },
    "DkkAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "iban"
      ],
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "DKK_ACCOUNT"
          ]
        },
        "iban": {
          "type": "string",
          "description": "Danish IBAN (18 characters, starting with DK)",
          "minLength": 18,
          "maxLength": 18,
          "pattern": "^DK[0-9]{16}$"
        },
        "swiftCode": {
          "type": "string",
          "description": "The SWIFT/BIC code of the bank",
          "minLength": 8,
          "maxLength": 11,
          "pattern": "^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$"
        }
      }
    },
    "EgpAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/EgpAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "BANK_TRANSFER",
                  "MOBILE_MONEY"
                ]
              }
            }
          }
        }
      ]
    },
    "EgpAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "bankName"
      ],
      "description": "Required fields depend on the selected paymentRails:\n- BANK_TRANSFER: bankName, iban\n- MOBILE_MONEY: bankName, phoneNumber",
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "EGP_ACCOUNT"
          ]
        },
        "iban": {
          "type": "string",
          "description": "Egyptian IBAN (29 characters, starting with EG)",
          "minLength": 29,
          "maxLength": 29,
          "pattern": "^EG[0-9]{27}$"
        },
        "bankName": {
          "type": "string",
          "description": "The name of the bank",
          "minLength": 1,
          "maxLength": 255
        },
        "phoneNumber": {
          "type": "string",
          "description": "The phone number in international format",
          "minLength": 7,
          "maxLength": 15,
          "pattern": "^\\+[0-9]{6,14}$"
        }
      }
    },
    "EthereumWalletInfo": {
      "type": "object",
      "required": [
        "address",
        "accountType"
      ],
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "ETHEREUM_WALLET"
          ]
        },
        "address": {
          "type": "string",
          "description": "Ethereum L1 wallet address"
        }
      }
    },
    "EurAccountInfo": {
      "allOf": [
        {
          "$ref": "#/$defs/EurAccountInfoBase"
        },
        {
          "type": "object",
          "required": [
            "paymentRails"
          ],
          "properties": {
            "paymentRails": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "SEPA",
                  "SEPA_INSTANT"
                ]
              }
            }
          }
        }
      ]
    },
    "EurAccountInfoBase": {
      "type": "object",
      "required": [
        "accountType",
        "iban"
      ],
      "properties": {
        "accountType": {
          "type": "string",
          "enum": [
            "EUR_ACCOUNT"
          ]
        },
        "iban": {
          "type": "string",
          "description": "The IBAN of the bank account",
    

# --- truncated at 32 KB (141 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lightspark/refs/heads/main/json-schema/lightspark-agent-action-list-response-schema.json

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/lightspark-agent-action-list-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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