diff --git a/json/BalancePlatformGrantNotification-v1.json b/json/BalancePlatformGrantNotification-v1.json index 8294cc0..4625574 100644 --- a/json/BalancePlatformGrantNotification-v1.json +++ b/json/BalancePlatformGrantNotification-v1.json @@ -289,12 +289,12 @@ "code" : { "description" : "The code for the status of the grant. Possible values:\n- **Pending**\n- **Active**\n- **Repaid**\n- **WrittenOff**\n- **Failed**\n- **Revoked**", "enum" : [ - "Active", - "Failed", "Pending", + "Active", "Repaid", - "Revoked", - "WrittenOff" + "WrittenOff", + "Failed", + "Revoked" ], "type" : "string" } diff --git a/json/CapitalApi-v1.json b/json/CapitalApi-v1.json index e19d24c..55b471f 100644 --- a/json/CapitalApi-v1.json +++ b/json/CapitalApi-v1.json @@ -16,7 +16,7 @@ "url" : "https://github.com/Adyen/adyen-openapi" }, "version" : "1", - "x-timestamp" : "2025-02-26T15:37:42Z" + "x-timestamp" : "2025-03-12T12:32:22Z" }, "tags" : [ { "name" : "Grants", @@ -611,7 +611,7 @@ }, "GrantStatus" : { "type" : "string", - "enum" : [ "Pending", "Active", "Repaid", "WrittenOff", "Failed", "Revoked" ] + "enum" : [ "Pending", "Active", "Repaid", "WrittenOff", "Failed", "Revoked", "Requested", "Assessed", "Approved", "Rejected", "Cancelled" ] }, "Repayment" : { "required" : [ "basisPoints" ], diff --git a/json/CapitalService-v1.json b/json/CapitalService-v1.json new file mode 100644 index 0000000..69d3be7 --- /dev/null +++ b/json/CapitalService-v1.json @@ -0,0 +1,1424 @@ +{ + "openapi" : "3.1.0", + "servers" : [ { + "url" : "https://balanceplatform-api-test.adyen.com/capital/v1", + "description" : "Test Environment" + }, { + "url" : "https://balanceplatform-api-live.adyen.com/capital/v1", + "description" : "Live Environment" + } ], + "info" : { + "title" : "Capital API", + "description" : "The Capital API provides endpoints for embedding Adyen Capital into your [marketplace](https://docs.adyen.com/platforms/capital) or [platform](https://docs.adyen.com/platforms/capital). With Capital, you can offer business financing to your users as grants. When a user receives a grant, they must repay the grant amount in a specified term, in addition to paying a fee for using this service.\n\nWith these endpoints, you can:\n- **Get available grant offers**: You can get the grant offers that are available for your users. Adyen configures the financing amount, the fee, and the repayment conditions for each offer. These configurations are based on proactive risk analyses that Adyen performs on your users.\n- **Make requests for grants**: When a user selects a grant offer, you can make a request for the grant on their behalf.\n- **Get information about your grant account**: Your grant account tracks the information of all grants in your marketplace or platform.\n\n## Authentication\nEach request made to the Capital API must be signed with an API key. Generate an API key in your Customer Area.\n\nTo connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\n## Roles and permissions\nTo use the Capital API, your API credential must have the following roles:\n- **Balance_Platform_Capital_Configuration_Role**\n- **Balance_Platform_Capital_Grant_Initiation_Role**\n\nReach out to your Adyen contact to set up these roles.\n## Going live\nWhen going live, generate an API key in your [live Customer Area](https://ca-live.adyen.com/ca). You can then use the API key to send requests to `https://balanceplatform-api-live.adyen.com/capital/v{version}`.\n\n", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Developer Experience team", + "url" : "https://github.com/Adyen/adyen-openapi" + }, + "version" : "1", + "x-timestamp" : "2025-03-20T17:41:19Z" + }, + "tags" : [ { + "name" : "Grants", + "x-groupIndex" : 1 + }, { + "name" : "Grant offers", + "x-groupIndex" : 2 + }, { + "name" : "Grant accounts", + "x-groupIndex" : 3 + } ], + "paths" : { + "/grants" : { + "get" : { + "tags" : [ "Grants" ], + "summary" : "Get all the grants of an account holder", + "description" : "Returns a list of all the grants of a specific account holder.", + "operationId" : "get-grants", + "parameters" : [ { + "name" : "counterpartyAccountHolderId", + "in" : "query", + "description" : "The unique identifier of the account holder that received the grants.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Grants" + } + } + } + }, + "404" : { + "description" : "Not Found - The entity was not found.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 2 + }, + "post" : { + "tags" : [ "Grants" ], + "summary" : "Make a request for a grant", + "description" : "Make a request for a grant on behalf of an account holder.", + "operationId" : "post-grants", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GrantInfo" + } + } + } + }, + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Grant" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 1 + } + }, + "/grants/{grantId}" : { + "get" : { + "tags" : [ "Grants" ], + "summary" : "Get the details of a grant", + "description" : "Returns the details of the specified grant.", + "operationId" : "get-grants-grantId", + "parameters" : [ { + "name" : "grantId", + "in" : "path", + "description" : "The unique identifier of the grant reference.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Grant" + } + } + } + }, + "404" : { + "description" : "Not Found - The entity was not found.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 3 + } + }, + "/grants/{grantId}/disbursements" : { + "get" : { + "tags" : [ "Grants" ], + "summary" : "Get all the disbursements of a grant", + "description" : "Returns the disbursements of a specified grant.", + "operationId" : "get-grants-grantId-disbursements", + "parameters" : [ { + "name" : "grantId", + "in" : "path", + "description" : "The unique identifier of the grant reference.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Disbursements" + } + } + } + }, + "404" : { + "description" : "Not Found - The entity was not found.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 4 + } + }, + "/grants/{grantId}/disbursements/{disbursementId}" : { + "patch" : { + "tags" : [ "Grants" ], + "summary" : "Update the repayment configuration of a disbursement", + "description" : "Update the percentage of your user's net income that is deducted for repaying the grant.", + "operationId" : "patch-grants-grantId-disbursements-disbursementId", + "parameters" : [ { + "name" : "grantId", + "in" : "path", + "description" : "The unique identifier of the grant reference.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "disbursementId", + "in" : "path", + "description" : "The unique identifier of the disbursement.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PatchableDisbursement" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Disbursement" + } + } + } + }, + "404" : { + "description" : "Not Found - The entity was not found.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 6 + } + }, + "/grantAccounts/{id}" : { + "get" : { + "tags" : [ "Grant accounts" ], + "summary" : "Get the information of your grant account", + "description" : "Returns the details of the specified grant account. This account tracks existing grants in your marketplace or platform.", + "operationId" : "get-grantAccounts-id", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "The unique identifier of the grant account.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GrantAccount" + } + } + } + }, + "404" : { + "description" : "Not Found - The entity was not found.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 1 + } + }, + "/grantOffers/{id}" : { + "get" : { + "tags" : [ "Grant offers" ], + "summary" : "Get the details of a grant offer", + "description" : "Returns the details of the specified grant offer.", + "operationId" : "get-grantOffers-id", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "The unique identifier of the grant offer.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GrantOffer" + } + } + } + }, + "404" : { + "description" : "Not Found - The entity was not found.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 2 + } + }, + "/grantOffers" : { + "get" : { + "tags" : [ "Grant offers" ], + "summary" : "Get all available grant offers", + "description" : "Returns a list of all [grant offers](https://docs.adyen.com/platforms/capital#grant-offers) available for `accountHolderId` specified as a query parameter.", + "operationId" : "get-grantOffers", + "parameters" : [ { + "name" : "accountHolderId", + "in" : "query", + "description" : "The unique identifier of the account holder for which you want to get the available grant offers.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "OK - The request has succeeded.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GrantOffers" + } + } + } + }, + "404" : { + "description" : "Not Found - The entity was not found.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + }, + "422" : { + "description" : "Unprocessable Entity - A request validation error.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DefaultErrorResponseEntity" + } + } + } + } + }, + "x-sortIndex" : 1 + } + } + }, + "components" : { + "schemas" : { + "DefaultErrorResponseEntity" : { + "type" : "object", + "properties" : { + "detail" : { + "type" : "string", + "description" : "A human-readable explanation specific to this occurrence of the problem." + }, + "errorCode" : { + "type" : "string", + "description" : "Unique business error code." + }, + "instance" : { + "type" : "string", + "description" : "A URI that identifies the specific occurrence of the problem if applicable." + }, + "invalidFields" : { + "type" : "array", + "description" : "Array of fields with validation errors when applicable.", + "items" : { + "$ref" : "#/components/schemas/InvalidField" + } + }, + "requestId" : { + "type" : "string", + "description" : "The unique reference for the request." + }, + "status" : { + "type" : "integer", + "description" : "The HTTP status code.", + "format" : "int32" + }, + "title" : { + "type" : "string", + "description" : "A short, human-readable summary of the problem type." + }, + "type" : { + "type" : "string", + "description" : "A URI that identifies the validation error type. It points to human-readable documentation for the problem type." + } + }, + "description" : "Standardized error response following RFC-7807 format", + "externalDocs" : { + "url" : "https://www.rfc-editor.org/rfc/rfc7807" + } + }, + "InvalidField" : { + "required" : [ "message", "name", "value" ], + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "The field that has an invalid value." + }, + "value" : { + "type" : "string", + "description" : "The invalid value." + }, + "message" : { + "type" : "string", + "description" : "Description of the validation error." + } + } + }, + "Amount" : { + "required" : [ "currency", "value" ], + "type" : "object", + "properties" : { + "currency" : { + "type" : "string", + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes)." + }, + "value" : { + "type" : "integer", + "description" : "The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).", + "format" : "int64" + } + } + }, + "Balance" : { + "required" : [ "currency", "fee", "principal", "total" ], + "type" : "object", + "properties" : { + "currency" : { + "type" : "string", + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)." + }, + "fee" : { + "type" : "integer", + "description" : "The amount of the grant fee.", + "format" : "int64" + }, + "principal" : { + "type" : "integer", + "description" : "The grant amount that is paid out to the user for business financing.", + "format" : "int64" + }, + "total" : { + "type" : "integer", + "description" : "The total amount of the grant that the user must repay. It is the sum of the fee amount and the principal amount.", + "format" : "int64" + } + } + }, + "Counterparty" : { + "type" : "object", + "properties" : { + "accountHolderId" : { + "type" : "string", + "description" : "The unique identifier of the account holder that receives the grant. If no `balanceAccountId` is provided, the grant funds are disbursed to the primary balance account of this account holder." + }, + "balanceAccountId" : { + "type" : "string", + "description" : "The unique identifier of the balance account where the funds are disbursed. The balance account must belong to the specified account holder." + }, + "transferInstrumentId" : { + "type" : "string", + "description" : "The unique identifier of the transfer instrument where the funds are disbursed. The transfer instrument must belong to the legal entity of the specified account holder." + } + } + }, + "Fee" : { + "required" : [ "amount" ], + "type" : "object", + "properties" : { + "amount" : { + "description" : "Contains the amount of the grant fee.", + "$ref" : "#/components/schemas/Amount" + } + } + }, + "Grant" : { + "required" : [ "balances", "grantAccountId", "grantOfferId", "id", "status" ], + "type" : "object", + "properties" : { + "amount" : { + "description" : "Contains information about the amount of the grant. This is the sum of the amounts of all the disbursements related to the grant.", + "$ref" : "#/components/schemas/Amount" + }, + "balances" : { + "description" : "Contains information about the balances of the grant.", + "$ref" : "#/components/schemas/Balance" + }, + "counterparty" : { + "description" : "Contains the details of the party that receives the grant. Setting either an `accountHolderId`, `balanceAccountId`, or both is required.", + "$ref" : "#/components/schemas/Counterparty" + }, + "fee" : { + "description" : "Contains information about the fee that your user must pay for the grant. This is the sum of the fees of all the disbursements related to the grant.", + "$ref" : "#/components/schemas/Fee" + }, + "grantAccountId" : { + "type" : "string", + "description" : "The unique identifier of the grant account that tracks this grant." + }, + "grantOfferId" : { + "type" : "string", + "description" : "The unique identifier of the selected grant offer. Adyen uses the details of the selected grant offer to create a grant." + }, + "id" : { + "type" : "string", + "description" : "The unique identifier of the grant reference." + }, + "repayment" : { + "description" : "Contains information about the repayment configuration of the grant. By default, this repayment configuration applies to all the disbursements related to the grant.", + "$ref" : "#/components/schemas/Repayment" + }, + "status" : { + "description" : "Contains the status of the grant.", + "$ref" : "#/components/schemas/Status" + } + } + }, + "Repayment" : { + "required" : [ "basisPoints" ], + "type" : "object", + "properties" : { + "basisPoints" : { + "type" : "integer", + "description" : "The percentage of your user's incoming net volume that is deducted for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp).", + "format" : "int32" + }, + "term" : { + "description" : "Contains information about the time period in which your user must repay the total amount of the grant.", + "$ref" : "#/components/schemas/RepaymentTerm" + }, + "threshold" : { + "description" : "Contains the minimum threshold amount that your user must repay every 30-day period.", + "$ref" : "#/components/schemas/ThresholdRepayment" + } + } + }, + "RepaymentTerm" : { + "required" : [ "estimatedDays" ], + "type" : "object", + "properties" : { + "estimatedDays" : { + "type" : "integer", + "description" : "The estimated duration of the repayment term, in days.", + "format" : "int32" + }, + "maximumDays" : { + "type" : "integer", + "description" : "The maximum duration of the repayment term, in days. Only applies when `contractType` is **loan**.", + "format" : "int32" + } + } + }, + "Status" : { + "required" : [ "code" ], + "type" : "object", + "properties" : { + "code" : { + "description" : "The code for the status of the grant. Possible values:\n- **Pending**\n- **Active**\n- **Repaid**\n- **WrittenOff**\n- **Failed**\n- **Revoked**", + "enum" : [ "Pending", "Active", "Repaid", "WrittenOff", "Failed", "Revoked" ] + } + } + }, + "ThresholdRepayment" : { + "required" : [ "amount" ], + "type" : "object", + "properties" : { + "amount" : { + "description" : "The minimum threshold amount that your user must repay on every 30-day period.", + "$ref" : "#/components/schemas/Amount" + } + } + }, + "GrantInfo" : { + "required" : [ "grantAccountId", "grantOfferId" ], + "type" : "object", + "properties" : { + "amount" : { + "description" : "Contains information about the amount of the grant. This is the sum of the amounts of all the disbursements related to the grant.", + "$ref" : "#/components/schemas/Amount" + }, + "counterparty" : { + "description" : "Contains the details of the party that receives the grant. Setting either an `accountHolderId`, `balanceAccountId`, or both is required.", + "$ref" : "#/components/schemas/Counterparty" + }, + "fee" : { + "description" : "Contains information about the fee that your user must pay for the grant. This is the sum of the fees of all the disbursements related to the grant.", + "$ref" : "#/components/schemas/Fee" + }, + "grantAccountId" : { + "type" : "string", + "description" : "The unique identifier of the grant account that tracks this grant." + }, + "grantOfferId" : { + "type" : "string", + "description" : "The unique identifier of the selected grant offer. Adyen uses the details of the selected grant offer to create a grant." + }, + "repayment" : { + "description" : "Contains information about the repayment configuration of the grant. By default, this repayment configuration applies to all the disbursements related to the grant.", + "$ref" : "#/components/schemas/Repayment" + } + } + }, + "Grants" : { + "required" : [ "grants" ], + "type" : "object", + "properties" : { + "grants" : { + "type" : "array", + "description" : "Contains a list of the grants that the account holder has received.", + "items" : { + "$ref" : "#/components/schemas/Grant" + } + } + } + }, + "AULocalAccountIdentification" : { + "required" : [ "accountNumber", "bsbCode", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 9, + "minLength" : 5, + "type" : "string", + "description" : "The bank account number, without separators or whitespace." + }, + "bsbCode" : { + "maxLength" : 6, + "minLength" : 6, + "type" : "string", + "description" : "The 6-digit [Bank State Branch (BSB) code](https://en.wikipedia.org/wiki/Bank_state_branch), without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**auLocal**", + "default" : "auLocal" + } + } + } ] + }, + "AdditionalBankIdentification" : { + "type" : "object", + "properties" : { + "code" : { + "type" : "string", + "description" : "The value of the additional bank identification." + }, + "type" : { + "description" : "The type of additional bank identification, depending on the country.\n\nPossible values:\n\n * **gbSortCode**: The 6-digit [UK sort code](https://en.wikipedia.org/wiki/Sort_code), without separators or spaces\n * **usRoutingNumber**: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), without separators or spaces.", + "$ref" : "#/components/schemas/AdditionalBankIdentificationTypes" + } + } + }, + "AdditionalBankIdentificationTypes" : { + "type" : "string", + "enum" : [ "auBsbCode", "caRoutingNumber", "gbSortCode", "hkBankCode", "jpZenginCode", "nzBankBranchCode", "usRoutingNumber" ] + }, + "BRLocalAccountIdentification" : { + "required" : [ "accountNumber", "bankCode", "branchNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 10, + "minLength" : 1, + "type" : "string", + "description" : "The bank account number, without separators or whitespace." + }, + "bankCode" : { + "maxLength" : 3, + "minLength" : 3, + "type" : "string", + "description" : "The 3-digit bank code, with leading zeros." + }, + "branchNumber" : { + "maxLength" : 4, + "minLength" : 1, + "type" : "string", + "description" : "The bank account branch number, without separators or whitespace." + }, + "ispb" : { + "maxLength" : 8, + "minLength" : 8, + "type" : "string", + "description" : "The 8-digit ISPB, with leading zeros." + }, + "type" : { + "type" : "string", + "description" : "**brLocal**", + "default" : "brLocal" + } + } + } ] + }, + "BankAccountIdentification" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "The type of account, which depends on the country of the account and the currency of the transfer." + } + }, + "discriminator" : { + "propertyName" : "type", + "mapping" : { + "iban" : "#/components/schemas/IbanAccountIdentification", + "numberAndBic" : "#/components/schemas/NumberAndBicAccountIdentification", + "auLocal" : "#/components/schemas/AULocalAccountIdentification", + "brLocal" : "#/components/schemas/BRLocalAccountIdentification", + "czLocal" : "#/components/schemas/CZLocalAccountIdentification", + "noLocal" : "#/components/schemas/NOLocalAccountIdentification", + "plLocal" : "#/components/schemas/PLLocalAccountIdentification", + "huLocal" : "#/components/schemas/HULocalAccountIdentification", + "seLocal" : "#/components/schemas/SELocalAccountIdentification", + "sgLocal" : "#/components/schemas/SGLocalAccountIdentification", + "ukLocal" : "#/components/schemas/UKLocalAccountIdentification", + "usLocal" : "#/components/schemas/USLocalAccountIdentification", + "caLocal" : "#/components/schemas/CALocalAccountIdentification", + "dkLocal" : "#/components/schemas/DKLocalAccountIdentification", + "nzLocal" : "#/components/schemas/NZLocalAccountIdentification", + "hkLocal" : "#/components/schemas/HKLocalAccountIdentification" + } + } + }, + "CALocalAccountIdentification" : { + "required" : [ "accountNumber", "institutionNumber", "transitNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 12, + "minLength" : 5, + "type" : "string", + "description" : "The 5- to 12-digit bank account number, without separators or whitespace." + }, + "accountType" : { + "description" : "The bank account type.\n\nPossible values: **checking** or **savings**. Defaults to **checking**.", + "$ref" : "#/components/schemas/CALocalBankAccountType", + "default" : "checking" + }, + "institutionNumber" : { + "maxLength" : 3, + "minLength" : 3, + "type" : "string", + "description" : "The 3-digit institution number, without separators or whitespace." + }, + "transitNumber" : { + "maxLength" : 5, + "minLength" : 5, + "type" : "string", + "description" : "The 5-digit transit number, without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**caLocal**", + "default" : "caLocal" + } + } + } ] + }, + "CALocalBankAccountType" : { + "type" : "string", + "enum" : [ "checking", "savings" ] + }, + "CZLocalAccountIdentification" : { + "required" : [ "accountNumber", "bankCode", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 17, + "minLength" : 2, + "type" : "string", + "description" : "The 2- to 16-digit bank account number (Číslo účtu) in the following format:\n\n- The optional prefix (předčíslí).\n\n- The required second part (základní část) which must be at least two non-zero digits.\n\nExamples:\n\n- **19-123457** (with prefix)\n\n- **123457** (without prefix)\n\n- **000019-0000123457** (with prefix, normalized)\n\n- **000000-0000123457** (without prefix, normalized)" + }, + "bankCode" : { + "maxLength" : 4, + "minLength" : 4, + "type" : "string", + "description" : "The 4-digit bank code (Kód banky), without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**czLocal**", + "default" : "czLocal" + } + } + } ] + }, + "DKLocalAccountIdentification" : { + "required" : [ "accountNumber", "bankCode", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 10, + "minLength" : 4, + "type" : "string", + "description" : "The 4-10 digits bank account number (Kontonummer) (without separators or whitespace)." + }, + "bankCode" : { + "maxLength" : 4, + "minLength" : 4, + "type" : "string", + "description" : "The 4-digit bank code (Registreringsnummer) (without separators or whitespace)." + }, + "type" : { + "type" : "string", + "description" : "**dkLocal**", + "default" : "dkLocal" + } + } + } ] + }, + "Disbursement" : { + "required" : [ "accountHolderId", "amount", "balanceAccountId", "balances", "fee", "grantId", "id", "repayment" ], + "type" : "object", + "properties" : { + "accountHolderId" : { + "type" : "string", + "description" : "The unique identifier of the account holder that received the disbursement." + }, + "amount" : { + "description" : "Contains information about the amount of the disbursement.", + "$ref" : "#/components/schemas/Amount" + }, + "balanceAccountId" : { + "type" : "string", + "description" : "The unique identifier of the balance account that received the disbursement." + }, + "balances" : { + "description" : "Contains information about the balances of the disbursement.", + "$ref" : "#/components/schemas/Balance" + }, + "fee" : { + "description" : "Contains information about the fee that your user must pay for the disbursement.", + "$ref" : "#/components/schemas/Fee" + }, + "fundsCollections" : { + "type" : "array", + "description" : "Contains information about the accounts that Adyen uses to collect funds related to repayments.", + "items" : { + "$ref" : "#/components/schemas/FundsCollection" + } + }, + "grantId" : { + "type" : "string", + "description" : "The unique identifier of the grant related to the disbursement." + }, + "id" : { + "type" : "string", + "description" : "The unique identifier of the disbursement." + }, + "repayment" : { + "description" : "Contains information about the basis points configured for repaying the disbursement.", + "$ref" : "#/components/schemas/DisbursementRepayment" + } + } + }, + "DisbursementRepayment" : { + "required" : [ "basisPoints" ], + "type" : "object", + "properties" : { + "basisPoints" : { + "maximum" : 10000, + "minimum" : 0, + "type" : "integer", + "description" : "The percentage of your user's incoming net volume that is deducted for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp).", + "format" : "int32" + } + } + }, + "Disbursements" : { + "required" : [ "disbursements" ], + "type" : "object", + "properties" : { + "disbursements" : { + "type" : "array", + "description" : "Contains a list of all disbursements related to the specified grant.", + "items" : { + "$ref" : "#/components/schemas/Disbursement" + } + } + } + }, + "FundsCollection" : { + "type" : "object", + "properties" : { + "accountIdentification" : { + "description" : "Contains the identification information of the account to which you can transfer funds related to repayments.", + "$ref" : "#/components/schemas/BankAccountIdentification" + }, + "fundsCollectionType" : { + "description" : "The type of funds collection.\n\nPossible values: **UnscheduledRepayment**, **Revocation**.", + "$ref" : "#/components/schemas/FundsCollectionType" + } + } + }, + "FundsCollectionType" : { + "type" : "string", + "enum" : [ "UnscheduledRepayment", "Revocation" ] + }, + "HKLocalAccountIdentification" : { + "required" : [ "accountNumber", "clearingCode", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 15, + "minLength" : 9, + "type" : "string", + "description" : "The 9- to 15-character bank account number (alphanumeric), without separators or whitespace. Starts with the 3-digit branch code." + }, + "clearingCode" : { + "maxLength" : 3, + "minLength" : 3, + "type" : "string", + "description" : "The 3-digit clearing code, without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**hkLocal**", + "default" : "hkLocal" + } + } + } ] + }, + "HULocalAccountIdentification" : { + "required" : [ "accountNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 24, + "minLength" : 24, + "type" : "string", + "description" : "The 24-digit bank account number, without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**huLocal**", + "default" : "huLocal" + } + } + } ] + }, + "IbanAccountIdentification" : { + "required" : [ "iban", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "iban" : { + "type" : "string", + "description" : "The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard." + }, + "type" : { + "type" : "string", + "description" : "**iban**", + "default" : "iban" + } + } + } ] + }, + "NOLocalAccountIdentification" : { + "required" : [ "accountNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 11, + "minLength" : 11, + "type" : "string", + "description" : "The 11-digit bank account number, without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**noLocal**", + "default" : "noLocal" + } + } + } ] + }, + "NZLocalAccountIdentification" : { + "required" : [ "accountNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 16, + "minLength" : 15, + "type" : "string", + "description" : "The 15-16 digit bank account number. The first 2 digits are the bank number, the next 4 digits are the branch number, the next 7 digits are the account number, and the final 2-3 digits are the suffix." + }, + "type" : { + "type" : "string", + "description" : "**nzLocal**", + "default" : "nzLocal" + } + } + } ] + }, + "NumberAndBicAccountIdentification" : { + "required" : [ "accountNumber", "bic", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 34, + "type" : "string", + "description" : "The bank account number, without separators or whitespace. The length and format depends on the bank or country." + }, + "additionalBankIdentification" : { + "description" : "Additional identification codes of the bank. Some banks may require these identifiers for cross-border transfers.", + "$ref" : "#/components/schemas/AdditionalBankIdentification" + }, + "bic" : { + "maxLength" : 11, + "minLength" : 8, + "type" : "string", + "description" : "The bank's 8- or 11-character BIC or SWIFT code." + }, + "type" : { + "type" : "string", + "description" : "**numberAndBic**", + "default" : "numberAndBic" + } + } + } ] + }, + "PLLocalAccountIdentification" : { + "required" : [ "accountNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 26, + "minLength" : 26, + "type" : "string", + "description" : "The 26-digit bank account number ([Numer rachunku](https://pl.wikipedia.org/wiki/Numer_Rachunku_Bankowego)), without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**plLocal**", + "default" : "plLocal" + } + } + } ] + }, + "SELocalAccountIdentification" : { + "required" : [ "accountNumber", "clearingNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 10, + "minLength" : 7, + "type" : "string", + "description" : "The 7- to 10-digit bank account number ([Bankkontonummer](https://sv.wikipedia.org/wiki/Bankkonto)), without the clearing number, separators, or whitespace." + }, + "clearingNumber" : { + "maxLength" : 5, + "minLength" : 4, + "type" : "string", + "description" : "The 4- to 5-digit clearing number ([Clearingnummer](https://sv.wikipedia.org/wiki/Clearingnummer)), without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**seLocal**", + "default" : "seLocal" + } + } + } ] + }, + "SGLocalAccountIdentification" : { + "required" : [ "accountNumber", "bic" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 19, + "minLength" : 4, + "type" : "string", + "description" : "The 4- to 19-digit bank account number, without separators or whitespace." + }, + "bic" : { + "maxLength" : 11, + "minLength" : 8, + "type" : "string", + "description" : "The bank's 8- or 11-character BIC or SWIFT code." + }, + "type" : { + "type" : "string", + "description" : "**sgLocal**", + "default" : "sgLocal" + } + } + } ] + }, + "UKLocalAccountIdentification" : { + "required" : [ "accountNumber", "sortCode", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 8, + "minLength" : 8, + "type" : "string", + "description" : "The 8-digit bank account number, without separators or whitespace." + }, + "sortCode" : { + "maxLength" : 6, + "minLength" : 6, + "type" : "string", + "description" : "The 6-digit [sort code](https://en.wikipedia.org/wiki/Sort_code), without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**ukLocal**", + "default" : "ukLocal" + } + } + } ] + }, + "USLocalAccountIdentification" : { + "required" : [ "accountNumber", "routingNumber", "type" ], + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/BankAccountIdentification" + }, { + "type" : "object", + "properties" : { + "accountNumber" : { + "maxLength" : 18, + "minLength" : 2, + "type" : "string", + "description" : "The bank account number, without separators or whitespace." + }, + "accountType" : { + "description" : "The bank account type.\n\nPossible values: **checking** or **savings**. Defaults to **checking**.", + "$ref" : "#/components/schemas/USLocalBankAccountType", + "default" : "checking" + }, + "routingNumber" : { + "maxLength" : 9, + "minLength" : 9, + "type" : "string", + "description" : "The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), without separators or whitespace." + }, + "type" : { + "type" : "string", + "description" : "**usLocal**", + "default" : "usLocal" + } + } + } ] + }, + "USLocalBankAccountType" : { + "type" : "string", + "enum" : [ "checking", "savings" ] + }, + "PatchableDisbursement" : { + "type" : "object", + "properties" : { + "repayment" : { + "description" : "Contains information about the basis points configured for repaying the disbursement.", + "$ref" : "#/components/schemas/PatchableDisbursementRepayment" + } + } + }, + "PatchableDisbursementRepayment" : { + "type" : "object", + "properties" : { + "basisPoints" : { + "maximum" : 10000, + "minimum" : 0, + "type" : "integer", + "description" : "The percentage of your user's incoming net volume that is deducted for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp).", + "format" : "int32" + } + } + }, + "GrantAccount" : { + "type" : "object", + "properties" : { + "balances" : { + "type" : "array", + "description" : "Contains the sum of the balances of all grants tracked by this grant account. The balances are separated by currency.", + "items" : { + "$ref" : "#/components/schemas/Balance" + } + }, + "fundingBalanceAccountId" : { + "type" : "string", + "description" : "The unique identifier of the balance account used to fund the grant." + }, + "id" : { + "type" : "string", + "description" : "The unique identifier of the grant account." + }, + "limits" : { + "type" : "array", + "description" : "Contains the maximum amount of funds that you can disburse for grants.", + "items" : { + "$ref" : "#/components/schemas/GrantLimit" + } + } + } + }, + "GrantLimit" : { + "type" : "object", + "properties" : { + "amount" : { + "description" : "The limit amount of the grant account.", + "$ref" : "#/components/schemas/Amount" + } + } + }, + "GrantOffer" : { + "required" : [ "accountHolderId" ], + "type" : "object", + "properties" : { + "accountHolderId" : { + "type" : "string", + "description" : "The unique identifier of the account holder to which the grant is offered." + }, + "amount" : { + "description" : "The amount that would be paid out to the user for business financing.", + "$ref" : "#/components/schemas/Amount" + }, + "contractType" : { + "description" : "The contract type of the grant offer. Possible values: **cashAdvance**, **loan**.", + "enum" : [ "cashAdvance", "loan" ] + }, + "expiresAt" : { + "type" : "string", + "description" : "The date when the grant offer expires.", + "format" : "date-time" + }, + "fee" : { + "description" : "Contains information about the fee that your user would pay for the grant.", + "$ref" : "#/components/schemas/Fee" + }, + "id" : { + "type" : "string", + "description" : "The unique identifier of the grant offer." + }, + "repayment" : { + "description" : "Contains information about the repayment configuration of the grant.", + "$ref" : "#/components/schemas/Repayment" + }, + "startsAt" : { + "type" : "string", + "description" : "The date when the grant offer becomes available.", + "format" : "date-time" + } + } + }, + "GrantOffers" : { + "required" : [ "grantOffers" ], + "type" : "object", + "properties" : { + "grantOffers" : { + "type" : "array", + "description" : "Contains a list of available grant offers for the specified account holder.", + "items" : { + "$ref" : "#/components/schemas/GrantOffer" + } + } + } + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "type" : "apiKey", + "name" : "X-API-Key", + "in" : "header" + }, + "BasicAuth" : { + "type" : "http", + "scheme" : "basic" + } + } + }, + "jsonSchemaDialect" : "https://spec.openapis.org/oas/3.1/dialect/base" +} \ No newline at end of file diff --git a/yaml/BalancePlatformGrantNotification-v1.yaml b/yaml/BalancePlatformGrantNotification-v1.yaml index 452f018..594d8b8 100644 --- a/yaml/BalancePlatformGrantNotification-v1.yaml +++ b/yaml/BalancePlatformGrantNotification-v1.yaml @@ -250,12 +250,12 @@ components: - **Revoked**' enum: - - Active - - Failed - Pending + - Active - Repaid - - Revoked - WrittenOff + - Failed + - Revoked type: string required: - code diff --git a/yaml/CapitalApi-v1.yaml b/yaml/CapitalApi-v1.yaml index ced0281..b9e1169 100644 --- a/yaml/CapitalApi-v1.yaml +++ b/yaml/CapitalApi-v1.yaml @@ -34,7 +34,7 @@ info: name: Adyen Developer Experience team url: https://github.com/Adyen/adyen-openapi version: '1' - x-timestamp: '2025-02-26T15:37:42Z' + x-timestamp: '2025-03-12T12:32:22Z' tags: - name: Grants x-groupIndex: 1 @@ -493,6 +493,11 @@ components: - WrittenOff - Failed - Revoked + - Requested + - Assessed + - Approved + - Rejected + - Cancelled Repayment: required: - basisPoints diff --git a/yaml/CapitalService-v1.yaml b/yaml/CapitalService-v1.yaml new file mode 100644 index 0000000..fe8c684 --- /dev/null +++ b/yaml/CapitalService-v1.yaml @@ -0,0 +1,1251 @@ +openapi: 3.1.0 +servers: +- url: https://balanceplatform-api-test.adyen.com/capital/v1 + description: Test Environment +- url: https://balanceplatform-api-live.adyen.com/capital/v1 + description: Live Environment +info: + title: Capital API + description: "The Capital API provides endpoints for embedding Adyen Capital into\ + \ your [marketplace](https://docs.adyen.com/platforms/capital) or [platform](https://docs.adyen.com/platforms/capital).\ + \ With Capital, you can offer business financing to your users as grants. When\ + \ a user receives a grant, they must repay the grant amount in a specified term,\ + \ in addition to paying a fee for using this service.\n\nWith these endpoints,\ + \ you can:\n- **Get available grant offers**: You can get the grant offers that\ + \ are available for your users. Adyen configures the financing amount, the fee,\ + \ and the repayment conditions for each offer. These configurations are based\ + \ on proactive risk analyses that Adyen performs on your users.\n- **Make requests\ + \ for grants**: When a user selects a grant offer, you can make a request for\ + \ the grant on their behalf.\n- **Get information about your grant account**:\ + \ Your grant account tracks the information of all grants in your marketplace\ + \ or platform.\n\n## Authentication\nEach request made to the Capital API must\ + \ be signed with an API key. Generate an API key in your Customer Area.\n\nTo\ + \ connect to the API, add an `X-API-Key` header with the API key as the value,\ + \ for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"\ + X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\n## Roles and permissions\nTo use the\ + \ Capital API, your API credential must have the following roles:\n- **Balance_Platform_Capital_Configuration_Role**\n\ + - **Balance_Platform_Capital_Grant_Initiation_Role**\n\nReach out to your Adyen\ + \ contact to set up these roles.\n## Going live\nWhen going live, generate an\ + \ API key in your [live Customer Area](https://ca-live.adyen.com/ca). You can\ + \ then use the API key to send requests to `https://balanceplatform-api-live.adyen.com/capital/v{version}`.\n\ + \n" + termsOfService: https://www.adyen.com/legal/terms-and-conditions + contact: + name: Adyen Developer Experience team + url: https://github.com/Adyen/adyen-openapi + version: '1' + x-timestamp: '2025-03-20T17:41:19Z' +tags: +- name: Grants + x-groupIndex: 1 +- name: Grant offers + x-groupIndex: 2 +- name: Grant accounts + x-groupIndex: 3 +paths: + /grants: + get: + tags: + - Grants + summary: Get all the grants of an account holder + description: Returns a list of all the grants of a specific account holder. + operationId: get-grants + parameters: + - name: counterpartyAccountHolderId + in: query + description: The unique identifier of the account holder that received the + grants. + required: true + schema: + type: string + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/Grants' + '404': + description: Not Found - The entity was not found. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 2 + post: + tags: + - Grants + summary: Make a request for a grant + description: Make a request for a grant on behalf of an account holder. + operationId: post-grants + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GrantInfo' + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/Grant' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 1 + /grants/{grantId}: + get: + tags: + - Grants + summary: Get the details of a grant + description: Returns the details of the specified grant. + operationId: get-grants-grantId + parameters: + - name: grantId + in: path + description: The unique identifier of the grant reference. + required: true + schema: + type: string + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/Grant' + '404': + description: Not Found - The entity was not found. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 3 + /grants/{grantId}/disbursements: + get: + tags: + - Grants + summary: Get all the disbursements of a grant + description: Returns the disbursements of a specified grant. + operationId: get-grants-grantId-disbursements + parameters: + - name: grantId + in: path + description: The unique identifier of the grant reference. + required: true + schema: + type: string + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/Disbursements' + '404': + description: Not Found - The entity was not found. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 4 + /grants/{grantId}/disbursements/{disbursementId}: + patch: + tags: + - Grants + summary: Update the repayment configuration of a disbursement + description: Update the percentage of your user's net income that is deducted + for repaying the grant. + operationId: patch-grants-grantId-disbursements-disbursementId + parameters: + - name: grantId + in: path + description: The unique identifier of the grant reference. + required: true + schema: + type: string + - name: disbursementId + in: path + description: The unique identifier of the disbursement. + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PatchableDisbursement' + required: true + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/Disbursement' + '404': + description: Not Found - The entity was not found. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 6 + /grantAccounts/{id}: + get: + tags: + - Grant accounts + summary: Get the information of your grant account + description: Returns the details of the specified grant account. This account + tracks existing grants in your marketplace or platform. + operationId: get-grantAccounts-id + parameters: + - name: id + in: path + description: The unique identifier of the grant account. + required: true + schema: + type: string + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/GrantAccount' + '404': + description: Not Found - The entity was not found. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 1 + /grantOffers/{id}: + get: + tags: + - Grant offers + summary: Get the details of a grant offer + description: Returns the details of the specified grant offer. + operationId: get-grantOffers-id + parameters: + - name: id + in: path + description: The unique identifier of the grant offer. + required: true + schema: + type: string + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/GrantOffer' + '404': + description: Not Found - The entity was not found. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 2 + /grantOffers: + get: + tags: + - Grant offers + summary: Get all available grant offers + description: Returns a list of all [grant offers](https://docs.adyen.com/platforms/capital#grant-offers) + available for `accountHolderId` specified as a query parameter. + operationId: get-grantOffers + parameters: + - name: accountHolderId + in: query + description: The unique identifier of the account holder for which you want + to get the available grant offers. + schema: + type: string + responses: + '200': + description: OK - The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/GrantOffers' + '404': + description: Not Found - The entity was not found. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + '422': + description: Unprocessable Entity - A request validation error. + content: + application/json: + schema: + $ref: '#/components/schemas/DefaultErrorResponseEntity' + x-sortIndex: 1 +components: + schemas: + DefaultErrorResponseEntity: + type: object + properties: + detail: + type: string + description: A human-readable explanation specific to this occurrence of + the problem. + errorCode: + type: string + description: Unique business error code. + instance: + type: string + description: A URI that identifies the specific occurrence of the problem + if applicable. + invalidFields: + type: array + description: Array of fields with validation errors when applicable. + items: + $ref: '#/components/schemas/InvalidField' + requestId: + type: string + description: The unique reference for the request. + status: + type: integer + description: The HTTP status code. + format: int32 + title: + type: string + description: A short, human-readable summary of the problem type. + type: + type: string + description: A URI that identifies the validation error type. It points + to human-readable documentation for the problem type. + description: Standardized error response following RFC-7807 format + externalDocs: + url: https://www.rfc-editor.org/rfc/rfc7807 + InvalidField: + required: + - message + - name + - value + type: object + properties: + name: + type: string + description: The field that has an invalid value. + value: + type: string + description: The invalid value. + message: + type: string + description: Description of the validation error. + Amount: + required: + - currency + - value + type: object + properties: + currency: + type: string + description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes). + value: + type: integer + description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units). + format: int64 + Balance: + required: + - currency + - fee + - principal + - total + type: object + properties: + currency: + type: string + description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). + fee: + type: integer + description: The amount of the grant fee. + format: int64 + principal: + type: integer + description: The grant amount that is paid out to the user for business + financing. + format: int64 + total: + type: integer + description: The total amount of the grant that the user must repay. It + is the sum of the fee amount and the principal amount. + format: int64 + Counterparty: + type: object + properties: + accountHolderId: + type: string + description: The unique identifier of the account holder that receives the + grant. If no `balanceAccountId` is provided, the grant funds are disbursed + to the primary balance account of this account holder. + balanceAccountId: + type: string + description: The unique identifier of the balance account where the funds + are disbursed. The balance account must belong to the specified account + holder. + transferInstrumentId: + type: string + description: The unique identifier of the transfer instrument where the + funds are disbursed. The transfer instrument must belong to the legal + entity of the specified account holder. + Fee: + required: + - amount + type: object + properties: + amount: + description: Contains the amount of the grant fee. + $ref: '#/components/schemas/Amount' + Grant: + required: + - balances + - grantAccountId + - grantOfferId + - id + - status + type: object + properties: + amount: + description: Contains information about the amount of the grant. This is + the sum of the amounts of all the disbursements related to the grant. + $ref: '#/components/schemas/Amount' + balances: + description: Contains information about the balances of the grant. + $ref: '#/components/schemas/Balance' + counterparty: + description: Contains the details of the party that receives the grant. + Setting either an `accountHolderId`, `balanceAccountId`, or both is required. + $ref: '#/components/schemas/Counterparty' + fee: + description: Contains information about the fee that your user must pay + for the grant. This is the sum of the fees of all the disbursements related + to the grant. + $ref: '#/components/schemas/Fee' + grantAccountId: + type: string + description: The unique identifier of the grant account that tracks this + grant. + grantOfferId: + type: string + description: The unique identifier of the selected grant offer. Adyen uses + the details of the selected grant offer to create a grant. + id: + type: string + description: The unique identifier of the grant reference. + repayment: + description: Contains information about the repayment configuration of the + grant. By default, this repayment configuration applies to all the disbursements + related to the grant. + $ref: '#/components/schemas/Repayment' + status: + description: Contains the status of the grant. + $ref: '#/components/schemas/Status' + Repayment: + required: + - basisPoints + type: object + properties: + basisPoints: + type: integer + description: The percentage of your user's incoming net volume that is deducted + for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp). + format: int32 + term: + description: Contains information about the time period in which your user + must repay the total amount of the grant. + $ref: '#/components/schemas/RepaymentTerm' + threshold: + description: Contains the minimum threshold amount that your user must repay + every 30-day period. + $ref: '#/components/schemas/ThresholdRepayment' + RepaymentTerm: + required: + - estimatedDays + type: object + properties: + estimatedDays: + type: integer + description: The estimated duration of the repayment term, in days. + format: int32 + maximumDays: + type: integer + description: The maximum duration of the repayment term, in days. Only applies + when `contractType` is **loan**. + format: int32 + Status: + required: + - code + type: object + properties: + code: + description: 'The code for the status of the grant. Possible values: + + - **Pending** + + - **Active** + + - **Repaid** + + - **WrittenOff** + + - **Failed** + + - **Revoked**' + enum: + - Pending + - Active + - Repaid + - WrittenOff + - Failed + - Revoked + ThresholdRepayment: + required: + - amount + type: object + properties: + amount: + description: The minimum threshold amount that your user must repay on every + 30-day period. + $ref: '#/components/schemas/Amount' + GrantInfo: + required: + - grantAccountId + - grantOfferId + type: object + properties: + amount: + description: Contains information about the amount of the grant. This is + the sum of the amounts of all the disbursements related to the grant. + $ref: '#/components/schemas/Amount' + counterparty: + description: Contains the details of the party that receives the grant. + Setting either an `accountHolderId`, `balanceAccountId`, or both is required. + $ref: '#/components/schemas/Counterparty' + fee: + description: Contains information about the fee that your user must pay + for the grant. This is the sum of the fees of all the disbursements related + to the grant. + $ref: '#/components/schemas/Fee' + grantAccountId: + type: string + description: The unique identifier of the grant account that tracks this + grant. + grantOfferId: + type: string + description: The unique identifier of the selected grant offer. Adyen uses + the details of the selected grant offer to create a grant. + repayment: + description: Contains information about the repayment configuration of the + grant. By default, this repayment configuration applies to all the disbursements + related to the grant. + $ref: '#/components/schemas/Repayment' + Grants: + required: + - grants + type: object + properties: + grants: + type: array + description: Contains a list of the grants that the account holder has received. + items: + $ref: '#/components/schemas/Grant' + AULocalAccountIdentification: + required: + - accountNumber + - bsbCode + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 9 + minLength: 5 + type: string + description: The bank account number, without separators or whitespace. + bsbCode: + maxLength: 6 + minLength: 6 + type: string + description: The 6-digit [Bank State Branch (BSB) code](https://en.wikipedia.org/wiki/Bank_state_branch), + without separators or whitespace. + type: + type: string + description: '**auLocal**' + default: auLocal + AdditionalBankIdentification: + type: object + properties: + code: + type: string + description: The value of the additional bank identification. + type: + description: "The type of additional bank identification, depending on the\ + \ country.\n\nPossible values:\n\n * **gbSortCode**: The 6-digit [UK sort\ + \ code](https://en.wikipedia.org/wiki/Sort_code), without separators or\ + \ spaces\n * **usRoutingNumber**: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number),\ + \ without separators or spaces." + $ref: '#/components/schemas/AdditionalBankIdentificationTypes' + AdditionalBankIdentificationTypes: + type: string + enum: + - auBsbCode + - caRoutingNumber + - gbSortCode + - hkBankCode + - jpZenginCode + - nzBankBranchCode + - usRoutingNumber + BRLocalAccountIdentification: + required: + - accountNumber + - bankCode + - branchNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 10 + minLength: 1 + type: string + description: The bank account number, without separators or whitespace. + bankCode: + maxLength: 3 + minLength: 3 + type: string + description: The 3-digit bank code, with leading zeros. + branchNumber: + maxLength: 4 + minLength: 1 + type: string + description: The bank account branch number, without separators or whitespace. + ispb: + maxLength: 8 + minLength: 8 + type: string + description: The 8-digit ISPB, with leading zeros. + type: + type: string + description: '**brLocal**' + default: brLocal + BankAccountIdentification: + type: object + properties: + type: + type: string + description: The type of account, which depends on the country of the account + and the currency of the transfer. + discriminator: + propertyName: type + mapping: + iban: '#/components/schemas/IbanAccountIdentification' + numberAndBic: '#/components/schemas/NumberAndBicAccountIdentification' + auLocal: '#/components/schemas/AULocalAccountIdentification' + brLocal: '#/components/schemas/BRLocalAccountIdentification' + czLocal: '#/components/schemas/CZLocalAccountIdentification' + noLocal: '#/components/schemas/NOLocalAccountIdentification' + plLocal: '#/components/schemas/PLLocalAccountIdentification' + huLocal: '#/components/schemas/HULocalAccountIdentification' + seLocal: '#/components/schemas/SELocalAccountIdentification' + sgLocal: '#/components/schemas/SGLocalAccountIdentification' + ukLocal: '#/components/schemas/UKLocalAccountIdentification' + usLocal: '#/components/schemas/USLocalAccountIdentification' + caLocal: '#/components/schemas/CALocalAccountIdentification' + dkLocal: '#/components/schemas/DKLocalAccountIdentification' + nzLocal: '#/components/schemas/NZLocalAccountIdentification' + hkLocal: '#/components/schemas/HKLocalAccountIdentification' + CALocalAccountIdentification: + required: + - accountNumber + - institutionNumber + - transitNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 12 + minLength: 5 + type: string + description: The 5- to 12-digit bank account number, without separators + or whitespace. + accountType: + description: 'The bank account type. + + + Possible values: **checking** or **savings**. Defaults to **checking**.' + $ref: '#/components/schemas/CALocalBankAccountType' + default: checking + institutionNumber: + maxLength: 3 + minLength: 3 + type: string + description: The 3-digit institution number, without separators or whitespace. + transitNumber: + maxLength: 5 + minLength: 5 + type: string + description: The 5-digit transit number, without separators or whitespace. + type: + type: string + description: '**caLocal**' + default: caLocal + CALocalBankAccountType: + type: string + enum: + - checking + - savings + CZLocalAccountIdentification: + required: + - accountNumber + - bankCode + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 17 + minLength: 2 + type: string + description: "The 2- to 16-digit bank account number (\u010C\xEDslo \xFA\ + \u010Dtu) in the following format:\n\n- The optional prefix (p\u0159\ + ed\u010D\xEDsl\xED).\n\n- The required second part (z\xE1kladn\xED \u010D\ + \xE1st) which must be at least two non-zero digits.\n\nExamples:\n\n\ + - **19-123457** (with prefix)\n\n- **123457** (without prefix)\n\n-\ + \ **000019-0000123457** (with prefix, normalized)\n\n- **000000-0000123457**\ + \ (without prefix, normalized)" + bankCode: + maxLength: 4 + minLength: 4 + type: string + description: "The 4-digit bank code (K\xF3d banky), without separators\ + \ or whitespace." + type: + type: string + description: '**czLocal**' + default: czLocal + DKLocalAccountIdentification: + required: + - accountNumber + - bankCode + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 10 + minLength: 4 + type: string + description: The 4-10 digits bank account number (Kontonummer) (without + separators or whitespace). + bankCode: + maxLength: 4 + minLength: 4 + type: string + description: The 4-digit bank code (Registreringsnummer) (without separators + or whitespace). + type: + type: string + description: '**dkLocal**' + default: dkLocal + Disbursement: + required: + - accountHolderId + - amount + - balanceAccountId + - balances + - fee + - grantId + - id + - repayment + type: object + properties: + accountHolderId: + type: string + description: The unique identifier of the account holder that received the + disbursement. + amount: + description: Contains information about the amount of the disbursement. + $ref: '#/components/schemas/Amount' + balanceAccountId: + type: string + description: The unique identifier of the balance account that received + the disbursement. + balances: + description: Contains information about the balances of the disbursement. + $ref: '#/components/schemas/Balance' + fee: + description: Contains information about the fee that your user must pay + for the disbursement. + $ref: '#/components/schemas/Fee' + fundsCollections: + type: array + description: Contains information about the accounts that Adyen uses to + collect funds related to repayments. + items: + $ref: '#/components/schemas/FundsCollection' + grantId: + type: string + description: The unique identifier of the grant related to the disbursement. + id: + type: string + description: The unique identifier of the disbursement. + repayment: + description: Contains information about the basis points configured for + repaying the disbursement. + $ref: '#/components/schemas/DisbursementRepayment' + DisbursementRepayment: + required: + - basisPoints + type: object + properties: + basisPoints: + maximum: 10000 + minimum: 0 + type: integer + description: The percentage of your user's incoming net volume that is deducted + for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp). + format: int32 + Disbursements: + required: + - disbursements + type: object + properties: + disbursements: + type: array + description: Contains a list of all disbursements related to the specified + grant. + items: + $ref: '#/components/schemas/Disbursement' + FundsCollection: + type: object + properties: + accountIdentification: + description: Contains the identification information of the account to which + you can transfer funds related to repayments. + $ref: '#/components/schemas/BankAccountIdentification' + fundsCollectionType: + description: 'The type of funds collection. + + + Possible values: **UnscheduledRepayment**, **Revocation**.' + $ref: '#/components/schemas/FundsCollectionType' + FundsCollectionType: + type: string + enum: + - UnscheduledRepayment + - Revocation + HKLocalAccountIdentification: + required: + - accountNumber + - clearingCode + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 15 + minLength: 9 + type: string + description: The 9- to 15-character bank account number (alphanumeric), + without separators or whitespace. Starts with the 3-digit branch code. + clearingCode: + maxLength: 3 + minLength: 3 + type: string + description: The 3-digit clearing code, without separators or whitespace. + type: + type: string + description: '**hkLocal**' + default: hkLocal + HULocalAccountIdentification: + required: + - accountNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 24 + minLength: 24 + type: string + description: The 24-digit bank account number, without separators or whitespace. + type: + type: string + description: '**huLocal**' + default: huLocal + IbanAccountIdentification: + required: + - iban + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + iban: + type: string + description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) + standard. + type: + type: string + description: '**iban**' + default: iban + NOLocalAccountIdentification: + required: + - accountNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 11 + minLength: 11 + type: string + description: The 11-digit bank account number, without separators or whitespace. + type: + type: string + description: '**noLocal**' + default: noLocal + NZLocalAccountIdentification: + required: + - accountNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 16 + minLength: 15 + type: string + description: The 15-16 digit bank account number. The first 2 digits are + the bank number, the next 4 digits are the branch number, the next 7 + digits are the account number, and the final 2-3 digits are the suffix. + type: + type: string + description: '**nzLocal**' + default: nzLocal + NumberAndBicAccountIdentification: + required: + - accountNumber + - bic + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 34 + type: string + description: The bank account number, without separators or whitespace. + The length and format depends on the bank or country. + additionalBankIdentification: + description: Additional identification codes of the bank. Some banks may + require these identifiers for cross-border transfers. + $ref: '#/components/schemas/AdditionalBankIdentification' + bic: + maxLength: 11 + minLength: 8 + type: string + description: The bank's 8- or 11-character BIC or SWIFT code. + type: + type: string + description: '**numberAndBic**' + default: numberAndBic + PLLocalAccountIdentification: + required: + - accountNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 26 + minLength: 26 + type: string + description: The 26-digit bank account number ([Numer rachunku](https://pl.wikipedia.org/wiki/Numer_Rachunku_Bankowego)), + without separators or whitespace. + type: + type: string + description: '**plLocal**' + default: plLocal + SELocalAccountIdentification: + required: + - accountNumber + - clearingNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 10 + minLength: 7 + type: string + description: The 7- to 10-digit bank account number ([Bankkontonummer](https://sv.wikipedia.org/wiki/Bankkonto)), + without the clearing number, separators, or whitespace. + clearingNumber: + maxLength: 5 + minLength: 4 + type: string + description: The 4- to 5-digit clearing number ([Clearingnummer](https://sv.wikipedia.org/wiki/Clearingnummer)), + without separators or whitespace. + type: + type: string + description: '**seLocal**' + default: seLocal + SGLocalAccountIdentification: + required: + - accountNumber + - bic + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 19 + minLength: 4 + type: string + description: The 4- to 19-digit bank account number, without separators + or whitespace. + bic: + maxLength: 11 + minLength: 8 + type: string + description: The bank's 8- or 11-character BIC or SWIFT code. + type: + type: string + description: '**sgLocal**' + default: sgLocal + UKLocalAccountIdentification: + required: + - accountNumber + - sortCode + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 8 + minLength: 8 + type: string + description: The 8-digit bank account number, without separators or whitespace. + sortCode: + maxLength: 6 + minLength: 6 + type: string + description: The 6-digit [sort code](https://en.wikipedia.org/wiki/Sort_code), + without separators or whitespace. + type: + type: string + description: '**ukLocal**' + default: ukLocal + USLocalAccountIdentification: + required: + - accountNumber + - routingNumber + - type + type: object + allOf: + - $ref: '#/components/schemas/BankAccountIdentification' + - type: object + properties: + accountNumber: + maxLength: 18 + minLength: 2 + type: string + description: The bank account number, without separators or whitespace. + accountType: + description: 'The bank account type. + + + Possible values: **checking** or **savings**. Defaults to **checking**.' + $ref: '#/components/schemas/USLocalBankAccountType' + default: checking + routingNumber: + maxLength: 9 + minLength: 9 + type: string + description: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), + without separators or whitespace. + type: + type: string + description: '**usLocal**' + default: usLocal + USLocalBankAccountType: + type: string + enum: + - checking + - savings + PatchableDisbursement: + type: object + properties: + repayment: + description: Contains information about the basis points configured for + repaying the disbursement. + $ref: '#/components/schemas/PatchableDisbursementRepayment' + PatchableDisbursementRepayment: + type: object + properties: + basisPoints: + maximum: 10000 + minimum: 0 + type: integer + description: The percentage of your user's incoming net volume that is deducted + for repaying the grant. The percentage expressed in [basis points](https://www.investopedia.com/terms/b/basispoint.asp). + format: int32 + GrantAccount: + type: object + properties: + balances: + type: array + description: Contains the sum of the balances of all grants tracked by this + grant account. The balances are separated by currency. + items: + $ref: '#/components/schemas/Balance' + fundingBalanceAccountId: + type: string + description: The unique identifier of the balance account used to fund the + grant. + id: + type: string + description: The unique identifier of the grant account. + limits: + type: array + description: Contains the maximum amount of funds that you can disburse + for grants. + items: + $ref: '#/components/schemas/GrantLimit' + GrantLimit: + type: object + properties: + amount: + description: The limit amount of the grant account. + $ref: '#/components/schemas/Amount' + GrantOffer: + required: + - accountHolderId + type: object + properties: + accountHolderId: + type: string + description: The unique identifier of the account holder to which the grant + is offered. + amount: + description: The amount that would be paid out to the user for business + financing. + $ref: '#/components/schemas/Amount' + contractType: + description: 'The contract type of the grant offer. Possible values: **cashAdvance**, + **loan**.' + enum: + - cashAdvance + - loan + expiresAt: + type: string + description: The date when the grant offer expires. + format: date-time + fee: + description: Contains information about the fee that your user would pay + for the grant. + $ref: '#/components/schemas/Fee' + id: + type: string + description: The unique identifier of the grant offer. + repayment: + description: Contains information about the repayment configuration of the + grant. + $ref: '#/components/schemas/Repayment' + startsAt: + type: string + description: The date when the grant offer becomes available. + format: date-time + GrantOffers: + required: + - grantOffers + type: object + properties: + grantOffers: + type: array + description: Contains a list of available grant offers for the specified + account holder. + items: + $ref: '#/components/schemas/GrantOffer' + securitySchemes: + ApiKeyAuth: + type: apiKey + name: X-API-Key + in: header + BasicAuth: + type: http + scheme: basic +jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base