diff --git a/docs/data/rpc/api-reference/json-rpc.mdx b/docs/data/rpc/api-reference/json-rpc.mdx index fb9627921..ba32429ae 100644 --- a/docs/data/rpc/api-reference/json-rpc.mdx +++ b/docs/data/rpc/api-reference/json-rpc.mdx @@ -26,5 +26,5 @@ Soroban-RPC provides an [OpenRPC] specification document that can be used to moc [JavaScript SDK]: https://github.com/stellar/js-stellar-sdk [OpenRPC]: https://open-rpc.org/ [methods]: ./methods -[specification document here]: https://raw.githubusercontent.com/stellar/soroban-docs/main/static/openrpc.json -[OpenRPC Playground]: https://playground.open-rpc.org/?schemaUrl=https://raw.githubusercontent.com/stellar/soroban-docs/main/static/openrpc.json +[specification document here]: https://raw.githubusercontent.com/stellar/stellar-docs/main/static/stellar-rpc.openrpc.json +[OpenRPC Playground]: https://playground.open-rpc.org/?schemaUrl=https://raw.githubusercontent.com/stellar/stellar-docs/main/static/stellar-rpc.openrpc.json diff --git a/docs/data/rpc/api-reference/methods/getEvents.mdx b/docs/data/rpc/api-reference/methods/getEvents.mdx index 1f733000f..74c0d672f 100644 --- a/docs/data/rpc/api-reference/methods/getEvents.mdx +++ b/docs/data/rpc/api-reference/methods/getEvents.mdx @@ -4,5 +4,8 @@ description: Returns contract events --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getEvents")[0]} +/> diff --git a/docs/data/rpc/api-reference/methods/getFeeStats.mdx b/docs/data/rpc/api-reference/methods/getFeeStats.mdx index 959af6630..5a129fd25 100644 --- a/docs/data/rpc/api-reference/methods/getFeeStats.mdx +++ b/docs/data/rpc/api-reference/methods/getFeeStats.mdx @@ -4,5 +4,8 @@ description: Returns statistics about charged inclusion fees for Soroban transac --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getFeeStats")[0]} +/> diff --git a/docs/data/rpc/api-reference/methods/getHealth.mdx b/docs/data/rpc/api-reference/methods/getHealth.mdx index 464c40a46..d448cca36 100644 --- a/docs/data/rpc/api-reference/methods/getHealth.mdx +++ b/docs/data/rpc/api-reference/methods/getHealth.mdx @@ -4,5 +4,8 @@ description: Returns node health --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getHealth")[0]} +/> diff --git a/docs/data/rpc/api-reference/methods/getLatestLedger.mdx b/docs/data/rpc/api-reference/methods/getLatestLedger.mdx index bd78b3ea1..1d89b18b4 100644 --- a/docs/data/rpc/api-reference/methods/getLatestLedger.mdx +++ b/docs/data/rpc/api-reference/methods/getLatestLedger.mdx @@ -4,5 +4,8 @@ description: Returns latest known ledger --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getLatestLedger")[0]} +/> diff --git a/docs/data/rpc/api-reference/methods/getLedgerEntries.mdx b/docs/data/rpc/api-reference/methods/getLedgerEntries.mdx index d057b32b3..88b9f1684 100644 --- a/docs/data/rpc/api-reference/methods/getLedgerEntries.mdx +++ b/docs/data/rpc/api-reference/methods/getLedgerEntries.mdx @@ -4,8 +4,11 @@ description: Returns ledger entries --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getLedgerEntries")[0]} +/> ### Generating `keys` Parameters diff --git a/docs/data/rpc/api-reference/methods/getNetwork.mdx b/docs/data/rpc/api-reference/methods/getNetwork.mdx index c912b5047..e8bd5740b 100644 --- a/docs/data/rpc/api-reference/methods/getNetwork.mdx +++ b/docs/data/rpc/api-reference/methods/getNetwork.mdx @@ -4,5 +4,8 @@ description: Returns network config --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getNetwork")[0]} +/> diff --git a/docs/data/rpc/api-reference/methods/getTransaction.mdx b/docs/data/rpc/api-reference/methods/getTransaction.mdx index 3950fb5f3..2f0a0fbd8 100644 --- a/docs/data/rpc/api-reference/methods/getTransaction.mdx +++ b/docs/data/rpc/api-reference/methods/getTransaction.mdx @@ -5,8 +5,11 @@ description: Returns transaction details import { CodeExample } from "@site/src/components/CodeExample"; import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getTransaction")[0]} +/> ### SDK Guide diff --git a/docs/data/rpc/api-reference/methods/getTransactions.mdx b/docs/data/rpc/api-reference/methods/getTransactions.mdx index 23fd33fc9..251df8967 100644 --- a/docs/data/rpc/api-reference/methods/getTransactions.mdx +++ b/docs/data/rpc/api-reference/methods/getTransactions.mdx @@ -4,5 +4,8 @@ description: Returns list of transactions --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getTransactions")[0]} +/> diff --git a/docs/data/rpc/api-reference/methods/getVersionInfo.mdx b/docs/data/rpc/api-reference/methods/getVersionInfo.mdx index 23f886d68..9027941c7 100644 --- a/docs/data/rpc/api-reference/methods/getVersionInfo.mdx +++ b/docs/data/rpc/api-reference/methods/getVersionInfo.mdx @@ -4,5 +4,8 @@ description: Returns version information --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "getVersionInfo")[0]} +/> diff --git a/docs/data/rpc/api-reference/methods/sendTransaction.mdx b/docs/data/rpc/api-reference/methods/sendTransaction.mdx index da8369214..0000e488b 100644 --- a/docs/data/rpc/api-reference/methods/sendTransaction.mdx +++ b/docs/data/rpc/api-reference/methods/sendTransaction.mdx @@ -4,9 +4,11 @@ description: Submits a transaction --- import { RpcMethod } from "@site/src/components/RpcMethod"; -import { CodeExample } from "@site/src/components/CodeExample"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "sendTransaction")[0]} +/> ### SDK Guide diff --git a/docs/data/rpc/api-reference/methods/simulateTransaction.mdx b/docs/data/rpc/api-reference/methods/simulateTransaction.mdx index bd5ab5736..bba938af3 100644 --- a/docs/data/rpc/api-reference/methods/simulateTransaction.mdx +++ b/docs/data/rpc/api-reference/methods/simulateTransaction.mdx @@ -4,5 +4,10 @@ description: Submits a trial contract invocation transaction --- import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; - + meth.name === "simulateTransaction")[0] + } +/> diff --git a/docusaurus.config.ts b/docusaurus.config.ts index be6a256af..bd04d6362 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -38,8 +38,8 @@ const config: Config = { docsPluginId: "classic", config: { horizon: { - specPath: "openapi/horizon/bundled.yml", // Path to designated spec file - outputDir: "docs/data/horizon/api-reference", // Output directory for generated .mdx docs + specPath: "openapi/horizon/bundled.yml", + outputDir: "docs/data/horizon/api-reference", sidebarOptions: { groupPathsBy: "tagGroup", }, @@ -53,37 +53,32 @@ const config: Config = { id: "platformapis", docsPluginId: "platforms", config: { - anchor_platform_api: { - specPath: "openapi/anchor-platform/bundled.yml", // Path to designated spec file - outputDir: "platforms/anchor-platform/api-reference/resources", // Output directory for generated .mdx docs - sidebarOptions: { - groupPathsBy: "tag", - }, - template: "src/template.mustache", // Customize API MDX with mustache template + ap_platform: { + specPath: "openapi/anchor-platform/bundled-platform.yaml", + outputDir: "platforms/anchor-platform/api-reference/platform/transactions", + hideSendButton: true, + template: "src/template.mustache", } satisfies OpenApiPlugin.Options, - anchor_platform_callbacks: { - specPath: "openapi/anchor-platform/bundled_callback.yml", // Path to designated spec file - outputDir: "platforms/anchor-platform/api-reference/callbacks", // Output directory for generated .mdx docs - sidebarOptions: { - groupPathsBy: "tag", - }, - template: "src/template.mustache", // Customize API MDX with mustache template + ap_callbacks: { + specPath: "openapi/anchor-platform/bundled-callbacks.yaml", + outputDir: "platforms/anchor-platform/api-reference/callbacks", + hideSendButton: true, + template: "src/template.mustache", } satisfies OpenApiPlugin.Options, - anchor_custody_api: { - specPath: "openapi/anchor-platform/bundled_custody.yml", // Path to designated spec file - outputDir: "platforms/anchor-platform/api-reference/custody-server", // Output directory for generated .mdx docs - sidebarOptions: { - groupPathsBy: "tag", - }, - template: "src/template.mustache", // Customize API MDX with mustache template + ap_custody: { + specPath: "openapi/anchor-platform/bundled-custody.yaml", + outputDir: "platforms/anchor-platform/api-reference/custody", + hideSendButton: true, + template: "src/template.mustache", } satisfies OpenApiPlugin.Options, stellar_disbursement_platform: { - specPath: "openapi/stellar-disbursement-platform/bundled.yml", // Path to designated spec file - outputDir: "platforms/stellar-disbursement-platform/api-reference/resources", // Output directory for generated .mdx docs + specPath: "openapi/stellar-disbursement-platform/bundled.yaml", + outputDir: "platforms/stellar-disbursement-platform/api-reference", sidebarOptions: { groupPathsBy: "tag", + categoryLinkSource: 'tag', }, - template: "src/template.mustache", // Customize API MDX with mustache template + template: "src/template.mustache", } satisfies OpenApiPlugin.Options, } satisfies Plugin.PluginOptions, }, @@ -96,7 +91,6 @@ const config: Config = { routeBasePath: "/platforms", docItemComponent: "@theme/ApiItem", sidebarPath: require.resolve("./sidebarsPlatforms.js"), - sidebarItemsGenerator: require("./src/sidebar-platforms-generator"), editUrl: "https://github.com/stellar/stellar-docs/tree/main", exclude: ['**/component/**', '**/README.md'], showLastUpdateTime: true, diff --git a/openapi/anchor-platform/bundled_callback.yml b/openapi/anchor-platform/bundled-callbacks.yaml similarity index 95% rename from openapi/anchor-platform/bundled_callback.yml rename to openapi/anchor-platform/bundled-callbacks.yaml index 7b5fbd8ab..12da77ef7 100644 --- a/openapi/anchor-platform/bundled_callback.yml +++ b/openapi/anchor-platform/bundled-callbacks.yaml @@ -1,12 +1,17 @@ -openapi: 3.0.0 +openapi: 3.1.0 info: - version: 2.0.0 + version: 2.8.4 description: | The Synchronous Callbacks API specification for the Stellar Anchor Platform project. The Synchronous Callbacks API defines requests made by the Platform while it is processing a request from a client application. The anchor's responses to these requests affect the Platform responses to the client application. - title: Synchronous Callbacks API + title: Callbacks Server + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: https://callback.business-server.exampleanchor.com tags: - name: Unique Address description: (optional) Provide a unique `stellar_address:memo` pair that will be used to correlate a Stellar payment 1-to-1 with a Platform resource such as a [SEP-31](https://stellar.org/protocol/sep-31) transaction. @@ -36,6 +41,7 @@ paths: operationId: genAddress tags: - Unique Address + x-seps: - SEP-31 parameters: - in: query @@ -94,6 +100,7 @@ paths: When this change is made, the request schema will be adapted to support the use case. tags: - Fees + x-seps: - SEP-31 summary: Retrieve Fees operationId: getFee @@ -195,6 +202,7 @@ paths: `sell_asset` or `buy_asset` is a Stellar asset. tags: - Rates + x-seps: - SEP-31 - SEP-38 summary: Retrieve Rates @@ -327,6 +335,7 @@ paths: If the server still needs more info, or the server needs updated information, it should return the fields required. tags: - Customers + x-seps: - SEP-6 - SEP-12 - SEP-31 @@ -407,6 +416,7 @@ paths: put: tags: - Customers + x-seps: - SEP-6 - SEP-12 - SEP-24 @@ -455,6 +465,7 @@ paths: delete: tags: - Customers + x-seps: - SEP-12 - SEP-31 description: | @@ -484,6 +495,7 @@ paths: post: tags: - Events + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -597,58 +609,63 @@ components: status: type: string enum: - - ACCEPTED PROCESSING NEEDS_INFO REJECTED + - ACCEPTED + - PROCESSING + - NEEDS_INFO + - REJECTED fields: type: object - required: - - type - - description - properties: - type: - type: string - enum: - - string - - binary - - number - - date - description: - type: string - choices: - type: array - items: + additionalProperties: + required: + - type + - description + properties: + type: + type: string + enum: + - string + - binary + - number + - date + description: type: string - optional: - type: boolean + choices: + type: array + items: + type: string + optional: + type: boolean provided_fields: type: object - required: - - type - - description - properties: - type: - type: string - enum: - - string - - binary - - number - - date - description: - type: string - choices: - type: array - items: + additionalProperties: + required: + - type + - description + properties: + type: + type: string + enum: + - string + - binary + - number + - date + description: + type: string + choices: + type: array + items: + type: string + optional: + type: boolean + status: + type: string + enum: + - ACCEPTED + - PROCESSING + - REJECTED + - VERIFICATION_REQUIRED + error: type: string - optional: - type: boolean - status: - type: string - enum: - - ACCEPTED - - PROCESSING - - REJECTED - - VERIFICATION_REQUIRED - error: - type: string message: type: string PutCustomerRequest: @@ -672,7 +689,7 @@ components: - text type: description: | - The type of action the customer is being KYCd for. + The type of action the customer is being KYCd for. See the [Type Specification](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md#type-specification) documented in SEP-12 for more info. For SEP-31 you can define your own types in the assets configuration. For SEP-24 pre-defined value `sep24-customer` is used. @@ -791,7 +808,7 @@ components: - text type: description: | - The type of action the customer is being KYCd for. + The type of action the customer is being KYCd for. See the [Type Specification](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md#type-specification) documented in SEP-12 for more info. For SEP-31 you can define your own types in the assets configuration. For SEP-24 pre-defined value `sep24-customer` is used. @@ -875,26 +892,26 @@ components: id_number: type: string photo_id_front: - type: file + type: string format: binary photo_id_back: - type: file + type: string format: binary notary_approval_of_photo_id: - type: file + type: string format: binary ip_address: type: string photo_proof_residence: - type: file + type: string format: binary sex: type: string photo_proof_of_income: - type: file + type: string format: binary proof_of_liveness: - type: file + type: string format: binary referral_id: type: string @@ -1283,3 +1300,10 @@ components: description: The customer's email address type: string status: ACCEPTED +x-tagGroups: + - name: Callbacks Server + tags: + - Unique Address + - Fees + - Rates + - Customers diff --git a/openapi/anchor-platform/bundled_custody.yml b/openapi/anchor-platform/bundled-custody.yaml similarity index 85% rename from openapi/anchor-platform/bundled_custody.yml rename to openapi/anchor-platform/bundled-custody.yaml index 4fed444e7..f949b7e65 100644 --- a/openapi/anchor-platform/bundled_custody.yml +++ b/openapi/anchor-platform/bundled-custody.yaml @@ -1,8 +1,18 @@ -openapi: 3.0.0 +openapi: 3.1.0 info: - version: 2.0.0 - description: '' - title: Custody Server API + version: 2.8.4 + title: Custody Server + description: | + The custody server connects to enterprise wallet providers, such as Fireblocks, to send and receive payments for transactions initiated via the Anchor Platform. This service is an alternative to the Stellar Observer for businesses who use one of the supported providers. In addition to the functionality offered by the Stellar Observer, the Custody Server can also facilitate outbound payments to client's Stellar accounts. If you also use the events service, payments to your accounts will trigger a HTTP callback made to your business server. + + If you already have an integration with your wallet provider, then this component is not required, although your business server will need to notify the Anchor Platform when a payment associated with an Anchor Platform transaction was sent to or from your Stellar accounts via the Platform API. + + Currently the only supported provider is Fireblocks. + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: https://custody-server.exampleanchor.com tags: - name: Custody Transactions description: Custody Server creates custody transaction record in DB. @@ -10,7 +20,7 @@ tags: description: Custody Server calls the configured custody service to send payment. - name: Refunds description: Custody Server calls configured Custody Service to send refund. Custody transaction record is also created in DB. - - name: Unique Address + - name: Custody Unique Address description: Custody Server calls the configured custody service to generate deposit address and memo. paths: /transactions: @@ -20,6 +30,7 @@ paths: operationId: createCustodyTransaction tags: - Custody Transactions + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -46,9 +57,9 @@ paths: description: Protocol of SEP transaction. type: string enum: - - 6 - - 24 - - 31 + - '6' + - '24' + - '31' fromAccount: description: Source Stellar account. type: string @@ -91,6 +102,7 @@ paths: operationId: sendPayment tags: - Payments + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -143,6 +155,7 @@ paths: operationId: sendRefund tags: - Refunds + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -201,7 +214,7 @@ paths: application/json: schema: $ref: '#/components/schemas/CustodyError' - /assets/{asset}/addresses: + /assets/:asset/addresses: post: description: | Custody Server calls the configured custody service to generate deposit address and memo. @@ -210,7 +223,8 @@ paths: summary: Generate Unique Address operationId: generateUniqueAddress tags: - - Unique Address + - Custody Unique Address + x-seps: - SEP-6 - SEP-24 - SEP-31 diff --git a/openapi/anchor-platform/bundled.yml b/openapi/anchor-platform/bundled-platform.yaml similarity index 96% rename from openapi/anchor-platform/bundled.yml rename to openapi/anchor-platform/bundled-platform.yaml index c565fd3c3..2e906e49a 100644 --- a/openapi/anchor-platform/bundled.yml +++ b/openapi/anchor-platform/bundled-platform.yaml @@ -1,17 +1,23 @@ -openapi: 3.0.0 +openapi: 3.1.0 info: - version: 2.0.0 - title: Platform API + version: 2.8.4 + title: Platform Server + description: | + The platform server is an internal component. It should be hosted in a private network and should not be accessible from the Internet. This server enables the business to fetch and update the state of transactions using its API. + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: https://platform-server.exampleanchor.com tags: - name: Transactions description: Transactions initiated by client applications via SEP APIs - - name: Quotes - description: Firm quotes provided to client applications via SEP APIs paths: /transactions: get: tags: - Transactions + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -25,9 +31,9 @@ paths: schema: type: string enum: - - 6 - - 24 - - 31 + - '6' + - '24' + - '31' description: Lookup transactions belonging to this SEP. - in: query name: order_by @@ -96,6 +102,7 @@ paths: get: tags: - Transactions + x-seps: - SEP-6 - SEP-24 - SEP-31 diff --git a/openapi/anchor-platform/examples.yaml b/openapi/anchor-platform/examples.yaml new file mode 100644 index 000000000..550827e6d --- /dev/null +++ b/openapi/anchor-platform/examples.yaml @@ -0,0 +1,20 @@ +components: + examples: + SuccessKYC: + summary: The case when a customer has been successfully KYC'd and approved + value: + id: d1ce2f48-3ff1-495d-9240-7a50d806cfed + status: ACCEPTED + provided_fields: + first_name: + description: The customer's first name + type: string + status: ACCEPTED + last_name: + description: The customer's last name + type: string + status: ACCEPTED + email_address: + description: The customer's email address + type: string + status: ACCEPTED diff --git a/openapi/anchor-platform/examples.yml b/openapi/anchor-platform/examples.yml deleted file mode 100644 index e3f46bf13..000000000 --- a/openapi/anchor-platform/examples.yml +++ /dev/null @@ -1,35 +0,0 @@ -openapi: 3.0.0 -info: - version: "2.0.0" - title: Examples - description: | - This document specifies the examples used for all APIs. -tags: - - name: "Examples" - description: "Examples" -paths: { } -components: - examples: - SuccessKYC: - summary: The case when a customer has been successfully KYC'd and approved - value: { - "id": "d1ce2f48-3ff1-495d-9240-7a50d806cfed", - "status": "ACCEPTED", - "provided_fields": { - "first_name": { - "description": "The customer's first name", - "type": "string", - "status": "ACCEPTED" - }, - "last_name": { - "description": "The customer's last name", - "type": "string", - "status": "ACCEPTED" - }, - "email_address": { - "description": "The customer's email address", - "type": "string", - "status": "ACCEPTED" - } - } - } diff --git a/openapi/anchor-platform/Callbacks API.yml b/openapi/anchor-platform/main-callbacks.yaml similarity index 93% rename from openapi/anchor-platform/Callbacks API.yml rename to openapi/anchor-platform/main-callbacks.yaml index e8b498340..7adae8e86 100644 --- a/openapi/anchor-platform/Callbacks API.yml +++ b/openapi/anchor-platform/main-callbacks.yaml @@ -1,12 +1,17 @@ -openapi: 3.0.0 +openapi: 3.1.0 info: - version: "2.0.0" + version: "2.8.4" description: | The Synchronous Callbacks API specification for the Stellar Anchor Platform project. The Synchronous Callbacks API defines requests made by the Platform while it is processing a request from a client application. The anchor's responses to these requests affect the Platform responses to the client application. - title: Synchronous Callbacks API + title: Callbacks Server + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: https://callback.business-server.exampleanchor.com tags: - name: "Unique Address" description: "(optional) Provide a unique `stellar_address:memo` pair that will be used to correlate a Stellar payment 1-to-1 with a Platform resource such as a [SEP-31](https://stellar.org/protocol/sep-31) transaction." @@ -18,6 +23,13 @@ tags: description: | [SEP-12](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md) requests made from client applications. +x-tagGroups: + - name: "Callbacks Server" + tags: + - Unique Address + - Fees + - Rates + - Customers paths: /unique_address: get: @@ -36,6 +48,7 @@ paths: operationId: genAddress tags: - Unique Address + x-seps: - SEP-31 parameters: - in: query @@ -79,7 +92,7 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' /fee: get: description: | @@ -95,6 +108,7 @@ paths: When this change is made, the request schema will be adapted to support the use case. tags: - Fees + x-seps: - SEP-31 summary: Retrieve Fees operationId: getFee @@ -159,7 +173,7 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/FeeResponse' + $ref: './schemas.yaml#/components/schemas/FeeResponse' '422': description: | Unprocessable Entity. This status should be returned when the anchor understood the request but cannot @@ -170,13 +184,13 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' '500': description: Error. The Platform will respond to the client application with the same response code and body. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' /rate: get: description: | @@ -196,6 +210,7 @@ paths: `sell_asset` or `buy_asset` is a Stellar asset. tags: - Rates + x-seps: - SEP-31 - SEP-38 summary: Retrieve Rates @@ -290,7 +305,7 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/RateResponse' + $ref: './schemas.yaml#/components/schemas/RateResponse' '422': description: | Unprocessable Entity. This status should be returned when the anchor understood the request but cannot @@ -300,13 +315,13 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' '500': description: Error. The Platform will respond to the client application with the same response code and body. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' /customer: get: description: | @@ -328,6 +343,7 @@ paths: If the server still needs more info, or the server needs updated information, it should return the fields required. tags: - Customers + x-seps: - SEP-6 - SEP-12 - SEP-31 @@ -389,25 +405,26 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/GetCustomerResponse' + $ref: './schemas.yaml#/components/schemas/GetCustomerResponse' examples: SuccessKYC: - $ref: './examples.yml#/components/examples/SuccessKYC' + $ref: './examples.yaml#/components/examples/SuccessKYC' '400': description: Error. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' '404': description: Not Found. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' put: tags: - Customers + x-seps: - SEP-6 - SEP-12 - SEP-24 @@ -429,33 +446,34 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/PutCustomerRequest' + $ref: './schemas.yaml#/components/schemas/PutCustomerRequest' multipart/form-data: schema: - $ref: './schemas.yml#/components/schemas/PutCustomerMultipartRequest' + $ref: './schemas.yaml#/components/schemas/PutCustomerMultipartRequest' responses: '200': description: Success. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/PutCustomerResponse' + $ref: './schemas.yaml#/components/schemas/PutCustomerResponse' '400': description: Invalid data. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' '404': description: Not Found. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' /customer/{id}: delete: tags: - Customers + x-seps: - SEP-12 - SEP-31 description: | @@ -480,11 +498,12 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' /event: post: tags: - Events + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -496,7 +515,7 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Event' + $ref: './schemas.yaml#/components/schemas/Event' responses: '200': description: The event is successfully processed and ready to receive next event. The response body is empty. diff --git a/openapi/anchor-platform/Custody API.yml b/openapi/anchor-platform/main-custody.yaml similarity index 72% rename from openapi/anchor-platform/Custody API.yml rename to openapi/anchor-platform/main-custody.yaml index 6e06b830e..e7d895eb2 100644 --- a/openapi/anchor-platform/Custody API.yml +++ b/openapi/anchor-platform/main-custody.yaml @@ -1,8 +1,18 @@ -openapi: 3.0.0 +openapi: 3.1.0 info: - version: "2.0.0" + version: "2.8.4" + title: Custody Server description: | - title: Custody Server API + The custody server connects to enterprise wallet providers, such as Fireblocks, to send and receive payments for transactions initiated via the Anchor Platform. This service is an alternative to the Stellar Observer for businesses who use one of the supported providers. In addition to the functionality offered by the Stellar Observer, the Custody Server can also facilitate outbound payments to client's Stellar accounts. If you also use the events service, payments to your accounts will trigger a HTTP callback made to your business server. + + If you already have an integration with your wallet provider, then this component is not required, although your business server will need to notify the Anchor Platform when a payment associated with an Anchor Platform transaction was sent to or from your Stellar accounts via the Platform API. + + Currently the only supported provider is Fireblocks. + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: https://custody-server.exampleanchor.com tags: - name: "Custody Transactions" description: "Custody Server creates custody transaction record in DB." @@ -10,7 +20,7 @@ tags: description: "Custody Server calls the configured custody service to send payment." - name: "Refunds" description: "Custody Server calls configured Custody Service to send refund. Custody transaction record is also created in DB." - - name: "Unique Address" + - name: "Custody Unique Address" description: "Custody Server calls the configured custody service to generate deposit address and memo." paths: /transactions: @@ -20,6 +30,7 @@ paths: operationId: createCustodyTransaction tags: - Custody Transactions + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -45,10 +56,7 @@ paths: protocol: description: Protocol of SEP transaction. type: string - enum: - - 6 - - 24 - - 31 + enum: [ "6", "24", "31" ] fromAccount: description: Source Stellar account. type: string @@ -83,7 +91,7 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' /transactions/:id/payments: post: description: Custody Server calls the configured custody service to send payment. @@ -91,6 +99,7 @@ paths: operationId: sendPayment tags: - Payments + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -105,37 +114,37 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/SendPaymentResponse' + $ref: './schemas.yaml#/components/schemas/SendPaymentResponse' '400': description: Invalid Request. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '404': description: Custody Transaction is not found. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '429': description: Custody Service rate limit is exceeded. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '500': description: Internal Server Error. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '503': description: Custody Service is unavailable. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' /transactions/:id/refunds: post: description: Custody Server calls configured Custody Service to send refund. Custody transaction record is also created in DB. @@ -143,6 +152,7 @@ paths: operationId: sendRefund tags: - Refunds + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -170,47 +180,48 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/SendPaymentResponse' + $ref: './schemas.yaml#/components/schemas/SendPaymentResponse' '400': description: Invalid Request. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '404': description: Custody Transaction is not found. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '429': description: Custody Service rate limit is exceeded. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '500': description: Internal Server Error. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' + $ref: './schemas.yaml#/components/schemas/CustodyError' '503': description: Custody Service is unavailable. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' - /assets/{asset}/addresses: + $ref: './schemas.yaml#/components/schemas/CustodyError' + /assets/:asset/addresses: post: description: | Custody Server calls the configured custody service to generate deposit address and memo. - + Format of `asset` parameter - `stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5` summary: Generate Unique Address operationId: generateUniqueAddress tags: - - Unique Address + - Custody Unique Address + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -225,10 +236,10 @@ paths: content: application/json: schema: - $ref: './schemas.yml#/components/schemas/GenerateUniqueAddressResponse' + $ref: './schemas.yaml#/components/schemas/GenerateUniqueAddressResponse' '500': description: Internal Server Error. content: application/json: schema: - $ref: './schemas.yml#/components/schemas/CustodyError' \ No newline at end of file + $ref: './schemas.yaml#/components/schemas/CustodyError' diff --git a/openapi/anchor-platform/Platform API.yml b/openapi/anchor-platform/main-platform.yaml similarity index 74% rename from openapi/anchor-platform/Platform API.yml rename to openapi/anchor-platform/main-platform.yaml index 668fb93c8..58f2a680c 100644 --- a/openapi/anchor-platform/Platform API.yml +++ b/openapi/anchor-platform/main-platform.yaml @@ -1,24 +1,30 @@ -openapi: 3.0.0 +openapi: 3.1.0 info: - version: "2.0.0" - title: Platform API + version: "2.8.4" + title: Platform Server + description: | + The platform server is an internal component. It should be hosted in a private network and should not be accessible from the Internet. This server enables the business to fetch and update the state of transactions using its API. + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: https://platform-server.exampleanchor.com tags: - name: "Transactions" description: "Transactions initiated by client applications via SEP APIs" - - name: "Quotes" - description: "Firm quotes provided to client applications via SEP APIs" paths: /transactions: get: tags: - "Transactions" + x-seps: - SEP-6 - SEP-24 - SEP-31 summary: Retrieve a List of Transactions operationId: getTransactions description: - Allows to query list of transactions for desired SEP. This api supports pagination, and it's possible (and recommended) to make multiple requests to query transactions. + Allows to query list of transactions for desired SEP. This api supports pagination, and it's possible (and recommended) to make multiple requests to query transactions. The last page is reached when the number of elements returned by the endpoint is smaller than provided `page_size`. parameters: - in: query @@ -26,7 +32,7 @@ paths: required: true schema: type: string - enum: [ 6, 24, 31 ] + enum: [ "6", "24", "31" ] description: Lookup transactions belonging to this SEP. - in: query @@ -37,7 +43,7 @@ paths: default: created_at description: Specifies field that transactions will be ordered by. Note, that secondary sort is transaction id in ascending value. - + I.e. when timestamps for 2 or more transactions is identical, they will be sorted by id. - in: query name: order @@ -47,14 +53,14 @@ paths: default: asc description: Specifies order. Note, that when the field is null, all transactions with null value will be last, regardless of soring order (NULLS LAST). - + For example, transfer time may not be specified for some transactions, resulting into `transfer_received_at` being null. If so, transactions with non-null values will be sorted and returned first, followed by all transactions with null timestamps. - in: query name: statuses schema: type: array items: - $ref: './schemas.yml#/components/schemas/StatusSEPAll' + $ref: './schemas.yaml#/components/schemas/StatusSEPAll' description: Filters transactions for specified array of statuses. If not provided, filtering is disabled (default behavior) - in: query name: page_size @@ -77,25 +83,26 @@ paths: application/json: schema: oneOf: - - $ref: './schemas.yml#/components/schemas/TransactionListSEP6' - - $ref: './schemas.yml#/components/schemas/TransactionListSEP24' - - $ref: './schemas.yml#/components/schemas/TransactionListSEP31' + - $ref: './schemas.yaml#/components/schemas/TransactionListSEP6' + - $ref: './schemas.yaml#/components/schemas/TransactionListSEP24' + - $ref: './schemas.yaml#/components/schemas/TransactionListSEP31' '400': description: "Bad Request" content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' '404': description: "Transaction not found." content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' /transactions/{id}: get: tags: - "Transactions" + x-seps: - SEP-6 - SEP-24 - SEP-31 @@ -117,21 +124,21 @@ paths: application/json: schema: oneOf: - - $ref: './schemas.yml#/components/schemas/TransactionSEP6' - - $ref: './schemas.yml#/components/schemas/TransactionSEP24' - - $ref: './schemas.yml#/components/schemas/TransactionSEP31' + - $ref: './schemas.yaml#/components/schemas/TransactionSEP6' + - $ref: './schemas.yaml#/components/schemas/TransactionSEP24' + - $ref: './schemas.yaml#/components/schemas/TransactionSEP31' '400': description: "Bad Request" content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' '404': description: "Transaction not found." content: application/json: schema: - $ref: './schemas.yml#/components/schemas/Error' + $ref: './schemas.yaml#/components/schemas/Error' # CHANGELOG ## v2.0.0: Simplified the Event by merging the QuoteEvent and Transaction Event and embedding the detail in the `transaction` and `quote` field. Removed unused schemas. diff --git a/openapi/anchor-platform/schemas.yml b/openapi/anchor-platform/schemas.yaml similarity index 94% rename from openapi/anchor-platform/schemas.yml rename to openapi/anchor-platform/schemas.yaml index af3aa3418..a49df3f95 100644 --- a/openapi/anchor-platform/schemas.yml +++ b/openapi/anchor-platform/schemas.yaml @@ -1,13 +1,3 @@ -openapi: 3.0.0 -info: - version: "2.0.0" - title: Component Schemas - description: | - This document specifies the schemas used for all APIs. -tags: - - name: "Component Schemas" - description: "Component Schemas" -paths: { } components: schemas: PutCustomerRequest: @@ -31,7 +21,7 @@ components: - text type: description: | - The type of action the customer is being KYCd for. + The type of action the customer is being KYCd for. See the [Type Specification](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md#type-specification) documented in SEP-12 for more info. For SEP-31 you can define your own types in the assets configuration. For SEP-24 pre-defined value `sep24-customer` is used. @@ -150,7 +140,7 @@ components: - text type: description: | - The type of action the customer is being KYCd for. + The type of action the customer is being KYCd for. See the [Type Specification](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md#type-specification) documented in SEP-12 for more info. For SEP-31 you can define your own types in the assets configuration. For SEP-24 pre-defined value `sep24-customer` is used. @@ -234,26 +224,26 @@ components: id_number: type: string photo_id_front: - type: file + type: string format: binary photo_id_back: - type: file + type: string format: binary notary_approval_of_photo_id: - type: file + type: string format: binary ip_address: type: string photo_proof_residence: - type: file + type: string format: binary sex: type: string photo_proof_of_income: - type: file + type: string format: binary proof_of_liveness: - type: file + type: string format: binary referral_id: type: string @@ -299,42 +289,44 @@ components: type: string status: type: string - enum: [ ACCEPTED PROCESSING NEEDS_INFO REJECTED ] + enum: [ ACCEPTED, PROCESSING, NEEDS_INFO, REJECTED ] fields: type: object - required: [ type, description ] - properties: - type: - type: string - enum: [ string, binary, number, date ] - description: - type: string - choices: - type: array - items: + additionalProperties: + required: [ type, description ] + properties: + type: + type: string + enum: [ string, binary, number, date ] + description: type: string - optional: - type: boolean + choices: + type: array + items: + type: string + optional: + type: boolean provided_fields: type: object - required: [ type, description ] - properties: - type: - type: string - enum: [ string, binary, number, date ] - description: - type: string - choices: - type: array - items: + additionalProperties: + required: [ type, description ] + properties: + type: + type: string + enum: [ string, binary, number, date ] + description: + type: string + choices: + type: array + items: + type: string + optional: + type: boolean + status: + type: string + enum: [ ACCEPTED, PROCESSING, REJECTED, VERIFICATION_REQUIRED ] + error: type: string - optional: - type: boolean - status: - type: string - enum: [ ACCEPTED, PROCESSING, REJECTED, VERIFICATION_REQUIRED ] - error: - type: string message: type: string @@ -773,7 +765,7 @@ components: records: type: array items: - $ref: './schemas.yml#/components/schemas/TransactionSEP6' + $ref: './schemas.yaml#/components/schemas/TransactionSEP6' TransactionListSEP24: type: object @@ -781,7 +773,7 @@ components: records: type: array items: - $ref: './schemas.yml#/components/schemas/TransactionSEP24' + $ref: './schemas.yaml#/components/schemas/TransactionSEP24' TransactionListSEP31: type: object @@ -789,7 +781,7 @@ components: records: type: array items: - $ref: './schemas.yml#/components/schemas/TransactionSEP31' + $ref: './schemas.yaml#/components/schemas/TransactionSEP31' Amount: type: object @@ -837,7 +829,7 @@ components: StellarId's are objects that identify end-users and SEP-31 Sending Anchors, but not SEP-31 Receiving Anchors. For a SEP-12 customer, the `id` field should be sufficient to fully identify the customer in the business' Backend. - + For a SEP-31 Sending Anchor, the `account` and `memo` fields should be used. For a SEP-6 Anchor, the `account` and `memo` fields should be used. @@ -945,8 +937,8 @@ components: properties: transaction: oneOf: - - $ref: './schemas.yml#/components/schemas/TransactionSEP24' - - $ref: './schemas.yml#/components/schemas/TransactionSEP31' + - $ref: './schemas.yaml#/components/schemas/TransactionSEP24' + - $ref: './schemas.yaml#/components/schemas/TransactionSEP31' quote: $ref: '#/components/schemas/Quote' customer: diff --git a/openapi/stellar-disbursement-platform/bundled.yaml b/openapi/stellar-disbursement-platform/bundled.yaml new file mode 100644 index 000000000..b561ef40e --- /dev/null +++ b/openapi/stellar-disbursement-platform/bundled.yaml @@ -0,0 +1,4701 @@ +openapi: 3.1.0 +info: + title: Stellar Disbursement Platform API + version: 2.1.0 + summary: The Stellar Disbursement Platform (SDP) is a tool built for organizations to make bulk payments to a group of recipients over the Stellar network. + description: | + The Stellar Disbursement Platform (SDP) is a tool built for organizations to make bulk payments to a group of recipients over the Stellar network. + + This is an open-source project that is built on top of the Stellar network, and the code can be found on the following repositories: + + - [stellar/stellar-disbursement-platform-backend](https://github.com/stellar/stellar-disbursement-platform-backend): This repository contains the backend and infrastructure code for the Stellar Disbursement Platform. + - [stellar/stellar-disbursement-platform-frontend](https://github.com/stellar/stellar-disbursement-platform-frontend): This repository contains the web frontend code for the Stellar Disbursement Platform. + - [stellar/helm-charts](https://github.com/stellar/helm-charts/tree/main/charts/stellar-disbursement-platform): This repository contains the Helm chart for deploying the Stellar Disbursement Platform using kubernetes. + termsOfService: https://stellar.org/terms-of-service + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: '' +tags: + - name: Admin + x-displayName: Admin (Tenant Management) + description: The Admin API oversees the management of tenants within the system, facilitating tasks such as provisioning new tenants, updating their information, and retrieving tenant data. + - name: Authentication + description: Authentication controls the log in/log out process for all SDP users, as well as the token refresh process. Authentication uses a JWT approach signed with an ES256 private key. + - name: Balances + description: Endpoints related to balances. A balance is an amount of a particular asset held by an organization, tenant, or account. + - name: Disbursements + description: Endpoints related to disbursements. A disbursement is a group of payments sent to multiple individuals at once. An SDP user with the appropriate role triggers a new disbursement through the SDP dashboard by uploading a list of receivers and amounts. When the receiver has linked their wallet to the SDP, the payment automatically begins. SDP users can track their disbursements in real-time through the SDP dashboard. Each disbursement must have a unique name defined by the organization. + - name: Organization + description: Organization endpoints manage the process of getting and updating organizational profile information. The organization's profile has basic information set at the time of SDP deployment. It can be modified by the Owner. Organizations can also manage their preferences, like which assets to use, through these endpoints. + - name: Payments + description: Endpoints related to payments. An SDP payment is an individual payment from an organization to a receiver. Each payment is part of a disbursement and occurs on the Stellar network. Granular payment status is stored in the SDP database and can be viewed in real-time on the SDP dashboard. There is no POST endpoint because submitting payments to the Stellar network is handled by the Transaction Submission Service (TSS). + - name: Profile + description: 'Profiles endpoints manage the process of getting and updating individual profile information. Profile information is set when the account is created and can be updated by the user on the SDP dashboard Profile page. Note: profiles never refer to receivers of funds.' + - name: Receivers + description: | + Endpoints related to receivers. A receiver is an individual receiving a payment in a disbursement. The receiver is tracked by phone number to reduce the need for personally identifiable information. Each receiver must be unique within the disbursement. + + Each receiver will have at least one wallet associated with them. The wallet public key will remain null until the receiver registers with a wallet provider and links the wallet to the SDP through SEP-24. Receivers must verify their identity through that process, which requires the SDP to store verification information on receivers like date of birth, national ID number, or personal PIN. This information can be updated by the organization through the receiver endpoints. + - name: Registration + description: | + The registration endpoints guide the process for a receiver to verify their identity and link their wallet address to an SDP. The registration process only needs to happen once per receiver to link their wallet. Only SDP-compatible wallet providers can facilitate the registration process. These endpoints must be supported and hit by the wallet providers after the receiver gets the initial SMS invite. After the wallet address is successfully linked, the payment automatically begins. + + There are two parts to the registration flow. First, the wallet must authenticate and initiate a registration flow using the Anchor Platform Endpoints defined below. Note that these endpoints are hosted on a different host than the Stellar Disursement Platform. + + The second part of the registration flow is handled by the webview that is opened within the wallet application. This webview uses the endpoints defined in the Stellar Disbursement Platfrom Endpoints section to complete the registration process. The wallet application can chose not to use the webview and intstead integrate directly with the API. + - name: Statistics + description: Statistics endpoints return general aggregated data per organization, as well as disbursement-specific metrics. SDP users can use this data to monitor their disbursements over time. + - name: Users + description: The users endpoints facilitate the creation of new SDP users - including setting the appropriate role, sending an email invitation, and activating a user - and managing roles. +paths: + /login: + post: + tags: + - Authentication + summary: Log In + description: 'Allows credentialed SDP users to log in to the SDP dashboard with a password. Note: all passwords must be at least 8 characters long and a combination of uppercase letters, lowercase letters, numbers, and symbols.' + operationId: LogIn + requestBody: + content: + '*/*': + schema: + required: + - email + - password + type: object + properties: + email: + type: string + password: + type: string + recaptcha_token: + type: string + description: Token for reCAPTCHA validation. ReCAPTCHA token is required unless the `DISABLE_RECAPTCHA` configuration is set to true. + example: + email: johndoe@mail.com + password: mysecret + required: false + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + token: + type: string + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Invalid credentials + extras: + status: 400 + message: Invalid username or password + example: + error: Invalid credentials + extras: + status: 400 + message: Invalid username or password + x-codegen-request-body-name: body + /refresh-token: + post: + tags: + - Authentication + summary: Refresh Token + description: A user’s token expires after 15 minutes. This endpoint handles refreshing the user’s token without disrupting their experience. It is triggered within the 30-second window before the token expires. + operationId: RefreshToken + responses: + '200': + description: Returns a new access token + content: + application/json: + schema: + type: object + properties: + token: + type: string + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + /mfa: + post: + tags: + - Authentication + summary: Provide Multi-Factor Authentication + description: Governs the multi-factor authentication process for SDP user login, including the ability to remember the device so MFA is not always required. + operationId: authenticateMFA + parameters: + - name: Device-ID + in: header + description: Identifier of the device + required: false + style: simple + explode: false + schema: + type: string + requestBody: + description: MFA request data + content: + '*/*': + schema: + required: + - mfa_code + type: object + properties: + mfa_code: + type: string + description: Multi-factor authentication code + remember_me: + type: boolean + description: Boolean flag to remember the user + recaptcha_token: + type: string + description: Token for reCAPTCHA validation. ReCAPTCHA token is required unless the `DISABLE_RECAPTCHA` configuration is set to true. + required: true + responses: + '200': + description: Successful authentication + content: + application/json: + schema: + type: object + properties: + token: + type: string + description: Authentication token + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + x-codegen-request-body-name: body + /forgot-password: + post: + tags: + - Authentication + summary: Forgot Password + description: Sends an email with a token to an SDP user who has gone through the Forgot Password process. + operationId: forgotPassword + requestBody: + description: Forgot password request data + content: + '*/*': + schema: + required: + - email + type: object + properties: + email: + type: string + description: Email of the user + format: email + recaptcha_token: + type: string + description: Token for reCAPTCHA validation + required: true + responses: + '200': + description: Forgot password email sent successfully + content: + '*/*': + schema: + $ref: '#/components/schemas/MessageResponse' + '400': + description: Bad Request + content: + '*/*': + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + x-codegen-request-body-name: body + /reset-password: + post: + tags: + - Authentication + summary: Reset Rassword + description: Allows an SDP user who has gone through the Forgot Password process to set their new password with a token sent via email. + operationId: resetPassword + requestBody: + description: Reset password request data + content: + '*/*': + schema: + required: + - password + - reset_token + type: object + properties: + password: + type: string + description: New password for the user + reset_token: + type: string + description: Token used to identify a valid password reset request + required: true + responses: + '200': + description: Password reset successfully + content: {} + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + x-codegen-request-body-name: body + /disbursements: + get: + tags: + - Disbursements + summary: List All Disbursements + description: Fetches all disbursements the organization has created. This endpoint supports pagination. The response includes basic aggregations on payments within the disbursement. + operationId: ListAllDisbursements + parameters: + - name: page + in: query + description: The page requested. + required: false + style: form + explode: true + schema: + type: number + default: 1 + - name: page_limit + in: query + description: Define how many results will be returned in the response. + required: false + style: form + explode: true + schema: + type: number + default: 20 + - name: q + in: query + description: A search term used to query through the disbursement names. + required: false + style: form + explode: true + schema: + type: string + - name: status + in: query + description: Exact match on the status of the disbursement. + required: false + style: form + explode: true + schema: + type: string + enum: + - DRAFT + - READY + - STARTED + - PAUSED + - COMPLETED + example: DRAFT + - name: created_at_after + in: query + description: 'Only return disbursements that are created after this date. Format: YYYY-MM-DD' + required: false + style: form + explode: true + schema: + type: string + example: '2006-01-02' + - name: created_at_before + in: query + description: 'Only return disbursements that are created before this date. Format: YYYY-MM-DD' + required: false + style: form + explode: true + schema: + type: string + example: '2006-01-02' + - name: sort + in: query + description: Field used to sort disbursements + required: false + style: form + explode: true + schema: + type: string + default: created_at + enum: + - name + - created_at + - name: direction + in: query + description: Direction for sorting disbursements. + required: false + style: form + explode: true + schema: + type: string + default: asc + enum: + - asc + - desc + responses: + '200': + description: A list of Disbursement details + content: + application/json: + schema: + $ref: '#/components/schemas/DisbursementPagination' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + post: + tags: + - Disbursements + summary: Create Disbursement + description: 'Creates a new disbursement in `draft ` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from `draft ` to `ready `.' + operationId: CreateDisbursement + requestBody: + content: + '*/*': + schema: + type: object + properties: + name: + type: string + wallet_id: + type: string + asset_id: + type: string + country_code: + type: string + description: Three-character ISO 3166 code + example: + name: My New Disbursement name + wallet_id: e2de8544-b7e2-40a9-ad40-411f70d5c4bf + asset_id: d227a68c-2f40-11ee-be56-0242ac120002 + country_code: UKR + required: false + responses: + '201': + description: A new disbursement + content: + application/json: + schema: + $ref: '#/components/schemas/Disbursement' + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Bad request + extras: + status: 400 + message: Invalid country code provided + example: + error: Bad request + extras: + status: 400 + message: Invalid country code provided + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /disbursements/{id}: + get: + tags: + - Disbursements + summary: Retrieve a Disbursement + description: Fetches information on a specific disbursement by `id `. + operationId: RetrieveADisbursement + parameters: + - name: id + in: path + description: ID of the `Disbursement`. + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Disbursement details + content: + application/json: + schema: + $ref: '#/components/schemas/Disbursement' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /disbursements/{id}/receivers: + get: + tags: + - Disbursements + summary: List All Disbursement Receivers + description: Fetches a list of receivers within a specific disbursement using the disbursement `id `. This endpoint supports pagination. + operationId: ListAllDisbursementReceivers + parameters: + - name: id + in: path + description: ID of the Disbursement + required: true + style: simple + explode: false + schema: + type: string + - name: page + in: query + description: The page number to fetch. + required: false + style: form + explode: true + schema: + type: number + - name: page_limit + in: query + description: The number of records to return per page. + required: false + style: form + explode: true + schema: + type: number + responses: + '200': + description: A list of Disbursement Receivers + content: + application/json: + schema: + $ref: '#/components/schemas/DisbursementReceiverPagination' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /disbursements/{id}/instructions: + get: + tags: + - Disbursements + summary: Download Disbursement Instructions + description: Allows an SDP user to download the raw CSV file that was uploaded when creating the disbursement. This will only return results after instructions have been attached to a draft disbursement. + operationId: DownloadDisbursementInstructions + parameters: + - name: id + in: path + description: ID of the Disbursement + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Disbursement CSV file + headers: + Content-Disposition: + description: The filename of the returned CSV file. + style: simple + explode: false + schema: + type: string + Content-Type: + description: text/csv + style: simple + explode: false + schema: + type: string + content: + text/csv: + example: '' + '400': + description: Bad Request + content: + text/csv: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + foo: + type: string + message: + type: string + example: + error: Invalid request + extras: + foo: bar + message: Invalid request parameters + application/json: + example: + error: Invalid request + extras: + foo: bar + message: Invalid request parameters + '401': + description: Unauthorized + content: + text/csv: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + application/json: + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + text/csv: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + application/json: + example: + error: Forbidden + '404': + description: Not Found + content: + text/csv: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + application/json: + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + post: + tags: + - Disbursements + summary: Upload Disbursement Instructions + description: Adds a file containing a list of receivers to a `draft ` disbursement. This step is required before a disbursement can begin. The file must be a CSV and has a standard format that can be found at `dev/sample/sample-disbursement.csv `. The operation is idempotent, guaranteed by deleting and recreating the disbursement attributes when this endpoint is called. + operationId: UploadDisbursementInstructions + parameters: + - name: id + in: path + description: ID of the Disbursement + required: true + style: simple + explode: false + schema: + type: string + requestBody: + content: + multipart/form-data: + schema: + required: + - file + type: object + properties: + file: + type: string + description: 'Disbursement instructions file to upload. The CSV file should be in the following format: `phone,id,amount,verification`' + format: binary + required: true + responses: + '201': + description: Created + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: + message: File uploaded succesfully + example: + message: File uploaded succesfully + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + foo: + type: string + message: + type: string + example: + error: Invalid file format *.xyz + extras: + foo: bar + message: Not authorized + example: + error: Invalid file format *.xyz + extras: + foo: bar + message: Not authorized + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /disbursements/{id}/status: + patch: + tags: + - Disbursements + summary: Update a Disbursement Status + description: Updates the status of a disbursement according to the state machine. The disbursement must move from `draft ` to `ready ` in order to start the disbursement and trigger payments. Payments will start as soon as this endpoint is hit. A disbursement can also be moved into `paused ` state by an SDP user to prevent further payments from going out and restarted when they are ready. + operationId: UpdateADisbursementStatus + parameters: + - name: id + in: path + description: ID of the disbursement + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Message Response + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + example: + message: Disbursement started + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Bad request + extras: + status: 400 + message: Disbursement is not ready to be started + example: + error: Bad request + extras: + status: 400 + message: Disbursement is not ready to be started + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /payments: + get: + tags: + - Payments + summary: List All Payments + description: Returns all individual payments matching the request criteria. This endpoint supports pagination and filtering on payment status, receiver ID, and timestamp. Each payment has details on the transaction itself, receiver, disbursement, asset, status history, and blockchain information. + operationId: ListAllPayments + parameters: + - name: page + in: query + description: The page requested. + required: false + style: form + explode: true + schema: + type: number + default: 1 + - name: page_limit + in: query + description: Define how many results will be returned in the response. + required: false + style: form + explode: true + schema: + type: number + default: 20 + - name: status + in: query + description: Exact match on the status of the payment. + required: false + style: form + explode: true + schema: + type: string + enum: + - DRAFT + - READY + - PENDING + - PAUSED + - SUCCESS + - FAILED + example: DRAFT + - name: receiver_id + in: query + description: UUID that represents a receiver in the database + required: false + style: form + explode: true + schema: + type: string + example: b6b667ad-6cc2-46cf-9be7-561daace7d48 + - name: created_at_after + in: query + description: 'Only return payments that are created after this date. Format: YYYY-MM-DD' + required: false + style: form + explode: true + schema: + type: string + example: '2006-01-02' + - name: created_at_before + in: query + description: 'Only return payments that are created before this date. Format: YYYY-MM-DD' + required: false + style: form + explode: true + schema: + type: string + example: '2006-01-02' + - name: sort + in: query + description: Field used to sort payments + required: false + style: form + explode: true + schema: + type: string + default: created_at + enum: + - created_at + - name: direction + in: query + description: Direction for sorting payments. + required: false + style: form + explode: true + schema: + type: string + default: asc + enum: + - asc + - desc + responses: + '200': + description: A paginated list of payments + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentPagination' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /payments/{id}: + get: + tags: + - Payments + summary: Retrieve a Payment + description: Fetches detailed information on a specific payment by `id `. + operationId: RetrieveAPayment + parameters: + - name: id + in: path + description: ID of the `Payment`. + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Payment details + content: + application/json: + schema: + $ref: '#/components/schemas/Payment' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Payment not found + example: + error: Not found + extras: + status: 404 + message: Payment not found + security: + - BearerAuth: [] + /receivers: + get: + tags: + - Receivers + summary: List All Receivers + description: Returns all receivers matching the request criteria. This endpoint supports pagination and filtering on receiver status, receiver attributes, and timestamp. Each payment has details on the receiver, high-level payments metrics, and wallets associated with the receiver. + operationId: ListAllReceivers + parameters: + - name: page + in: query + description: The page requested. + required: false + style: form + explode: true + schema: + type: number + default: 1 + - name: page_limit + in: query + description: Define how many results will be returned in the response. + required: false + style: form + explode: true + schema: + type: number + default: 20 + - name: q + in: query + description: A search term used to query through the receiver phone_number, email, and ID. + required: false + style: form + explode: true + schema: + type: string + - name: status + in: query + description: Exact match on the status of the receiver wallet. + required: false + style: form + explode: true + schema: + type: string + enum: + - DRAFT + - READY + - REGISTERED + - FLAGGED + example: DRAFT + - name: created_at_after + in: query + description: 'Only return receivers that are created after this date. Format: YYYY-MM-DD' + required: false + style: form + explode: true + schema: + type: string + example: '2006-01-02' + - name: created_at_before + in: query + description: 'Only return receivers that are created before this date. Format: YYYY-MM-DD' + required: false + style: form + explode: true + schema: + type: string + example: '2006-01-02' + - name: sort + in: query + description: Field used to sort receivers + required: false + style: form + explode: true + schema: + type: string + default: created_at + enum: + - created_at + - name: direction + in: query + description: Direction for sorting receivers. + required: false + style: form + explode: true + schema: + type: string + default: asc + enum: + - asc + - desc + responses: + '200': + description: A paginated list of Receiver details + content: + application/json: + schema: + $ref: '#/components/schemas/ReceiverPagination' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /receivers/{id}: + get: + tags: + - Receivers + summary: Retrieve a Receiver + description: Fetches detailed information on a specific receiver by `id `, including all associated wallets. + operationId: RetrieveAReceiver + parameters: + - name: id + in: path + description: ID of the `Receiver`. + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Receiver Details + content: + application/json: + schema: + $ref: '#/components/schemas/Receiver' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BearerAuth: [] + patch: + tags: + - Receivers + summary: Update a Receiver + description: This endpoint allows an organization to add and update information on the receiver, including email address, external ID, date of birth, personal PIN, and national ID number. The response includes all information on the receiver. + operationId: UpdateAReceiver + parameters: + - name: id + in: path + description: ID of the `Receiver`. + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: List of fields to patch for the receiver + content: + '*/*': + schema: + $ref: '#/components/schemas/PatchReceiverRequest' + required: true + responses: + '200': + description: Updated Receiver Details + content: + application/json: + schema: + $ref: '#/components/schemas/Receiver' + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /statistics: + get: + tags: + - Statistics + summary: Retrieve All Statistics + description: Fetches all metrics on all disbursements the organization has created. The response includes basic aggregations on payments, receivers, receiver wallets, and assets. + operationId: RetrieveAllStatistics + responses: + '200': + description: General Statistics response + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralStatistics' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + /statistics/disbursements/{id}: + get: + tags: + - Statistics + summary: Retrieve Disbursement Statistics + description: Fetches metrics on a specific disbursement by `id `. + operationId: RetrieveDisbursementStatistics + parameters: + - name: id + in: path + description: ID of the `Disbursement`. + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Returns statistics for disbursement + content: + application/json: + schema: + $ref: '#/components/schemas/DisbursementsStatistics' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /wallet-registration/start: + get: + tags: + - Registration + summary: Start Wallet Registration + description: This is the endpoint the browser reaches with the first token so that the receiver can confirm their verification information through a webflow. Requires a valid SEP-24 token in the request. + operationId: StartWalletRegistration + parameters: + - name: token + in: query + description: The SEP-24 token used for authentication + required: true + style: form + explode: true + schema: + type: string + - name: transaction_id + in: query + description: The transaction id associated with the SEP-24 token + required: true + style: form + explode: true + schema: + type: string + responses: + '200': + description: Token is valid and the webpage will be loaded normally. + content: + text/html: + schema: + type: string + description: HTML page content + '400': + description: Bad Request + content: + text/html: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + '401': + description: Unauthorized + content: + text/html: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + application/json: + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + /wallet-registration/otp: + post: + tags: + - Registration + summary: Send One-Time Passcode + description: This endpoint generates a 6-digit OTP and sends it via SMS to the phone number provided in the request body (after checking that the phone number matches a receiver phone number in the SDP). A valid SEP-24 token should be included in the Authorization header of the request. + operationId: SendOneTimePasscode + parameters: + - name: Authorization + in: header + description: 'SEP-24 token for authorization (Format: ''Bearer {token}'')' + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: Object containing phone number + content: + application/json: + schema: + required: + - phone_number + - recaptcha_token + type: object + properties: + phone_number: + type: string + description: Phone number to which the OTP will be sent + recaptcha_token: + type: string + description: Token for reCAPTCHA validation + required: true + responses: + '200': + description: OTP sent successfully + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '429': + description: An OTP was sent to the given user recently and hasn't expired yet. Only after expired it will be sent to the user again. + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + code: + type: string + details: + type: string + x-codegen-request-body-name: body + /wallet-registration/verification: + post: + tags: + - Registration + summary: Verify Receiver Registration + description: This endpoint verifies the receiver's registration by validating the OTP and other verification values provided in the request body. A valid SEP-24 token should be included in the Authorization header of the request. + operationId: VerifyReceiverRegistration + parameters: + - name: Authorization + in: header + description: 'SEP-24 token for authorization (Format: ''Bearer {token}'')' + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: Verification data including phone number, OTP, verification value, and reCAPTCHA token + content: + application/json: + schema: + $ref: '#/components/schemas/ReceiverRegistrationRequest' + required: true + responses: + '200': + description: Verification successful + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: ok + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + x-codegen-request-body-name: body + /.well-known/stellar.toml: + get: + tags: + - Registration + summary: Retrieve Stellar Info File + description: Allows the wallet to fetch the SEP-10 server url, SEP-10 signing public key and SEP-24 server url. + operationId: RetrieveStellarInfoFile + responses: + '200': + description: Token is valid and the webpage will be loaded normally. + content: + text/toml: + example: | + ACCOUNTS=["GBC2HVWFIFN7WJHFORVBCDKJORXXXXXXXXXXXXXXXXXXXXXXXX", "GDA34JZ26FZY64XCSY46CUNSHLX762LHJXQXXXXXXXXXXXXXXXXXXXXXXXX"] SIGNING_KEY="GDA34JZ26FZY64XCSY46XXXXXXXXXXXXXXXXXXXXXXXX" NETWORK_PASSPHRASE="Test SDF Network ; September 2015" HORIZON_URL="https://horizon-testnet.stellar.org" WEB_AUTH_ENDPOINT="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/auth" TRANSFER_SERVER_SEP0024="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/sep24" + [[DOCUMENTATION]] ORG_NAME="Stellar Aid" + [[CURRENCIES]] code = "EUROC" issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" is_asset_anchored = true anchor_asset_type = "fiat" status = "live" desc = "EUROC" + [[CURRENCIES]] code = "USDC" issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" is_asset_anchored = true anchor_asset_type = "fiat" status = "live" desc = "USDC" + /WEB_AUTH_ENDPOINT: + get: + tags: + - Registration + summary: Request Challenge Transaction + description: Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the `WEB_AUTH_ENDPOINT` variable. + operationId: RequestChallengeTransaction + parameters: + - name: account + in: query + description: The Client Account, which can be a stellar account (G...) or muxed account (M...) that the Client wishes to authenticate with the Server.. + required: true + style: form + explode: true + schema: + type: string + - name: memo + in: query + description: The memo to attach to the challenge transaction. Only permitted if a Stellar account (G...) is used. The memo must be of type id. Other memo types are not supported. + required: false + style: form + explode: true + schema: + type: string + - name: client_domain + in: query + description: a Client Domain. Need to be supplied by all Clients/Wallets. + required: true + style: form + explode: true + schema: + type: string + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + transaction: + type: string + network_passphrase: + type: string + example: + transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== + network_passphrase: Test SDF Network ; September 2015 + example: + transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== + network_passphrase: Test SDF Network ; September 2015 + '400': + description: If some information was missing or invalid. + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + account: + type: string + example: + error: Bad request. + extras: + account: account cannot be empty + example: + error: Bad request. + extras: + account: account cannot be empty + post: + tags: + - Registration + summary: Provide Signed Challenge Transaction + description: Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the `WEB_AUTH_ENDPOINT ` variable. + operationId: ProvideSignedChallengeTransaction + requestBody: + content: + '*/*': + schema: + type: object + properties: + transaction: + type: string + example: + transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAvheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3AsiYk3UAAABArIrkvqmA0V9lIZcVyCUdja6CiwkPwsV8BfI4CZOyR1Oq7ysvNJWwY0G42dpxN9OP1qz4dum8apG2hqvxVWjkDQ== + required: false + responses: + '200': + description: SEP-10 handshake was successful. + content: + application/json: + schema: + type: object + properties: + token: + type: string + example: + token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 + example: + token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: The provided transaction is not valid + example: + error: The provided transaction is not valid + x-codegen-request-body-name: body + /TRANSFER_SERVER_SEP0024/transactions/deposit/interactive: + post: + tags: + - Registration + summary: Request Registration URL + description: | + The deposit endpoint allows a wallet to get deposit information from an anchor, so a user has all the information needed to initiate a deposit. + + It also lets the anchor specify additional information that the user must submit interactively via a popup or embedded browser window to be able to deposit. Please check the detailed documentation [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2). + operationId: RequestRegistrationURL + externalDocs: + description: Find more info here + url: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2 + responses: + '200': + description: An anchor requires the user to fill out information on a webpage hosted by the anchor. + content: + '*/*': + schema: + type: object + properties: + type: + type: string + description: Always set to interactive_customer_info_needed. + example: interactive_customer_info_needed + url: + type: string + description: URL hosted by the anchor. The wallet should show this URL to the user as a popup. + example: https://api.example.com/kycflow?account=GACW7NONV43MZIFHCOKCQJAKSJSISSICFVUJ2C6EZIW5773OU3HD64VI + id: + type: string + description: The anchor's internal ID for this deposit / withdrawal request. The wallet will use this ID to query the /transaction endpoint to check status of the request. + example: 82fhs729f63dh0v4 + /profile: + get: + tags: + - Profile + summary: Get Profile + description: Fetches the individual information of the logged in user to populate the Profile page. + operationId: GetProfile + responses: + '200': + description: Returns user profile + content: + application/json: + schema: + $ref: '#/components/schemas/Profile' + security: + - BearerAuth: [] + patch: + tags: + - Profile + summary: Update User Profile + description: 'Updates the profile details of the logged in user, including changing password for authenticated/logged in users. Note: all fields are optional but at least one should be sent in the request.' + operationId: UpdateUserProfile + requestBody: + content: + '*/*': + schema: + type: object + properties: + first_name: + type: string + last_name: + type: string + email: + type: string + password: + type: string + example: + first_name: FirstName + last_name: LastName + email: email@email.com + password: mysecret + required: false + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + example: + message: user profile updated successfully + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /organization: + get: + tags: + - Organization + summary: Get Organization Info + description: This endpoint returns the organization's info. It is used in many places across the UI. It returns the name in the navbar and the public key of the organization’s distribution account. + operationId: GetOrganizationInfo + responses: + '200': + description: Returns organization details + content: + application/json: + schema: + $ref: '#/components/schemas/Organization' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + patch: + tags: + - Organization + summary: Update Organization Profile + description: 'Updates the organization profile details. Only account owners have permission to do this. Note: both fields are optional but at least one should be sent in the request. It is not necessary to set the header Content-Type for this request. It is set automatically by the HTTP client.' + operationId: UpdateOrganizationProfile + requestBody: + content: + multipart/form-data: + schema: + type: object + properties: + logo: + type: string + description: The logo of the organization, file type must be png or jpeg. + format: binary + data: + type: string + description: | + A JSON string that contains the details to update. Contains the following keys: `organization_name` (string): the new name of the organization, `timezone_utc_offset` (string): the new timezone offset of the organization, `is_approval_required` (boolean): whether the approval workflow is enabled or not. `sms_registration_message_template` (string): the SMS message template sent to the receivers inviting them to registration. Sending this field empty sets the `default` value for it. `otp_message_template` (string): the SMS message template sent to the receivers sending the OTP to complete the registration flow. Sending this field empty sets the `default` value for it. For example: '{"organization_name": "NewOrgName", "timezone_utc_offset": "+02:00", "is_approval_required": true, "sms_registration_message_template": "You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register.", "otp_message_template": "{{.OTP}} is your {{.OrganizationName}} phone verification code."}' + format: json + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + example: + message: organization profile updated successfully + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /organization/logo: + get: + tags: + - Organization + summary: Retrieve Organization Logo + description: Retrieves the logo of the organization for display in the UI navbar. + operationId: GetOrganizationLogo + responses: + '200': + description: OK + content: + application/octet-stream: + schema: + type: string + format: binary + /organization/circle-config: + patch: + tags: + - Organization + summary: Circle Account Setup + description: 'Updates the Circle configuration for the organization. Only account owners have permission to do this. Note: in the first time configuration, all fields are mandatory, but after it is been configured at least once, you can replace a single field at a time.' + operationId: PatchOrganizationCircle + requestBody: + description: Circle configuration to be updated + content: + application/json: + schema: + type: object + properties: + api_key: + type: string + description: The Circle API key with permissions to POST & GET transfers + wallet_id: + type: string + description: The ID of the Circle walet from where the funds will be sent + required: true + responses: + '200': + description: Circle configuration updated successfully + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: Circle configuration updated + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /balances: + get: + tags: + - Balances + summary: Get Organization (Circle) Balances + description: ATTENTION, this endpoint is only enabled when the tenant distribution account type is `CIRCLE`. + operationId: GetOrganization(Circle)Balances + responses: + '200': + description: Returns the organization's Circle balances + content: + application/json: + schema: + required: + - account + - balances + type: object + properties: + account: + $ref: '#/components/schemas/DistributionAccount' + balances: + type: array + description: The organization's Circle balances + items: + $ref: '#/components/schemas/Balance' + '400': + description: Bad request, not supported when the distribution account is not of the CIRCLE type. + $ref: '#/components/responses/BadRequestResponse' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + /countries: + get: + tags: + - Organization + summary: Get All Countries + description: Fetches the list of available countries to populate the dropdown box in the New Disbursement flow. The default list reflects geographic coverage of SDP-compatible wallet providers. + operationId: GetAllCountries + responses: + '200': + description: A list of countries + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Country' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /assets: + get: + tags: + - Organization + summary: Get All Assets + description: 'Fetches the list of available assets to populate the dropdown box in the New Disbursement flow. Note: the organization must hold a balance in a particular asset to use it in a disbursement.' + operationId: GetAllAssets + responses: + '200': + description: A list of assets + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Asset' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + post: + tags: + - Organization + summary: Create Asset + description: 'This endpoint is used to create a new asset that can be used in a Disbursement. Note: the organization must hold a balance in a particular asset to use it in a disbursement.' + operationId: CreateAsset + requestBody: + description: Asset to be created + content: + application/json: + schema: + required: + - code + - issuer + type: object + properties: + code: + type: string + description: The asset code + example: USDC + issuer: + type: string + description: The issuer + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + required: true + responses: + '201': + description: Asset created successfully + content: {} + '400': + description: Bad request, invalid request body or the provided code/issuer is invalid. + content: {} + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /assets/{id}: + delete: + tags: + - Organization + summary: Delete Asset + description: This endpoint is used to soft delete an asset. + operationId: DeleteAsset + parameters: + - name: id + in: path + description: ID of the asset to delete + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Asset deleted successfully + content: {} + '204': + description: Asset already deleted + content: {} + '404': + description: Asset not found + content: {} + security: + - BearerAuth: [] + /wallets: + get: + tags: + - Organization + summary: Get All Wallets + description: Fetches the list of available wallet providers to populate the dropdown box in the New Disbursement flow. The organization should coordinate with the wallet provider before selecting a particular wallet provider for a disbursement. The initial list reflects all SDP-compatible wallets. + operationId: GetAllWallets + responses: + '200': + description: A list of wallets + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Wallet' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /users: + get: + tags: + - Users + summary: Get All Users + description: Fetches all SDP users within the organization, whether they are active yet or not. + operationId: GetAllUsers + responses: + '200': + description: Returns a paginated list of User Details + content: + application/json: + schema: + $ref: '#/components/schemas/Users' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + post: + tags: + - Users + summary: Create User + description: This endpoint creates a new SDP user as the result of an SDP owner adding their information in the UI. It also handles sending the invite email. + operationId: CreateUser + requestBody: + content: + '*/*': + schema: + type: object + properties: + first_name: + type: string + last_name: + type: string + roles: + type: array + items: + type: string + email: + type: string + example: + first_name: John + last_name: Doe + roles: + - business + email: email@email.com + required: false + responses: + '201': + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/User' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /users/activation: + patch: + tags: + - Users + summary: Update User Activation Status + description: Updates the SDP user’s activation status. This endpoint is primarily used to move a user into active status when they accept the invite to join an SDP organization account and create a password. + operationId: UpdateUserActivationStatus + requestBody: + content: + '*/*': + schema: + type: object + properties: + user_id: + type: string + is_active: + type: boolean + example: + user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd + is_active: false + required: false + responses: + '200': + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/User' + example: + message: user activation was updated successfully + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /users/roles: + get: + tags: + - Users + summary: Get All Roles + description: Fetches available SDP roles, such as owner, financial controller, business user, and developer. + operationId: GetAllRoles + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + roles: + type: array + items: + type: string + example: + roles: + - developer + - financial_controller + - business + - owner + example: + roles: + - developer + - financial_controller + - business + - owner + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + patch: + tags: + - Users + summary: Update User Role + description: Updates an SDP user’s role by `user_ID `. + operationId: UpdateUserRole + requestBody: + content: + '*/*': + schema: + type: object + properties: + user_id: + type: string + roles: + type: array + items: + type: string + example: + user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd + roles: + - developer + required: false + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: + message: user roles were updated successfully + example: + message: user roles were updated successfully + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /tenants: + get: + tags: + - Admin + summary: Get All Tenants + operationId: GetAllTenants + responses: + '200': + description: A list of provisioned tenants with their configurations + content: + application/json: + schema: + $ref: '#/components/schemas/Tenants' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BasicAuth: [] + post: + tags: + - Admin + summary: Create Tenant + operationId: CreateTenant + requestBody: + content: + '*/*': + schema: + required: + - distribution_account_type + - name + - organization_name + - owner_email + - owner_first_name + - owner_last_name + type: object + properties: + name: + type: string + description: The tenant name. It should match the pattern `^[a-z-]+$` + distribution_account_type: + type: string + description: The distribution account type of the tenant. + enum: + - DISTRIBUTION_ACCOUNT.STELLAR.ENV + - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT + owner_email: + type: string + description: The owner user e-mail address + owner_first_name: + type: string + description: The owner user first name + owner_last_name: + type: string + description: The owner user last name + organization_name: + type: string + description: The organization name + base_url: + type: string + description: The SDP backend server's base URL. If this field is not provided, the SDP will generate one based on the host `BASE_URL` configuration, and the tenant name. + sdp_ui_base_url: + type: string + description: The SDP UI/dashboard Base URL. If this field is not provided, the SDP will generate one based on the host `SDP_UI_BASE_URL` configuration, and the tenant name. + example: + name: redcorp + distribution_account_type: DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + owner_email: owner@redcorp.org + owner_first_name: Owner + owner_last_name: Last + organization_name: Red Corp + base_url: https://redcorp-backend.sdp.org + sdp_ui_base_url: https://redcorp.sdp.org + required: false + responses: + '201': + description: Provision a new tenant + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BasicAuth: [] + x-codegen-request-body-name: body + /tenants/{id}: + get: + tags: + - Admin + summary: Retrieve a Tenant + operationId: RetrieveATenant + parameters: + - name: id + in: path + description: ID or Name of the `Tenant`. + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Tenant details + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BasicAuth: [] + delete: + tags: + - Admin + summary: Soft delete a Tenant + operationId: SoftDeleteATenant + parameters: + - name: id + in: path + description: ID of the `Tenant`. + required: true + style: simple + explode: false + schema: + type: string + responses: + '200': + description: Deleted Tenant details, with a non-empty `deleted_at` field + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + '304': + description: The tenant was already deleted before this request. + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + '400': + description: Bad request, when the tenant is not elligible to be deleted. For example, when the tenant is the default tenant or when it has not been patched with the deactivated status. + $ref: '#/components/responses/BadRequestResponse' + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BasicAuth: [] + patch: + tags: + - Admin + summary: Update a Tenant + description: This endpoint updates the Tenant data. + operationId: UpdateATenant + parameters: + - name: id + in: path + description: ID of the `Tenant`. + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: List of fields to update for the tenant + content: + '*/*': + schema: + type: object + properties: + base_url: + type: string + description: The SDP backend server's base URL. + sdp_ui_base_url: + type: string + description: The SDP UI/dashboard Base URL. + status: + type: string + enum: + - TENANT_CREATED + - TENANT_PROVISIONED + - TENANT_ACTIVATED + - TENANT_DEACTIVATED + required: true + responses: + '200': + description: Updated Tenant details + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + '400': + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '404': + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BasicAuth: [] + x-codegen-request-body-name: body + /tenants/default-tenant: + post: + tags: + - Admin + summary: Default Tenant + description: | + Sets the tenant specified in the request body as the default one, resolving all the incoming API request to that tenant when the env `SINGLE_TENANT_MODE` is set to true. Once set, the default tenant can be overwritten but never unset, although it is only effective when `SINGLE_TENANT_MODE` is set to true. + + Default tenant is useful for development purposes or when the SDP is used by a single organization. This allows the organization to skip specifying the tenant in every request and simplifies the SDP setup operationally by removing the need of providing wildcard TLS certificates for multi-tenant configurations. + operationId: DefaultTenant + requestBody: + content: + '*/*': + schema: + required: + - id + type: object + properties: + id: + type: string + description: The tenant id. + example: + id: 1736bed3-7b92-4760-8ff2-51fb08ee079f + required: false + responses: + '201': + description: Default tenant details + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + '401': + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + '403': + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BasicAuth: [] + x-codegen-request-body-name: body +components: + schemas: + Amount: + type: object + properties: + asset_code: + type: string + example: USDC + asset_issuer: + type: string + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + received_amount: + type: string + example: '100.00' + Asset: + type: object + properties: + id: + type: string + example: ffaec4b3-46b0-4db4-a4c4-6c3508057705 + code: + type: string + description: Asset code + example: USDC + issuer: + type: string + description: Asset issuer address + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + created_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + updated_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + deleted_at: + type: string + format: date-time + example: '2023-06-03T10:55:51Z' + description: The Stellar asset object + Country: + type: object + properties: + code: + type: string + description: Three-character ISO 3166 code + example: UKR + name: + type: string + description: Country name + example: Ukraine + created_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + updated_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + Disbursement: + type: object + properties: + id: + type: string + description: The unique identifier of the disbursement + example: 619da857-8725-4c58-933d-c120a458e0f5 + name: + type: string + description: The name of the disbursement + example: Disbursement Name + country: + $ref: '#/components/schemas/Country' + wallet: + $ref: '#/components/schemas/Wallet' + asset: + $ref: '#/components/schemas/Asset' + status: + $ref: '#/components/schemas/DisbursementStatus' + verification_field: + $ref: '#/components/schemas/VerificationField' + status_history: + $ref: '#/components/schemas/DisbursementStatusHistory' + file_name: + type: string + example: disbursement-feb-03-2023.csv + created_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + updated_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + total_payments: + type: integer + description: Total number of payments + example: 10 + total_payments_sent: + type: integer + description: Total number of successful payments + example: 8 + total_payments_failed: + type: integer + description: Total number of failed payments + example: 1 + total_payments_remaining: + type: integer + description: Total number of remaining payments + example: 1 + amount_disbursed: + type: string + description: The total amount disbursed so far + example: '800.00' + total_amount: + type: string + description: The total amount to be disbursed + example: '1000.00' + average_amount: + type: string + description: The average amount per payment + example: '100.00' + DisbursementLite: + type: object + properties: + id: + type: string + description: The unique identifier of the disbursement + format: uuid + example: c51ba1d5-52d3-412f-a59c-6ef32d59ab43 + name: + type: string + description: The name of the disbursement + example: disbursement-june-29 + status: + $ref: '#/components/schemas/DisbursementStatus' + created_at: + type: string + description: The creation timestamp of the disbursement + format: date-time + example: '2023-06-30T01:22:57.831975Z' + updated_at: + type: string + description: The last update timestamp of the disbursement + format: date-time + example: '2023-06-30T01:22:58.316511Z' + DisbursementPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/Disbursement' + example: + pagination: + next: /disbursements?page=3&page_limit=1 + prev: /disbursements?page=1&page_limit=1 + pages: 4 + total: 4 + data: + id: 619da857-8725-4c58-933d-c120a458e0f5 + name: Disbursement Name + country: + code: UKR + name: Ukraine + created_at: '2023-02-03T10:45:51.000Z' + updated_at: '2023-02-03T10:45:51.000Z' + wallet: + id: e2de8544-b7e2-40a9-ad40-411f70d5c4bf + name: Vibrant + homepage: https://vibrantapp.com + asset: + id: 25923001-508a-4629-9186-c41211b2a3d0 + code: USDC + issuer: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + status: READY + verification_field: DATE_OF_BIRTH + status_history: + - status: DRAFT + timestamp: '2023-02-03T10:45:51.000Z' + - user_id: 2ec7f1f9-add3-4e6d-9d14-bd8ac5e88872 + status: READY + timestamp: '2023-02-03T10:45:51.000Z' + file_name: disbursement-february-03-2023.csv + created_at: '2023-02-03T10:45:51.000Z' + updated_at: '2023-02-03T10:45:51.000Z' + total_payments: 10 + total_payments_sent: 8 + total_payments_failed: 1 + total_payments_remaining: 1 + amount_disbursed: '800.00' + total_amount: '1000.00' + average_amount: '100.00' + DisbursementReceiver: + type: object + properties: + id: + type: string + example: ec3a57c0-5660-4b5a-af76-acadc7b09b93 + email: + type: string + example: receiver@mail.org + phone_number: + type: string + example: '+15552368475' + external_id: + type: string + example: usr129001 + receiver_wallet: + $ref: '#/components/schemas/ReceiverWallet' + payment: + $ref: '#/components/schemas/Payment' + created_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + updated_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + DisbursementReceiverPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/DisbursementReceiver' + DisbursementsStatistics: + type: object + properties: + payment_counters: + $ref: '#/components/schemas/PaymentCounters' + payment_amounts_by_asset: + type: array + items: + $ref: '#/components/schemas/PaymentAmountsByAsset' + receiver_wallets_counters: + $ref: '#/components/schemas/ReceiverWalletsCounters' + total_receivers: + type: integer + description: Total number of receivers + format: int64 + example: 100 + DisbursementStatus: + type: string + enum: + - DRAFT + - READY + - STARTED + - PAUSED + - COMPLETED + DisbursementStatusHistory: + type: array + items: + $ref: '#/components/schemas/DisbursementStatusHistoryEntry' + DisbursementStatusHistoryEntry: + type: object + properties: + user_id: + type: string + example: 3f351b9e-ed0f-40fa-a314-14757b42dab1 + status: + $ref: '#/components/schemas/DisbursementStatus' + timestamp: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + GeneralStatistics: + type: object + properties: + total_disbursements: + type: integer + description: Total number of disbursements + format: int64 + example: 20 + payment_counters: + $ref: '#/components/schemas/PaymentCounters' + payment_amounts_by_asset: + type: array + items: + $ref: '#/components/schemas/PaymentAmountsByAsset' + receiver_wallets_counters: + $ref: '#/components/schemas/ReceiverWalletsCounters' + total_receivers: + type: integer + description: Total number of receivers + format: int64 + example: 1000 + MessageResponse: + required: + - message + type: object + properties: + message: + type: string + Organization: + required: + - distribution_account + - is_approval_required + - logo_url + - name + - payment_cancellation_period_days + - privacy_policy_link + - sms_resend_interval + - timezone_utc_offset + type: object + properties: + name: + type: string + example: Stellar Aid + logo_url: + type: string + example: https://stellar-disbursement-platform-backend-dev.stellar.org/organization/logo + distribution_account: + $ref: '#/components/schemas/DistributionAccount' + distribution_account_public_key: + type: string + description: DEPRECATED! Please refer to distribution_account.address instead. + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + timezone_utc_offset: + type: string + example: '+00:00' + is_approval_required: + type: boolean + description: Enables multi-user approval workflow for disbursements + example: true + sms_resend_interval: + type: integer + description: The amount of days that the SDP will wait to resend the invitation SMS to the receivers that have not registered. If `0`, that means the resending invitation SMS feature is disabled. + example: 5 + payment_cancellation_period_days: + type: integer + description: The amount of days that the SDP will wait to cancel a payment that is waiting for the receiver to register. If `0`, that means the payment cancellation feature is disabled. + example: 5 + privacy_policy_link: + type: string + description: The link to the organization privacy policy + example: https://stellar.org/privacy-policy + sms_registration_message_template: + type: string + description: 'The custom SMS message template set for the registration invite. The `default` message isn''t returned. In the message''s content it''s possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.RegistrationLink}} which is the link generated by SDP to send to the receiver (in case this is not present in the message, it''s automatically appended at the end).' + example: You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register. + otp_message_template: + type: string + description: 'The custom OTP message template set to send OTP code to the receiver complete the registration flow. The `default` message isn''t returned. In the message''s content it''s possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.OTP}} which is the OTP code to send to the receiver complete the registration flow (in case this is not present in the message, it''s automatically appended at the end).' + example: '{{.OTP}} is your {{.OrganizationName}} phone verification code.' + DistributionAccount: + required: + - status + - type + type: object + properties: + address: + type: string + description: The address of the distribution account, present when the account type is `STELLAR`. + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + circle_wallet_id: + type: string + description: The ID of the Circle wallet, present when the account type is `CIRCLE`. + example: '1000646072' + type: + type: string + description: The type of the distribution account. + example: DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + enum: + - DISTRIBUTION_ACCOUNT.STELLAR.ENV + - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT + status: + type: string + example: ACTIVE + enum: + - ACTIVE + - PENDING_USER_ACTIVATION + Balance: + type: object + properties: + asset_code: + type: string + description: The asset code of the balance in the Stellar network. + example: USDC + asset_issuer: + type: string + description: The asset issuer of the balance in the Stellar network. + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + amount: + type: string + description: The amount of the balance. + example: '100.00' + description: The balances of the organization's distribution account. Currently, this is only used for the Circle distribution accounts. + Pagination: + type: object + properties: + next: + type: string + example: '?page=3&page_limit=2' + prev: + type: string + example: '?page=1&page_limit=2' + pages: + type: integer + example: 8 + total: + type: integer + example: 16 + Payment: + type: object + properties: + id: + type: string + example: ddf22f55-3259-4822-a4e2-ce01334997f4 + amount: + type: string + description: The amount of the payment + example: '100.00' + stellar_transaction_id: + type: string + description: The ID of the transaction in the Stellar network. It can be used tio track the payment in the Stellar network using [Stellar Laboratory](https://laboratory.stellar.org/), or [StellarExpert](https://stellar.expert/). + example: 0b339d1c89d314186b8147c2af4c9a9ed5bbdbcd7ada8d138633907649b + circle_transfer_request_id: + type: string + description: The Circle transfer request ID. It is only present when the payment was made using Circle. + example: 74a68b6a-3f67-424b-b8b0-e593a19d7463 + stellar_operation_id: + type: string + status: + $ref: '#/components/schemas/PaymentStatus' + status_history: + $ref: '#/components/schemas/PaymentStatusHistory' + disbursement: + $ref: '#/components/schemas/DisbursementLite' + asset: + $ref: '#/components/schemas/Asset' + receiver_wallet: + $ref: '#/components/schemas/ReceiverWalletLite' + created_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + updated_at: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + PaymentPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/Payment' + PaymentStatus: + type: string + description: The status of the payment + enum: + - DRAFT + - READY + - PENDING + - PAUSED + - SUCCESS + - FAILED + PaymentStatusHistory: + type: array + description: An aggregated list of metadata objects containing the statuses and the timestamp of when these status changes occurred. + items: + $ref: '#/components/schemas/PaymentStatusHistoryEntry' + PaymentStatusHistoryEntry: + type: object + properties: + status: + $ref: '#/components/schemas/PaymentStatus' + status_message: + type: string + timestamp: + type: string + format: date-time + example: '2023-02-03T10:45:51Z' + PaymentCounters: + type: object + properties: + draft: + type: integer + format: int64 + example: 1 + ready: + type: integer + format: int64 + example: 2 + pending: + type: integer + format: int64 + example: 3 + paused: + type: integer + format: int64 + example: 1 + success: + type: integer + format: int64 + example: 5 + failed: + type: integer + format: int64 + example: 1 + total: + type: integer + format: int64 + example: 14 + PaymentAmountsByAsset: + type: object + properties: + asset_code: + type: string + example: USDC + payment_amounts: + $ref: '#/components/schemas/PaymentAmounts' + PaymentAmounts: + type: object + properties: + draft: + type: string + example: '100.00' + ready: + type: string + example: '200.00' + pending: + type: string + example: '300.00' + paused: + type: string + example: '100.00' + success: + type: string + example: '500.00' + failed: + type: string + example: '100.00' + average: + type: string + example: '100.00' + total: + type: string + example: '1400.00' + Profile: + type: object + properties: + first_name: + type: string + example: Jane + last_name: + type: string + example: Doe + email: + type: string + example: jdoe@mail.org + roles: + type: array + items: + type: string + organization_name: + type: string + example: + first_name: Jane + last_name: Doe + email: jdoe@mail.org + roles: + - developer + organization_name: Stellar Aid + Receiver: + type: object + properties: + id: + type: string + example: f83bb638-dda4-41e6-80c9-d03e6eec2aef + phone_number: + type: string + example: '+15552368475' + external_id: + type: string + example: usr12334 + email: + type: string + example: jdoe@mail.org + created_at: + type: string + example: '2023-02-03T10:45:51.000Z' + total_payments: + type: string + example: '2' + successful_payments: + type: string + example: '2' + failed_payments: + type: string + example: '0' + remaining_payments: + type: string + example: '0' + registered_wallets: + type: string + example: '1' + received_amounts: + type: array + items: + $ref: '#/components/schemas/Amount' + wallets: + type: array + items: + $ref: '#/components/schemas/ReceiverWallet' + ReceiverLite: + type: object + properties: + id: + type: string + example: 029e2ed0-feb6-4c40-8b47-0836a85741a2 + ReceiverPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/Receiver' + ReceiverWallet: + type: object + properties: + id: + type: string + example: 803031d4-1d04-4879-b6d9-dc5641f9988e + receiver: + $ref: '#/components/schemas/ReceiverLite' + wallet: + $ref: '#/components/schemas/WalletLite' + stellar_address: + type: string + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + stellar_memo: + type: string + stellar_memo_type: + type: string + created_at: + type: string + example: '2023-02-03T10:45:51.000Z' + updated_at: + type: string + example: '2023-02-03T10:45:51.000Z' + invited_at: + type: string + example: '2023-02-09T10:45:51.000Z' + last_sms_sent: + type: string + description: timestamp when the receiver last received an SMS about this wallet + example: '2023-02-10T10:45:51.000Z' + total_payments: + type: string + example: '2' + payments_received: + type: string + example: '2' + failed_payments: + type: string + example: '0' + remaining_payments: + type: string + example: '0' + received_amounts: + type: array + items: + $ref: '#/components/schemas/Amount' + status: + $ref: '#/components/schemas/ReceiversWalletStatus' + status_history: + type: array + items: + $ref: '#/components/schemas/ReceiversWalletStatusHistoryEntry' + ReceiverWalletLite: + type: object + properties: + id: + type: string + example: 803031d4-1d04-4879-b6d9-dc5641f9988e + receiver: + $ref: '#/components/schemas/ReceiverLite' + wallet: + $ref: '#/components/schemas/WalletLite' + stellar_address: + type: string + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + created_at: + type: string + example: '2023-02-03T10:45:51.000Z' + updated_at: + type: string + example: '2023-02-03T10:45:51.000Z' + status: + $ref: '#/components/schemas/ReceiversWalletStatus' + ReceiverWalletsCounters: + type: object + properties: + draft: + type: integer + format: int64 + example: 1 + ready: + type: integer + format: int64 + example: 1 + registered: + type: integer + format: int64 + example: 1 + flagged: + type: integer + format: int64 + example: 1 + total: + type: integer + format: int64 + example: 4 + ReceiversWalletStatus: + type: string + enum: + - DRAFT + - READY + - REGISTERED + - FLAGGED + ReceiversWalletStatusHistoryEntry: + type: object + properties: + status: + $ref: '#/components/schemas/ReceiversWalletStatus' + timestamp: + type: string + format: date-time + example: '2023-02-10T10:45:51Z' + Users: + type: array + items: + $ref: '#/components/schemas/User' + User: + required: + - email + - first_name + - id + - is_active + - last_name + - roles + type: object + properties: + id: + type: string + example: 1736bed3-7b92-4760-8ff2-51fb08ee079f + first_name: + type: string + example: John + last_name: + type: string + example: Doe + email: + type: string + roles: + type: array + items: + type: string + is_active: + type: boolean + example: + - id: 7a4c6555-1f73-49b3-a211-f95bd2b8ec90 + first_name: John + last_name: Doe + email: email@email.com + roles: + - developer + is_active: true + - id: 5f4df1dd-c84f-482a-84ad-541ffd46e75a + first_name: Jane + last_name: Doe + email: email@email.com + roles: + - financial_controller + is_active: false + VerificationField: + type: string + enum: + - DATE_OF_BIRTH + - PIN + - NATIONAL_ID_NUMBER + Wallet: + type: object + properties: + id: + type: string + example: 5ada9ed5-455a-4782-a0ee-160767e0deb1 + name: + type: string + example: Vibrant Assist + homepage: + type: string + example: https://vibrantapp.com + sep_10_client_domain: + type: string + example: api-dev.vibrantapp.com + deep_link_schema: + type: string + example: https://vibrantapp.com/sdp-dev + created_at: + type: string + format: date-time + example: '2023-07-31T20:50:45.648Z' + updated_at: + type: string + format: date-time + example: '2023-07-31T20:50:45.648Z' + WalletLite: + type: object + properties: + id: + type: string + example: 5ada9ed5-455a-4782-a0ee-160767e0deb1 + name: + type: string + example: Vibrant Assist + homepage: + type: string + example: https://vibrantapp.com + ReceiverRegistrationRequest: + type: object + properties: + phone_number: + type: string + description: Phone number used in registration + otp: + type: string + description: One-Time Password received for verification + verification: + type: string + description: Verification value provided by the user + verification_type: + type: string + description: Type of verification value + enum: + - DATE_OF_BIRTH + - PIN + - NATIONAL_ID_NUMBER + recaptcha_token: + type: string + description: Token received from Google reCAPTCHA + PatchReceiverRequest: + type: object + properties: + date_of_birth: + type: string + description: Date of birth of the receiver + pin: + type: string + description: Personal identification number of the receiver + national_id: + type: string + description: National ID of the receiver + email: + type: string + description: Email of the receiver + external_id: + type: string + description: External ID of the receiver + example: + date_of_birth: '1980-01-01' + pin: '1234' + national_id: '123456789' + email: john@example.com + external_id: external123 + Tenant: + type: object + properties: + id: + type: string + example: 1736bed3-7b92-4760-8ff2-51fb08ee079f + name: + type: string + description: The tenant name. It should match the pattern `^[a-z-]+$`. + example: bluecorp + base_url: + type: string + description: The SDP backend server's base URL. + example: https://bluecorp-backend.sdp.org + sdp_ui_base_url: + type: string + description: The SDP UI/dashboard Base URL. + example: https://bluecorp.sdp.org + status: + type: string + enum: + - TENANT_CREATED + - TENANT_PROVISIONED + - TENANT_ACTIVATED + - TENANT_DEACTIVATED + distribution_account_address: + type: string + description: The Stellar account address used for distributing funds. + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + distribution_account_type: + type: string + description: The Stellar account type used for distributing funds. + enum: + - DISTRIBUTION_ACCOUNT.STELLAR.ENV + - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT + distribution_account_status: + type: string + description: The status of the distribution account used for distributing funds. + enum: + - ACTIVE + - PENDING_USER_ACTIVATION + is_default: + type: boolean + description: Boolean flag that shows whether the tenant is the default or not. + default: false + created_at: + type: string + format: date-time + example: '2024-03-27T17:21:51Z' + updated_at: + type: string + format: date-time + example: '2024-03-27T17:21:51Z' + deleted_at: + type: string + description: The timestamp when the tenant was (soft) deleted. + format: date-time + example: '2024-03-27T17:21:51Z' + required: + - base_url + - created_at + - distribution_account_address + - distribution_account_status + - distribution_account_type + - id + - is_default + - name + - sdp_ui_base_url + - status + - updated_at + example: + id: 840dca45-d1df-44cd-83c1-65c04235c25f + name: redcorp + base_url: https://redcorp-backend.sdp.org + sdp_ui_base_url: https://redcorp.sdp.org + status: TENANT_PROVISIONED + distribution_account: GCQVDMPOEN3HHJJ64V42KUTONOXN7C6V2PSVPALEVJ7PIYOB6M3DJV7N + is_default: true + created_at: '2024-03-27T17:21:51.000Z' + updated_at: '2024-03-27T17:21:51.000Z' + Tenants: + type: array + items: + $ref: '#/components/schemas/Tenant' + responses: + UnauthorizedResponse: + description: Unauthorized + content: + '*/*': + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + application/json: + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + ForbiddenResponse: + description: Forbidden + content: + '*/*': + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + application/json: + example: + error: Forbidden + BadRequestResponse: + description: Bad Request + content: + '*/*': + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + NotFoundResponse: + description: Not Found + content: + '*/*': + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + application/json: + example: + error: Not found + extras: + status: 404 + message: Resource not found + securitySchemes: + BearerAuth: + type: apiKey + description: JWT used for authentication, signed with an ES256 private key. + name: Authorization + in: header +x-original-swagger-version: '2.0' diff --git a/openapi/stellar-disbursement-platform/bundled.yml b/openapi/stellar-disbursement-platform/bundled.yml deleted file mode 100644 index 7b86e3504..000000000 --- a/openapi/stellar-disbursement-platform/bundled.yml +++ /dev/null @@ -1,3136 +0,0 @@ -swagger: '2.0' -info: - title: Stellar Disbursement Platform API - version: '' - description: The Stellar Disbursement Platform (SDP) is a tool built for organizations to make bulk payments to a group of recipients over the Stellar network. You can read more about using the SDP [here](https://developers.stellar.org/docs/category/use-the-stellar-disbursement-platform). -tags: - - name: Authentication - description: Authentication endpoints control the login, token refresh, and password management processes for SDP users. - - name: Disbursements - description: Endpoints related to disbursements. A disbursement is a group of payments sent to multiple individuals at once. An SDP user with the appropriate role triggers a new disbursement through the SDP dashboard by uploading a list of receivers and amounts. When the receiver has linked their wallet to the SDP, the payment automatically begins. SDP users can track their disbursements in real-time through the SDP dashboard. Each disbursement must have a unique name defined by the organization. - - name: Payments - description: Endpoints related to payments. An SDP payment is an individual payment from an organization to a receiver. Each payment is part of a disbursement and occurs on the Stellar network. Granular payment status is stored in the SDP database and can be viewed in real-time on the SDP dashboard. There is no POST endpoint because submitting payments to the Stellar network is handled by the Transaction Submission Service (TSS). - - name: Receivers - description: |- - Endpoints related to receivers. A receiver is an individual receiving a payment in a disbursement. The receiver is tracked by phone number to reduce the need for personally identifiable information. Each receiver must be unique within the disbursement. - - Each receiver will have at least one wallet associated with them. The wallet public key will remain null until the receiver registers with a wallet provider and links the wallet to the SDP through SEP-24. Receivers must verify their identity through that process, which requires the SDP to store verification information on receivers like date of birth, national ID number, or personal PIN. This information can be updated by the organization through the receiver endpoints. - - name: Statistics - description: Statistics endpoints return general aggregated data per organization, as well as disbursement-specific metrics. SDP users can use this data to monitor their disbursements over time. - - name: Registration - description: |- - The registration endpoints guide the process for a receiver to verify their identity and link their wallet address to an SDP. - - The registration process only needs to happen once per receiver to link their wallet. Only SDP-compatible wallet providers can facilitate the registration process. These endpoints must be supported and hit by the wallet providers after the receiver gets the initial SMS invite. After the wallet address is successfully linked, the payment automatically begins. - - The SDP<>wallet registration process uses SEP-10, SEP-24, and deep links. Please see the SDP [developer docs](https://developers.stellar.org/docs/category/use-the-stellar-disbursement-platform) for a full set of instructions for wallet providers to become SDP-compatible. - - name: Profile - description: 'Profiles endpoints manage the process of getting and updating individual profile information. Profile information is set when the account is created and can be updated by the user on the SDP dashboard Profile page. Note: profiles never refer to receivers of funds.' - - name: Organization - description: Organization endpoints manage the process of getting and updating organizational profile information. The organization’s profile has basic information set at the time of SDP deployment. It can be modified by the Owner. Organizations can also manage their preferences, like which assets to use, through these endpoints. - - name: Users - description: The users endpoints facilitate the creation of new SDP users–including setting the appropriate role, sending an email invitation, and activating a user–and managing roles. - - name: Admin - description: The Admin API oversees the management of tenants within the system, facilitating tasks such as provisioning new tenants, updating their information, and retrieving tenant data. -paths: - /login: - post: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - schema: - type: object - properties: - token: - type: string - example: - token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Invalid credentials - extras: - status: 400 - message: Invalid username or password - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Invalid credentials - extras: - status: 400 - message: Invalid username or password - summary: Log In - operationId: Log In - description: 'Allows credentialed SDP users to log in to the SDP dashboard with a password. Note: all passwords must be at least 8 characters long and a combination of uppercase letters, lowercase letters, numbers, and symbols.' - tags: - - Authentication - parameters: - - name: body - in: body - schema: - type: object - properties: - email: - type: string - password: - type: string - recaptcha_token: - type: string - description: Token for reCAPTCHA validation. ReCAPTCHA token is required unless the `DISABLE_RECAPTCHA` configuration is set to true. - required: - - email - - password - example: - email: johndoe@mail.com - password: mysecret - produces: - - application/json - /refresh-token: - post: - responses: - '200': - description: Returns a new access token - headers: {} - examples: - application/json: - token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - schema: - type: object - properties: - token: - type: string - example: - token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - summary: Refresh Token - operationId: Refresh Token - description: A user’s token expires after 15 minutes. This endpoint handles refreshing the user’s token without disrupting their experience. It is triggered within the 30-second window before the token expires. - tags: - - Authentication - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - /mfa: - post: - summary: Provide Multi-Factor Authentication - description: Governs the multi-factor authentication process for SDP user login, including the ability to remember the device so MFA is not always required. - operationId: authenticateMFA - tags: - - Authentication - parameters: - - in: body - name: body - description: MFA request data - required: true - schema: - type: object - properties: - mfa_code: - type: string - description: Multi-factor authentication code - remember_me: - type: boolean - description: Boolean flag to remember the user - recaptcha_token: - type: string - description: Token for reCAPTCHA validation. ReCAPTCHA token is required unless the `DISABLE_RECAPTCHA` configuration is set to true. - required: - - mfa_code - - in: header - name: Device-ID - type: string - required: false - description: Identifier of the device - responses: - '200': - description: Successful authentication - schema: - type: object - properties: - token: - type: string - description: Authentication token - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - produces: - - application/json - /forgot-password: - post: - summary: Forgot Password - description: Sends an email with a token to an SDP user who has gone through the Forgot Password process. - operationId: forgotPassword - tags: - - Authentication - parameters: - - in: body - name: body - description: Forgot password request data - required: true - schema: - type: object - properties: - email: - type: string - format: email - description: Email of the user - recaptcha_token: - type: string - description: Token for reCAPTCHA validation - required: - - email - responses: - '200': - description: Forgot password email sent successfully - schema: - $ref: '#/definitions/MessageResponse' - '400': - $ref: '#/responses/BadRequestResponse' - /reset-password: - post: - summary: Reset Rassword - description: Allows an SDP user who has gone through the Forgot Password process to set their new password with a token sent via email. - operationId: resetPassword - tags: - - Authentication - parameters: - - in: body - name: body - description: Reset password request data - required: true - schema: - type: object - properties: - password: - type: string - description: New password for the user - reset_token: - type: string - description: Token used to identify a valid password reset request - required: - - password - - reset_token - responses: - '200': - description: Password reset successfully - '400': - $ref: '#/responses/BadRequestResponse' - produces: - - application/json - /disbursements: - get: - responses: - '200': - description: A list of Disbursement details - schema: - $ref: '#/definitions/DisbursementPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: List All Disbursements - operationId: List All Disbursements - description: Fetches all disbursements the organization has created. This endpoint supports pagination. The response includes basic aggregations on payments within the disbursement. - tags: - - Disbursements - parameters: - - name: page - in: query - description: The page requested. - required: false - type: number - default: 1 - - name: page_limit - in: query - description: Define how many results will be returned in the response. - required: false - type: number - default: 20 - - name: q - in: query - description: A search term used to query through the disbursement names. - required: false - type: string - - name: status - in: query - description: Exact match on the status of the disbursement. - required: false - x-example: DRAFT - type: string - enum: - - DRAFT - - READY - - STARTED - - PAUSED - - COMPLETED - - name: created_at_after - in: query - description: 'Only return disbursements that are created after this date. Format: YYYY-MM-DD' - required: false - x-example: '2006-01-02' - type: string - - name: created_at_before - in: query - description: 'Only return disbursements that are created before this date. Format: YYYY-MM-DD' - required: false - x-example: '2006-01-02' - type: string - - name: sort - in: query - description: Field used to sort disbursements - required: false - type: string - default: created_at - enum: - - name - - created_at - - name: direction - in: query - description: Direction for sorting disbursements. - required: false - type: string - default: asc - enum: - - asc - - desc - produces: - - application/json - security: - - BearerAuth: [] - post: - responses: - '201': - description: A new disbursement - schema: - $ref: '#/definitions/Disbursement' - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Bad request - extras: - status: 400 - message: Invalid country code provided - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Bad request - extras: - status: 400 - message: Invalid country code provided - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Create Disbursement - operationId: Create Disbursement - description: 'Creates a new disbursement in ```draft``` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from ```draft``` to ```ready```.' - tags: - - Disbursements - parameters: - - name: body - in: body - schema: - type: object - properties: - name: - type: string - wallet_id: - type: string - asset_id: - type: string - country_code: - type: string - description: Three-character ISO 3166 code - example: - name: My New Disbursement name - wallet_id: e2de8544-b7e2-40a9-ad40-411f70d5c4bf - asset_id: d227a68c-2f40-11ee-be56-0242ac120002 - country_code: UKR - produces: - - application/json - security: - - BearerAuth: [] - /disbursements/{id}: - get: - responses: - '200': - description: Disbursement details - schema: - $ref: '#/definitions/Disbursement' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Retrieve a Disbursement - operationId: Retrieve a Disbursement - description: Fetches information on a specific disbursement by ```id```. - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the `Disbursement`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /disbursements/{id}/receivers: - get: - responses: - '200': - description: A list of Disbursement Receivers - schema: - $ref: '#/definitions/DisbursementReceiverPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: List All Disbursement Receivers - operationId: List All Disbursement Receivers - description: Fetches a list of receivers within a specific disbursement using the disbursement ```id```. This endpoint supports pagination. - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the Disbursement - required: true - type: string - - name: page - in: query - description: The page number to fetch. - required: false - type: number - - name: page_limit - in: query - description: The number of records to return per page. - required: false - type: number - produces: - - application/json - security: - - BearerAuth: [] - /disbursements/{id}/instructions: - post: - responses: - '201': - description: Created - headers: {} - examples: - application/json: - message: File uploaded succesfully - schema: - type: object - properties: - message: - type: string - example: - message: File uploaded succesfully - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Invalid file format *.xyz - extras: - foo: bar - message: Not authorized - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - foo: - type: string - message: - type: string - example: - error: Invalid file format *.xyz - extras: - foo: bar - message: Not authorized - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Upload Disbursement Instructions - operationId: Upload Disbursement Instructions - description: Adds a file containing a list of receivers to a ```draft``` disbursement. This step is required before a disbursement can begin. The file must be a CSV and has a standard format that can be found at ```dev/sample/sample-disbursement.csv```. The operation is idempotent, guaranteed by deleting and recreating the disbursement attributes when this endpoint is called. - consumes: - - multipart/form-data - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the Disbursement - required: true - type: string - - name: file - in: formData - description: 'Disbursement instructions file to upload. The CSV file should be in the following format: `phone,id,amount,verification`' - required: true - type: file - produces: - - application/json - security: - - BearerAuth: [] - get: - responses: - '200': - description: Disbursement CSV file - headers: - Content-Disposition: - type: string - description: The filename of the returned CSV file. - Content-Type: - type: string - description: text/csv - examples: - text/csv: '' - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Invalid request - extras: - foo: bar - message: Invalid request parameters - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - foo: - type: string - message: - type: string - example: - error: Invalid request - extras: - foo: bar - message: Invalid request parameters - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Download Disbursement Instructions - operationId: Download Disbursement Instructions - description: Allows an SDP user to download the raw CSV file that was uploaded when creating the disbursement. This will only return results after instructions have been attached to a draft disbursement. - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the Disbursement - required: true - type: string - produces: - - text/csv - security: - - BearerAuth: [] - /disbursements/{id}/status: - patch: - responses: - '200': - description: Message Response - schema: - $ref: '#/definitions/MessageResponse' - examples: - application/json: - message: Disbursement started - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Bad request - extras: - status: 400 - message: Disbursement is not ready to be started - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Bad request - extras: - status: 400 - message: Disbursement is not ready to be started - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Update a Disbursement Status - operationId: Update a Disbursement Status - description: Updates the status of a disbursement according to the state machine. The disbursement must move from ```draft``` to ```ready``` in order to start the disbursement and trigger payments. Payments will start as soon as this endpoint is hit. A disbursement can also be moved into ```paused``` state by an SDP user to prevent further payments from going out and restarted when they are ready. - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the disbursement - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /payments: - get: - responses: - '200': - description: A paginated list of payments - schema: - $ref: '#/definitions/PaymentPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: List All Payments - operationId: List All Payments - description: Returns all individual payments matching the request criteria. This endpoint supports pagination and filtering on payment status, receiver ID, and timestamp. Each payment has details on the transaction itself, receiver, disbursement, asset, status history, and blockchain information. - tags: - - Payments - parameters: - - name: page - in: query - description: The page requested. - required: false - type: number - default: 1 - - name: page_limit - in: query - description: Define how many results will be returned in the response. - required: false - type: number - default: 20 - - name: status - in: query - description: Exact match on the status of the payment. - required: false - x-example: DRAFT - type: string - enum: - - DRAFT - - READY - - PENDING - - PAUSED - - SUCCESS - - FAILED - - name: receiver_id - in: query - description: UUID that represents a receiver in the database - required: false - x-example: b6b667ad-6cc2-46cf-9be7-561daace7d48 - type: string - - name: created_at_after - in: query - description: 'Only return payments that are created after this date. Format: YYYY-MM-DD' - required: false - x-example: '2006-01-02' - type: string - - name: created_at_before - in: query - description: 'Only return payments that are created before this date. Format: YYYY-MM-DD' - required: false - x-example: '2006-01-02' - type: string - - name: sort - in: query - description: Field used to sort payments - required: false - type: string - default: created_at - enum: - - created_at - - name: direction - in: query - description: Direction for sorting payments. - required: false - type: string - default: asc - enum: - - asc - - desc - produces: - - application/json - security: - - BearerAuth: [] - /payments/{id}: - get: - responses: - '200': - description: Payment details - schema: - $ref: '#/definitions/Payment' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Payment not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Payment not found - summary: Retrieve a Payment - operationId: Retrieve a Payment - description: Fetches detailed information on a specific payment by ```id```. - tags: - - Payments - parameters: - - name: id - in: path - description: ID of the `Payment`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /receivers: - get: - responses: - '200': - description: A paginated list of Receiver details - schema: - $ref: '#/definitions/ReceiverPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: List All Receivers - operationId: List All Receivers - description: Returns all receivers matching the request criteria. This endpoint supports pagination and filtering on receiver status, receiver attributes, and timestamp. Each payment has details on the receiver, high-level payments metrics, and wallets associated with the receiver. - tags: - - Receivers - parameters: - - name: page - in: query - description: The page requested. - required: false - type: number - default: 1 - - name: page_limit - in: query - description: Define how many results will be returned in the response. - required: false - type: number - default: 20 - - name: q - in: query - description: A search term used to query through the receiver phone_number, email, and ID. - required: false - type: string - - name: status - in: query - description: Exact match on the status of the receiver wallet. - required: false - x-example: DRAFT - type: string - enum: - - DRAFT - - READY - - REGISTERED - - FLAGGED - - name: created_at_after - in: query - description: 'Only return receivers that are created after this date. Format: YYYY-MM-DD' - required: false - x-example: '2006-01-02' - type: string - - name: created_at_before - in: query - description: 'Only return receivers that are created before this date. Format: YYYY-MM-DD' - required: false - x-example: '2006-01-02' - type: string - - name: sort - in: query - description: Field used to sort receivers - required: false - type: string - default: created_at - enum: - - created_at - - name: direction - in: query - description: Direction for sorting receivers. - required: false - type: string - default: asc - enum: - - asc - - desc - produces: - - application/json - security: - - BearerAuth: [] - /receivers/{id}: - get: - responses: - '200': - description: Receiver Details - schema: - $ref: '#/definitions/Receiver' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - $ref: '#/responses/NotFoundResponse' - summary: Retrieve a Receiver - operationId: Retrieve a Receiver - description: Fetches detailed information on a specific receiver by ```id```, including all associated wallets. - tags: - - Receivers - parameters: - - name: id - in: path - description: ID of the `Receiver`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: Updated Receiver Details - schema: - $ref: '#/definitions/Receiver' - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - $ref: '#/responses/NotFoundResponse' - summary: Update a Receiver - operationId: Update a Receiver - description: This endpoint allows an organization to add and update information on the receiver, including email address, external ID, date of birth, personal PIN, and national ID number. The response includes all information on the receiver. - tags: - - Receivers - parameters: - - name: id - in: path - description: ID of the `Receiver`. - required: true - type: string - - name: body - in: body - description: List of fields to patch for the receiver - required: true - schema: - $ref: '#/definitions/PatchReceiverRequest' - produces: - - application/json - security: - - BearerAuth: [] - /statistics: - get: - responses: - '200': - description: General Statistics response - schema: - $ref: '#/definitions/GeneralStatistics' - '401': - $ref: '#/responses/UnauthorizedResponse' - summary: Retrieve All Statistics - operationId: Retrieve All Statistics - description: Fetches all metrics on all disbursements the organization has created. The response includes basic aggregations on payments, receivers, receiver wallets, and assets. - tags: - - Statistics - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - /statistics/disbursements/{id}: - get: - responses: - '200': - description: Returns statistics for disbursement - schema: - $ref: '#/definitions/DisbursementsStatistics' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Retrieve Disbursement Statistics - operationId: Retrieve Disbursement Statistics - description: Fetches metrics on a specific disbursement by ```id```. - tags: - - Statistics - parameters: - - name: id - in: path - description: ID of the `Disbursement`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /wallet-registration/start: - get: - summary: Start Wallet Registration - operationId: Start Wallet Registration - description: This is the endpoint the browser reaches with the first token so that the receiver can confirm their verification information through a webflow. Requires a valid SEP-24 token in the request. - tags: - - Registration - produces: - - text/html - parameters: - - name: token - in: query - description: The SEP-24 token used for authentication - required: true - type: string - - name: transaction_id - in: query - description: The transaction id associated with the SEP-24 token - required: true - type: string - responses: - '200': - description: Token is valid and the webpage will be loaded normally. - schema: - type: string - description: HTML page content - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - /wallet-registration/otp: - post: - summary: Send One-Time Passcode - operationId: Send One-Time Passcode - description: This endpoint generates a 6-digit OTP and sends it via SMS to the phone number provided in the request body (after checking that the phone number matches a receiver phone number in the SDP). A valid SEP-24 token should be included in the Authorization header of the request. - tags: - - Registration - consumes: - - application/json - produces: - - application/json - parameters: - - name: body - in: body - description: Object containing phone number - required: true - schema: - type: object - properties: - phone_number: - type: string - description: Phone number to which the OTP will be sent - recaptcha_token: - type: string - description: Token for reCAPTCHA validation - required: - - phone_number - - recaptcha_token - - name: Authorization - in: header - description: 'SEP-24 token for authorization (Format: ''Bearer {token}'')' - required: true - type: string - responses: - '200': - description: OTP sent successfully - schema: - $ref: '#/definitions/MessageResponse' - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '429': - description: An OTP was sent to the given user recently and hasn't expired yet. Only after expired it will be sent to the user again. - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - code: - type: string - details: - type: string - /wallet-registration/verification: - post: - summary: Verify Receiver Registration - operationId: Verify Receiver Registration - description: This endpoint verifies the receiver's registration by validating the OTP and other verification values provided in the request body. A valid SEP-24 token should be included in the Authorization header of the request. - tags: - - Registration - consumes: - - application/json - produces: - - application/json - parameters: - - name: body - in: body - description: Verification data including phone number, OTP, verification value, and reCAPTCHA token - required: true - schema: - $ref: '#/definitions/ReceiverRegistrationRequest' - - name: Authorization - in: header - description: 'SEP-24 token for authorization (Format: ''Bearer {token}'')' - required: true - type: string - responses: - '200': - description: Verification successful - schema: - type: object - properties: - message: - type: string - example: ok - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - /.well-known/stellar.toml: - get: - responses: - '200': - description: Token is valid and the webpage will be loaded normally. - headers: {} - examples: - text/toml: | - ACCOUNTS=["GBC2HVWFIFN7WJHFORVBCDKJORXXXXXXXXXXXXXXXXXXXXXXXX", "GDA34JZ26FZY64XCSY46CUNSHLX762LHJXQXXXXXXXXXXXXXXXXXXXXXXXX"] SIGNING_KEY="GDA34JZ26FZY64XCSY46XXXXXXXXXXXXXXXXXXXXXXXX" NETWORK_PASSPHRASE="Test SDF Network ; September 2015" HORIZON_URL="https://horizon-testnet.stellar.org" WEB_AUTH_ENDPOINT="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/auth" TRANSFER_SERVER_SEP0024="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/sep24" - [[DOCUMENTATION]] ORG_NAME="Stellar Aid" - [[CURRENCIES]] code = "EUROC" issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" is_asset_anchored = true anchor_asset_type = "fiat" status = "live" desc = "EUROC" - [[CURRENCIES]] code = "USDC" issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" is_asset_anchored = true anchor_asset_type = "fiat" status = "live" desc = "USDC" - summary: Retrieve Stellar Info File - operationId: Retrieve Stellar Info File - description: Allows the wallet to fetch the SEP-10 server url, SEP-10 signing public key and SEP-24 server url. - tags: - - Registration - parameters: [] - produces: - - text/toml - /WEB_AUTH_ENDPOINT: - get: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== - network_passphrase: Test SDF Network ; September 2015 - schema: - type: object - properties: - transaction: - type: string - network_passphrase: - type: string - example: - transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== - network_passphrase: Test SDF Network ; September 2015 - '400': - description: If some information was missing or invalid. - headers: {} - examples: - application/json: - error: Bad request. - extras: - account: account cannot be empty - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - account: - type: string - example: - error: Bad request. - extras: - account: account cannot be empty - summary: Request Challenge Transaction - operationId: Request Challenge Transaction - description: Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the ```WEB_AUTH_ENDPOINT``` variable. - tags: - - Registration - parameters: - - name: account - in: query - description: The Client Account, which can be a stellar account (G...) or muxed account (M...) that the Client wishes to authenticate with the Server.. - required: true - type: string - - name: memo - in: query - description: The memo to attach to the challenge transaction. Only permitted if a Stellar account (G...) is used. The memo must be of type id. Other memo types are not supported. - required: false - type: string - - name: client_domain - in: query - description: a Client Domain. Need to be supplied by all Clients/Wallets. - required: true - type: string - produces: - - application/json - post: - responses: - '200': - description: SEP-10 handshake was successful. - headers: {} - examples: - application/json: - token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 - schema: - type: object - properties: - token: - type: string - example: - token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 - '401': - description: Unauthorized - headers: {} - examples: - application/json: - error: The provided transaction is not valid - schema: - type: object - properties: - error: - type: string - example: - error: The provided transaction is not valid - summary: Provide Signed Challenge Transaction - operationId: Provide Signed Challenge Transaction - description: Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the ```WEB_AUTH_ENDPOINT``` variable. - tags: - - Registration - parameters: - - name: body - in: body - schema: - type: object - properties: - transaction: - type: string - example: - transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAvheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3AsiYk3UAAABArIrkvqmA0V9lIZcVyCUdja6CiwkPwsV8BfI4CZOyR1Oq7ysvNJWwY0G42dpxN9OP1qz4dum8apG2hqvxVWjkDQ== - produces: - - application/json - /TRANSFER_SERVER_SEP0024/transactions/deposit/interactive: - post: - summary: Request Registration URL - description: | - The deposit endpoint allows a wallet to get deposit information from an anchor, so a user has all the information needed to initiate a deposit. - It also lets the anchor specify additional information that the user must submit interactively via a popup or embedded browser window to be able to deposit. Please check the detailed documentation [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2). - externalDocs: - description: Find more info here - url: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2 - parameters: [] - tags: - - Registration - responses: - '200': - description: An anchor requires the user to fill out information on a webpage hosted by the anchor. - schema: - type: object - properties: - type: - type: string - description: Always set to interactive_customer_info_needed. - example: interactive_customer_info_needed - url: - type: string - description: URL hosted by the anchor. The wallet should show this URL to the user as a popup. - example: https://api.example.com/kycflow?account=GACW7NONV43MZIFHCOKCQJAKSJSISSICFVUJ2C6EZIW5773OU3HD64VI - id: - type: string - description: The anchor's internal ID for this deposit / withdrawal request. The wallet will use this ID to query the /transaction endpoint to check status of the request. - example: 82fhs729f63dh0v4 - /profile: - get: - responses: - '200': - description: Returns user profile - schema: - $ref: '#/definitions/Profile' - summary: Get Profile - operationId: Get Profile - description: Fetches the individual information of the logged in user to populate the Profile page. - tags: - - Profile - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - message: user profile updated successfully - schema: - $ref: '#/definitions/MessageResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update User Profile - operationId: Update User Profile - description: 'Updates the profile details of the logged in user, including changing password for authenticated/logged in users. Note: all fields are optional but at least one should be sent in the request.' - tags: - - Profile - parameters: - - name: body - in: body - schema: - type: object - properties: - first_name: - type: string - last_name: - type: string - email: - type: string - password: - type: string - example: - first_name: FirstName - last_name: LastName - email: email@email.com - password: mysecret - produces: - - application/json - security: - - BearerAuth: [] - /organization: - get: - responses: - '200': - description: Returns organization details - schema: - $ref: '#/definitions/Organization' - '401': - $ref: '#/responses/UnauthorizedResponse' - summary: Get Organization Info - operationId: Get Organization Info - description: This endpoint returns the organization's info. It is used in many places across the UI. It returns the name in the navbar and the public key of the organization’s distribution account. - tags: - - Organization - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: OK - examples: - application/json: - message: organization profile updated successfully - schema: - $ref: '#/definitions/MessageResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update Organization Profile - operationId: Update Organization Profile - description: 'Updates the organization profile details. Only account owners have permission to do this. Note: both fields are optional but at least one should be sent in the request. It is not necessary to set the header Content-Type for this request. It is set automatically by the HTTP client.' - tags: - - Organization - consumes: - - multipart/form-data - produces: - - application/json - parameters: - - in: formData - name: logo - type: file - description: The logo of the organization, file type must be png or jpeg. - - in: formData - name: data - type: string - format: json - description: | - A JSON string that contains the details to update. Contains the following keys: `organization_name` (string): the new name of the organization, `timezone_utc_offset` (string): the new timezone offset of the organization, `is_approval_required` (boolean): whether the approval workflow is enabled or not. `sms_registration_message_template` (string): the SMS message template sent to the receivers inviting them to registration. Sending this field empty sets the `default` value for it. `otp_message_template` (string): the SMS message template sent to the receivers sending the OTP to complete the registration flow. Sending this field empty sets the `default` value for it. For example: '{"organization_name": "NewOrgName", "timezone_utc_offset": "+02:00", "is_approval_required": true, "sms_registration_message_template": "You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register.", "otp_message_template": "{{.OTP}} is your {{.OrganizationName}} phone verification code."}' - security: - - BearerAuth: [] - /organization/logo: - get: - summary: Retrieve Organization Logo - description: Retrieves the logo of the organization for display in the UI navbar. - operationId: GetOrganizationLogo - tags: - - Organization - produces: - - application/octet-stream - responses: - '200': - description: OK - schema: - type: string - format: binary - /organization/circle-config: - patch: - summary: Circle Account Setup - description: 'Updates the Circle configuration for the organization. Only account owners have permission to do this. Note: in the first time configuration, all fields are mandatory, but after it is been configured at least once, you can replace a single field at a time.' - operationId: PatchOrganizationCircle - tags: - - Organization - - Circle - consumes: - - application/json - produces: - - application/json - parameters: - - in: body - name: body - description: Circle configuration to be updated - required: true - schema: - properties: - api_key: - type: string - description: The Circle API key with permissions to POST & GET transfers - wallet_id: - type: string - description: The ID of the Circle walet from where the funds will be sent - responses: - '200': - description: Circle configuration updated successfully - schema: - type: object - properties: - message: - type: string - example: Circle configuration updated - '400': - $ref: '#/responses/BadRequestResponse' - security: - - BearerAuth: [] - /balances: - get: - description: ATTENTION, this endpoint is only enabled when the tenant distribution account type is `CIRCLE`. - summary: Get Organization (Circle) Balances - operationId: Get Organization (Circle) Balances - responses: - '200': - description: Returns the organization's Circle balances - schema: - type: object - properties: - account: - description: The organization's distribution account - $ref: '#/definitions/DistributionAccount' - balances: - type: array - description: The organization's Circle balances - items: - $ref: '#/definitions/Balance' - required: - - account - - balances - '400': - description: Bad request, not supported when the distribution account is not of the CIRCLE type. - schema: - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - tags: - - Balances - produces: - - application/json - security: - - BearerAuth: [] - /countries: - get: - summary: Get All Countries - description: Fetches the list of available countries to populate the dropdown box in the New Disbursement flow. The default list reflects geographic coverage of SDP-compatible wallet providers. - tags: - - Organization - responses: - '200': - description: A list of countries - schema: - type: array - items: - $ref: '#/definitions/Country' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - produces: - - application/json - security: - - BearerAuth: [] - /assets: - get: - summary: Get All Assets - description: 'Fetches the list of available assets to populate the dropdown box in the New Disbursement flow. Note: the organization must hold a balance in a particular asset to use it in a disbursement.' - tags: - - Organization - responses: - '200': - description: A list of assets - schema: - type: array - items: - $ref: '#/definitions/Asset' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - produces: - - application/json - security: - - BearerAuth: [] - post: - summary: Create Asset - description: 'This endpoint is used to create a new asset that can be used in a Disbursement. Note: the organization must hold a balance in a particular asset to use it in a disbursement.' - consumes: - - application/json - produces: - - application/json - tags: - - Organization - parameters: - - in: body - name: body - description: Asset to be created - required: true - schema: - type: object - properties: - code: - type: string - description: The asset code - example: USDC - issuer: - type: string - description: The issuer - example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 - required: - - code - - issuer - responses: - '201': - description: Asset created successfully - '400': - description: Bad request, invalid request body or the provided code/issuer is invalid. - security: - - BearerAuth: [] - /assets/{id}: - delete: - summary: Delete Asset - description: This endpoint is used to soft delete an asset. - produces: - - application/json - tags: - - Organization - parameters: - - name: id - in: path - description: ID of the asset to delete - required: true - type: string - responses: - '200': - description: Asset deleted successfully - '204': - description: Asset already deleted - '404': - description: Asset not found - security: - - BearerAuth: [] - /wallets: - get: - summary: Get All Wallets - description: Fetches the list of available wallet providers to populate the dropdown box in the New Disbursement flow. The organization should coordinate with the wallet provider before selecting a particular wallet provider for a disbursement. The initial list reflects all SDP-compatible wallets. - tags: - - Organization - responses: - '200': - description: A list of wallets - schema: - type: array - items: - $ref: '#/definitions/Wallet' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - produces: - - application/json - security: - - BearerAuth: [] - /users: - get: - responses: - '200': - description: Returns a paginated list of User Details - schema: - $ref: '#/definitions/Users' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Get All Users - operationId: Get All Users - description: Fetches all SDP users within the organization, whether they are active yet or not. - tags: - - Users - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - post: - responses: - '201': - description: Created - schema: - $ref: '#/definitions/User' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Create User - operationId: Create User - description: This endpoint creates a new SDP user as the result of an SDP owner adding their information in the UI. It also handles sending the invite email. - tags: - - Users - parameters: - - name: body - in: body - schema: - type: object - properties: - first_name: - type: string - last_name: - type: string - roles: - type: array - items: - type: string - email: - type: string - example: - first_name: John - last_name: Doe - roles: - - business - email: email@email.com - produces: - - application/json - security: - - BearerAuth: [] - /users/activation: - patch: - responses: - '200': - description: Created - examples: - application/json: - message: user activation was updated successfully - schema: - $ref: '#/definitions/User' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update User Activation Status - operationId: Update User Activation Status - description: Updates the SDP user’s activation status. This endpoint is primarily used to move a user into active status when they accept the invite to join an SDP organization account and create a password. - tags: - - Users - parameters: - - name: body - in: body - schema: - type: object - properties: - user_id: - type: string - is_active: - type: boolean - example: - user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd - is_active: false - produces: - - application/json - security: - - BearerAuth: [] - /users/roles: - get: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - roles: - - developer - - financial_controller - - business - - owner - schema: - type: object - properties: - roles: - type: array - items: - type: string - example: - roles: - - developer - - financial_controller - - business - - owner - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Get All Roles - operationId: Get All Roles - description: Fetches available SDP roles, such as owner, financial controller, business user, and developer. - tags: - - Users - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - message: user roles were updated successfully - schema: - type: object - properties: - message: - type: string - example: - message: user roles were updated successfully - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update User Role - operationId: Update User Role - description: Updates an SDP user’s role by ```user_ID```. - tags: - - Users - parameters: - - name: body - in: body - schema: - type: object - properties: - user_id: - type: string - roles: - type: array - items: - type: string - example: - user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd - roles: - - developer - produces: - - application/json - security: - - BearerAuth: [] - /tenants: - get: - summary: Get All Tenants - responses: - '200': - description: A list of provisioned tenants with their configurations - schema: - $ref: '#/definitions/Tenants' - '401': - $ref: '#/responses/UnauthorizedResponse' - operationId: Get All Tenants - tags: - - Admin - parameters: [] - produces: - - application/json - security: - - BasicAuth: [] - post: - summary: Create Tenant - responses: - '201': - description: Provision a new tenant - schema: - $ref: '#/definitions/Tenant' - '401': - $ref: '#/responses/UnauthorizedResponse' - operationId: Create Tenant - tags: - - Admin - parameters: - - name: body - in: body - schema: - type: object - properties: - name: - type: string - description: The tenant name. It should match the pattern `^[a-z-]+$` - distribution_account_type: - type: string - description: The distribution account type of the tenant. - enum: - - DISTRIBUTION_ACCOUNT.STELLAR.ENV - - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT - owner_email: - type: string - description: The owner user e-mail address - owner_first_name: - type: string - description: The owner user first name - owner_last_name: - type: string - description: The owner user last name - organization_name: - type: string - description: The organization name - base_url: - type: string - description: The SDP backend server's base URL. If this field is not provided, the SDP will generate one based on the host `BASE_URL` configuration, and the tenant name. - sdp_ui_base_url: - type: string - description: The SDP UI/dashboard Base URL. If this field is not provided, the SDP will generate one based on the host `SDP_UI_BASE_URL` configuration, and the tenant name. - example: - name: redcorp - distribution_account_type: DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - owner_email: owner@redcorp.org - owner_first_name: Owner - owner_last_name: Last - organization_name: Red Corp - base_url: https://redcorp-backend.sdp.org - sdp_ui_base_url: https://redcorp.sdp.org - required: - - name - - distribution_account_type - - owner_email - - owner_first_name - - owner_last_name - - organization_name - produces: - - application/json - security: - - BasicAuth: [] - /tenants/{arg}: - get: - summary: Retrieve a Tenant - responses: - '200': - description: Tenant details - schema: - $ref: '#/definitions/Tenant' - '401': - $ref: '#/responses/UnauthorizedResponse' - '404': - $ref: '#/responses/NotFoundResponse' - operationId: Retrieve a Tenant - tags: - - Admin - parameters: - - name: arg - in: path - description: ID or Name of the `Tenant`. - required: true - type: string - produces: - - application/json - security: - - BasicAuth: [] - /tenants/{id}: - delete: - summary: Soft delete a Tenant - responses: - '200': - description: Deleted Tenant details, with a non-empty `deleted_at` field - schema: - $ref: '#/definitions/Tenant' - '304': - description: The tenant was already deleted before this request. - schema: - $ref: '#/definitions/Tenant' - '400': - description: Bad request, when the tenant is not elligible to be deleted. For example, when the tenant is the default tenant or when it has not been patched with the deactivated status. - schema: - $ref: '#/responses/BadRequestResponse' - '404': - $ref: '#/responses/NotFoundResponse' - operationId: Soft delete a Tenant - tags: - - Admin - parameters: - - name: id - in: path - description: ID of the `Tenant`. - required: true - type: string - produces: - - application/json - security: - - BasicAuth: [] - patch: - responses: - '200': - description: Updated Tenant details - schema: - $ref: '#/definitions/Tenant' - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '404': - $ref: '#/responses/NotFoundResponse' - summary: Update a Tenant - operationId: Update a Tenant - description: This endpoint updates the Tenant data. - tags: - - Admin - parameters: - - name: id - in: path - description: ID of the `Tenant`. - required: true - type: string - - name: body - in: body - description: List of fields to update for the tenant - required: true - schema: - type: object - properties: - base_url: - type: string - description: The SDP backend server's base URL. - sdp_ui_base_url: - type: string - description: The SDP UI/dashboard Base URL. - status: - type: string - enum: - - TENANT_CREATED - - TENANT_PROVISIONED - - TENANT_ACTIVATED - - TENANT_DEACTIVATED - produces: - - application/json - security: - - BasicAuth: [] - /tenants/default-tenant: - post: - summary: Default Tenant - description: | - Sets the tenant specified in the request body as the default one, resolving all the incoming API request to that tenant when the env `SINGLE_TENANT_MODE` is set to true. Once set, the default tenant can be overwritten but never unset, although it is only effective when `SINGLE_TENANT_MODE` is set to true. - - Default tenant is useful for development purposes or when the SDP is used by a single organization. This allows the organization to skip specifying the tenant in every request and simplifies the SDP setup operationally by removing the need of providing wildcard TLS certificates for multi-tenant configurations. - responses: - '201': - $ref: '#/definitions/Tenant' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - operationId: Default Tenant - tags: - - Admin - parameters: - - name: body - in: body - schema: - type: object - properties: - id: - type: string - description: The tenant id. - example: - id: 1736bed3-7b92-4760-8ff2-51fb08ee079f - required: - - id - produces: - - application/json - security: - - BasicAuth: [] -definitions: - Amount: - type: object - properties: - asset_code: - type: string - example: USDC - asset_issuer: - type: string - example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 - received_amount: - type: string - example: '100.00' - Asset: - type: object - description: The Stellar asset object - properties: - id: - type: string - example: ffaec4b3-46b0-4db4-a4c4-6c3508057705 - code: - type: string - description: Asset code - example: USDC - issuer: - type: string - description: Asset issuer address - example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - deleted_at: - type: string - format: date-time - example: '2023-06-03T10:55:51.000Z' - Country: - type: object - properties: - code: - type: string - description: Three-character ISO 3166 code - example: UKR - name: - type: string - description: Country name - example: Ukraine - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - Disbursement: - type: object - properties: - id: - type: string - description: The unique identifier of the disbursement - example: 619da857-8725-4c58-933d-c120a458e0f5 - name: - type: string - description: The name of the disbursement - example: Disbursement Name - country: - $ref: '#/definitions/Country' - wallet: - $ref: '#/definitions/Wallet' - asset: - $ref: '#/definitions/Asset' - status: - description: The status of the disbursement - $ref: '#/definitions/DisbursementStatus' - example: READY - verification_field: - $ref: '#/definitions/VerificationField' - example: DATE_OF_BIRTH - status_history: - $ref: '#/definitions/DisbursementStatusHistory' - file_name: - type: string - example: disbursement-feb-03-2023.csv - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - total_payments: - type: integer - description: Total number of payments - example: 10 - total_payments_sent: - type: integer - description: Total number of successful payments - example: 8 - total_payments_failed: - type: integer - description: Total number of failed payments - example: 1 - total_payments_remaining: - type: integer - description: Total number of remaining payments - example: 1 - amount_disbursed: - type: string - description: The total amount disbursed so far - example: '800.00' - total_amount: - type: string - description: The total amount to be disbursed - example: '1000.00' - average_amount: - type: string - description: The average amount per payment - example: '100.00' - DisbursementLite: - type: object - properties: - id: - type: string - format: uuid - description: The unique identifier of the disbursement - example: c51ba1d5-52d3-412f-a59c-6ef32d59ab43 - name: - type: string - description: The name of the disbursement - example: disbursement-june-29 - status: - $ref: '#/definitions/DisbursementStatus' - created_at: - type: string - format: date-time - description: The creation timestamp of the disbursement - example: '2023-06-30T01:22:57.831975Z' - updated_at: - type: string - format: date-time - description: The last update timestamp of the disbursement - example: '2023-06-30T01:22:58.316511Z' - DisbursementPagination: - type: object - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: array - items: - $ref: '#/definitions/Disbursement' - example: - pagination: - next: /disbursements?page=3&page_limit=1 - prev: /disbursements?page=1&page_limit=1 - pages: 4 - total: 4 - data: - id: 619da857-8725-4c58-933d-c120a458e0f5 - name: Disbursement Name - country: - code: UKR - name: Ukraine - created_at: '2023-02-03T10:45:51.000Z' - updated_at: '2023-02-03T10:45:51.000Z' - wallet: - id: e2de8544-b7e2-40a9-ad40-411f70d5c4bf - name: Vibrant - homepage: https://vibrantapp.com - asset: - id: 25923001-508a-4629-9186-c41211b2a3d0 - code: USDC - issuer: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 - status: READY - verification_field: DATE_OF_BIRTH - status_history: - - user_id: null - status: DRAFT - timestamp: '2023-02-03T10:45:51.000Z' - - user_id: 2ec7f1f9-add3-4e6d-9d14-bd8ac5e88872 - status: READY - timestamp: '2023-02-03T10:45:51.000Z' - file_name: disbursement-february-03-2023.csv - created_at: '2023-02-03T10:45:51.000Z' - updated_at: '2023-02-03T10:45:51.000Z' - total_payments: 10 - total_payments_sent: 8 - total_payments_failed: 1 - total_payments_remaining: 1 - amount_disbursed: '800.00' - total_amount: '1000.00' - average_amount: '100.00' - DisbursementReceiver: - type: object - properties: - id: - type: string - example: ec3a57c0-5660-4b5a-af76-acadc7b09b93 - email: - type: string - example: receiver@mail.org - phone_number: - type: string - example: '+15552368475' - external_id: - type: string - example: usr129001 - receiver_wallet: - $ref: '#/definitions/ReceiverWallet' - payment: - $ref: '#/definitions/Payment' - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - DisbursementReceiverPagination: - type: object - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: array - items: - $ref: '#/definitions/DisbursementReceiver' - DisbursementsStatistics: - type: object - properties: - payment_counters: - $ref: '#/definitions/PaymentCounters' - payment_amounts_by_asset: - type: array - items: - $ref: '#/definitions/PaymentAmountsByAsset' - receiver_wallets_counters: - $ref: '#/definitions/ReceiverWalletsCounters' - total_receivers: - type: integer - description: Total number of receivers - format: int64 - example: 100 - DisbursementStatus: - type: string - enum: - - DRAFT - - READY - - STARTED - - PAUSED - - COMPLETED - DisbursementStatusHistory: - type: array - items: - $ref: '#/definitions/DisbursementStatusHistoryEntry' - DisbursementStatusHistoryEntry: - type: object - properties: - user_id: - type: string - example: 3f351b9e-ed0f-40fa-a314-14757b42dab1 - status: - $ref: '#/definitions/DisbursementStatus' - timestamp: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - GeneralStatistics: - type: object - properties: - total_disbursements: - type: integer - description: Total number of disbursements - format: int64 - example: 20 - payment_counters: - $ref: '#/definitions/PaymentCounters' - payment_amounts_by_asset: - type: array - items: - $ref: '#/definitions/PaymentAmountsByAsset' - receiver_wallets_counters: - $ref: '#/definitions/ReceiverWalletsCounters' - total_receivers: - type: integer - description: Total number of receivers - format: int64 - example: 1000 - MessageResponse: - type: object - properties: - message: - type: string - required: - - message - Organization: - type: object - properties: - name: - type: string - example: Stellar Aid - logo_url: - type: string - example: https://stellar-disbursement-platform-backend-dev.stellar.org/organization/logo - distribution_account: - $ref: '#/definitions/DistributionAccount' - distribution_account_public_key: - type: string - description: DEPRECATED! Please refer to distribution_account.address instead. - example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL - timezone_utc_offset: - type: string - example: '+00:00' - is_approval_required: - description: Enables multi-user approval workflow for disbursements - type: boolean - example: true - sms_resend_interval: - description: The amount of days that the SDP will wait to resend the invitation SMS to the receivers that have not registered. If `0`, that means the resending invitation SMS feature is disabled. - type: integer - example: 5 - payment_cancellation_period_days: - description: The amount of days that the SDP will wait to cancel a payment that is waiting for the receiver to register. If `0`, that means the payment cancellation feature is disabled. - type: integer - example: 5 - privacy_policy_link: - description: The link to the organization privacy policy - type: string - example: https://stellar.org/privacy-policy - sms_registration_message_template: - description: 'The custom SMS message template set for the registration invite. The `default` message isn''t returned. In the message''s content it''s possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.RegistrationLink}} which is the link generated by SDP to send to the receiver (in case this is not present in the message, it''s automatically appended at the end).' - type: string - example: You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register. - otp_message_template: - description: 'The custom OTP message template set to send OTP code to the receiver complete the registration flow. The `default` message isn''t returned. In the message''s content it''s possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.OTP}} which is the OTP code to send to the receiver complete the registration flow (in case this is not present in the message, it''s automatically appended at the end).' - type: string - example: '{{.OTP}} is your {{.OrganizationName}} phone verification code.' - required: - - name - - logo_url - - distribution_account - - timezone_utc_offset - - is_approval_required - - sms_resend_interval - - payment_cancellation_period_days - - privacy_policy_link - DistributionAccount: - type: object - properties: - address: - type: string - description: The address of the distribution account, present when the account type is `STELLAR`. - example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL - circle_wallet_id: - type: string - description: The ID of the Circle wallet, present when the account type is `CIRCLE`. - example: '1000646072' - type: - type: string - description: The type of the distribution account. - enum: - - DISTRIBUTION_ACCOUNT.STELLAR.ENV - - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT - example: DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - status: - type: string - enum: - - ACTIVE - - PENDING_USER_ACTIVATION - example: ACTIVE - required: - - type - - status - Balance: - type: object - description: The balances of the organization's distribution account. Currently, this is only used for the Circle distribution accounts. - properties: - asset_code: - type: string - description: The asset code of the balance in the Stellar network. - example: USDC - asset_issuer: - type: string - description: The asset issuer of the balance in the Stellar network. - example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 - amount: - type: string - description: The amount of the balance. - example: '100.00' - Pagination: - type: object - properties: - next: - type: string - example: '?page=3&page_limit=2' - prev: - type: string - example: '?page=1&page_limit=2' - pages: - type: integer - example: 8 - total: - type: integer - example: 16 - Payment: - type: object - properties: - id: - type: string - example: ddf22f55-3259-4822-a4e2-ce01334997f4 - amount: - type: string - description: The amount of the payment - example: '100.00' - stellar_transaction_id: - type: string - description: The ID of the transaction in the Stellar network. It can be used tio track the payment in the Stellar network using [Stellar Laboratory](https://laboratory.stellar.org/), or [StellarExpert](https://stellar.expert/). - example: 0b339d1c89d314186b8147c2af4c9a9ed5bbdbcd7ada8d138633907649b - circle_transfer_request_id: - type: string - description: The Circle transfer request ID. It is only present when the payment was made using Circle. - example: 74a68b6a-3f67-424b-b8b0-e593a19d7463 - stellar_operation_id: - type: string - deprecated: true - status: - $ref: '#/definitions/PaymentStatus' - status_history: - $ref: '#/definitions/PaymentStatusHistory' - disbursement: - $ref: '#/definitions/DisbursementLite' - asset: - $ref: '#/definitions/Asset' - receiver_wallet: - $ref: '#/definitions/ReceiverWalletLite' - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - PaymentPagination: - type: object - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: array - items: - $ref: '#/definitions/Payment' - PaymentStatus: - type: string - description: The status of the payment - enum: - - DRAFT - - READY - - PENDING - - PAUSED - - SUCCESS - - FAILED - PaymentStatusHistory: - type: array - description: An aggregated list of metadata objects containing the statuses and the timestamp of when these status changes occurred. - items: - $ref: '#/definitions/PaymentStatusHistoryEntry' - PaymentStatusHistoryEntry: - type: object - properties: - status: - $ref: '#/definitions/PaymentStatus' - status_message: - type: string - timestamp: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - PaymentCounters: - type: object - properties: - draft: - type: integer - format: int64 - example: 1 - ready: - type: integer - format: int64 - example: 2 - pending: - type: integer - format: int64 - example: 3 - paused: - type: integer - format: int64 - example: 1 - success: - type: integer - format: int64 - example: 5 - failed: - type: integer - format: int64 - example: 1 - total: - type: integer - format: int64 - example: 14 - PaymentAmountsByAsset: - type: object - properties: - asset_code: - type: string - example: USDC - payment_amounts: - $ref: '#/definitions/PaymentAmounts' - PaymentAmounts: - type: object - properties: - draft: - type: string - example: '100.00' - ready: - type: string - example: '200.00' - pending: - type: string - example: '300.00' - paused: - type: string - example: '100.00' - success: - type: string - example: '500.00' - failed: - type: string - example: '100.00' - average: - type: string - example: '100.00' - total: - type: string - example: '1400.00' - Profile: - type: object - properties: - first_name: - type: string - example: Jane - last_name: - type: string - example: Doe - email: - type: string - example: jdoe@mail.org - roles: - type: array - items: - type: string - organization_name: - type: string - example: - first_name: Jane - last_name: Doe - email: jdoe@mail.org - roles: - - developer - organization_name: Stellar Aid - Receiver: - type: object - properties: - id: - type: string - example: f83bb638-dda4-41e6-80c9-d03e6eec2aef - phone_number: - type: string - example: '+15552368475' - external_id: - type: string - example: usr12334 - email: - type: string - example: jdoe@mail.org - created_at: - type: string - example: '2023-02-03T10:45:51.000Z' - total_payments: - type: string - example: '2' - successful_payments: - type: string - example: '2' - failed_payments: - type: string - example: '0' - remaining_payments: - type: string - example: '0' - registered_wallets: - type: string - example: 1 - received_amounts: - type: array - items: - $ref: '#/definitions/Amount' - wallets: - type: array - items: - $ref: '#/definitions/ReceiverWallet' - ReceiverLite: - type: object - properties: - id: - type: string - example: 029e2ed0-feb6-4c40-8b47-0836a85741a2 - ReceiverPagination: - type: object - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: array - items: - $ref: '#/definitions/Receiver' - ReceiverWallet: - type: object - properties: - id: - type: string - example: 803031d4-1d04-4879-b6d9-dc5641f9988e - receiver: - $ref: '#/definitions/ReceiverLite' - wallet: - $ref: '#/definitions/WalletLite' - stellar_address: - type: string - example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL - stellar_memo: - type: string - stellar_memo_type: - type: string - created_at: - type: string - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - example: '2023-02-03T10:45:51.000Z' - invited_at: - type: string - example: '2023-02-09T10:45:51.000Z' - last_sms_sent: - type: string - example: '2023-02-10T10:45:51.000Z' - description: timestamp when the receiver last received an SMS about this wallet - total_payments: - type: string - example: '2' - payments_received: - type: string - example: '2' - failed_payments: - type: string - example: '0' - remaining_payments: - type: string - example: '0' - received_amounts: - type: array - items: - $ref: '#/definitions/Amount' - status: - $ref: '#/definitions/ReceiversWalletStatus' - status_history: - type: array - items: - $ref: '#/definitions/ReceiversWalletStatusHistoryEntry' - ReceiverWalletLite: - type: object - properties: - id: - type: string - example: 803031d4-1d04-4879-b6d9-dc5641f9988e - receiver: - $ref: '#/definitions/ReceiverLite' - wallet: - $ref: '#/definitions/WalletLite' - stellar_address: - type: string - example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL - created_at: - type: string - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - example: '2023-02-03T10:45:51.000Z' - status: - $ref: '#/definitions/ReceiversWalletStatus' - ReceiverWalletsCounters: - type: object - properties: - draft: - type: integer - format: int64 - example: 1 - ready: - type: integer - format: int64 - example: 1 - registered: - type: integer - format: int64 - example: 1 - flagged: - type: integer - format: int64 - example: 1 - total: - type: integer - format: int64 - example: 4 - ReceiversWalletStatus: - type: string - enum: - - DRAFT - - READY - - REGISTERED - - FLAGGED - ReceiversWalletStatusHistoryEntry: - type: object - properties: - status: - $ref: '#/definitions/ReceiversWalletStatus' - timestamp: - type: string - format: date-time - example: '2023-02-10T10:45:51.000Z' - Users: - type: array - items: - $ref: '#/definitions/User' - User: - type: object - properties: - id: - type: string - example: 1736bed3-7b92-4760-8ff2-51fb08ee079f - first_name: - type: string - example: John - last_name: - type: string - example: Doe - email: - type: string - roles: - type: array - items: - type: string - is_active: - type: boolean - required: - - id - - first_name - - last_name - - email - - roles - - is_active - example: - - id: 7a4c6555-1f73-49b3-a211-f95bd2b8ec90 - first_name: John - last_name: Doe - email: email@email.com - roles: - - developer - is_active: true - - id: 5f4df1dd-c84f-482a-84ad-541ffd46e75a - first_name: Jane - last_name: Doe - email: email@email.com - roles: - - financial_controller - is_active: false - VerificationField: - type: string - enum: - - DATE_OF_BIRTH - - PIN - - NATIONAL_ID_NUMBER - Wallet: - type: object - properties: - id: - type: string - example: 5ada9ed5-455a-4782-a0ee-160767e0deb1 - name: - type: string - example: Vibrant Assist - homepage: - type: string - example: https://vibrantapp.com - sep_10_client_domain: - type: string - example: api-dev.vibrantapp.com - deep_link_schema: - type: string - example: https://vibrantapp.com/sdp-dev - created_at: - type: string - format: date-time - example: '2023-07-31T20:50:45.648Z' - updated_at: - type: string - format: date-time - example: '2023-07-31T20:50:45.648Z' - WalletLite: - type: object - properties: - id: - type: string - example: 5ada9ed5-455a-4782-a0ee-160767e0deb1 - name: - type: string - example: Vibrant Assist - homepage: - type: string - example: https://vibrantapp.com - ReceiverRegistrationRequest: - type: object - properties: - phone_number: - type: string - description: Phone number used in registration - otp: - type: string - description: One-Time Password received for verification - verification: - type: string - description: Verification value provided by the user - verification_type: - type: string - description: Type of verification value - enum: - - DATE_OF_BIRTH - - PIN - - NATIONAL_ID_NUMBER - recaptcha_token: - type: string - description: Token received from Google reCAPTCHA - PatchReceiverRequest: - type: object - properties: - date_of_birth: - type: string - description: Date of birth of the receiver - pin: - type: string - description: Personal identification number of the receiver - national_id: - type: string - description: National ID of the receiver - email: - type: string - description: Email of the receiver - external_id: - type: string - description: External ID of the receiver - example: - date_of_birth: '1980-01-01' - pin: '1234' - national_id: '123456789' - email: john@example.com - external_id: external123 - Tenant: - type: object - properties: - id: - type: string - example: 1736bed3-7b92-4760-8ff2-51fb08ee079f - name: - type: string - example: bluecorp - description: The tenant name. It should match the pattern `^[a-z-]+$`. - base_url: - type: string - example: https://bluecorp-backend.sdp.org - description: The SDP backend server's base URL. - sdp_ui_base_url: - type: string - example: https://bluecorp.sdp.org - description: The SDP UI/dashboard Base URL. - status: - type: string - enum: - - TENANT_CREATED - - TENANT_PROVISIONED - - TENANT_ACTIVATED - - TENANT_DEACTIVATED - distribution_account_address: - type: string - example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL - description: The Stellar account address used for distributing funds. - distribution_account_type: - type: string - enum: - - DISTRIBUTION_ACCOUNT.STELLAR.ENV - - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT - description: The Stellar account type used for distributing funds. - distribution_account_status: - type: string - enum: - - ACTIVE - - PENDING_USER_ACTIVATION - description: The status of the distribution account used for distributing funds. - is_default: - type: boolean - default: false - description: Boolean flag that shows whether the tenant is the default or not. - created_at: - type: string - format: date-time - example: '2024-03-27T17:21:51.000Z' - updated_at: - type: string - format: date-time - example: '2024-03-27T17:21:51.000Z' - deleted_at: - type: string - format: date-time - description: The timestamp when the tenant was (soft) deleted. - example: '2024-03-27T17:21:51.000Z' - required: - - id - - name - - base_url - - sdp_ui_base_url - - status - - distribution_account_address - - distribution_account_type - - distribution_account_status - - is_default - - created_at - - updated_at - example: - id: 840dca45-d1df-44cd-83c1-65c04235c25f - name: redcorp - base_url: https://redcorp-backend.sdp.org - sdp_ui_base_url: https://redcorp.sdp.org - status: TENANT_PROVISIONED - distribution_account: GCQVDMPOEN3HHJJ64V42KUTONOXN7C6V2PSVPALEVJ7PIYOB6M3DJV7N - is_default: true - created_at: '2024-03-27T17:21:51.000Z' - updated_at: '2024-03-27T17:21:51.000Z' - Tenants: - type: array - items: - $ref: '#/definitions/Tenant' -responses: - UnauthorizedResponse: - description: Unauthorized - headers: {} - examples: - application/json: - error: Not authorized - extras: - status: 401 - message: Not authorized - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not authorized - extras: - status: 401 - message: Not authorized - ForbiddenResponse: - description: Forbidden - headers: {} - examples: - application/json: - error: Forbidden - schema: - type: object - properties: - error: - type: string - example: - error: Forbidden - BadRequestResponse: - description: Bad Request - schema: - type: object - properties: - error: - type: string - description: Details about the error - extras: - type: object - example: - error: Invalid input - extras: - field_foo: field_foo is required - field_bar: field_bar needs to be an integer - NotFoundResponse: - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Resource not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string -securityDefinitions: - BearerAuth: - type: apiKey - name: Authorization - in: header - description: JWT used for authentication, signed with an ES256 private key. - BasicAuth: - type: http - scheme: basic - description: Basic HTTP Authentication with a base64-encoded string of 'ADMIN_ACCOUNT:ADMIN_API_KEY'. diff --git a/openapi/stellar-disbursement-platform/main.yaml b/openapi/stellar-disbursement-platform/main.yaml new file mode 100644 index 000000000..b2a6f0322 --- /dev/null +++ b/openapi/stellar-disbursement-platform/main.yaml @@ -0,0 +1,4739 @@ +openapi: 3.1.0 +info: + title: Stellar Disbursement Platform API + version: "2.1.0" + summary: The Stellar Disbursement Platform (SDP) is a tool built for organizations to make bulk payments to a group of recipients over the Stellar network. + description: | + The Stellar Disbursement Platform (SDP) is a tool built for organizations to make bulk payments to a group of recipients over the Stellar network. + + This is an open-source project that is built on top of the Stellar network, and the code can be found on the following repositories: + + - [stellar/stellar-disbursement-platform-backend](https://github.com/stellar/stellar-disbursement-platform-backend): This repository contains the backend and infrastructure code for the Stellar Disbursement Platform. + - [stellar/stellar-disbursement-platform-frontend](https://github.com/stellar/stellar-disbursement-platform-frontend): This repository contains the web frontend code for the Stellar Disbursement Platform. + - [stellar/helm-charts](https://github.com/stellar/helm-charts/tree/main/charts/stellar-disbursement-platform): This repository contains the Helm chart for deploying the Stellar Disbursement Platform using kubernetes. + termsOfService: https://stellar.org/terms-of-service + license: + name: Apache 2.0 + url: http://www.apache.org/licenses/LICENSE-2.0.html +servers: + - url: "" +tags: + - name: Admin + x-displayName: Admin (Tenant Management) + description: The Admin API oversees the management of tenants within the system, facilitating tasks such as provisioning new tenants, updating their information, and retrieving tenant data. + - name: Authentication + description: Authentication controls the log in/log out process for all SDP users, as well as the token refresh process. Authentication uses a JWT approach signed with an ES256 private key. + - name: Balances + description: Endpoints related to balances. A balance is an amount of a particular asset held by an organization, tenant, or account. + - name: Disbursements + description: Endpoints related to disbursements. A disbursement is a group of payments sent to multiple individuals at once. An SDP user with the appropriate role triggers a new disbursement through the SDP dashboard by uploading a list of receivers and amounts. When the receiver has linked their wallet to the SDP, the payment automatically begins. SDP users can track their disbursements in real-time through the SDP dashboard. Each disbursement must have a unique name defined by the organization. + - name: Organization + description: Organization endpoints manage the process of getting and updating organizational profile information. The organization's profile has basic information set at the time of SDP deployment. It can be modified by the Owner. Organizations can also manage their preferences, like which assets to use, through these endpoints. + - name: Payments + description: Endpoints related to payments. An SDP payment is an individual payment from an organization to a receiver. Each payment is part of a disbursement and occurs on the Stellar network. Granular payment status is stored in the SDP database and can be viewed in real-time on the SDP dashboard. There is no POST endpoint because submitting payments to the Stellar network is handled by the Transaction Submission Service (TSS). + - name: Profile + description: "Profiles endpoints manage the process of getting and updating individual profile information. Profile information is set when the account is created and can be updated by the user on the SDP dashboard Profile page. Note: profiles never refer to receivers of funds." + - name: Receivers + description: | + Endpoints related to receivers. A receiver is an individual receiving a payment in a disbursement. The receiver is tracked by phone number to reduce the need for personally identifiable information. Each receiver must be unique within the disbursement. + + Each receiver will have at least one wallet associated with them. The wallet public key will remain null until the receiver registers with a wallet provider and links the wallet to the SDP through SEP-24. Receivers must verify their identity through that process, which requires the SDP to store verification information on receivers like date of birth, national ID number, or personal PIN. This information can be updated by the organization through the receiver endpoints. + - name: Registration + description: | + The registration endpoints guide the process for a receiver to verify their identity and link their wallet address to an SDP. The registration process only needs to happen once per receiver to link their wallet. Only SDP-compatible wallet providers can facilitate the registration process. These endpoints must be supported and hit by the wallet providers after the receiver gets the initial SMS invite. After the wallet address is successfully linked, the payment automatically begins. + + There are two parts to the registration flow. First, the wallet must authenticate and initiate a registration flow using the Anchor Platform Endpoints defined below. Note that these endpoints are hosted on a different host than the Stellar Disursement Platform. + + The second part of the registration flow is handled by the webview that is opened within the wallet application. This webview uses the endpoints defined in the Stellar Disbursement Platfrom Endpoints section to complete the registration process. The wallet application can chose not to use the webview and intstead integrate directly with the API. + - name: Statistics + description: Statistics endpoints return general aggregated data per organization, as well as disbursement-specific metrics. SDP users can use this data to monitor their disbursements over time. + - name: Users + description: The users endpoints facilitate the creation of new SDP users - including setting the appropriate role, sending an email invitation, and activating a user - and managing roles. +paths: + /login: + post: + tags: + - Authentication + summary: Log In + description: "Allows credentialed SDP users to log in to the SDP dashboard with a password. Note: all passwords must be at least 8 characters long and a combination of uppercase letters, lowercase letters, numbers, and symbols." + operationId: LogIn + requestBody: + content: + '*/*': + schema: + required: [ email, password ] + type: object + properties: + email: + type: string + password: + type: string + recaptcha_token: + type: string + description: Token for reCAPTCHA validation. ReCAPTCHA token is required unless the `DISABLE_RECAPTCHA` configuration is set to true. + example: + email: johndoe@mail.com + password: mysecret + required: false + responses: + "200": + description: OK + content: + application/json: + schema: + type: object + properties: + token: + type: string + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Invalid credentials + extras: + status: 400 + message: Invalid username or password + example: + error: Invalid credentials + extras: + status: 400 + message: Invalid username or password + x-codegen-request-body-name: body + /refresh-token: + post: + tags: + - Authentication + summary: Refresh Token + description: A user’s token expires after 15 minutes. This endpoint handles refreshing the user’s token without disrupting their experience. It is triggered within the 30-second window before the token expires. + operationId: RefreshToken + responses: + "200": + description: Returns a new access token + content: + application/json: + schema: + type: object + properties: + token: + type: string + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + example: + token: eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + /mfa: + post: + tags: + - Authentication + summary: Provide Multi-Factor Authentication + description: "Governs the multi-factor authentication process for SDP user login, including the ability to remember the device so MFA is not always required." + operationId: authenticateMFA + parameters: + - name: Device-ID + in: header + description: Identifier of the device + required: false + style: simple + explode: false + schema: + type: string + requestBody: + description: MFA request data + content: + '*/*': + schema: + required: + - mfa_code + type: object + properties: + mfa_code: + type: string + description: Multi-factor authentication code + remember_me: + type: boolean + description: Boolean flag to remember the user + recaptcha_token: + type: string + description: Token for reCAPTCHA validation. ReCAPTCHA token is + required unless the `DISABLE_RECAPTCHA` configuration is set to + true. + required: true + responses: + "200": + description: Successful authentication + content: + application/json: + schema: + type: object + properties: + token: + type: string + description: Authentication token + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + x-codegen-request-body-name: body + /forgot-password: + post: + tags: + - Authentication + summary: Forgot Password + description: Sends an email with a token to an SDP user who has gone through + the Forgot Password process. + operationId: forgotPassword + requestBody: + description: Forgot password request data + content: + '*/*': + schema: + required: + - email + type: object + properties: + email: + type: string + description: Email of the user + format: email + recaptcha_token: + type: string + description: Token for reCAPTCHA validation + required: true + responses: + "200": + description: Forgot password email sent successfully + content: + '*/*': + schema: + $ref: '#/components/schemas/MessageResponse' + "400": + description: Bad Request + content: + '*/*': + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + x-codegen-request-body-name: body + /reset-password: + post: + tags: + - Authentication + summary: Reset Rassword + description: Allows an SDP user who has gone through the Forgot Password process + to set their new password with a token sent via email. + operationId: resetPassword + requestBody: + description: Reset password request data + content: + '*/*': + schema: + required: + - password + - reset_token + type: object + properties: + password: + type: string + description: New password for the user + reset_token: + type: string + description: Token used to identify a valid password reset request + required: true + responses: + "200": + description: Password reset successfully + content: {} + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + x-codegen-request-body-name: body + /disbursements: + get: + tags: + - Disbursements + summary: List All Disbursements + description: Fetches all disbursements the organization has created. This endpoint + supports pagination. The response includes basic aggregations on payments + within the disbursement. + operationId: ListAllDisbursements + parameters: + - name: page + in: query + description: The page requested. + required: false + style: form + explode: true + schema: + type: number + default: 1.0 + - name: page_limit + in: query + description: Define how many results will be returned in the response. + required: false + style: form + explode: true + schema: + type: number + default: 20.0 + - name: q + in: query + description: A search term used to query through the disbursement names. + required: false + style: form + explode: true + schema: + type: string + - name: status + in: query + description: Exact match on the status of the disbursement. + required: false + style: form + explode: true + schema: + type: string + enum: + - DRAFT + - READY + - STARTED + - PAUSED + - COMPLETED + example: DRAFT + - name: created_at_after + in: query + description: "Only return disbursements that are created after this date. Format: YYYY-MM-DD" + required: false + style: form + explode: true + schema: + type: string + example: 2006-01-02 + - name: created_at_before + in: query + description: "Only return disbursements that are created before this date. Format: YYYY-MM-DD" + required: false + style: form + explode: true + schema: + type: string + example: 2006-01-02 + - name: sort + in: query + description: Field used to sort disbursements + required: false + style: form + explode: true + schema: + type: string + default: created_at + enum: + - name + - created_at + - name: direction + in: query + description: Direction for sorting disbursements. + required: false + style: form + explode: true + schema: + type: string + default: asc + enum: + - asc + - desc + responses: + "200": + description: A list of Disbursement details + content: + application/json: + schema: + $ref: '#/components/schemas/DisbursementPagination' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + post: + tags: + - Disbursements + summary: Create Disbursement + description: "Creates a new disbursement in `draft ` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from `draft ` to `ready `." + operationId: CreateDisbursement + requestBody: + content: + '*/*': + schema: + type: object + properties: + name: + type: string + wallet_id: + type: string + asset_id: + type: string + country_code: + type: string + description: Three-character ISO 3166 code + example: + name: My New Disbursement name + wallet_id: e2de8544-b7e2-40a9-ad40-411f70d5c4bf + asset_id: d227a68c-2f40-11ee-be56-0242ac120002 + country_code: UKR + required: false + responses: + "201": + description: A new disbursement + content: + application/json: + schema: + $ref: '#/components/schemas/Disbursement' + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Bad request + extras: + status: 400 + message: Invalid country code provided + example: + error: Bad request + extras: + status: 400 + message: Invalid country code provided + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /disbursements/{id}: + get: + tags: + - Disbursements + summary: Retrieve a Disbursement + description: Fetches information on a specific disbursement by `id `. + operationId: RetrieveADisbursement + parameters: + - name: id + in: path + description: ID of the `Disbursement`. + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Disbursement details + content: + application/json: + schema: + $ref: '#/components/schemas/Disbursement' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /disbursements/{id}/receivers: + get: + tags: + - Disbursements + summary: List All Disbursement Receivers + description: Fetches a list of receivers within a specific disbursement using + the disbursement `id `. This endpoint supports pagination. + operationId: ListAllDisbursementReceivers + parameters: + - name: id + in: path + description: ID of the Disbursement + required: true + style: simple + explode: false + schema: + type: string + - name: page + in: query + description: The page number to fetch. + required: false + style: form + explode: true + schema: + type: number + - name: page_limit + in: query + description: The number of records to return per page. + required: false + style: form + explode: true + schema: + type: number + responses: + "200": + description: A list of Disbursement Receivers + content: + application/json: + schema: + $ref: '#/components/schemas/DisbursementReceiverPagination' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /disbursements/{id}/instructions: + get: + tags: + - Disbursements + summary: Download Disbursement Instructions + description: Allows an SDP user to download the raw CSV file that was uploaded + when creating the disbursement. This will only return results after instructions + have been attached to a draft disbursement. + operationId: DownloadDisbursementInstructions + parameters: + - name: id + in: path + description: ID of the Disbursement + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Disbursement CSV file + headers: + Content-Disposition: + description: The filename of the returned CSV file. + style: simple + explode: false + schema: + type: string + Content-Type: + description: text/csv + style: simple + explode: false + schema: + type: string + content: + text/csv: + example: "" + "400": + description: Bad Request + content: + text/csv: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + foo: + type: string + message: + type: string + example: + error: Invalid request + extras: + foo: bar + message: Invalid request parameters + application/json: + example: + error: Invalid request + extras: + foo: bar + message: Invalid request parameters + "401": + description: Unauthorized + content: + text/csv: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + application/json: + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + text/csv: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + application/json: + example: + error: Forbidden + "404": + description: Not Found + content: + text/csv: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + application/json: + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + post: + tags: + - Disbursements + summary: Upload Disbursement Instructions + description: "Adds a file containing a list of receivers to a `draft ` disbursement. This step is required before a disbursement can begin. The file must be a CSV and has a standard format that can be found at `dev/sample/sample-disbursement.csv `. The operation is idempotent, guaranteed by deleting and recreating the disbursement attributes when this endpoint is called." + operationId: UploadDisbursementInstructions + parameters: + - name: id + in: path + description: ID of the Disbursement + required: true + style: simple + explode: false + schema: + type: string + requestBody: + content: + multipart/form-data: + schema: + required: + - file + type: object + properties: + file: + type: string + description: "Disbursement instructions file to upload. The CSV file should be in the following format: `phone,id,amount,verification`" + format: binary + required: true + responses: + "201": + description: Created + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: + message: File uploaded succesfully + example: + message: File uploaded succesfully + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + foo: + type: string + message: + type: string + example: + error: Invalid file format *.xyz + extras: + foo: bar + message: Not authorized + example: + error: Invalid file format *.xyz + extras: + foo: bar + message: Not authorized + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /disbursements/{id}/status: + patch: + tags: + - Disbursements + summary: Update a Disbursement Status + description: Updates the status of a disbursement according to the state machine. + The disbursement must move from `draft ` to `ready ` in order to start + the disbursement and trigger payments. Payments will start as soon as this + endpoint is hit. A disbursement can also be moved into `paused ` state + by an SDP user to prevent further payments from going out and restarted when + they are ready. + operationId: UpdateADisbursementStatus + parameters: + - name: id + in: path + description: ID of the disbursement + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Message Response + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + example: + message: Disbursement started + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Bad request + extras: + status: 400 + message: Disbursement is not ready to be started + example: + error: Bad request + extras: + status: 400 + message: Disbursement is not ready to be started + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + example: + error: Not found + extras: + status: 404 + message: Disbursement not found + security: + - BearerAuth: [] + /payments: + get: + tags: + - Payments + summary: List All Payments + description: "Returns all individual payments matching the request criteria. This endpoint supports pagination and filtering on payment status, receiver ID, and timestamp. Each payment has details on the transaction itself, receiver, disbursement, asset, status history, and blockchain information." + operationId: ListAllPayments + parameters: + - name: page + in: query + description: The page requested. + required: false + style: form + explode: true + schema: + type: number + default: 1.0 + - name: page_limit + in: query + description: Define how many results will be returned in the response. + required: false + style: form + explode: true + schema: + type: number + default: 20.0 + - name: status + in: query + description: Exact match on the status of the payment. + required: false + style: form + explode: true + schema: + type: string + enum: + - DRAFT + - READY + - PENDING + - PAUSED + - SUCCESS + - FAILED + example: DRAFT + - name: receiver_id + in: query + description: UUID that represents a receiver in the database + required: false + style: form + explode: true + schema: + type: string + example: b6b667ad-6cc2-46cf-9be7-561daace7d48 + - name: created_at_after + in: query + description: "Only return payments that are created after this date. Format: YYYY-MM-DD" + required: false + style: form + explode: true + schema: + type: string + example: 2006-01-02 + - name: created_at_before + in: query + description: "Only return payments that are created before this date. Format: YYYY-MM-DD" + required: false + style: form + explode: true + schema: + type: string + example: 2006-01-02 + - name: sort + in: query + description: Field used to sort payments + required: false + style: form + explode: true + schema: + type: string + default: created_at + enum: + - created_at + - name: direction + in: query + description: Direction for sorting payments. + required: false + style: form + explode: true + schema: + type: string + default: asc + enum: + - asc + - desc + responses: + "200": + description: A paginated list of payments + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentPagination' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /payments/{id}: + get: + tags: + - Payments + summary: Retrieve a Payment + description: Fetches detailed information on a specific payment by `id `. + operationId: RetrieveAPayment + parameters: + - name: id + in: path + description: ID of the `Payment`. + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Payment details + content: + application/json: + schema: + $ref: '#/components/schemas/Payment' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Payment not found + example: + error: Not found + extras: + status: 404 + message: Payment not found + security: + - BearerAuth: [] + /receivers: + get: + tags: + - Receivers + summary: List All Receivers + description: "Returns all receivers matching the request criteria. This endpoint supports pagination and filtering on receiver status, receiver attributes, and timestamp. Each payment has details on the receiver, high-level payments metrics, and wallets associated with the receiver." + operationId: ListAllReceivers + parameters: + - name: page + in: query + description: The page requested. + required: false + style: form + explode: true + schema: + type: number + default: 1.0 + - name: page_limit + in: query + description: Define how many results will be returned in the response. + required: false + style: form + explode: true + schema: + type: number + default: 20.0 + - name: q + in: query + description: "A search term used to query through the receiver phone_number, email, and ID." + required: false + style: form + explode: true + schema: + type: string + - name: status + in: query + description: Exact match on the status of the receiver wallet. + required: false + style: form + explode: true + schema: + type: string + enum: + - DRAFT + - READY + - REGISTERED + - FLAGGED + example: DRAFT + - name: created_at_after + in: query + description: "Only return receivers that are created after this date. Format: YYYY-MM-DD" + required: false + style: form + explode: true + schema: + type: string + example: 2006-01-02 + - name: created_at_before + in: query + description: "Only return receivers that are created before this date. Format: YYYY-MM-DD" + required: false + style: form + explode: true + schema: + type: string + example: 2006-01-02 + - name: sort + in: query + description: Field used to sort receivers + required: false + style: form + explode: true + schema: + type: string + default: created_at + enum: + - created_at + - name: direction + in: query + description: Direction for sorting receivers. + required: false + style: form + explode: true + schema: + type: string + default: asc + enum: + - asc + - desc + responses: + "200": + description: A paginated list of Receiver details + content: + application/json: + schema: + $ref: '#/components/schemas/ReceiverPagination' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /receivers/{id}: + get: + tags: + - Receivers + summary: Retrieve a Receiver + description: "Fetches detailed information on a specific receiver by `id `, including all associated wallets." + operationId: RetrieveAReceiver + parameters: + - name: id + in: path + description: ID of the `Receiver`. + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Receiver Details + content: + application/json: + schema: + $ref: '#/components/schemas/Receiver' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BearerAuth: [] + patch: + tags: + - Receivers + summary: Update a Receiver + description: "This endpoint allows an organization to add and update information on the receiver, including email address, external ID, date of birth, personal PIN, and national ID number. The response includes all information on the receiver." + operationId: UpdateAReceiver + parameters: + - name: id + in: path + description: ID of the `Receiver`. + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: List of fields to patch for the receiver + content: + '*/*': + schema: + $ref: '#/components/schemas/PatchReceiverRequest' + required: true + responses: + "200": + description: Updated Receiver Details + content: + application/json: + schema: + $ref: '#/components/schemas/Receiver' + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /statistics: + get: + tags: + - Statistics + summary: Retrieve All Statistics + description: "Fetches all metrics on all disbursements the organization has created. The response includes basic aggregations on payments, receivers, receiver wallets, and assets." + operationId: RetrieveAllStatistics + responses: + "200": + description: General Statistics response + content: + application/json: + schema: + $ref: '#/components/schemas/GeneralStatistics' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + /statistics/disbursements/{id}: + get: + tags: + - Statistics + summary: Retrieve Disbursement Statistics + description: Fetches metrics on a specific disbursement by `id `. + operationId: RetrieveDisbursementStatistics + parameters: + - name: id + in: path + description: ID of the `Disbursement`. + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Returns statistics for disbursement + content: + application/json: + schema: + $ref: '#/components/schemas/DisbursementsStatistics' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /wallet-registration/start: + get: + tags: + - Registration + summary: Start Wallet Registration + description: This is the endpoint the browser reaches with the first token so + that the receiver can confirm their verification information through a webflow. + Requires a valid SEP-24 token in the request. + operationId: StartWalletRegistration + parameters: + - name: token + in: query + description: The SEP-24 token used for authentication + required: true + style: form + explode: true + schema: + type: string + - name: transaction_id + in: query + description: The transaction id associated with the SEP-24 token + required: true + style: form + explode: true + schema: + type: string + responses: + "200": + description: Token is valid and the webpage will be loaded normally. + content: + text/html: + schema: + type: string + description: HTML page content + "401": + description: Unauthorized + content: + text/html: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + application/json: + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "400": + description: Bad Request + content: + text/html: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + /wallet-registration/otp: + post: + tags: + - Registration + summary: Send One-Time Passcode + description: This endpoint generates a 6-digit OTP and sends it via SMS to the + phone number provided in the request body (after checking that the phone number + matches a receiver phone number in the SDP). A valid SEP-24 token should be + included in the Authorization header of the request. + operationId: SendOneTimePasscode + parameters: + - name: Authorization + in: header + description: "SEP-24 token for authorization (Format: 'Bearer {token}')" + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: Object containing phone number + content: + application/json: + schema: + required: + - phone_number + - recaptcha_token + type: object + properties: + phone_number: + type: string + description: Phone number to which the OTP will be sent + recaptcha_token: + type: string + description: Token for reCAPTCHA validation + required: true + responses: + "200": + description: OTP sent successfully + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "429": + description: An OTP was sent to the given user recently and hasn't expired + yet. Only after expired it will be sent to the user again. + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + code: + type: string + details: + type: string + x-codegen-request-body-name: body + /wallet-registration/verification: + post: + tags: + - Registration + summary: Verify Receiver Registration + description: This endpoint verifies the receiver's registration by validating + the OTP and other verification values provided in the request body. A valid + SEP-24 token should be included in the Authorization header of the request. + operationId: VerifyReceiverRegistration + parameters: + - name: Authorization + in: header + description: "SEP-24 token for authorization (Format: 'Bearer {token}')" + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: "Verification data including phone number, OTP, verification value, and reCAPTCHA token" + content: + application/json: + schema: + $ref: '#/components/schemas/ReceiverRegistrationRequest' + required: true + responses: + "200": + description: Verification successful + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: ok + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + x-codegen-request-body-name: body + /.well-known/stellar.toml: + get: + tags: + - Registration + summary: Retrieve Stellar Info File + description: "Allows the wallet to fetch the SEP-10 server url, SEP-10 signing public key and SEP-24 server url." + operationId: RetrieveStellarInfoFile + responses: + "200": + description: Token is valid and the webpage will be loaded normally. + content: + text/toml: + example: | + ACCOUNTS=["GBC2HVWFIFN7WJHFORVBCDKJORXXXXXXXXXXXXXXXXXXXXXXXX", "GDA34JZ26FZY64XCSY46CUNSHLX762LHJXQXXXXXXXXXXXXXXXXXXXXXXXX"] SIGNING_KEY="GDA34JZ26FZY64XCSY46XXXXXXXXXXXXXXXXXXXXXXXX" NETWORK_PASSPHRASE="Test SDF Network ; September 2015" HORIZON_URL="https://horizon-testnet.stellar.org" WEB_AUTH_ENDPOINT="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/auth" TRANSFER_SERVER_SEP0024="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/sep24" + [[DOCUMENTATION]] ORG_NAME="Stellar Aid" + [[CURRENCIES]] code = "EUROC" issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" is_asset_anchored = true anchor_asset_type = "fiat" status = "live" desc = "EUROC" + [[CURRENCIES]] code = "USDC" issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" is_asset_anchored = true anchor_asset_type = "fiat" status = "live" desc = "USDC" + /WEB_AUTH_ENDPOINT: + get: + tags: + - Registration + summary: Request Challenge Transaction + description: Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the `WEB_AUTH_ENDPOINT` variable. + operationId: RequestChallengeTransaction + parameters: + - name: account + in: query + description: "The Client Account, which can be a stellar account (G...) or muxed account (M...) that the Client wishes to authenticate with the Server.." + required: true + style: form + explode: true + schema: + type: string + - name: memo + in: query + description: The memo to attach to the challenge transaction. Only permitted + if a Stellar account (G...) is used. The memo must be of type id. Other + memo types are not supported. + required: false + style: form + explode: true + schema: + type: string + - name: client_domain + in: query + description: a Client Domain. Need to be supplied by all Clients/Wallets. + required: true + style: form + explode: true + schema: + type: string + responses: + "200": + description: OK + content: + application/json: + schema: + type: object + properties: + transaction: + type: string + network_passphrase: + type: string + example: + transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== + network_passphrase: Test SDF Network ; September 2015 + example: + transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== + network_passphrase: Test SDF Network ; September 2015 + "400": + description: If some information was missing or invalid. + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + account: + type: string + example: + error: Bad request. + extras: + account: account cannot be empty + example: + error: Bad request. + extras: + account: account cannot be empty + post: + tags: + - Registration + summary: Provide Signed Challenge Transaction + description: "Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the `WEB_AUTH_ENDPOINT ` variable." + operationId: ProvideSignedChallengeTransaction + requestBody: + content: + '*/*': + schema: + type: object + properties: + transaction: + type: string + example: + transaction: AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAvheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3AsiYk3UAAABArIrkvqmA0V9lIZcVyCUdja6CiwkPwsV8BfI4CZOyR1Oq7ysvNJWwY0G42dpxN9OP1qz4dum8apG2hqvxVWjkDQ== + required: false + responses: + "200": + description: SEP-10 handshake was successful. + content: + application/json: + schema: + type: object + properties: + token: + type: string + example: + token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 + example: + token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: The provided transaction is not valid + example: + error: The provided transaction is not valid + x-codegen-request-body-name: body + /TRANSFER_SERVER_SEP0024/transactions/deposit/interactive: + post: + tags: + - Registration + summary: Request Registration URL + description: | + The deposit endpoint allows a wallet to get deposit information from an anchor, so a user has all the information needed to initiate a deposit. + + It also lets the anchor specify additional information that the user must submit interactively via a popup or embedded browser window to be able to deposit. Please check the detailed documentation [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2). + operationId: RequestRegistrationURL + externalDocs: + description: Find more info here + url: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2 + responses: + "200": + description: An anchor requires the user to fill out information on a webpage + hosted by the anchor. + content: + '*/*': + schema: + type: object + properties: + type: + type: string + description: Always set to interactive_customer_info_needed. + example: interactive_customer_info_needed + url: + type: string + description: URL hosted by the anchor. The wallet should show + this URL to the user as a popup. + example: https://api.example.com/kycflow?account=GACW7NONV43MZIFHCOKCQJAKSJSISSICFVUJ2C6EZIW5773OU3HD64VI + id: + type: string + description: The anchor's internal ID for this deposit / withdrawal + request. The wallet will use this ID to query the /transaction + endpoint to check status of the request. + example: 82fhs729f63dh0v4 + /profile: + get: + tags: + - Profile + summary: Get Profile + description: Fetches the individual information of the logged in user to populate + the Profile page. + operationId: GetProfile + responses: + "200": + description: Returns user profile + content: + application/json: + schema: + $ref: '#/components/schemas/Profile' + security: + - BearerAuth: [] + patch: + tags: + - Profile + summary: Update User Profile + description: "Updates the profile details of the logged in user, including changing password for authenticated/logged in users. Note: all fields are optional but at least one should be sent in the request." + operationId: UpdateUserProfile + requestBody: + content: + '*/*': + schema: + type: object + properties: + first_name: + type: string + last_name: + type: string + email: + type: string + password: + type: string + example: + first_name: FirstName + last_name: LastName + email: email@email.com + password: mysecret + required: false + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + example: + message: user profile updated successfully + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /organization: + get: + tags: + - Organization + summary: Get Organization Info + description: This endpoint returns the organization's info. It is used in many + places across the UI. It returns the name in the navbar and the public key + of the organization’s distribution account. + operationId: GetOrganizationInfo + responses: + "200": + description: Returns organization details + content: + application/json: + schema: + $ref: '#/components/schemas/Organization' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + patch: + tags: + - Organization + summary: Update Organization Profile + description: "Updates the organization profile details. Only account owners have permission to do this. Note: both fields are optional but at least one should be sent in the request. It is not necessary to set the header Content-Type for this request. It is set automatically by the HTTP client." + operationId: UpdateOrganizationProfile + requestBody: + content: + multipart/form-data: + schema: + type: object + properties: + logo: + type: string + description: "The logo of the organization, file type must be png or jpeg." + format: binary + data: + type: string + description: | + A JSON string that contains the details to update. Contains the following keys: `organization_name` (string): the new name of the organization, `timezone_utc_offset` (string): the new timezone offset of the organization, `is_approval_required` (boolean): whether the approval workflow is enabled or not. `sms_registration_message_template` (string): the SMS message template sent to the receivers inviting them to registration. Sending this field empty sets the `default` value for it. `otp_message_template` (string): the SMS message template sent to the receivers sending the OTP to complete the registration flow. Sending this field empty sets the `default` value for it. For example: '{"organization_name": "NewOrgName", "timezone_utc_offset": "+02:00", "is_approval_required": true, "sms_registration_message_template": "You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register.", "otp_message_template": "{{.OTP}} is your {{.OrganizationName}} phone verification code."}' + format: json + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/MessageResponse' + example: + message: organization profile updated successfully + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /organization/logo: + get: + tags: + - Organization + summary: Retrieve Organization Logo + description: Retrieves the logo of the organization for display in the UI navbar. + operationId: GetOrganizationLogo + responses: + "200": + description: OK + content: + application/octet-stream: + schema: + type: string + format: binary + /organization/circle-config: + patch: + tags: + - Organization + summary: Circle Account Setup + description: "Updates the Circle configuration for the organization. Only account owners have permission to do this. Note: in the first time configuration, all fields are mandatory, but after it is been configured at least once, you can replace a single field at a time." + operationId: PatchOrganizationCircle + requestBody: + description: Circle configuration to be updated + content: + application/json: + schema: + type: object + properties: + api_key: + type: string + description: The Circle API key with permissions to POST & GET transfers + wallet_id: + type: string + description: The ID of the Circle walet from where the funds will + be sent + required: true + responses: + "200": + description: Circle configuration updated successfully + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: Circle configuration updated + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /balances: + get: + tags: + - Balances + summary: Get Organization (Circle) Balances + description: "ATTENTION, this endpoint is only enabled when the tenant distribution account type is `CIRCLE`." + operationId: GetOrganization(Circle)Balances + responses: + "200": + description: Returns the organization's Circle balances + content: + application/json: + schema: + required: + - account + - balances + type: object + properties: + account: + $ref: '#/components/schemas/DistributionAccount' + balances: + type: array + description: The organization's Circle balances + items: + $ref: '#/components/schemas/Balance' + "400": + description: "Bad request, not supported when the distribution account is not of the CIRCLE type." + $ref: '#/components/responses/BadRequestResponse' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BearerAuth: [] + /countries: + get: + tags: + - Organization + summary: Get All Countries + description: Fetches the list of available countries to populate the dropdown box in the New Disbursement flow. The default list reflects geographic coverage of SDP-compatible wallet providers. + operationId: GetAllCountries + responses: + "200": + description: A list of countries + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Country' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /assets: + get: + tags: + - Organization + summary: Get All Assets + description: "Fetches the list of available assets to populate the dropdown box in the New Disbursement flow. Note: the organization must hold a balance in a particular asset to use it in a disbursement." + operationId: GetAllAssets + responses: + "200": + description: A list of assets + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Asset' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + post: + tags: + - Organization + summary: Create Asset + description: "This endpoint is used to create a new asset that can be used in a Disbursement. Note: the organization must hold a balance in a particular asset to use it in a disbursement." + operationId: CreateAsset + requestBody: + description: Asset to be created + content: + application/json: + schema: + required: + - code + - issuer + type: object + properties: + code: + type: string + description: The asset code + example: USDC + issuer: + type: string + description: The issuer + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + required: true + responses: + "201": + description: Asset created successfully + content: {} + "400": + description: "Bad request, invalid request body or the provided code/issuer is invalid." + content: {} + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /assets/{id}: + delete: + tags: + - Organization + summary: Delete Asset + description: This endpoint is used to soft delete an asset. + operationId: DeleteAsset + parameters: + - name: id + in: path + description: ID of the asset to delete + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Asset deleted successfully + content: {} + "204": + description: Asset already deleted + content: {} + "404": + description: Asset not found + content: {} + security: + - BearerAuth: [] + /wallets: + get: + tags: + - Organization + summary: Get All Wallets + description: Fetches the list of available wallet providers to populate the dropdown box in the New Disbursement flow. The organization should coordinate with the wallet provider before selecting a particular wallet provider for a disbursement. The initial list reflects all SDP-compatible wallets. + operationId: GetAllWallets + responses: + "200": + description: A list of wallets + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Wallet' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + /users: + get: + tags: + - Users + summary: Get All Users + description: "Fetches all SDP users within the organization, whether they are active yet or not." + operationId: GetAllUsers + responses: + "200": + description: Returns a paginated list of User Details + content: + application/json: + schema: + $ref: '#/components/schemas/Users' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + post: + tags: + - Users + summary: Create User + description: This endpoint creates a new SDP user as the result of an SDP owner + adding their information in the UI. It also handles sending the invite email. + operationId: CreateUser + requestBody: + content: + '*/*': + schema: + type: object + properties: + first_name: + type: string + last_name: + type: string + roles: + type: array + items: + type: string + email: + type: string + example: + first_name: John + last_name: Doe + roles: + - business + email: email@email.com + required: false + responses: + "201": + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/User' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /users/activation: + patch: + tags: + - Users + summary: Update User Activation Status + description: Updates the SDP user’s activation status. This endpoint is primarily + used to move a user into active status when they accept the invite to join + an SDP organization account and create a password. + operationId: UpdateUserActivationStatus + requestBody: + content: + '*/*': + schema: + type: object + properties: + user_id: + type: string + is_active: + type: boolean + example: + user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd + is_active: false + required: false + responses: + "200": + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/User' + example: + message: user activation was updated successfully + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /users/roles: + get: + tags: + - Users + summary: Get All Roles + description: "Fetches available SDP roles, such as owner, financial controller, business user, and developer." + operationId: GetAllRoles + responses: + "200": + description: OK + content: + application/json: + schema: + type: object + properties: + roles: + type: array + items: + type: string + example: + roles: + - developer + - financial_controller + - business + - owner + example: + roles: + - developer + - financial_controller + - business + - owner + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + patch: + tags: + - Users + summary: Update User Role + description: Updates an SDP user’s role by `user_ID `. + operationId: UpdateUserRole + requestBody: + content: + '*/*': + schema: + type: object + properties: + user_id: + type: string + roles: + type: array + items: + type: string + example: + user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd + roles: + - developer + required: false + responses: + "200": + description: OK + content: + application/json: + schema: + type: object + properties: + message: + type: string + example: + message: user roles were updated successfully + example: + message: user roles were updated successfully + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BearerAuth: [] + x-codegen-request-body-name: body + /tenants: + get: + tags: + - Admin + summary: Get All Tenants + operationId: GetAllTenants + responses: + "200": + description: A list of provisioned tenants with their configurations + content: + application/json: + schema: + $ref: '#/components/schemas/Tenants' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BasicAuth: [] + post: + tags: + - Admin + summary: Create Tenant + operationId: CreateTenant + requestBody: + content: + '*/*': + schema: + required: + - distribution_account_type + - name + - organization_name + - owner_email + - owner_first_name + - owner_last_name + type: object + properties: + name: + type: string + description: "The tenant name. It should match the pattern `^[a-z-]+$`" + distribution_account_type: + type: string + description: The distribution account type of the tenant. + enum: + - DISTRIBUTION_ACCOUNT.STELLAR.ENV + - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT + owner_email: + type: string + description: The owner user e-mail address + owner_first_name: + type: string + description: The owner user first name + owner_last_name: + type: string + description: The owner user last name + organization_name: + type: string + description: The organization name + base_url: + type: string + description: "The SDP backend server's base URL. If this field is not provided, the SDP will generate one based on the host `BASE_URL` configuration, and the tenant name." + sdp_ui_base_url: + type: string + description: "The SDP UI/dashboard Base URL. If this field is not provided, the SDP will generate one based on the host `SDP_UI_BASE_URL` configuration, and the tenant name." + example: + name: redcorp + distribution_account_type: DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + owner_email: owner@redcorp.org + owner_first_name: Owner + owner_last_name: Last + organization_name: Red Corp + base_url: https://redcorp-backend.sdp.org + sdp_ui_base_url: https://redcorp.sdp.org + required: false + responses: + "201": + description: Provision a new tenant + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + security: + - BasicAuth: [] + x-codegen-request-body-name: body + /tenants/{id}: + get: + tags: + - Admin + summary: Retrieve a Tenant + operationId: RetrieveATenant + parameters: + - name: id + in: path + description: ID or Name of the `Tenant`. + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: Tenant details + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BasicAuth: [] + delete: + tags: + - Admin + summary: Soft delete a Tenant + operationId: SoftDeleteATenant + parameters: + - name: id + in: path + description: ID of the `Tenant`. + required: true + style: simple + explode: false + schema: + type: string + responses: + "200": + description: "Deleted Tenant details, with a non-empty `deleted_at` field" + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + "304": + description: The tenant was already deleted before this request. + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + "400": + description: "Bad request, when the tenant is not elligible to be deleted. For example, when the tenant is the default tenant or when it has not been patched with the deactivated status." + $ref: '#/components/responses/BadRequestResponse' + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BasicAuth: [] + patch: + tags: + - Admin + summary: Update a Tenant + description: This endpoint updates the Tenant data. + operationId: UpdateATenant + parameters: + - name: id + in: path + description: ID of the `Tenant`. + required: true + style: simple + explode: false + schema: + type: string + requestBody: + description: List of fields to update for the tenant + content: + '*/*': + schema: + type: object + properties: + base_url: + type: string + description: The SDP backend server's base URL. + sdp_ui_base_url: + type: string + description: The SDP UI/dashboard Base URL. + status: + type: string + enum: + - TENANT_CREATED + - TENANT_PROVISIONED + - TENANT_ACTIVATED + - TENANT_DEACTIVATED + required: true + responses: + "200": + description: Updated Tenant details + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + "400": + description: Bad Request + content: + application/json: + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "404": + description: Not Found + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not found + extras: + status: 404 + message: Resource not found + security: + - BasicAuth: [] + x-codegen-request-body-name: body + /tenants/default-tenant: + post: + tags: + - Admin + summary: Default Tenant + description: | + Sets the tenant specified in the request body as the default one, resolving all the incoming API request to that tenant when the env `SINGLE_TENANT_MODE` is set to true. Once set, the default tenant can be overwritten but never unset, although it is only effective when `SINGLE_TENANT_MODE` is set to true. + + Default tenant is useful for development purposes or when the SDP is used by a single organization. This allows the organization to skip specifying the tenant in every request and simplifies the SDP setup operationally by removing the need of providing wildcard TLS certificates for multi-tenant configurations. + operationId: DefaultTenant + requestBody: + content: + '*/*': + schema: + required: + - id + type: object + properties: + id: + type: string + description: The tenant id. + example: + id: 1736bed3-7b92-4760-8ff2-51fb08ee079f + required: false + responses: + "201": + description: Default tenant details + content: + application/json: + schema: + $ref: '#/components/schemas/Tenant' + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + "403": + description: Forbidden + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + example: + error: Forbidden + security: + - BasicAuth: [] + x-codegen-request-body-name: body +components: + schemas: + Amount: + type: object + properties: + asset_code: + type: string + example: USDC + asset_issuer: + type: string + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + received_amount: + type: string + example: "100.00" + Asset: + type: object + properties: + id: + type: string + example: ffaec4b3-46b0-4db4-a4c4-6c3508057705 + code: + type: string + description: Asset code + example: USDC + issuer: + type: string + description: Asset issuer address + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + created_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + updated_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + deleted_at: + type: string + format: date-time + example: 2023-06-03T10:55:51Z + description: The Stellar asset object + Country: + type: object + properties: + code: + type: string + description: Three-character ISO 3166 code + example: UKR + name: + type: string + description: Country name + example: Ukraine + created_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + updated_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + Disbursement: + type: object + properties: + id: + type: string + description: The unique identifier of the disbursement + example: 619da857-8725-4c58-933d-c120a458e0f5 + name: + type: string + description: The name of the disbursement + example: Disbursement Name + country: + $ref: '#/components/schemas/Country' + wallet: + $ref: '#/components/schemas/Wallet' + asset: + $ref: '#/components/schemas/Asset' + status: + $ref: '#/components/schemas/DisbursementStatus' + verification_field: + $ref: '#/components/schemas/VerificationField' + status_history: + $ref: '#/components/schemas/DisbursementStatusHistory' + file_name: + type: string + example: disbursement-feb-03-2023.csv + created_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + updated_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + total_payments: + type: integer + description: Total number of payments + example: 10 + total_payments_sent: + type: integer + description: Total number of successful payments + example: 8 + total_payments_failed: + type: integer + description: Total number of failed payments + example: 1 + total_payments_remaining: + type: integer + description: Total number of remaining payments + example: 1 + amount_disbursed: + type: string + description: The total amount disbursed so far + example: "800.00" + total_amount: + type: string + description: The total amount to be disbursed + example: "1000.00" + average_amount: + type: string + description: The average amount per payment + example: "100.00" + DisbursementLite: + type: object + properties: + id: + type: string + description: The unique identifier of the disbursement + format: uuid + example: c51ba1d5-52d3-412f-a59c-6ef32d59ab43 + name: + type: string + description: The name of the disbursement + example: disbursement-june-29 + status: + $ref: '#/components/schemas/DisbursementStatus' + created_at: + type: string + description: The creation timestamp of the disbursement + format: date-time + example: 2023-06-30T01:22:57.831975Z + updated_at: + type: string + description: The last update timestamp of the disbursement + format: date-time + example: 2023-06-30T01:22:58.316511Z + DisbursementPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/Disbursement' + example: + pagination: + next: /disbursements?page=3&page_limit=1 + prev: /disbursements?page=1&page_limit=1 + pages: 4 + total: 4 + data: + id: 619da857-8725-4c58-933d-c120a458e0f5 + name: Disbursement Name + country: + code: UKR + name: Ukraine + created_at: 2023-02-03T10:45:51.000Z + updated_at: 2023-02-03T10:45:51.000Z + wallet: + id: e2de8544-b7e2-40a9-ad40-411f70d5c4bf + name: Vibrant + homepage: https://vibrantapp.com + asset: + id: 25923001-508a-4629-9186-c41211b2a3d0 + code: USDC + issuer: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + status: READY + verification_field: DATE_OF_BIRTH + status_history: + - status: DRAFT + timestamp: 2023-02-03T10:45:51.000Z + - user_id: 2ec7f1f9-add3-4e6d-9d14-bd8ac5e88872 + status: READY + timestamp: 2023-02-03T10:45:51.000Z + file_name: disbursement-february-03-2023.csv + created_at: 2023-02-03T10:45:51.000Z + updated_at: 2023-02-03T10:45:51.000Z + total_payments: 10 + total_payments_sent: 8 + total_payments_failed: 1 + total_payments_remaining: 1 + amount_disbursed: "800.00" + total_amount: "1000.00" + average_amount: "100.00" + DisbursementReceiver: + type: object + properties: + id: + type: string + example: ec3a57c0-5660-4b5a-af76-acadc7b09b93 + email: + type: string + example: receiver@mail.org + phone_number: + type: string + example: "+15552368475" + external_id: + type: string + example: usr129001 + receiver_wallet: + $ref: '#/components/schemas/ReceiverWallet' + payment: + $ref: '#/components/schemas/Payment' + created_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + updated_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + DisbursementReceiverPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/DisbursementReceiver' + DisbursementsStatistics: + type: object + properties: + payment_counters: + $ref: '#/components/schemas/PaymentCounters' + payment_amounts_by_asset: + type: array + items: + $ref: '#/components/schemas/PaymentAmountsByAsset' + receiver_wallets_counters: + $ref: '#/components/schemas/ReceiverWalletsCounters' + total_receivers: + type: integer + description: Total number of receivers + format: int64 + example: 100 + DisbursementStatus: + type: string + enum: + - DRAFT + - READY + - STARTED + - PAUSED + - COMPLETED + DisbursementStatusHistory: + type: array + items: + $ref: '#/components/schemas/DisbursementStatusHistoryEntry' + DisbursementStatusHistoryEntry: + type: object + properties: + user_id: + type: string + example: 3f351b9e-ed0f-40fa-a314-14757b42dab1 + status: + $ref: '#/components/schemas/DisbursementStatus' + timestamp: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + GeneralStatistics: + type: object + properties: + total_disbursements: + type: integer + description: Total number of disbursements + format: int64 + example: 20 + payment_counters: + $ref: '#/components/schemas/PaymentCounters' + payment_amounts_by_asset: + type: array + items: + $ref: '#/components/schemas/PaymentAmountsByAsset' + receiver_wallets_counters: + $ref: '#/components/schemas/ReceiverWalletsCounters' + total_receivers: + type: integer + description: Total number of receivers + format: int64 + example: 1000 + MessageResponse: + required: + - message + type: object + properties: + message: + type: string + Organization: + required: + - distribution_account + - is_approval_required + - logo_url + - name + - payment_cancellation_period_days + - privacy_policy_link + - sms_resend_interval + - timezone_utc_offset + type: object + properties: + name: + type: string + example: Stellar Aid + logo_url: + type: string + example: https://stellar-disbursement-platform-backend-dev.stellar.org/organization/logo + distribution_account: + $ref: '#/components/schemas/DistributionAccount' + distribution_account_public_key: + type: string + description: DEPRECATED! Please refer to distribution_account.address instead. + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + timezone_utc_offset: + type: string + example: +00:00 + is_approval_required: + type: boolean + description: Enables multi-user approval workflow for disbursements + example: true + sms_resend_interval: + type: integer + description: "The amount of days that the SDP will wait to resend the invitation SMS to the receivers that have not registered. If `0`, that means the resending invitation SMS feature is disabled." + example: 5 + payment_cancellation_period_days: + type: integer + description: "The amount of days that the SDP will wait to cancel a payment that is waiting for the receiver to register. If `0`, that means the payment cancellation feature is disabled." + example: 5 + privacy_policy_link: + type: string + description: The link to the organization privacy policy + example: https://stellar.org/privacy-policy + sms_registration_message_template: + type: string + description: "The custom SMS message template set for the registration invite. The `default` message isn't returned. In the message's content it's possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.RegistrationLink}} which is the link generated by SDP to send to the receiver (in case this is not present in the message, it's automatically appended at the end)." + example: "You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register." + otp_message_template: + type: string + description: "The custom OTP message template set to send OTP code to the receiver complete the registration flow. The `default` message isn't returned. In the message's content it's possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.OTP}} which is the OTP code to send to the receiver complete the registration flow (in case this is not present in the message, it's automatically appended at the end)." + example: "{{.OTP}} is your {{.OrganizationName}} phone verification code." + DistributionAccount: + required: + - status + - type + type: object + properties: + address: + type: string + description: "The address of the distribution account, present when the account type is `STELLAR`." + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + circle_wallet_id: + type: string + description: "The ID of the Circle wallet, present when the account type is `CIRCLE`." + example: "1000646072" + type: + type: string + description: The type of the distribution account. + example: DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + enum: + - DISTRIBUTION_ACCOUNT.STELLAR.ENV + - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT + status: + type: string + example: ACTIVE + enum: + - ACTIVE + - PENDING_USER_ACTIVATION + Balance: + type: object + properties: + asset_code: + type: string + description: The asset code of the balance in the Stellar network. + example: USDC + asset_issuer: + type: string + description: The asset issuer of the balance in the Stellar network. + example: GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5 + amount: + type: string + description: The amount of the balance. + example: "100.00" + description: "The balances of the organization's distribution account. Currently, this is only used for the Circle distribution accounts." + Pagination: + type: object + properties: + next: + type: string + example: "?page=3&page_limit=2" + prev: + type: string + example: "?page=1&page_limit=2" + pages: + type: integer + example: 8 + total: + type: integer + example: 16 + Payment: + type: object + properties: + id: + type: string + example: ddf22f55-3259-4822-a4e2-ce01334997f4 + amount: + type: string + description: The amount of the payment + example: "100.00" + stellar_transaction_id: + type: string + description: "The ID of the transaction in the Stellar network. It can be used tio track the payment in the Stellar network using [Stellar Laboratory](https://laboratory.stellar.org/), or [StellarExpert](https://stellar.expert/)." + example: 0b339d1c89d314186b8147c2af4c9a9ed5bbdbcd7ada8d138633907649b + circle_transfer_request_id: + type: string + description: The Circle transfer request ID. It is only present when the + payment was made using Circle. + example: 74a68b6a-3f67-424b-b8b0-e593a19d7463 + stellar_operation_id: + type: string + status: + $ref: '#/components/schemas/PaymentStatus' + status_history: + $ref: '#/components/schemas/PaymentStatusHistory' + disbursement: + $ref: '#/components/schemas/DisbursementLite' + asset: + $ref: '#/components/schemas/Asset' + receiver_wallet: + $ref: '#/components/schemas/ReceiverWalletLite' + created_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + updated_at: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + PaymentPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/Payment' + PaymentStatus: + type: string + description: The status of the payment + enum: + - DRAFT + - READY + - PENDING + - PAUSED + - SUCCESS + - FAILED + PaymentStatusHistory: + type: array + description: An aggregated list of metadata objects containing the statuses + and the timestamp of when these status changes occurred. + items: + $ref: '#/components/schemas/PaymentStatusHistoryEntry' + PaymentStatusHistoryEntry: + type: object + properties: + status: + $ref: '#/components/schemas/PaymentStatus' + status_message: + type: string + timestamp: + type: string + format: date-time + example: 2023-02-03T10:45:51Z + PaymentCounters: + type: object + properties: + draft: + type: integer + format: int64 + example: 1 + ready: + type: integer + format: int64 + example: 2 + pending: + type: integer + format: int64 + example: 3 + paused: + type: integer + format: int64 + example: 1 + success: + type: integer + format: int64 + example: 5 + failed: + type: integer + format: int64 + example: 1 + total: + type: integer + format: int64 + example: 14 + PaymentAmountsByAsset: + type: object + properties: + asset_code: + type: string + example: USDC + payment_amounts: + $ref: '#/components/schemas/PaymentAmounts' + PaymentAmounts: + type: object + properties: + draft: + type: string + example: "100.00" + ready: + type: string + example: "200.00" + pending: + type: string + example: "300.00" + paused: + type: string + example: "100.00" + success: + type: string + example: "500.00" + failed: + type: string + example: "100.00" + average: + type: string + example: "100.00" + total: + type: string + example: "1400.00" + Profile: + type: object + properties: + first_name: + type: string + example: Jane + last_name: + type: string + example: Doe + email: + type: string + example: jdoe@mail.org + roles: + type: array + items: + type: string + organization_name: + type: string + example: + first_name: Jane + last_name: Doe + email: jdoe@mail.org + roles: + - developer + organization_name: Stellar Aid + Receiver: + type: object + properties: + id: + type: string + example: f83bb638-dda4-41e6-80c9-d03e6eec2aef + phone_number: + type: string + example: "+15552368475" + external_id: + type: string + example: usr12334 + email: + type: string + example: jdoe@mail.org + created_at: + type: string + example: 2023-02-03T10:45:51.000Z + total_payments: + type: string + example: "2" + successful_payments: + type: string + example: "2" + failed_payments: + type: string + example: "0" + remaining_payments: + type: string + example: "0" + registered_wallets: + type: string + example: "1" + received_amounts: + type: array + items: + $ref: '#/components/schemas/Amount' + wallets: + type: array + items: + $ref: '#/components/schemas/ReceiverWallet' + ReceiverLite: + type: object + properties: + id: + type: string + example: 029e2ed0-feb6-4c40-8b47-0836a85741a2 + ReceiverPagination: + type: object + properties: + pagination: + $ref: '#/components/schemas/Pagination' + data: + type: array + items: + $ref: '#/components/schemas/Receiver' + ReceiverWallet: + type: object + properties: + id: + type: string + example: 803031d4-1d04-4879-b6d9-dc5641f9988e + receiver: + $ref: '#/components/schemas/ReceiverLite' + wallet: + $ref: '#/components/schemas/WalletLite' + stellar_address: + type: string + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + stellar_memo: + type: string + stellar_memo_type: + type: string + created_at: + type: string + example: 2023-02-03T10:45:51.000Z + updated_at: + type: string + example: 2023-02-03T10:45:51.000Z + invited_at: + type: string + example: 2023-02-09T10:45:51.000Z + last_sms_sent: + type: string + description: timestamp when the receiver last received an SMS about this + wallet + example: 2023-02-10T10:45:51.000Z + total_payments: + type: string + example: "2" + payments_received: + type: string + example: "2" + failed_payments: + type: string + example: "0" + remaining_payments: + type: string + example: "0" + received_amounts: + type: array + items: + $ref: '#/components/schemas/Amount' + status: + $ref: '#/components/schemas/ReceiversWalletStatus' + status_history: + type: array + items: + $ref: '#/components/schemas/ReceiversWalletStatusHistoryEntry' + ReceiverWalletLite: + type: object + properties: + id: + type: string + example: 803031d4-1d04-4879-b6d9-dc5641f9988e + receiver: + $ref: '#/components/schemas/ReceiverLite' + wallet: + $ref: '#/components/schemas/WalletLite' + stellar_address: + type: string + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + created_at: + type: string + example: 2023-02-03T10:45:51.000Z + updated_at: + type: string + example: 2023-02-03T10:45:51.000Z + status: + $ref: '#/components/schemas/ReceiversWalletStatus' + ReceiverWalletsCounters: + type: object + properties: + draft: + type: integer + format: int64 + example: 1 + ready: + type: integer + format: int64 + example: 1 + registered: + type: integer + format: int64 + example: 1 + flagged: + type: integer + format: int64 + example: 1 + total: + type: integer + format: int64 + example: 4 + ReceiversWalletStatus: + type: string + enum: + - DRAFT + - READY + - REGISTERED + - FLAGGED + ReceiversWalletStatusHistoryEntry: + type: object + properties: + status: + $ref: '#/components/schemas/ReceiversWalletStatus' + timestamp: + type: string + format: date-time + example: 2023-02-10T10:45:51Z + Users: + type: array + items: + $ref: '#/components/schemas/User' + User: + required: + - email + - first_name + - id + - is_active + - last_name + - roles + type: object + properties: + id: + type: string + example: 1736bed3-7b92-4760-8ff2-51fb08ee079f + first_name: + type: string + example: John + last_name: + type: string + example: Doe + email: + type: string + roles: + type: array + items: + type: string + is_active: + type: boolean + example: + - id: 7a4c6555-1f73-49b3-a211-f95bd2b8ec90 + first_name: John + last_name: Doe + email: email@email.com + roles: + - developer + is_active: true + - id: 5f4df1dd-c84f-482a-84ad-541ffd46e75a + first_name: Jane + last_name: Doe + email: email@email.com + roles: + - financial_controller + is_active: false + VerificationField: + type: string + enum: + - DATE_OF_BIRTH + - PIN + - NATIONAL_ID_NUMBER + Wallet: + type: object + properties: + id: + type: string + example: 5ada9ed5-455a-4782-a0ee-160767e0deb1 + name: + type: string + example: Vibrant Assist + homepage: + type: string + example: https://vibrantapp.com + sep_10_client_domain: + type: string + example: api-dev.vibrantapp.com + deep_link_schema: + type: string + example: https://vibrantapp.com/sdp-dev + created_at: + type: string + format: date-time + example: 2023-07-31T20:50:45.648Z + updated_at: + type: string + format: date-time + example: 2023-07-31T20:50:45.648Z + WalletLite: + type: object + properties: + id: + type: string + example: 5ada9ed5-455a-4782-a0ee-160767e0deb1 + name: + type: string + example: Vibrant Assist + homepage: + type: string + example: https://vibrantapp.com + ReceiverRegistrationRequest: + type: object + properties: + phone_number: + type: string + description: Phone number used in registration + otp: + type: string + description: One-Time Password received for verification + verification: + type: string + description: Verification value provided by the user + verification_type: + type: string + description: Type of verification value + enum: + - DATE_OF_BIRTH + - PIN + - NATIONAL_ID_NUMBER + recaptcha_token: + type: string + description: Token received from Google reCAPTCHA + PatchReceiverRequest: + type: object + properties: + date_of_birth: + type: string + description: Date of birth of the receiver + pin: + type: string + description: Personal identification number of the receiver + national_id: + type: string + description: National ID of the receiver + email: + type: string + description: Email of the receiver + external_id: + type: string + description: External ID of the receiver + example: + date_of_birth: "1980-01-01" + pin: "1234" + national_id: "123456789" + email: john@example.com + external_id: external123 + Tenant: + type: object + properties: + id: + type: string + example: 1736bed3-7b92-4760-8ff2-51fb08ee079f + name: + type: string + description: "The tenant name. It should match the pattern `^[a-z-]+$`." + example: bluecorp + base_url: + type: string + description: The SDP backend server's base URL. + example: https://bluecorp-backend.sdp.org + sdp_ui_base_url: + type: string + description: The SDP UI/dashboard Base URL. + example: https://bluecorp.sdp.org + status: + type: string + enum: + - TENANT_CREATED + - TENANT_PROVISIONED + - TENANT_ACTIVATED + - TENANT_DEACTIVATED + distribution_account_address: + type: string + description: The Stellar account address used for distributing funds. + example: GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL + distribution_account_type: + type: string + description: The Stellar account type used for distributing funds. + enum: + - DISTRIBUTION_ACCOUNT.STELLAR.ENV + - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT + - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT + distribution_account_status: + type: string + description: The status of the distribution account used for distributing + funds. + enum: + - ACTIVE + - PENDING_USER_ACTIVATION + is_default: + type: boolean + description: Boolean flag that shows whether the tenant is the default or + not. + default: false + created_at: + type: string + format: date-time + example: 2024-03-27T17:21:51Z + updated_at: + type: string + format: date-time + example: 2024-03-27T17:21:51Z + deleted_at: + type: string + description: The timestamp when the tenant was (soft) deleted. + format: date-time + example: 2024-03-27T17:21:51Z + required: + - base_url + - created_at + - distribution_account_address + - distribution_account_status + - distribution_account_type + - id + - is_default + - name + - sdp_ui_base_url + - status + - updated_at + example: + id: 840dca45-d1df-44cd-83c1-65c04235c25f + name: redcorp + base_url: https://redcorp-backend.sdp.org + sdp_ui_base_url: https://redcorp.sdp.org + status: TENANT_PROVISIONED + distribution_account: GCQVDMPOEN3HHJJ64V42KUTONOXN7C6V2PSVPALEVJ7PIYOB6M3DJV7N + is_default: true + created_at: 2024-03-27T17:21:51.000Z + updated_at: 2024-03-27T17:21:51.000Z + Tenants: + type: array + items: + $ref: '#/components/schemas/Tenant' + responses: + UnauthorizedResponse: + description: Unauthorized + content: + '*/*': + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + application/json: + example: + error: Not authorized + extras: + status: 401 + message: Not authorized + ForbiddenResponse: + description: Forbidden + content: + '*/*': + schema: + type: object + properties: + error: + type: string + example: + error: Forbidden + application/json: + example: + error: Forbidden + BadRequestResponse: + description: Bad Request + content: + '*/*': + schema: + type: object + properties: + error: + type: string + description: Details about the error + extras: + type: object + properties: {} + example: + error: Invalid input + extras: + field_foo: field_foo is required + field_bar: field_bar needs to be an integer + NotFoundResponse: + description: Not Found + content: + '*/*': + schema: + type: object + properties: + error: + type: string + extras: + type: object + properties: + status: + type: number + message: + type: string + application/json: + example: + error: Not found + extras: + status: 404 + message: Resource not found + securitySchemes: + BearerAuth: + type: apiKey + description: "JWT used for authentication, signed with an ES256 private key." + name: Authorization + in: header +x-original-swagger-version: "2.0" diff --git a/openapi/stellar-disbursement-platform/main.yml b/openapi/stellar-disbursement-platform/main.yml deleted file mode 100644 index d00c6851c..000000000 --- a/openapi/stellar-disbursement-platform/main.yml +++ /dev/null @@ -1,3243 +0,0 @@ -swagger: '2.0' -info: - title: Stellar Disbursement Platform API - version: '' - description: The Stellar Disbursement Platform (SDP) is a tool built for organizations to make bulk payments to a group of recipients over the Stellar network. You can read more about using the SDP [here](https://developers.stellar.org/docs/category/use-the-stellar-disbursement-platform). -paths: - /login: - post: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - token: >- - eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - schema: - type: object - properties: - token: - type: string - example: - token: >- - eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Invalid credentials - extras: - status: 400 - message: Invalid username or password - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Invalid credentials - extras: - status: 400 - message: Invalid username or password - summary: Log In - operationId: Log In - description: 'Allows credentialed SDP users to log in to the SDP dashboard with a password. Note: all passwords must be at least 8 characters long and a combination of uppercase letters, lowercase letters, numbers, and symbols.' - tags: - - Authentication - parameters: - - name: body - in: body - schema: - type: object - properties: - email: - type: string - password: - type: string - recaptcha_token: - type: string - description: "Token for reCAPTCHA validation. ReCAPTCHA token is required unless the `DISABLE_RECAPTCHA` configuration is set to true." - required: - - email - - password - example: - email: johndoe@mail.com - password: mysecret - produces: - - application/json - /refresh-token: - post: - responses: - '200': - description: Returns a new access token - headers: {} - examples: - application/json: - token: >- - eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - schema: - type: object - properties: - token: - type: string - example: - token: >- - eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjp7ImlkIjoidXNlci1pZCIsImVtYWlsIjoiZW1haWxAZW1haWwuY29tIiwicm9sZXMiOlt7Im5hbWUiOiJTdXBlcnZpc29yIn1dfSwiZXhwIjoxNjc1OTYyOTQ3fQ.4Zj9yBXch-iuFYF-kc_EhHPxjpwp_egMOLbOv4bZKO1MFvcmEgZ5MlXH1_1fZfgUxaNBcMCdRM6MGSqKocwGnA - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - summary: Refresh Token - operationId: Refresh Token - description: 'A user’s token expires after 15 minutes. This endpoint handles refreshing the user’s token without disrupting their experience. It is triggered within the 30-second window before the token expires.' - tags: - - Authentication - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - /mfa: - post: - summary: Provide Multi-Factor Authentication - description: 'Governs the multi-factor authentication process for SDP user login, including the ability to remember the device so MFA is not always required.' - operationId: authenticateMFA - tags: - - Authentication - parameters: - - in: body - name: body - description: MFA request data - required: true - schema: - type: object - properties: - mfa_code: - type: string - description: Multi-factor authentication code - remember_me: - type: boolean - description: Boolean flag to remember the user - recaptcha_token: - type: string - description: "Token for reCAPTCHA validation. ReCAPTCHA token is required unless the `DISABLE_RECAPTCHA` configuration is set to true." - required: - - mfa_code - - in: header - name: Device-ID - type: string - required: false - description: Identifier of the device - responses: - '200': - description: Successful authentication - schema: - type: object - properties: - token: - type: string - description: Authentication token - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - produces: - - application/json - /forgot-password: - post: - summary: Forgot Password - description: 'Sends an email with a token to an SDP user who has gone through the Forgot Password process.' - operationId: forgotPassword - tags: - - Authentication - parameters: - - in: body - name: body - description: Forgot password request data - required: true - schema: - type: object - properties: - email: - type: string - format: email - description: Email of the user - recaptcha_token: - type: string - description: Token for reCAPTCHA validation - required: - - email - responses: - '200': - description: Forgot password email sent successfully - schema: - $ref: '#/definitions/MessageResponse' - '400': - $ref: '#/responses/BadRequestResponse' - /reset-password: - post: - summary: Reset Rassword - description: 'Allows an SDP user who has gone through the Forgot Password process to set their new password with a token sent via email.' - operationId: resetPassword - tags: - - Authentication - parameters: - - in: body - name: body - description: Reset password request data - required: true - schema: - type: object - properties: - password: - type: string - description: New password for the user - reset_token: - type: string - description: Token used to identify a valid password reset request - required: - - password - - reset_token - responses: - '200': - description: Password reset successfully - '400': - $ref: '#/responses/BadRequestResponse' - produces: - - application/json - /disbursements: - get: - responses: - '200': - description: "A list of Disbursement details" - schema: - $ref: '#/definitions/DisbursementPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: List All Disbursements - operationId: List All Disbursements - description: 'Fetches all disbursements the organization has created. This endpoint supports pagination. The response includes basic aggregations on payments within the disbursement.' - tags: - - Disbursements - parameters: - - name: page - in: query - description: The page requested. - required: false - type: number - default: 1 - - name: page_limit - in: query - description: Define how many results will be returned in the response. - required: false - type: number - default: 20 - - name: q - in: query - description: A search term used to query through the disbursement names. - required: false - type: string - - name: status - in: query - description: Exact match on the status of the disbursement. - required: false - x-example: DRAFT - type: string - enum: - - DRAFT - - READY - - STARTED - - PAUSED - - COMPLETED - - name: created_at_after - in: query - description: >- - Only return disbursements that are created after this date. Format: - YYYY-MM-DD - required: false - x-example: '2006-01-02' - type: string - - name: created_at_before - in: query - description: >- - Only return disbursements that are created before this date. Format: - YYYY-MM-DD - required: false - x-example: '2006-01-02' - type: string - - name: sort - in: query - description: Field used to sort disbursements - required: false - type: string - default: created_at - enum: - - name - - created_at - - name: direction - in: query - description: Direction for sorting disbursements. - required: false - type: string - default: asc - enum: - - asc - - desc - produces: - - application/json - security: - - BearerAuth: [] - post: - responses: - '201': - description: "A new disbursement" - schema: - $ref: '#/definitions/Disbursement' - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Bad request - extras: - status: 400 - message: Invalid country code provided - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Bad request - extras: - status: 400 - message: Invalid country code provided - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Create Disbursement - operationId: Create Disbursement - description: 'Creates a new disbursement in ```draft``` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from ```draft``` to ```ready```.' - tags: - - Disbursements - parameters: - - name: body - in: body - schema: - type: object - properties: - name: - type: string - wallet_id: - type: string - asset_id: - type: string - country_code: - type: string - description: 'Three-character ISO 3166 code' - example: - name: My New Disbursement name - wallet_id: e2de8544-b7e2-40a9-ad40-411f70d5c4bf - asset_id: d227a68c-2f40-11ee-be56-0242ac120002 - country_code: UKR - produces: - - application/json - security: - - BearerAuth: [] - /disbursements/{id}: - get: - responses: - '200': - description: "Disbursement details" - schema: - $ref: '#/definitions/Disbursement' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Retrieve a Disbursement - operationId: Retrieve a Disbursement - description: 'Fetches information on a specific disbursement by ```id```.' - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the `Disbursement`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /disbursements/{id}/receivers: - get: - responses: - '200': - description: "A list of Disbursement Receivers" - schema: - $ref: '#/definitions/DisbursementReceiverPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: List All Disbursement Receivers - operationId: List All Disbursement Receivers - description: 'Fetches a list of receivers within a specific disbursement using the disbursement ```id```. This endpoint supports pagination.' - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the Disbursement - required: true - type: string - - name: page - in: query - description: The page number to fetch. - required: false - type: number - - name: page_limit - in: query - description: The number of records to return per page. - required: false - type: number - produces: - - application/json - security: - - BearerAuth: [] - /disbursements/{id}/instructions: - post: - responses: - '201': - description: Created - headers: {} - examples: - application/json: - message: File uploaded succesfully - schema: - type: object - properties: - message: - type: string - example: - message: File uploaded succesfully - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Invalid file format *.xyz - extras: - foo: bar - message: Not authorized - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - foo: - type: string - message: - type: string - example: - error: Invalid file format *.xyz - extras: - foo: bar - message: Not authorized - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Upload Disbursement Instructions - operationId: Upload Disbursement Instructions - description: 'Adds a file containing a list of receivers to a ```draft``` disbursement. This step is required before a disbursement can begin. The file must be a CSV and has a standard format that can be found at ```dev/sample/sample-disbursement.csv```. The operation is idempotent, guaranteed by deleting and recreating the disbursement attributes when this endpoint is called.' - consumes: - - multipart/form-data - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the Disbursement - required: true - type: string - - name: "file" - in: "formData" - description: "Disbursement instructions file to upload. The CSV file should be in the following format: `phone,id,amount,verification`" - required: true - type: "file" - produces: - - application/json - security: - - BearerAuth: [] - get: - responses: - '200': - description: "Disbursement CSV file" - headers: - Content-Disposition: - type: string - description: "The filename of the returned CSV file." - Content-Type: - type: string - description: "text/csv" - examples: - text/csv: '' - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Invalid request - extras: - foo: bar - message: Invalid request parameters - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - foo: - type: string - message: - type: string - example: - error: Invalid request - extras: - foo: bar - message: Invalid request parameters - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Download Disbursement Instructions - operationId: Download Disbursement Instructions - description: 'Allows an SDP user to download the raw CSV file that was uploaded when creating the disbursement. This will only return results after instructions have been attached to a draft disbursement.' - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the Disbursement - required: true - type: string - produces: - - text/csv - security: - - BearerAuth: [] - /disbursements/{id}/status: - patch: - responses: - '200': - description: "Message Response" - schema: - $ref: '#/definitions/MessageResponse' - examples: - application/json: - message: Disbursement started - '400': - description: Bad Request - headers: {} - examples: - application/json: - error: Bad request - extras: - status: 400 - message: Disbursement is not ready to be started - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Bad request - extras: - status: 400 - message: Disbursement is not ready to be started - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Disbursement not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Disbursement not found - summary: Update a Disbursement Status - operationId: Update a Disbursement Status - description: 'Updates the status of a disbursement according to the state machine. The disbursement must move from ```draft``` to ```ready``` in order to start the disbursement and trigger payments. Payments will start as soon as this endpoint is hit. A disbursement can also be moved into ```paused``` state by an SDP user to prevent further payments from going out and restarted when they are ready.' - tags: - - Disbursements - parameters: - - name: id - in: path - description: ID of the disbursement - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /payments: - get: - responses: - '200': - description: "A paginated list of payments" - schema: - $ref: '#/definitions/PaymentPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: List All Payments - operationId: List All Payments - description: 'Returns all individual payments matching the request criteria. This endpoint supports pagination and filtering on payment status, receiver ID, and timestamp. Each payment has details on the transaction itself, receiver, disbursement, asset, status history, and blockchain information.' - tags: - - Payments - parameters: - - name: page - in: query - description: The page requested. - required: false - type: number - default: 1 - - name: page_limit - in: query - description: Define how many results will be returned in the response. - required: false - type: number - default: 20 - - name: status - in: query - description: Exact match on the status of the payment. - required: false - x-example: DRAFT - type: string - enum: - - DRAFT - - READY - - PENDING - - PAUSED - - SUCCESS - - FAILED - - name: receiver_id - in: query - description: UUID that represents a receiver in the database - required: false - x-example: b6b667ad-6cc2-46cf-9be7-561daace7d48 - type: string - - name: created_at_after - in: query - description: >- - Only return payments that are created after this date. Format: - YYYY-MM-DD - required: false - x-example: '2006-01-02' - type: string - - name: created_at_before - in: query - description: >- - Only return payments that are created before this date. Format: - YYYY-MM-DD - required: false - x-example: '2006-01-02' - type: string - - name: sort - in: query - description: Field used to sort payments - required: false - type: string - default: created_at - enum: - - created_at - - name: direction - in: query - description: Direction for sorting payments. - required: false - type: string - default: asc - enum: - - asc - - desc - produces: - - application/json - security: - - BearerAuth: [] - /payments/{id}: - get: - responses: - '200': - description: "Payment details" - schema: - $ref: '#/definitions/Payment' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Payment not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not found - extras: - status: 404 - message: Payment not found - summary: Retrieve a Payment - operationId: Retrieve a Payment - description: 'Fetches detailed information on a specific payment by ```id```.' - tags: - - Payments - parameters: - - name: id - in: path - description: ID of the `Payment`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /receivers: - get: - responses: - '200': - description: "A paginated list of Receiver details" - schema: - $ref: '#/definitions/ReceiverPagination' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: List All Receivers - operationId: List All Receivers - description: 'Returns all receivers matching the request criteria. This endpoint supports pagination and filtering on receiver status, receiver attributes, and timestamp. Each payment has details on the receiver, high-level payments metrics, and wallets associated with the receiver.' - tags: - - Receivers - parameters: - - name: page - in: query - description: The page requested. - required: false - type: number - default: 1 - - name: page_limit - in: query - description: Define how many results will be returned in the response. - required: false - type: number - default: 20 - - name: q - in: query - description: >- - A search term used to query through the receiver phone_number, - email, and ID. - required: false - type: string - - name: status - in: query - description: Exact match on the status of the receiver wallet. - required: false - x-example: DRAFT - type: string - enum: - - DRAFT - - READY - - REGISTERED - - FLAGGED - - name: created_at_after - in: query - description: >- - Only return receivers that are created after this date. Format: - YYYY-MM-DD - required: false - x-example: '2006-01-02' - type: string - - name: created_at_before - in: query - description: >- - Only return receivers that are created before this date. Format: - YYYY-MM-DD - required: false - x-example: '2006-01-02' - type: string - - name: sort - in: query - description: Field used to sort receivers - required: false - type: string - default: created_at - enum: - - created_at - - name: direction - in: query - description: Direction for sorting receivers. - required: false - type: string - default: asc - enum: - - asc - - desc - produces: - - application/json - security: - - BearerAuth: [] - /receivers/{id}: - get: - responses: - '200': - description: "Receiver Details" - schema: - $ref: '#/definitions/Receiver' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - $ref: '#/responses/NotFoundResponse' - - summary: Retrieve a Receiver - operationId: Retrieve a Receiver - description: 'Fetches detailed information on a specific receiver by ```id```, including all associated wallets.' - tags: - - Receivers - parameters: - - name: id - in: path - description: ID of the `Receiver`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: "Updated Receiver Details" - schema: - $ref: '#/definitions/Receiver' - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - '404': - $ref: '#/responses/NotFoundResponse' - summary: Update a Receiver - operationId: Update a Receiver - description: 'This endpoint allows an organization to add and update information on the receiver, including email address, external ID, date of birth, personal PIN, and national ID number. The response includes all information on the receiver.' - tags: - - Receivers - parameters: - - name: id - in: path - description: ID of the `Receiver`. - required: true - type: string - - name: body - in: body - description: List of fields to patch for the receiver - required: true - schema: - $ref: '#/definitions/PatchReceiverRequest' - produces: - - application/json - security: - - BearerAuth: [] - /statistics: - get: - responses: - '200': - description: 'General Statistics response' - schema: - $ref: '#/definitions/GeneralStatistics' - '401': - $ref: '#/responses/UnauthorizedResponse' - summary: Retrieve All Statistics - operationId: Retrieve All Statistics - description: 'Fetches all metrics on all disbursements the organization has created. The response includes basic aggregations on payments, receivers, receiver wallets, and assets.' - tags: - - Statistics - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - /statistics/disbursements/{id}: - get: - responses: - '200': - description: 'Returns statistics for disbursement' - schema: - $ref: '#/definitions/DisbursementsStatistics' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Retrieve Disbursement Statistics - operationId: Retrieve Disbursement Statistics - description: 'Fetches metrics on a specific disbursement by ```id```.' - tags: - - Statistics - parameters: - - name: id - in: path - description: ID of the `Disbursement`. - required: true - type: string - produces: - - application/json - security: - - BearerAuth: [] - /wallet-registration/start: - get: - summary: Start Wallet Registration - operationId: Start Wallet Registration - description: >- - This is the endpoint the browser reaches with the first token so that the receiver can confirm their verification information through a webflow. Requires a valid SEP-24 token in the request. - tags: - - Registration - produces: - - text/html - parameters: - - name: token - in: query - description: The SEP-24 token used for authentication - required: true - type: string - - name: transaction_id - in: query - description: The transaction id associated with the SEP-24 token - required: true - type: string - responses: - '200': - description: Token is valid and the webpage will be loaded normally. - schema: - type: string - description: HTML page content - '401': - $ref: '#/responses/UnauthorizedResponse' - '400': - $ref: '#/responses/BadRequestResponse' - /wallet-registration/otp: - post: - summary: Send One-Time Passcode - operationId: Send One-Time Passcode - description: >- - This endpoint generates a 6-digit OTP and sends it via SMS to the phone number provided in the request body (after checking that the phone number matches a receiver phone number in the SDP). A valid SEP-24 token should be included in the Authorization header of the request. - tags: - - Registration - consumes: - - application/json - produces: - - application/json - parameters: - - name: body - in: body - description: Object containing phone number - required: true - schema: - type: object - properties: - phone_number: - type: string - description: Phone number to which the OTP will be sent - recaptcha_token: - type: string - description: "Token for reCAPTCHA validation" - required: - - phone_number - - recaptcha_token - - name: Authorization - in: header - description: "SEP-24 token for authorization (Format: 'Bearer {token}')" - required: true - type: string - responses: - '200': - description: OTP sent successfully - schema: - $ref: '#/definitions/MessageResponse' - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '429': - description: >- - An OTP was sent to the given user recently and hasn't expired yet. - Only after expired it will be sent to the user again. - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - code: - type: string - details: - type: string - /wallet-registration/verification: - post: - summary: Verify Receiver Registration - operationId: Verify Receiver Registration - description: >- - This endpoint verifies the receiver's registration by validating the OTP and other verification values provided in the request body. A valid SEP-24 token should be included in the Authorization header of the request. - tags: - - Registration - consumes: - - application/json - produces: - - application/json - parameters: - - name: body - in: body - description: Verification data including phone number, OTP, verification value, and reCAPTCHA token - required: true - schema: - $ref: '#/definitions/ReceiverRegistrationRequest' - - name: Authorization - in: header - description: "SEP-24 token for authorization (Format: 'Bearer {token}')" - required: true - type: string - responses: - '200': - description: Verification successful - schema: - type: object - properties: - message: - type: string - example: "ok" - '400': - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - /.well-known/stellar.toml: - get: - responses: - '200': - description: Token is valid and the webpage will be loaded normally. - headers: {} - examples: - text/toml: > - ACCOUNTS=["GBC2HVWFIFN7WJHFORVBCDKJORXXXXXXXXXXXXXXXXXXXXXXXX", "GDA34JZ26FZY64XCSY46CUNSHLX762LHJXQXXXXXXXXXXXXXXXXXXXXXXXX"] - SIGNING_KEY="GDA34JZ26FZY64XCSY46XXXXXXXXXXXXXXXXXXXXXXXX" - NETWORK_PASSPHRASE="Test SDF Network ; September 2015" - HORIZON_URL="https://horizon-testnet.stellar.org" - WEB_AUTH_ENDPOINT="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/auth" - TRANSFER_SERVER_SEP0024="https://ap-stellar-disbursement-platform-backend-dev.stellar.org/sep24" - - [[DOCUMENTATION]] - ORG_NAME="Stellar Aid" - - [[CURRENCIES]] - code = "EUROC" - issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" - is_asset_anchored = true - anchor_asset_type = "fiat" - status = "live" - desc = "EUROC" - - [[CURRENCIES]] - code = "USDC" - issuer = "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" - is_asset_anchored = true - anchor_asset_type = "fiat" - status = "live" - desc = "USDC" - summary: Retrieve Stellar Info File - operationId: Retrieve Stellar Info File - description: >- - Allows the wallet to fetch the SEP-10 server url, SEP-10 signing public key and SEP-24 server url. - tags: - - Registration - parameters: [] - produces: - - text/toml - /WEB_AUTH_ENDPOINT: - get: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - transaction: >- - AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== - network_passphrase: Test SDF Network ; September 2015 - schema: - type: object - properties: - transaction: - type: string - network_passphrase: - type: string - example: - transaction: >- - AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAfheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3Ag== - network_passphrase: Test SDF Network ; September 2015 - '400': - description: If some information was missing or invalid. - headers: {} - examples: - application/json: - error: Bad request. - extras: - account: account cannot be empty - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - account: - type: string - example: - error: Bad request. - extras: - account: account cannot be empty - summary: Request Challenge Transaction - operationId: Request Challenge Transaction - description: >- - Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the ```WEB_AUTH_ENDPOINT``` variable. - tags: - - Registration - parameters: - - name: account - in: query - description: >- - The Client Account, which can be a stellar account (G...) or muxed - account (M...) that the Client wishes to authenticate with the - Server.. - required: true - type: string - - name: memo - in: query - description: >- - The memo to attach to the challenge transaction. Only permitted if a - Stellar account (G...) is used. The memo must be of type id. Other - memo types are not supported. - required: false - type: string - - name: client_domain - in: query - description: a Client Domain. Need to be supplied by all Clients/Wallets. - required: true - type: string - produces: - - application/json - post: - responses: - '200': - description: SEP-10 handshake was successful. - headers: {} - examples: - application/json: - token: >- - eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 - schema: - type: object - properties: - token: - type: string - example: - token: >- - eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJHQTZVSVhYUEVXWUZJTE5VSVdBQzM3WTRRUEVaTVFWREpIREtWV0ZaSjJLQ1dVQklVNUlYWk5EQSIsImp0aSI6IjE0NGQzNjdiY2IwZTcyY2FiZmRiZGU2MGVhZTBhZDczM2NjNjVkMmE2NTg3MDgzZGFiM2Q2MTZmODg1MTkwMjQiLCJpc3MiOiJodHRwczovL2ZsYXBweS1iaXJkLWRhcHAuZmlyZWJhc2VhcHAuY29tLyIsImlhdCI6MTUzNDI1Nzk5NCwiZXhwIjoxNTM0MzQ0Mzk0fQ.8nbB83Z6vGBgC1X9r3N6oQCFTBzDiITAfCJasRft0z0 - '401': - description: Unauthorized - headers: {} - examples: - application/json: - error: The provided transaction is not valid - schema: - type: object - properties: - error: - type: string - example: - error: The provided transaction is not valid - summary: Provide Signed Challenge Transaction - operationId: Provide Signed Challenge Transaction - description: >- - Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the ```WEB_AUTH_ENDPOINT``` variable. - tags: - - Registration - parameters: - - name: body - in: body - schema: - type: object - properties: - transaction: - type: string - example: - transaction: >- - AAAAAgAAAADIiRu2BrqqeOcP28PWCkD4D5Rjjsqh71HwvqFX+F4VXAAAAGQAAAAAAAAAAAAAAAEAAAAAXzrUcQAAAABfOtf1AAAAAAAAAAEAAAABAAAAAEEB8rhqNa70RYjaNnF1ARE2CbL50iR9HPXST/fImJN1AAAACgAAADB0aGlzaXNhdGVzdC5zYW5kYm94LmFuY2hvci5hbmNob3Jkb21haW4uY29tIGF1dGgAAAABAAAAQGdGOFlIQm1zaGpEWEY0L0VJUFZucGVlRkxVTDY2V0tKMVBPYXZuUVVBNjBoL09XaC91M2Vvdk54WFJtSTAvQ2UAAAAAAAAAAvheFVwAAABAheKE1HjGnUCNwPbX8mz7CqotShKbA+xM2Hbjl6X0TBpEprVOUVjA6lqMJ1j62vrxn1mF3eJzsLa9s9hRofG3AsiYk3UAAABArIrkvqmA0V9lIZcVyCUdja6CiwkPwsV8BfI4CZOyR1Oq7ysvNJWwY0G42dpxN9OP1qz4dum8apG2hqvxVWjkDQ== - produces: - - application/json - /TRANSFER_SERVER_SEP0024/transactions/deposit/interactive: - post: - summary: Request Registration URL - description: > - The deposit endpoint allows a wallet to get deposit information from an anchor, - so a user has all the information needed to initiate a deposit. - - It also lets the anchor specify additional information that the user must submit interactively via a popup or embedded browser window to be able to deposit. - Please check the detailed documentation [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2). - externalDocs: - description: Find more info here - url: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2 - parameters: [] - tags: - - Registration - responses: - '200': - description: An anchor requires the user to fill out information on a webpage hosted by the anchor. - schema: - type: object - properties: - type: - type: string - description: Always set to interactive_customer_info_needed. - example: "interactive_customer_info_needed" - url: - type: string - description: URL hosted by the anchor. The wallet should show this URL to the user as a popup. - example: "https://api.example.com/kycflow?account=GACW7NONV43MZIFHCOKCQJAKSJSISSICFVUJ2C6EZIW5773OU3HD64VI" - id: - type: string - description: The anchor's internal ID for this deposit / withdrawal request. The wallet will use this ID to query the /transaction endpoint to check status of the request. - example: "82fhs729f63dh0v4" - - /profile: - get: - responses: - '200': - description: 'Returns user profile' - schema: - $ref: '#/definitions/Profile' - - summary: Get Profile - operationId: Get Profile - description: 'Fetches the individual information of the logged in user to populate the Profile page.' - tags: - - Profile - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - message: user profile updated successfully - schema: - $ref: '#/definitions/MessageResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update User Profile - operationId: Update User Profile - description: >- - Updates the profile details of the logged in user, including changing password for authenticated/logged in users. Note: all fields are optional but at least one should be sent in the request. - tags: - - Profile - parameters: - - name: body - in: body - schema: - type: object - properties: - first_name: - type: string - last_name: - type: string - email: - type: string - password: - type: string - example: - first_name: FirstName - last_name: LastName - email: email@email.com - password: mysecret - produces: - - application/json - security: - - BearerAuth: [] - /organization: - get: - responses: - '200': - description: 'Returns organization details' - schema: - $ref: '#/definitions/Organization' - '401': - $ref: '#/responses/UnauthorizedResponse' - summary: Get Organization Info - operationId: Get Organization Info - description: 'This endpoint returns the organization''s info. It is used in many places across the UI. It returns the name in the navbar and the public key of the organization’s distribution account.' - tags: - - Organization - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: OK - examples: - application/json: - message: organization profile updated successfully - schema: - $ref: '#/definitions/MessageResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update Organization Profile - operationId: Update Organization Profile - description: 'Updates the organization profile details. Only account owners have permission to do this. Note: both fields are optional but at least one should be sent in the request. It is not necessary to set the header Content-Type for this request. It is set automatically by the HTTP client.' - tags: - - Organization - consumes: - - multipart/form-data - produces: - - application/json - parameters: - - in: formData - name: logo - type: file - description: 'The logo of the organization, file type must be png or jpeg.' - - in: formData - name: data - type: string - format: json - description: > - A JSON string that contains the details to update. Contains the following keys: - `organization_name` (string): the new name of the organization, - `timezone_utc_offset` (string): the new timezone offset of the organization, - `is_approval_required` (boolean): whether the approval workflow is enabled or not. - `sms_registration_message_template` (string): the SMS message template sent to the receivers inviting them to registration. Sending this field empty sets the `default` value for it. - `otp_message_template` (string): the SMS message template sent to the receivers sending the OTP to complete the registration flow. Sending this field empty sets the `default` value for it. - For example: '{"organization_name": "NewOrgName", "timezone_utc_offset": "+02:00", "is_approval_required": true, "sms_registration_message_template": "You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register.", "otp_message_template": "{{.OTP}} is your {{.OrganizationName}} phone verification code."}' - security: - - BearerAuth: [] - /organization/logo: - get: - summary: Retrieve Organization Logo - description: 'Retrieves the logo of the organization for display in the UI navbar.' - operationId: GetOrganizationLogo - tags: - - Organization - produces: - - 'application/octet-stream' - responses: - '200': - description: OK - schema: - type: string - format: binary - /organization/circle-config: - patch: - summary: Circle Account Setup - description: 'Updates the Circle configuration for the organization. Only account owners have permission to do this. Note: in the first time configuration, all fields are mandatory, but after it is been configured at least once, you can replace a single field at a time.' - operationId: PatchOrganizationCircle - tags: - - Organization - - Circle - consumes: - - application/json - produces: - - application/json - parameters: - - in: body - name: body - description: Circle configuration to be updated - required: true - schema: - properties: - api_key: - type: string - description: The Circle API key with permissions to POST & GET transfers - wallet_id: - type: string - description: The ID of the Circle walet from where the funds will be sent - responses: - '200': - description: Circle configuration updated successfully - schema: - type: object - properties: - message: - type: string - example: Circle configuration updated - '400': - $ref: '#/responses/BadRequestResponse' - security: - - BearerAuth: [] - /balances: - get: - description: "ATTENTION, this endpoint is only enabled when the tenant distribution account type is `CIRCLE`." - summary: Get Organization (Circle) Balances - operationId: Get Organization (Circle) Balances - responses: - '200': - description: "Returns the organization's Circle balances" - schema: - type: object - properties: - account: - description: "The organization's distribution account" - $ref: '#/definitions/DistributionAccount' - balances: - type: array - description: "The organization's Circle balances" - items: - $ref: '#/definitions/Balance' - required: - - account - - balances - '400': - description: "Bad request, not supported when the distribution account is not of the CIRCLE type." - schema: - $ref: '#/responses/BadRequestResponse' - '401': - $ref: '#/responses/UnauthorizedResponse' - tags: - - Balances - produces: - - application/json - security: - - BearerAuth: [] - /countries: - get: - summary: Get All Countries - description: 'Fetches the list of available countries to populate the dropdown box in the New Disbursement flow. The default list reflects geographic coverage of SDP-compatible wallet providers.' - tags: - - Organization - responses: - '200': - description: A list of countries - schema: - type: array - items: - $ref: '#/definitions/Country' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - produces: - - application/json - security: - - BearerAuth: [] - /assets: - get: - summary: Get All Assets - description: 'Fetches the list of available assets to populate the dropdown box in the New Disbursement flow. Note: the organization must hold a balance in a particular asset to use it in a disbursement.' - tags: - - Organization - responses: - '200': - description: A list of assets - schema: - type: array - items: - $ref: '#/definitions/Asset' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - produces: - - application/json - security: - - BearerAuth: [] - post: - summary: Create Asset - description: 'This endpoint is used to create a new asset that can be used in a Disbursement. Note: the organization must hold a balance in a particular asset to use it in a disbursement.' - consumes: - - application/json - produces: - - application/json - tags: - - Organization - parameters: - - in: body - name: body - description: Asset to be created - required: true - schema: - type: object - properties: - code: - type: string - description: The asset code - example: 'USDC' - issuer: - type: string - description: The issuer - example: 'GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5' - required: - - code - - issuer - responses: - '201': - description: Asset created successfully - '400': - description: Bad request, invalid request body or the provided code/issuer is invalid. - security: - - BearerAuth: [] - /assets/{id}: - delete: - summary: Delete Asset - description: This endpoint is used to soft delete an asset. - produces: - - application/json - tags: - - Organization - parameters: - - name: id - in: path - description: ID of the asset to delete - required: true - type: string - responses: - '200': - description: Asset deleted successfully - '204': - description: Asset already deleted - '404': - description: Asset not found - security: - - BearerAuth: [] - /wallets: - get: - summary: Get All Wallets - description: 'Fetches the list of available wallet providers to populate the dropdown box in the New Disbursement flow. The organization should coordinate with the wallet provider before selecting a particular wallet provider for a disbursement. The initial list reflects all SDP-compatible wallets.' - tags: - - Organization - responses: - '200': - description: A list of wallets - schema: - type: array - items: - $ref: '#/definitions/Wallet' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - produces: - - application/json - security: - - BearerAuth: [] - /users: - get: - responses: - '200': - description: "Returns a paginated list of User Details" - schema: - $ref: '#/definitions/Users' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Get All Users - operationId: Get All Users - description: 'Fetches all SDP users within the organization, whether they are active yet or not.' - tags: - - Users - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - post: - responses: - '201': - description: Created - schema: - $ref: '#/definitions/User' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Create User - operationId: Create User - description: 'This endpoint creates a new SDP user as the result of an SDP owner adding their information in the UI. It also handles sending the invite email.' - tags: - - Users - parameters: - - name: body - in: body - schema: - type: object - properties: - first_name: - type: string - last_name: - type: string - roles: - type: array - items: - type: string - email: - type: string - example: - first_name: John - last_name: Doe - roles: - - business - email: email@email.com - produces: - - application/json - security: - - BearerAuth: [] - /users/activation: - patch: - responses: - '200': - description: Created - examples: - application/json: - message: user activation was updated successfully - schema: - $ref: '#/definitions/User' - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update User Activation Status - operationId: Update User Activation Status - description: 'Updates the SDP user’s activation status. This endpoint is primarily used to move a user into active status when they accept the invite to join an SDP organization account and create a password.' - tags: - - Users - parameters: - - name: body - in: body - schema: - type: object - properties: - user_id: - type: string - is_active: - type: boolean - example: - user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd - is_active: false - produces: - - application/json - security: - - BearerAuth: [] - /users/roles: - get: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - roles: - - developer - - financial_controller - - business - - owner - schema: - type: object - properties: - roles: - type: array - items: - type: string - example: - roles: - - developer - - financial_controller - - business - - owner - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Get All Roles - operationId: Get All Roles - description: 'Fetches available SDP roles, such as owner, financial controller, business user, and developer.' - tags: - - Users - parameters: [] - produces: - - application/json - security: - - BearerAuth: [] - patch: - responses: - '200': - description: OK - headers: {} - examples: - application/json: - message: user roles were updated successfully - schema: - type: object - properties: - message: - type: string - example: - message: user roles were updated successfully - '401': - $ref: '#/responses/UnauthorizedResponse' - '403': - $ref: '#/responses/ForbiddenResponse' - summary: Update User Role - operationId: Update User Role - description: 'Updates an SDP user’s role by ```user_ID```.' - tags: - - Users - parameters: - - name: body - in: body - schema: - type: object - properties: - user_id: - type: string - roles: - type: array - items: - type: string - example: - user_id: 5ca230c9-da95-4bd1-b2a2-aa5d0df65efd - roles: - - developer - produces: - - application/json - security: - - BearerAuth: [] - - /tenants: - get: - summary: Get All Tenants - responses: - "200": - description: "A list of provisioned tenants with their configurations" - schema: - $ref: "#/definitions/Tenants" - "401": - $ref: "#/responses/UnauthorizedResponse" - operationId: Get All Tenants - tags: - - Admin - parameters: [] - produces: - - application/json - security: - - BasicAuth: [] - post: - summary: Create Tenant - responses: - "201": - description: "Provision a new tenant" - schema: - $ref: "#/definitions/Tenant" - "401": - $ref: "#/responses/UnauthorizedResponse" - operationId: Create Tenant - tags: - - Admin - parameters: - - name: body - in: body - schema: - type: object - properties: - name: - type: string - description: The tenant name. It should match the pattern `^[a-z-]+$` - distribution_account_type: - type: string - description: The distribution account type of the tenant. - enum: - - DISTRIBUTION_ACCOUNT.STELLAR.ENV - - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT - owner_email: - type: string - description: The owner user e-mail address - owner_first_name: - type: string - description: The owner user first name - owner_last_name: - type: string - description: The owner user last name - organization_name: - type: string - description: The organization name - base_url: - type: string - description: The SDP backend server's base URL. If this field is not provided, the SDP will generate one based on the host `BASE_URL` configuration, and the tenant name. - sdp_ui_base_url: - type: string - description: The SDP UI/dashboard Base URL. If this field is not provided, the SDP will generate one based on the host `SDP_UI_BASE_URL` configuration, and the tenant name. - example: - name: "redcorp" - distribution_account_type: "DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT" - owner_email: "owner@redcorp.org" - owner_first_name: "Owner" - owner_last_name: "Last" - organization_name: "Red Corp" - base_url: "https://redcorp-backend.sdp.org" - sdp_ui_base_url: "https://redcorp.sdp.org" - required: - - name - - distribution_account_type - - owner_email - - owner_first_name - - owner_last_name - - organization_name - produces: - - application/json - security: - - BasicAuth: [] - /tenants/{arg}: - get: - summary: Retrieve a Tenant - responses: - "200": - description: "Tenant details" - schema: - $ref: "#/definitions/Tenant" - "401": - $ref: "#/responses/UnauthorizedResponse" - "404": - $ref: "#/responses/NotFoundResponse" - operationId: Retrieve a Tenant - tags: - - Admin - parameters: - - name: arg - in: path - description: ID or Name of the `Tenant`. - required: true - type: string - produces: - - application/json - security: - - BasicAuth: [] - /tenants/{id}: - delete: - summary: Soft delete a Tenant - responses: - "200": - description: "Deleted Tenant details, with a non-empty `deleted_at` field" - schema: - $ref: "#/definitions/Tenant" - "304": - description: "The tenant was already deleted before this request." - schema: - $ref: "#/definitions/Tenant" - "400": - description: "Bad request, when the tenant is not elligible to be deleted. For example, when the tenant is the default tenant or when it has not been patched with the deactivated status." - schema: - $ref: "#/responses/BadRequestResponse" - "404": - $ref: "#/responses/NotFoundResponse" - operationId: Soft delete a Tenant - tags: - - Admin - parameters: - - name: id - in: path - description: ID of the `Tenant`. - required: true - type: string - produces: - - application/json - security: - - BasicAuth: [] - patch: - responses: - "200": - description: "Updated Tenant details" - schema: - $ref: "#/definitions/Tenant" - "400": - $ref: "#/responses/BadRequestResponse" - "401": - $ref: "#/responses/UnauthorizedResponse" - "404": - $ref: "#/responses/NotFoundResponse" - summary: Update a Tenant - operationId: Update a Tenant - description: This endpoint updates the Tenant data. - tags: - - Admin - parameters: - - name: id - in: path - description: ID of the `Tenant`. - required: true - type: string - - name: body - in: body - description: List of fields to update for the tenant - required: true - schema: - type: object - properties: - base_url: - type: string - description: The SDP backend server's base URL. - sdp_ui_base_url: - type: string - description: The SDP UI/dashboard Base URL. - status: - type: string - enum: [ TENANT_CREATED, TENANT_PROVISIONED, TENANT_ACTIVATED, TENANT_DEACTIVATED ] - produces: - - application/json - security: - - BasicAuth: [] - /tenants/default-tenant: - post: - summary: Default Tenant - description: | - Sets the tenant specified in the request body as the default one, resolving all the incoming API request to that tenant when the env `SINGLE_TENANT_MODE` is set to true. Once set, the default tenant can be overwritten but never unset, although it is only effective when `SINGLE_TENANT_MODE` is set to true. - - Default tenant is useful for development purposes or when the SDP is used by a single organization. This allows the organization to skip specifying the tenant in every request and simplifies the SDP setup operationally by removing the need of providing wildcard TLS certificates for multi-tenant configurations. - responses: - "201": - $ref: "#/definitions/Tenant" - "401": - $ref: "#/responses/UnauthorizedResponse" - "403": - $ref: "#/responses/ForbiddenResponse" - operationId: Default Tenant - tags: - - Admin - parameters: - - name: body - in: body - schema: - type: object - properties: - id: - type: string - description: The tenant id. - example: - id: "1736bed3-7b92-4760-8ff2-51fb08ee079f" - required: - - id - produces: - - application/json - security: - - BasicAuth: [] - -definitions: - Amount: - type: "object" - properties: - asset_code: - type: "string" - example: 'USDC' - asset_issuer: - type: "string" - example: 'GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5' - received_amount: - type: "string" - example: '100.00' - Asset: - type: object - description: The Stellar asset object - properties: - id: - type: string - example: 'ffaec4b3-46b0-4db4-a4c4-6c3508057705' - code: - type: string - description: 'Asset code' - example: 'USDC' - issuer: - type: string - description: 'Asset issuer address' - example: 'GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5' - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - deleted_at: - type: string - format: date-time - example: '2023-06-03T10:55:51.000Z' - Country: - type: object - properties: - code: - type: string - description: 'Three-character ISO 3166 code' - example: 'UKR' - name: - type: string - description: 'Country name' - example: 'Ukraine' - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - Disbursement: - type: object - properties: - id: - type: string - description: The unique identifier of the disbursement - example: '619da857-8725-4c58-933d-c120a458e0f5' - name: - type: string - description: The name of the disbursement - example: 'Disbursement Name' - country: - $ref: '#/definitions/Country' - wallet: - $ref: '#/definitions/Wallet' - asset: - $ref: '#/definitions/Asset' - status: - description: The status of the disbursement - $ref: '#/definitions/DisbursementStatus' - example: 'READY' - verification_field: - $ref: '#/definitions/VerificationField' - example: 'DATE_OF_BIRTH' - status_history: - $ref: '#/definitions/DisbursementStatusHistory' - file_name: - type: string - example: 'disbursement-feb-03-2023.csv' - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - total_payments: - type: integer - description: Total number of payments - example: 10 - total_payments_sent: - type: integer - description: Total number of successful payments - example: 8 - total_payments_failed: - type: integer - description: Total number of failed payments - example: 1 - total_payments_remaining: - type: integer - description: Total number of remaining payments - example: 1 - amount_disbursed: - type: string - description: The total amount disbursed so far - example: '800.00' - total_amount: - type: string - description: The total amount to be disbursed - example: '1000.00' - average_amount: - type: string - description: The average amount per payment - example: '100.00' - - DisbursementLite: - type: object - properties: - id: - type: string - format: uuid - description: The unique identifier of the disbursement - example: "c51ba1d5-52d3-412f-a59c-6ef32d59ab43" - name: - type: string - description: The name of the disbursement - example: "disbursement-june-29" - status: - $ref: '#/definitions/DisbursementStatus' - created_at: - type: string - format: date-time - description: The creation timestamp of the disbursement - example: "2023-06-30T01:22:57.831975Z" - updated_at: - type: string - format: date-time - description: The last update timestamp of the disbursement - example: "2023-06-30T01:22:58.316511Z" - - DisbursementPagination: - type: "object" - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: "array" - items: - $ref: '#/definitions/Disbursement' - example: - pagination: - next: "/disbursements?page=3&page_limit=1" - prev: "/disbursements?page=1&page_limit=1" - pages: 4 - total: 4 - data: - id: "619da857-8725-4c58-933d-c120a458e0f5" - name: "Disbursement Name" - country: - code: "UKR" - name: "Ukraine" - created_at: "2023-02-03T10:45:51.000Z" - updated_at: "2023-02-03T10:45:51.000Z" - wallet: - id: "e2de8544-b7e2-40a9-ad40-411f70d5c4bf" - name: "Vibrant" - homepage: "https://vibrantapp.com" - asset: - id: "25923001-508a-4629-9186-c41211b2a3d0" - code: "USDC" - issuer: "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" - status: "READY" - verification_field: "DATE_OF_BIRTH" - status_history: [ - { - "user_id": null, - "status": "DRAFT", - "timestamp": "2023-02-03T10:45:51.000Z" - }, - { - "user_id": "2ec7f1f9-add3-4e6d-9d14-bd8ac5e88872", - "status": "READY", - "timestamp": "2023-02-03T10:45:51.000Z" - } - ] - file_name: "disbursement-february-03-2023.csv" - created_at: "2023-02-03T10:45:51.000Z" - updated_at: "2023-02-03T10:45:51.000Z" - total_payments: 10 - total_payments_sent: 8 - total_payments_failed: 1 - total_payments_remaining: 1 - amount_disbursed: '800.00' - total_amount: '1000.00' - average_amount: '100.00' - - DisbursementReceiver: - type: object - properties: - id: - type: string - example: 'ec3a57c0-5660-4b5a-af76-acadc7b09b93' - email: - type: string - example: 'receiver@mail.org' - phone_number: - type: string - example: '+15552368475' - external_id: - type: string - example: 'usr129001' - receiver_wallet: - $ref: '#/definitions/ReceiverWallet' - payment: - $ref: '#/definitions/Payment' - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - - DisbursementReceiverPagination: - type: "object" - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: "array" - items: - $ref: '#/definitions/DisbursementReceiver' - - - DisbursementsStatistics: - type: object - properties: - payment_counters: - $ref: '#/definitions/PaymentCounters' - payment_amounts_by_asset: - type: array - items: - $ref: '#/definitions/PaymentAmountsByAsset' - receiver_wallets_counters: - $ref: '#/definitions/ReceiverWalletsCounters' - total_receivers: - type: integer - description: Total number of receivers - format: int64 - example: 100 - - DisbursementStatus: - type: string - enum: - - DRAFT - - READY - - STARTED - - PAUSED - - COMPLETED - - DisbursementStatusHistory: - type: array - items: - $ref: '#/definitions/DisbursementStatusHistoryEntry' - - DisbursementStatusHistoryEntry: - type: object - properties: - user_id: - type: string - example: '3f351b9e-ed0f-40fa-a314-14757b42dab1' - status: - $ref: '#/definitions/DisbursementStatus' - timestamp: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - - GeneralStatistics: - type: object - properties: - total_disbursements: - type: integer - description: Total number of disbursements - format: int64 - example: 20 - payment_counters: - $ref: '#/definitions/PaymentCounters' - payment_amounts_by_asset: - type: array - items: - $ref: '#/definitions/PaymentAmountsByAsset' - receiver_wallets_counters: - $ref: '#/definitions/ReceiverWalletsCounters' - total_receivers: - type: integer - description: Total number of receivers - format: int64 - example: 1000 - - MessageResponse: - type: object - properties: - message: - type: string - required: - - message - - Organization: - type: object - properties: - name: - type: string - example: 'Stellar Aid' - logo_url: - type: string - example: 'https://stellar-disbursement-platform-backend-dev.stellar.org/organization/logo' - distribution_account: - $ref: '#/definitions/DistributionAccount' - distribution_account_public_key: - type: string - description: 'DEPRECATED! Please refer to distribution_account.address instead.' - example: 'GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL' - timezone_utc_offset: - type: string - example: '+00:00' - is_approval_required: - description: 'Enables multi-user approval workflow for disbursements' - type: boolean - example: true - sms_resend_interval: - description: 'The amount of days that the SDP will wait to resend the invitation SMS to the receivers that have not registered. If `0`, that means the resending invitation SMS feature is disabled.' - type: integer - example: 5 - payment_cancellation_period_days: - description: 'The amount of days that the SDP will wait to cancel a payment that is waiting for the receiver to register. If `0`, that means the payment cancellation feature is disabled.' - type: integer - example: 5 - privacy_policy_link: - description: 'The link to the organization privacy policy' - type: string - example: 'https://stellar.org/privacy-policy' - sms_registration_message_template: - description: "The custom SMS message template set for the registration invite. The `default` message isn't returned. In the message's content it's possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.RegistrationLink}} which is the link generated by SDP to send to the receiver (in case this is not present in the message, it's automatically appended at the end)." - type: string - example: "You have a payment waiting for you from {{.OrganizationName}}. Click {{.RegistrationLink}} to register." - otp_message_template: - description: "The custom OTP message template set to send OTP code to the receiver complete the registration flow. The `default` message isn't returned. In the message's content it's possible to add the following template variables: {{.OrganizationName}} which is the Organization Name configured and {{.OTP}} which is the OTP code to send to the receiver complete the registration flow (in case this is not present in the message, it's automatically appended at the end)." - type: string - example: "{{.OTP}} is your {{.OrganizationName}} phone verification code." - required: - - name - - logo_url - - distribution_account - - timezone_utc_offset - - is_approval_required - - sms_resend_interval - - payment_cancellation_period_days - - privacy_policy_link - - DistributionAccount: - type: object - properties: - address: - type: string - description: The address of the distribution account, present when the account type is `STELLAR`. - example: 'GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL' - circle_wallet_id: - type: string - description: The ID of the Circle wallet, present when the account type is `CIRCLE`. - example: '1000646072' - type: - type: string - description: 'The type of the distribution account.' - enum: - - DISTRIBUTION_ACCOUNT.STELLAR.ENV - - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT - example: 'DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT' - status: - type: string - enum: - - ACTIVE - - PENDING_USER_ACTIVATION - example: 'ACTIVE' - required: - - type - - status - - Balance: - type: object - description: "The balances of the organization's distribution account. Currently, this is only used for the Circle distribution accounts." - properties: - asset_code: - type: string - description: "The asset code of the balance in the Stellar network." - example: "USDC" - asset_issuer: - type: string - description: "The asset issuer of the balance in the Stellar network." - example: "GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" - amount: - type: string - description: "The amount of the balance." - example: "100.00" - - Pagination: - type: "object" - properties: - next: - type: "string" - example: '?page=3&page_limit=2' - prev: - type: "string" - example: '?page=1&page_limit=2' - pages: - type: "integer" - example: 8 - total: - type: "integer" - example: 16 - - Payment: - type: object - properties: - id: - type: string - example: 'ddf22f55-3259-4822-a4e2-ce01334997f4' - amount: - type: string - description: 'The amount of the payment' - example: '100.00' - stellar_transaction_id: - type: string - description: 'The ID of the transaction in the Stellar network. It can be used tio track the payment in the Stellar network using [Stellar Laboratory](https://laboratory.stellar.org/), or [StellarExpert](https://stellar.expert/).' - example: '0b339d1c89d314186b8147c2af4c9a9ed5bbdbcd7ada8d138633907649b' - circle_transfer_request_id: - type: string - description: 'The Circle transfer request ID. It is only present when the payment was made using Circle.' - example: '74a68b6a-3f67-424b-b8b0-e593a19d7463' - stellar_operation_id: - type: string - deprecated: true - status: - $ref: '#/definitions/PaymentStatus' - status_history: - $ref: '#/definitions/PaymentStatusHistory' - disbursement: - $ref: '#/definitions/DisbursementLite' - asset: - $ref: '#/definitions/Asset' - receiver_wallet: - $ref: '#/definitions/ReceiverWalletLite' - created_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - - PaymentPagination: - type: "object" - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: "array" - items: - $ref: '#/definitions/Payment' - PaymentStatus: - type: string - description: The status of the payment - enum: - - DRAFT - - READY - - PENDING - - PAUSED - - SUCCESS - - FAILED - - PaymentStatusHistory: - type: array - description: An aggregated list of metadata objects containing the statuses and the timestamp of when these status changes occurred. - items: - $ref: '#/definitions/PaymentStatusHistoryEntry' - - PaymentStatusHistoryEntry: - type: object - properties: - status: - $ref: '#/definitions/PaymentStatus' - status_message: - type: string - timestamp: - type: string - format: date-time - example: '2023-02-03T10:45:51.000Z' - - PaymentCounters: - type: object - properties: - draft: - type: integer - format: int64 - example: 1 - ready: - type: integer - format: int64 - example: 2 - pending: - type: integer - format: int64 - example: 3 - paused: - type: integer - format: int64 - example: 1 - success: - type: integer - format: int64 - example: 5 - failed: - type: integer - format: int64 - example: 1 - total: - type: integer - format: int64 - example: 14 - PaymentAmountsByAsset: - type: object - properties: - asset_code: - type: string - example: 'USDC' - payment_amounts: - $ref: '#/definitions/PaymentAmounts' - PaymentAmounts: - type: object - properties: - draft: - type: string - example: '100.00' - ready: - type: string - example: '200.00' - pending: - type: string - example: '300.00' - paused: - type: string - example: '100.00' - success: - type: string - example: '500.00' - failed: - type: string - example: '100.00' - average: - type: string - example: '100.00' - total: - type: string - example: '1400.00' - - Profile: - type: object - properties: - first_name: - type: string - example: 'Jane' - last_name: - type: string - example: 'Doe' - email: - type: string - example: 'jdoe@mail.org' - roles: - type: array - items: - type: string - organization_name: - type: string - example: - first_name: Jane - last_name: Doe - email: jdoe@mail.org - roles: - - developer - organization_name: Stellar Aid - Receiver: - type: "object" - properties: - id: - type: "string" - example: 'f83bb638-dda4-41e6-80c9-d03e6eec2aef' - phone_number: - type: "string" - example: '+15552368475' - external_id: - type: "string" - example: 'usr12334' - email: - type: "string" - example: 'jdoe@mail.org' - created_at: - type: "string" - example: '2023-02-03T10:45:51.000Z' - total_payments: - type: "string" - example: "2" - successful_payments: - type: "string" - example: "2" - failed_payments: - type: "string" - example: "0" - remaining_payments: - type: "string" - example: "0" - registered_wallets: - type: "string" - example: 1 - received_amounts: - type: "array" - items: - $ref: '#/definitions/Amount' - wallets: - type: "array" - items: - $ref: '#/definitions/ReceiverWallet' - - ReceiverLite: - type: "object" - properties: - id: - type: "string" - example: '029e2ed0-feb6-4c40-8b47-0836a85741a2' - - ReceiverPagination: - type: "object" - properties: - pagination: - $ref: '#/definitions/Pagination' - data: - type: "array" - items: - $ref: '#/definitions/Receiver' - - ReceiverWallet: - type: "object" - properties: - id: - type: "string" - example: '803031d4-1d04-4879-b6d9-dc5641f9988e' - receiver: - $ref: '#/definitions/ReceiverLite' - wallet: - $ref: '#/definitions/WalletLite' - stellar_address: - type: "string" - example: 'GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL' - stellar_memo: - type: "string" - stellar_memo_type: - type: "string" - created_at: - type: "string" - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: "string" - example: '2023-02-03T10:45:51.000Z' - invited_at: - type: "string" - example: '2023-02-09T10:45:51.000Z' - last_sms_sent: - type: "string" - example: '2023-02-10T10:45:51.000Z' - description: 'timestamp when the receiver last received an SMS about this wallet' - total_payments: - type: "string" - example: "2" - payments_received: - type: "string" - example: "2" - failed_payments: - type: "string" - example: "0" - remaining_payments: - type: "string" - example: "0" - received_amounts: - type: "array" - items: - $ref: '#/definitions/Amount' - status: - $ref: '#/definitions/ReceiversWalletStatus' - status_history: - type: "array" - items: - $ref: '#/definitions/ReceiversWalletStatusHistoryEntry' - - ReceiverWalletLite: - type: "object" - properties: - id: - type: "string" - example: '803031d4-1d04-4879-b6d9-dc5641f9988e' - receiver: - $ref: '#/definitions/ReceiverLite' - wallet: - $ref: '#/definitions/WalletLite' - stellar_address: - type: "string" - example: 'GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL' - created_at: - type: "string" - example: '2023-02-03T10:45:51.000Z' - updated_at: - type: "string" - example: '2023-02-03T10:45:51.000Z' - status: - $ref: '#/definitions/ReceiversWalletStatus' - - ReceiverWalletsCounters: - type: object - properties: - draft: - type: integer - format: int64 - example: 1 - ready: - type: integer - format: int64 - example: 1 - registered: - type: integer - format: int64 - example: 1 - flagged: - type: integer - format: int64 - example: 1 - total: - type: integer - format: int64 - example: 4 - - ReceiversWalletStatus: - type: "string" - enum: [ "DRAFT", "READY", "REGISTERED", "FLAGGED" ] - - ReceiversWalletStatusHistoryEntry: - type: "object" - properties: - status: - $ref: '#/definitions/ReceiversWalletStatus' - timestamp: - type: "string" - format: "date-time" - example: '2023-02-10T10:45:51.000Z' - - Users: - type: array - items: - $ref: '#/definitions/User' - User: - type: object - properties: - id: - type: string - example: '1736bed3-7b92-4760-8ff2-51fb08ee079f' - first_name: - type: string - example: 'John' - last_name: - type: string - example: 'Doe' - email: - type: string - roles: - type: array - items: - type: string - is_active: - type: boolean - required: - - id - - first_name - - last_name - - email - - roles - - is_active - example: - - id: 7a4c6555-1f73-49b3-a211-f95bd2b8ec90 - first_name: John - last_name: Doe - email: email@email.com - roles: - - developer - is_active: true - - id: 5f4df1dd-c84f-482a-84ad-541ffd46e75a - first_name: Jane - last_name: Doe - email: email@email.com - roles: - - financial_controller - is_active: false - VerificationField: - type: string - enum: - - DATE_OF_BIRTH - - PIN - - NATIONAL_ID_NUMBER - Wallet: - type: object - properties: - id: - type: string - example: '5ada9ed5-455a-4782-a0ee-160767e0deb1' - name: - type: string - example: 'Vibrant Assist' - homepage: - type: string - example: 'https://vibrantapp.com' - sep_10_client_domain: - type: string - example: 'api-dev.vibrantapp.com' - deep_link_schema: - type: string - example: 'https://vibrantapp.com/sdp-dev' - created_at: - type: string - format: date-time - example: '2023-07-31T20:50:45.648Z' - updated_at: - type: string - format: date-time - example: '2023-07-31T20:50:45.648Z' - - WalletLite: - type: "object" - properties: - id: - type: "string" - example: '5ada9ed5-455a-4782-a0ee-160767e0deb1' - name: - type: "string" - example: 'Vibrant Assist' - homepage: - type: "string" - example: 'https://vibrantapp.com' - - ReceiverRegistrationRequest: - type: object - properties: - phone_number: - type: string - description: Phone number used in registration - otp: - type: string - description: One-Time Password received for verification - verification: - type: string - description: Verification value provided by the user - verification_type: - type: string - description: Type of verification value - enum: [ DATE_OF_BIRTH, PIN, NATIONAL_ID_NUMBER ] - recaptcha_token: - type: string - description: Token received from Google reCAPTCHA - PatchReceiverRequest: - type: object - properties: - date_of_birth: - type: string - description: Date of birth of the receiver - pin: - type: string - description: Personal identification number of the receiver - national_id: - type: string - description: National ID of the receiver - email: - type: string - description: Email of the receiver - external_id: - type: string - description: External ID of the receiver - example: - date_of_birth: "1980-01-01" - pin: "1234" - national_id: "123456789" - email: "john@example.com" - external_id: "external123" - - Tenant: - type: object - properties: - id: - type: string - example: "1736bed3-7b92-4760-8ff2-51fb08ee079f" - name: - type: string - example: bluecorp - description: The tenant name. It should match the pattern `^[a-z-]+$`. - base_url: - type: string - example: "https://bluecorp-backend.sdp.org" - description: The SDP backend server's base URL. - sdp_ui_base_url: - type: string - example: "https://bluecorp.sdp.org" - description: The SDP UI/dashboard Base URL. - status: - type: string - enum: [ TENANT_CREATED, TENANT_PROVISIONED, TENANT_ACTIVATED, TENANT_DEACTIVATED ] - distribution_account_address: - type: string - example: "GCXAJ3XJ3VK3JFH3QMDFOSKM2NMMZBSO3VIT6EUPQWSDW2J74M23RRSL" - description: The Stellar account address used for distributing funds. - distribution_account_type: - type: string - enum: - - DISTRIBUTION_ACCOUNT.STELLAR.ENV - - DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT - - DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT - description: The Stellar account type used for distributing funds. - distribution_account_status: - type: string - enum: [ "ACTIVE", "PENDING_USER_ACTIVATION" ] - description: The status of the distribution account used for distributing funds. - is_default: - type: boolean - default: false - description: Boolean flag that shows whether the tenant is the default or not. - created_at: - type: string - format: date-time - example: "2024-03-27T17:21:51.000Z" - updated_at: - type: string - format: date-time - example: "2024-03-27T17:21:51.000Z" - deleted_at: - type: string - format: date-time - description: The timestamp when the tenant was (soft) deleted. - example: "2024-03-27T17:21:51.000Z" - required: - - id - - name - - base_url - - sdp_ui_base_url - - status - - distribution_account_address - - distribution_account_type - - distribution_account_status - - is_default - - created_at - - updated_at - example: - id: "840dca45-d1df-44cd-83c1-65c04235c25f" - name: "redcorp" - base_url: "https://redcorp-backend.sdp.org" - sdp_ui_base_url: "https://redcorp.sdp.org" - status: "TENANT_PROVISIONED" - distribution_account: "GCQVDMPOEN3HHJJ64V42KUTONOXN7C6V2PSVPALEVJ7PIYOB6M3DJV7N" - is_default: true - created_at: "2024-03-27T17:21:51.000Z" - updated_at: "2024-03-27T17:21:51.000Z" - Tenants: - type: array - items: - $ref: "#/definitions/Tenant" - -responses: - UnauthorizedResponse: - description: Unauthorized - headers: { } - examples: - application/json: - error: Not authorized - extras: - status: 401 - message: Not authorized - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string - example: - error: Not authorized - extras: - status: 401 - message: Not authorized - ForbiddenResponse: - description: Forbidden - headers: { } - examples: - application/json: - error: Forbidden - schema: - type: object - properties: - error: - type: string - example: - error: Forbidden - BadRequestResponse: - description: Bad Request - schema: - type: object - properties: - error: - type: string - description: Details about the error - extras: - type: object - example: - error: "Invalid input" - extras: - field_foo: "field_foo is required" - field_bar: "field_bar needs to be an integer" - NotFoundResponse: - description: Not Found - headers: {} - examples: - application/json: - error: Not found - extras: - status: 404 - message: Resource not found - schema: - type: object - properties: - error: - type: string - extras: - type: object - properties: - status: - type: number - message: - type: string -securityDefinitions: - BearerAuth: - type: "apiKey" - name: "Authorization" - in: "header" - description: "JWT used for authentication, signed with an ES256 private key." - BasicAuth: - type: "http" - scheme: "basic" - description: "Basic HTTP Authentication with a base64-encoded string of 'ADMIN_ACCOUNT:ADMIN_API_KEY'." -tags: - - name: Authentication - description: 'Authentication endpoints control the login, token refresh, and password management processes for SDP users.' - - name: Disbursements - description: 'Endpoints related to disbursements. A disbursement is a group of payments sent to multiple individuals at once. An SDP user with the appropriate role triggers a new disbursement through the SDP dashboard by uploading a list of receivers and amounts. When the receiver has linked their wallet to the SDP, the payment automatically begins. SDP users can track their disbursements in real-time through the SDP dashboard. Each disbursement must have a unique name defined by the organization.' - - name: Payments - description: 'Endpoints related to payments. An SDP payment is an individual payment from an organization to a receiver. Each payment is part of a disbursement and occurs on the Stellar network. Granular payment status is stored in the SDP database and can be viewed in real-time on the SDP dashboard. There is no POST endpoint because submitting payments to the Stellar network is handled by the Transaction Submission Service (TSS).' - - name: Receivers - description: >- - Endpoints related to receivers. A receiver is an individual receiving a payment in a disbursement. The receiver is tracked by phone number to reduce the need for personally identifiable information. Each receiver must be unique within the disbursement. - - - Each receiver will have at least one wallet associated with them. The wallet public key will remain null until the receiver registers with a wallet provider and links the wallet to the SDP through SEP-24. Receivers must verify their identity through that process, which requires the SDP to store verification information on receivers like date of birth, national ID number, or personal PIN. This information can be updated by the organization through the receiver endpoints. - - - name: Statistics - description: >- - Statistics endpoints return general aggregated data per organization, as well as disbursement-specific metrics. SDP users can use this data to monitor their disbursements over time. - - - name: Registration - description: >- - The registration endpoints guide the process for a receiver to verify their identity and link their wallet address to an SDP. - - - The registration process only needs to happen once per receiver to link their wallet. Only SDP-compatible wallet providers can facilitate the registration process. These endpoints must be supported and hit by the wallet providers after the receiver gets the initial SMS invite. After the wallet address is successfully linked, the payment automatically begins. - - - The SDP<>wallet registration process uses SEP-10, SEP-24, and deep links. Please see the SDP [developer docs](https://developers.stellar.org/docs/category/use-the-stellar-disbursement-platform) for a full set of instructions for wallet providers to become SDP-compatible. - - name: Profile - description: >- - Profiles endpoints manage the process of getting and updating individual profile information. Profile information is set when the account is created and can be updated by the user on the SDP dashboard Profile page. Note: profiles never refer to receivers of funds. - - - name: Organization - description: >- - Organization endpoints manage the process of getting and updating organizational profile information. The organization’s profile has basic information set at the time of SDP deployment. It can be modified by the Owner. Organizations can also manage their preferences, like which assets to use, through these endpoints. - - - name: Users - description: >- - The users endpoints facilitate the creation of new SDP users–including setting the appropriate role, sending an email invitation, and activating a user–and managing roles. - - - name: Admin - description: >- - The Admin API oversees the management of tenants within the system, facilitating tasks such as provisioning new tenants, updating their information, and retrieving tenant data. \ No newline at end of file diff --git a/openrpc/README.md b/openrpc/README.md index e5ffccd48..9e7a0e360 100644 --- a/openrpc/README.md +++ b/openrpc/README.md @@ -2,6 +2,7 @@ ## Table of Contents +- [TL;DR](#tldr) - [JSON-RPC](#json-rpc) - [Building](#building) - [Testing](#testing) @@ -13,17 +14,58 @@ - [Examples (`/openrpc/src/examples/*`)](#examples-openrpcsrcexamples) - [Example Pairings (`/openrpc/src/examplePairingObjects/*`)](#example-pairings-openrpcsrcexamplepairingobjects) +## TL;DR + +If you're here to add a new method to one of the specfiles, you'll want to: + +1. Create a new `.json` file in the relevant + `/openrpc/src/{stellar-rpc,anchor-platform}/methods` directory. Follow the + OpenRPC specification concerning [method objects] for defining this file. +2. Feel free to use any existing (or create new) `$ref` objects along the way. + More about them [later on](#json-refs). +3. Once your method is defined the way you want it, run the [build](#building) + and [validate](#testing) scripts to generate updated "bundled" specfiles. +4. Create a new Docusaurus page for the method. You can use one of the existing + files for inspiration, but the short version looks like this: + + ```jsx title="/path/to/.mdx + --- + title: method_name + hide_title: true + description: Returns or does something. + --- + + import { RpcMethod } from "@site/src/components/RpcMethod"; + // this specfile for stellar-rpc + import rpcSpec from "@site/static/stellar-rpc.openrpc.json"; + // this specfile for anchor-platform + // import rpcSpec from "../anchor-platform.openrpc.json"; + + meth.name === "method_name")[0]} + /> + ``` + + These files should be placed in: + + - For stellar-rpc: `/docs/data/rpc/api-reference/methods` + - For anchor-platform: + `/platforms/anchor-platform/api-reference/rpc/methods` + ## JSON-RPC -This is a specification of the API presented by Soroban RPC. +These are specifications of the APIs presented by Stellar RPC and the Platform +Server component of the Anchor Platform. ### Building -> _Note:_ The build process will provide an output file at -> `/static/openrpc.json`. This file should be included in any commits. However, -> this build process is re-run as part of our docusaurus deployment. So, it's -> necessary to update the actual source JSON files, and not just this built file -> as it will be overwritten at deploy time. +> _Note:_ The build process will provide output files at +> `/static/stellar-rpc.openrpc.json` and +> `/platforms/anchor-platform/api-reference/rpc/anchor-platform.openrpc.json`. +> These files _should_ be included in any commits. However, this build process +> is re-run as part of our Docusaurus deployment. So, it's necessary to update +> the actual source JSON files, and not just these built files, as they will be +> overwritten at deploy-time. The specification is split into multiple files to improve readability. The complete spec can be compiled into a single document as follows. (Run this @@ -34,8 +76,9 @@ yarn rpcspec:build # Build successful. ``` -This will output the file to `/static/openrpc.json`. This file will have all -schema `$ref`s resolved. +This will output the files to `/static/stellar-rpc.openrpc.json` and +`/platforms/anchor-platform/api-reference/rpc/anchor-platform.openrpc.json`. +These files will have all schema `$ref`s resolved. ### Testing @@ -57,20 +100,20 @@ something in the specification, you will need to use the following format: The items broken out into objects that will be referenced are not held individually in their own files. Instead, they are grouped into similar and -related files. For example: `/src/examples/Transactions.json` hold several +related files. For example: `/src/examples/Transactions.json` holds several `example` components that are related to transactions, such as transaction hashes, results from the `getTransaction` or `sendTransaction` methods, transactions parameters that were sent using the `sendTransaction` method, etc. ## Keeping Things Up-to-Date -**Don't making any changes to `openrpc.json` or `refs-openrpc.json`!** Any -changes you make there, will not be actually reflected in the generated -specification file. Instead, any changes should be made in the files contained -in the `/openrpc/src` directory. +**Don't making any changes to `*.openrpc.json` or `*.refs-openrpc.json`!** Any +changes you make there, will not be reflected in the generated specification +files. Instead, any changes should be made in the files contained in the +`/openrpc/src/{stellar-rpc,anchor-platform}` directories. -This directory follows a structure similar to the schema defined in the OpenRPC -specification. Here are the pieces you'll need to know about: +These directories follow a structure similar to the schema defined in the +OpenRPC specification. Here are the pieces you'll need to know about: ### Methods (`/openrpc/src/methods/*`) diff --git a/openrpc/scripts/build.mjs b/openrpc/scripts/build.mjs index 844e0d8cc..b17e42567 100644 --- a/openrpc/scripts/build.mjs +++ b/openrpc/scripts/build.mjs @@ -15,123 +15,174 @@ function sortByMethodName(methods) { }) } -let methods = []; -let methodsBase = "openrpc/src/methods/"; -let methodFiles = fs.readdirSync(methodsBase); -methodFiles.forEach(file => { - let raw = fs.readFileSync(methodsBase + file); - let parsed = JSON.parse(raw); - methods = [ - ...methods, - parsed, - ]; -}); +async function buildSpecFile(serviceName) { + let methods = []; + let methodsBase = `openrpc/src/${serviceName}/methods/` + if (fs.existsSync(methodsBase)) { + let methodFiles = fs.readdirSync(methodsBase); + methodFiles.forEach(file => { + let raw = fs.readFileSync(methodsBase + file); + let parsed = JSON.parse(raw); + methods = [ + ...methods, + parsed, + ]; + }); + } -let contentDescriptors = {}; -let cdBase = "openrpc/src/contentDescriptors/"; -let cdFiles = fs.readdirSync(cdBase); -cdFiles.forEach(file => { - let raw = fs.readFileSync(cdBase + file); - let parsed = JSON.parse(raw); - contentDescriptors = { - ...contentDescriptors, - ...parsed, - }; -}); + let contentDescriptors = {}; + let cdBase = `openrpc/src/${serviceName}/contentDescriptors/` + if (fs.existsSync(cdBase)) { + let cdFiles = fs.readdirSync(cdBase); + cdFiles.forEach(file => { + let raw = fs.readFileSync(cdBase + file); + let parsed = JSON.parse(raw); + contentDescriptors = { + ...contentDescriptors, + ...parsed, + }; + }); + } -let schemas = {}; -let schemasBase = "openrpc/src/schemas/" -let schemaFiles = fs.readdirSync(schemasBase); -schemaFiles.forEach(file => { - let raw = fs.readFileSync(schemasBase + file); - let parsed = JSON.parse(raw); - schemas = { - ...schemas, - ...parsed, - }; -}); + let schemas = {}; + let schemasBase = `openrpc/src/${serviceName}/schemas/` + if (fs.existsSync(schemasBase)) { + let schemaFiles = fs.readdirSync(schemasBase); + schemaFiles.forEach(file => { + let raw = fs.readFileSync(schemasBase + file); + let parsed = JSON.parse(raw); + schemas = { + ...schemas, + ...parsed, + }; + }); + } -let examples = {} -let examplesBase = "openrpc/src/examples/" -let examplesFiles = fs.readdirSync(examplesBase) -examplesFiles.forEach(file => { - let raw = fs.readFileSync(examplesBase + file) - let parsed = JSON.parse(raw) - examples = { - ...examples, - ...parsed, + let examples = {} + let examplesBase = `openrpc/src/${serviceName}/examples/` + if (fs.existsSync(examplesBase)) { + let examplesFiles = fs.readdirSync(examplesBase) + examplesFiles.forEach(file => { + let raw = fs.readFileSync(examplesBase + file) + let parsed = JSON.parse(raw) + examples = { + ...examples, + ...parsed, + } + }) } -}) -let examplePairingObjects = {} -let epoBase = "openrpc/src/examplePairingObjects/" -let epoFiles = fs.readdirSync(epoBase) -epoFiles.forEach(file => { - let raw = fs.readFileSync(epoBase + file) - let parsed = JSON.parse(raw) - examplePairingObjects = { - ...examplePairingObjects, - ...parsed, + let examplePairingObjects = {} + let epoBase = `openrpc/src/${serviceName}/examplePairingObjects/` + if (fs.existsSync(epoBase)) { + let epoFiles = fs.readdirSync(epoBase) + epoFiles.forEach(file => { + let raw = fs.readFileSync(epoBase + file) + let parsed = JSON.parse(raw) + examplePairingObjects = { + ...examplePairingObjects, + ...parsed, + } + }) } -}) -const doc = { - openrpc: "1.2.4", - info: { - title: "Soroban RPC", - description: "Soroban-RPC allows you to communicate directly with Soroban via a JSON RPC interface.", - termsOfService: "https://stellar.org/terms-of-service", - contact: { - name: "Stellar Development Foundation", - url: "https://stellar.org/connect", - email: "hello@stellar.org" - }, - license: { - name: "Apache 2.0", - url: "https://www.apache.org/licenses/LICENSE-2.0.html" + const doc = { + ...services[serviceName].starterFile, + methods: sortByMethodName(methods), + components: { + contentDescriptors, + schemas, + examples, + examplePairingObjects, }, - version: "20.1.0" - }, - servers: [ - { - name: "Testnet", - url: "https://soroban-testnet.stellar.org:443", - summary: "Publicly available RPC server maintained by SDF, operating on the Testnet test network.", - description: "Testnet is meant to be a stable network that runs a production (or near-production) version of the Stellar network." - }, - { - name: "Futurenet", - url: "https://rpc-futurenet.stellar.org:443", - summary: "Publicly available RPC server maintained by SDF, operating on the Futurenet test network.", - description: "Futurenet is meant to be a bleeding-edge, experimental network that runs an early, test version of the Stellar network." - } - ], - methods: sortByMethodName(methods), - components: { - contentDescriptors: contentDescriptors, - schemas: schemas, - examples: examples, - examplePairingObjects: examplePairingObjects, - }, -} - -fs.writeFileSync('openrpc/refs-openrpc.json', JSON.stringify(doc, null, 2)); + } -let spec = await dereferenceDocument(doc, defaultResolver.default) + fs.writeFileSync(`openrpc/${serviceName}.refs-openrpc.json`, JSON.stringify(doc, null, 2)); -spec.components = {}; + let spec = await dereferenceDocument(doc, defaultResolver.default) + spec.components = {}; -// Merge instances of `allOf` in methods. -for (var i=0; i < spec.methods.length; i++) { - for (var j=0; j < spec.methods[i].params.length; j++) { - spec.methods[i].params[j].schema = mergeAllOf(spec.methods[i].params[j].schema); + // Merge instances of `allOf` in methods. + for (var i=0; i < spec.methods.length; i++) { + for (var j=0; j < spec.methods[i].params.length; j++) { + spec.methods[i].params[j].schema = mergeAllOf(spec.methods[i].params[j].schema); + } + spec.methods[i].result.schema = mergeAllOf(spec.methods[i].result.schema); } - spec.methods[i].result.schema = mergeAllOf(spec.methods[i].result.schema); + + let data = JSON.stringify(spec, null, 2); + fs.writeFileSync(`openrpc/${serviceName}.openrpc.json`, data); + fs.writeFileSync(`${services[serviceName].saveDir ?? 'static'}/${serviceName}.openrpc.json`, data); + + console.log(`Built ${serviceName} specfile successfully.`); } -let data = JSON.stringify(spec, null, 2); -fs.writeFileSync('openrpc/openrpc.json', data); -fs.writeFileSync('static/openrpc.json', data); +const services = { + 'stellar-rpc': { + starterFile: { + openrpc: "1.2.6", + info: { + title: "Soroban RPC", + description: "Soroban-RPC allows you to communicate directly with Soroban via a JSON RPC interface.", + termsOfService: "https://stellar.org/terms-of-service", + contact: { + name: "Stellar Development Foundation", + url: "https://stellar.org/connect", + email: "hello@stellar.org" + }, + license: { + name: "Apache 2.0", + url: "https://www.apache.org/licenses/LICENSE-2.0.html" + }, + version: "20.1.0" + }, + servers: [ + { + name: "Testnet", + url: "https://soroban-testnet.stellar.org:443", + summary: "Publicly available RPC server maintained by SDF, operating on the Testnet test network.", + description: "Testnet is meant to be a stable network that runs a production (or near-production) version of the Stellar network." + }, + { + name: "Futurenet", + url: "https://rpc-futurenet.stellar.org:443", + summary: "Publicly available RPC server maintained by SDF, operating on the Futurenet test network.", + description: "Futurenet is meant to be a bleeding-edge, experimental network that runs an early, test version of the Stellar network." + } + ], + }, + }, + 'anchor-platform': { + saveDir: "platforms/anchor-platform/api-reference/platform/rpc", + starterFile: { + openrpc: "1.2.6", + info: { + title: "Anchor Platform", + description: "The Anchor Platform is a set of tools and APIs that enable developers and businesses to build their own on and off-ramp services for the Stellar network. It provides a standardized interface, including the implementation of several Stellar Ecosystem Proposals (SEPs), to make it easy for businesses to integrate with Stellar-based wallets and exchanges.", + termsOfService: "https://stellar.org/terms-of-service", + contact: { + name: "Stellar Development Foundation", + url: "https://stellar.org/connect", + email: "hello@stellar.org" + }, + license: { + name: "Apache 2.0", + url: "https://www.apache.org/licenses/LICENSE-2.0.html" + }, + version: "2.8.4" + }, + servers: [ + { + name: "Platform API", + url: "https://platform-server.exampleanchor.com", + summary: "Example URL endpoint for the Platform Server.", + description: "Example URL endpoint for the Platform Server. Note: This is an example URL only, you must configure your own Platform Server.", + } + ] + } + } +}; -console.log(); -console.log("Build successful."); +Object.keys(services).forEach(async (service) => { + await buildSpecFile(service) +}) diff --git a/openrpc/scripts/validate.mjs b/openrpc/scripts/validate.mjs index d17ec4d88..6d22b6115 100644 --- a/openrpc/scripts/validate.mjs +++ b/openrpc/scripts/validate.mjs @@ -4,24 +4,31 @@ import { validateOpenRPCDocument } from "@open-rpc/schema-utils-js"; -let rawdata = fs.readFileSync("openrpc/openrpc.json"); -let openrpc = JSON.parse(rawdata); +async function buildAndValidate(filename) { + let rawdata = fs.readFileSync(filename); + let openrpc = JSON.parse(rawdata); -const error = validateOpenRPCDocument(openrpc); -if (error != true) { - console.log(error.name); - console.log(error.message); - process.exit(1); -} + const error = validateOpenRPCDocument(openrpc); + if (error != true) { + console.log(error.name); + console.log(error.message); + process.exit(1); + } + + try { + await Promise.resolve(parseOpenRPCDocument(openrpc)); + } catch(e) { + console.log(e.name); + let end = e.message.indexOf("schema in question"); + let msg = e.message.substring(0, end); + console.log(msg); + process.exit(1); + } -try { - await Promise.resolve(parseOpenRPCDocument(openrpc)); -} catch(e) { - console.log(e.name); - let end = e.message.indexOf("schema in question"); - let msg = e.message.substring(0, end); - console.log(msg); - process.exit(1); + console.log(`OpenRPC specfile (${filename}) validated successfully.`); } -console.log("OpenRPC spec validated successfully."); +await Promise.all([ + buildAndValidate("openrpc/stellar-rpc.openrpc.json"), + buildAndValidate("platforms/anchor-platform/api-reference/platform/rpc/anchor-platform.openrpc.json") +]) diff --git a/openrpc/src/anchor-platform/contentDescriptors/account.json b/openrpc/src/anchor-platform/contentDescriptors/account.json new file mode 100644 index 000000000..df32c8ed4 --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/account.json @@ -0,0 +1,18 @@ +{ + "source_account": { + "name": "source_account", + "description": "Source account", + "required": false, + "schema": { + "type": "string" + } + }, + "destination_account": { + "name": "destination_account", + "description": "Destination account", + "required": false, + "schema": { + "type": "string" + } + } +} diff --git a/openrpc/src/anchor-platform/contentDescriptors/amount.json b/openrpc/src/anchor-platform/contentDescriptors/amount.json new file mode 100644 index 000000000..8b9751943 --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/amount.json @@ -0,0 +1,60 @@ +{ + "amount_expected": { + "name": "amount_expected", + "description": "The amount expected in the payment", + "required": false, + "schema": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/AmountNumber" + } + }, + "required": [ + "amount" + ] + } + }, + "amount_in": { + "name": "amount_in", + "description": "The amount expected in the payment", + "required": true, + "schema": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/AmountNumber" + }, + "asset": { + "description": "The asset to be received by the Anchor", + "$ref": "#/components/schemas/AmountAsset" + } + }, + "required": [ + "amount", + "asset" + ] + } + }, + "amount_out": { + "name": "amount_out", + "description": "Amount sent by anchor to user", + "required": true, + "schema": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/AmountNumber" + }, + "asset": { + "description": "The asset to be sent by anchor to user at end of transaction", + "$ref": "#/components/schemas/AmountAsset" + } + }, + "required": [ + "amount", + "asset" + ] + } + } +} diff --git a/openrpc/src/anchor-platform/contentDescriptors/datetime.json b/openrpc/src/anchor-platform/contentDescriptors/datetime.json new file mode 100644 index 000000000..53864900d --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/datetime.json @@ -0,0 +1,26 @@ +{ + "funds_received_at": { + "name": "funds_received_at", + "description": "The date and time of receiving funds.", + "required": false, + "schema": { + "$ref": "#/components/schemas/datetime" + } + }, + "funds_sent_at": { + "name": "funds_sent_at", + "description": "The date and time of sending funds.", + "required": false, + "schema": { + "$ref": "#/components/schemas/datetime" + } + }, + "user_action_required_by": { + "name": "user_action_required_by", + "description": "Time and date by which user action is required", + "required": false, + "schema": { + "$ref": "#/components/schemas/datetime" + } + } +} diff --git a/openrpc/src/anchor-platform/contentDescriptors/fee.json b/openrpc/src/anchor-platform/contentDescriptors/fee.json new file mode 100644 index 000000000..3c5828cec --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/fee.json @@ -0,0 +1,25 @@ +{ + "amount_fee": { + "name": "amount_fee", + "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor", + "required": false, + "deprecated": true, + "schema": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/AmountNumber" + } + }, + "required": ["amount"] + } + }, + "fee_details": { + "name": "fee_details", + "description": "Description of fees charged by the anchor", + "required": true, + "schema": { + "$ref": "#/components/schemas/fee_details" + } + } +} diff --git a/openrpc/src/anchor-platform/contentDescriptors/memo.json b/openrpc/src/anchor-platform/contentDescriptors/memo.json new file mode 100644 index 000000000..4a20ae673 --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/memo.json @@ -0,0 +1,18 @@ +{ + "memo": { + "name": "memo", + "description": "Value of memo to attach to transaction", + "required": false, + "schema": { + "type": "string" + } + }, + "memo_type": { + "name": "memo_type", + "description": "Type of memo that anchor should attach to the transaction", + "required": false, + "schema": { + "type": "string" + } + } +} diff --git a/openrpc/src/anchor-platform/contentDescriptors/message.json b/openrpc/src/anchor-platform/contentDescriptors/message.json new file mode 100644 index 000000000..03980f64a --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/message.json @@ -0,0 +1,11 @@ +{ + "message": { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "$ref": "#/components/schemas/message" + } + } +} diff --git a/openrpc/src/anchor-platform/contentDescriptors/refund.json b/openrpc/src/anchor-platform/contentDescriptors/refund.json new file mode 100644 index 000000000..75488d0b7 --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/refund.json @@ -0,0 +1,45 @@ +{ + "RefundWithHash": { + "name": "refund", + "schema": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/RefundAmount" + }, + "amount_fee": { + "$ref": "#/components/schemas/RefundAmountFee" + }, + "id": { + "title": "id", + "$ref": "#/components/schemas/StellarHash" + } + }, + "required": [ + "amount", + "amount_fee", + "id" + ] + } + }, + "refund": { + "name": "refund", + "description": "An object describing refund associated with this transaction.", + "required": false, + "schema": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/RefundAmount" + }, + "amount_fee": { + "$ref": "#/components/schemas/RefundAmountFee" + } + }, + "required": [ + "amount", + "amount_fee" + ] + } + } +} diff --git a/openrpc/src/anchor-platform/contentDescriptors/transaction_id.json b/openrpc/src/anchor-platform/contentDescriptors/transaction_id.json new file mode 100644 index 000000000..fc28f5829 --- /dev/null +++ b/openrpc/src/anchor-platform/contentDescriptors/transaction_id.json @@ -0,0 +1,29 @@ +{ + "stellar_transaction_id": { + "name": "stellar_transaction_id", + "summary": "Transaction ID on Stellar", + "description": "The unique transaction identifier for this transfer on the Stellar network.", + "required": true, + "schema": { + "$ref": "#/components/schemas/StellarHash" + } + }, + "transaction_id": { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "$ref": "#/components/schemas/transaction_id" + } + }, + "external_transaction_id": { + "name": "external_transaction_id", + "summary": "ID of the transaction on external network", + "description": "The unique identifier of this transaction on the external network.", + "required": false, + "schema": { + "$ref": "#/components/schemas/transaction_id" + } + } +} diff --git a/openrpc/src/anchor-platform/examples/account.json b/openrpc/src/anchor-platform/examples/account.json new file mode 100644 index 000000000..2fb660392 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/account.json @@ -0,0 +1,10 @@ +{ + "source_account": { + "name": "source_account", + "value": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL" + }, + "destination_account": { + "name": "destination_account", + "value": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } +} diff --git a/openrpc/src/anchor-platform/examples/amount.json b/openrpc/src/anchor-platform/examples/amount.json new file mode 100644 index 000000000..7702fef18 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/amount.json @@ -0,0 +1,106 @@ +{ + "AmountStellarAsset": { + "name": "asset", + "value": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "AmountIsoAsset": { + "name": "asset", + "value": "iso4217:USD" + }, + "Amount1Number": { + "name": "amount", + "value": 1 + }, + "Amount1String": { + "name": "amount", + "value": "1" + }, + "AmountPoint1Number": { + "name": "amount", + "value": 0.1 + }, + "AmountPoint1String": { + "name": "amount", + "value": "0.1" + }, + "AmountPoint9Number": { + "name": "amount", + "value": 0.9 + }, + "AmountPoint9String": { + "name": "amount", + "value": "0.9" + }, + "AmountOutNumberOnly": { + "name": "amount_out", + "value": { + "amount": 1 + } + }, + "AmountOutPoint9NumberOnly": { + "name": "amount_out", + "value": { + "amount": 0.9 + } + }, + "AmountInNumberOnly": { + "name": "amount_in", + "value": { + "amount": 1 + } + }, + "AmountFeeNumberOnly": { + "name": "amount_fee", + "value": { + "amount": 0.1 + } + }, + "AmountInNumberIsoAsset": { + "name": "amount_in", + "value": { + "amount": 1, + "asset": "iso4217:USD" + } + }, + "AmountInNumberStellarAsset": { + "name": "amount_in", + "value": { + "amount": 1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + }, + "AmountOutNumberIsoAsset": { + "name": "amount_out", + "value": { + "amount": 0.9, + "asset": "iso4217:USD" + } + }, + "AmountOutNumberStellarAsset": { + "name": "amount_out", + "value": { + "amount": 0.9, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + }, + "AmountFeeNumberIsoAsset": { + "name": "amount_fee", + "value": { + "amount": 0.1, + "asset": "iso4217:USD" + } + }, + "AmountFeeNumberStellarAsset": { + "name": "amount_fee", + "value": { + "amount": 0.1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + }, + "AmountExpectedNumberOnly": { + "name": "amount_expected", + "value": { + "amount": 1 + } + } +} diff --git a/openrpc/src/anchor-platform/examples/datetime.json b/openrpc/src/anchor-platform/examples/datetime.json new file mode 100644 index 000000000..dca669b42 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/datetime.json @@ -0,0 +1,22 @@ +{ + "datetime": { + "name": "datetime", + "value": "2023-08-04T10:04:06.280923Z" + }, + "started_at": { + "name": "started_at", + "value": "2023-08-04T10:04:06.280923Z" + }, + "updated_at": { + "name": "updated_at", + "value": "2023-08-04T10:04:15.716233Z" + }, + "funds_received_at": { + "name": "funds_received_at", + "value": "2023-07-04T12:34:56Z" + }, + "funds_sent_at": { + "name": "funds_sent_at", + "value": "2023-07-04T12:34:38Z" + } +} diff --git a/openrpc/src/anchor-platform/examples/fee.json b/openrpc/src/anchor-platform/examples/fee.json new file mode 100644 index 000000000..0967ef424 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/fee.json @@ -0,0 +1 @@ +{} diff --git a/openrpc/src/anchor-platform/examples/message.json b/openrpc/src/anchor-platform/examples/message.json new file mode 100644 index 000000000..d8c6c1690 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/message.json @@ -0,0 +1,94 @@ +{ + "message": { + "name": "message", + "value": "Transaction status message" + }, + "do_stellar_payment_message": { + "name": "message", + "value": "Do Stellar payment" + }, + "do_stellar_refund_message": { + "name": "message", + "value": "Do Stellar refund" + }, + "notify_amounts_updated_message": { + "name": "message", + "value": "Amounts updated" + }, + "notify_customer_info_updated_message": { + "name": "message", + "value": "Customer info updated" + }, + "notify_interactive_flow_completed_message": { + "name": "message", + "value": "Interactive flow completed successfully." + }, + "notify_offchain_funds_available_message": { + "name": "message", + "value": "Offchain funds available" + }, + "notify_offchain_funds_pending_message": { + "name": "message", + "value": "Offchain funds pending" + }, + "notify_offchain_funds_received_message": { + "name": "message", + "value": "Funds received successfully" + }, + "notify_offchain_funds_sent_message": { + "name": "message", + "value": "Offchain funds sent" + }, + "notify_onchain_funds_received_message": { + "name": "message", + "value": "Onchain funds received" + }, + "notify_onchain_funds_sent_message": { + "name": "message", + "value": "Onchain funds sent" + }, + "notify_refund_pending_message": { + "name": "message", + "value": "Refund pending" + }, + "notify_refund_sent_message": { + "name": "message", + "value": "Refund sent" + }, + "notify_transaction_error_message": { + "name": "message", + "value": "Transaction error" + }, + "notify_transaction_expired_message": { + "name": "message", + "value": "Transaction expired" + }, + "notify_transaction_on_hold_message": { + "name": "message", + "value": "Transaction on hold, please contact customer service to lift the hold." + }, + "notify_transaction_recovery_message": { + "name": "message", + "value": "Transaction recovered" + }, + "notify_trust_set_message": { + "name": "message", + "value": "Trustline set" + }, + "request_customer_info_update_message": { + "name": "message", + "value": "Customer info requested" + }, + "request_offchain_funds_message": { + "name": "message", + "value": "Request offchain funds" + }, + "request_onchain_funds_message": { + "name": "message", + "value": "Requesting onchain funds" + }, + "request_trust_message": { + "name": "message", + "value": "Request trust" + } +} diff --git a/openrpc/src/anchor-platform/examples/refund.json b/openrpc/src/anchor-platform/examples/refund.json new file mode 100644 index 000000000..f5233c303 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/refund.json @@ -0,0 +1,29 @@ +{ + "refund": { + "name": "refund", + "value": { + "amount": { + "amount": 1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_fee": { + "amount": 0.1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + } + }, + "RefundWithHash": { + "name": "refund", + "value": { + "id": "ab295bf48920f2bab4aa7cfe31f488eed779d42e57a243aacdff2e6e96ec484e", + "amount": { + "amount": 1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_fee": { + "amount": 0.1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + } + } +} diff --git a/openrpc/src/anchor-platform/examples/response.json b/openrpc/src/anchor-platform/examples/response.json new file mode 100644 index 000000000..79b5a8b64 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/response.json @@ -0,0 +1,32 @@ +{ + "AnchorPlatformResponse": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } +} diff --git a/openrpc/src/anchor-platform/examples/transaction_id.json b/openrpc/src/anchor-platform/examples/transaction_id.json new file mode 100644 index 000000000..943a8fb86 --- /dev/null +++ b/openrpc/src/anchor-platform/examples/transaction_id.json @@ -0,0 +1,14 @@ +{ + "transaction_id": { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + "stellar_transaction_id": { + "name": "stellar_transaction_id", + "value": "ab295bf48920f2bab4aa7cfe31f488eed779d42e57a243aacdff2e6e96ec484e" + }, + "external_transaction_id": { + "name": "external_transaction_id", + "value": "3320c6faad48c3cf39b6d4ac15ed50b6e5868b62551e69cde15df2d66c8ca360" + } +} diff --git a/openrpc/src/anchor-platform/methods/do_stellar_payment.json b/openrpc/src/anchor-platform/methods/do_stellar_payment.json new file mode 100644 index 000000000..4fef7e64c --- /dev/null +++ b/openrpc/src/anchor-platform/methods/do_stellar_payment.json @@ -0,0 +1,33 @@ +{ + "name": "do_stellar_payment", + "summary": "Submits a Stellar payment", + "description": "Submits a payment to a stellar network by a custody service.", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" } + ], + "result": { + "name": "do_stellar_paymentResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "do_stellar_paymentExample", + "description": "Example request to the `do_stellar_payment` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/do_stellar_payment_message" } + ], + "result": { + "$ref": "#/components/examples/AnchorPlatformResponse" + } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/do_stellar_refund.json b/openrpc/src/anchor-platform/methods/do_stellar_refund.json new file mode 100644 index 000000000..e20a9cbc0 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/do_stellar_refund.json @@ -0,0 +1,36 @@ +{ + "name": "do_stellar_refund", + "summary": "Submits a Stellar refund", + "description": "Submits a refund payment to a stellar network by a custody service", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/refund" } + ], + "result": { + "name": "do_stellar_refundResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "do_stellar_refundExample", + "description": "Example request to the `do_stellar_refund` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/do_stellar_refund_message" }, + { "$ref": "#/components/examples/refund" } + ], + "result": { + "$ref": "#/components/examples/AnchorPlatformResponse" + } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_amounts_updated.json b/openrpc/src/anchor-platform/methods/notify_amounts_updated.json new file mode 100644 index 000000000..5d31bc47b --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_amounts_updated.json @@ -0,0 +1,36 @@ +{ + "name": "notify_amounts_updated", + "summary": "Update transaction amounts", + "description": "Update amount_out and amount_fee values", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/amount_out" }, + { "$ref": "#/components/contentDescriptors/amount_fee" }, + { "$ref": "#/components/contentDescriptors/fee_details" } + ], + "result": { + "name": "notify_amounts_updatedResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_amounts_updatedExample", + "description": "Example request to the `notify_amounts_updated` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_amounts_updated_message" }, + { "$ref": "#/components/examples/AmountOutNumberOnly" }, + { "$ref": "#/components/examples/AmountFeeNumberOnly" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_customer_info_updated.json b/openrpc/src/anchor-platform/methods/notify_customer_info_updated.json new file mode 100644 index 000000000..12502bfaf --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_customer_info_updated.json @@ -0,0 +1,30 @@ +{ + "name": "notify_customer_info_updated", + "summary": "Customer info updated", + "description": "Additional customer information was received and updated.", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" } + ], + "result": { + "name": "notify_customer_info_updatedResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_customer_info_updatedExample", + "description": "Example request to the `notify_customer_info_updated` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_customer_info_updated_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_interactive_flow_completed.json b/openrpc/src/anchor-platform/methods/notify_interactive_flow_completed.json new file mode 100644 index 000000000..513171980 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_interactive_flow_completed.json @@ -0,0 +1,39 @@ +{ + "name": "notify_interactive_flow_completed", + "summary": "Interactive flow completed", + "description": "Platform has collected the transaction amounts and fees from the business", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/amount_in" }, + { "$ref": "#/components/contentDescriptors/amount_out" }, + { "$ref": "#/components/contentDescriptors/amount_fee" }, + { "$ref": "#/components/contentDescriptors/fee_details" }, + { "$ref": "#/components/contentDescriptors/amount_expected" } + ], + "result": { + "name": "notify_interactive_flow_completedResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_interactive_flow_completedExample", + "description": "Example request to the `notify_interactive_flow_completed` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_interactive_flow_completed_message" }, + { "$ref": "#/components/examples/AmountInNumberIsoAsset" }, + { "$ref": "#/components/examples/AmountOutNumberStellarAsset" }, + { "$ref": "#/components/examples/AmountFeeNumberIsoAsset" }, + { "$ref": "#/components/examples/AmountExpectedNumberOnly" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_offchain_funds_available.json b/openrpc/src/anchor-platform/methods/notify_offchain_funds_available.json new file mode 100644 index 000000000..e6e78f5b1 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_offchain_funds_available.json @@ -0,0 +1,33 @@ +{ + "name": "notify_offchain_funds_available", + "summary": "Offchain funds are available", + "description": "Funds are ready for the user / recipient to pick up.", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/external_transaction_id" } + ], + "result": { + "name": "notify_offchain_funds_availableResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_offchain_funds_availableExample", + "description": "Example request to the `notify_offchain_funds_available` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_offchain_funds_available_message" }, + { "$ref": "#/components/examples/stellar_transaction_id" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_offchain_funds_pending.json b/openrpc/src/anchor-platform/methods/notify_offchain_funds_pending.json new file mode 100644 index 000000000..c62b5ff91 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_offchain_funds_pending.json @@ -0,0 +1,34 @@ +{ + "name": "notify_offchain_funds_pending", + "summary": "Offchain funds pending", + "description": "Payment has been submitted to external network, but is not yet confirmed", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/external_transaction_id" } + ], + "result": { + "name": "notify_offchain_funds_pendingResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_offchain_funds_pendingExample", + "description": "Example request to the `notify_offchain_funds_pending` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_offchain_funds_pending_message" }, + { "$ref": "#/components/examples/external_transaction_id" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_offchain_funds_received.json b/openrpc/src/anchor-platform/methods/notify_offchain_funds_received.json new file mode 100644 index 000000000..79721c9bb --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_offchain_funds_received.json @@ -0,0 +1,43 @@ +{ + "name": "notify_offchain_funds_received", + "summary": "Offchain funds received", + "description": "Payment is being processed internally by anchor", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/funds_received_at" }, + { "$ref": "#/components/contentDescriptors/external_transaction_id" }, + { "$ref": "#/components/contentDescriptors/amount_in" }, + { "$ref": "#/components/contentDescriptors/amount_out" }, + { "$ref": "#/components/contentDescriptors/amount_fee" }, + { "$ref": "#/components/contentDescriptors/fee_details" } + ], + "result": { + "name": "notify_offchain_funds_receivedResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_offchain_funds_receivedExample", + "description": "Example request to the `notify_offchain_funds_received` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_offchain_funds_received_message" }, + { "$ref": "#/components/examples/funds_received_at" }, + { "$ref": "#/components/examples/external_transaction_id" }, + { "$ref": "#/components/examples/AmountInNumberOnly" }, + { "$ref": "#/components/examples/AmountOutPoint9NumberOnly" }, + { "$ref": "#/components/examples/AmountFeeNumberOnly" }, + { "$ref": "#/components/examples/AmountExpectedNumberOnly" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_offchain_funds_sent.json b/openrpc/src/anchor-platform/methods/notify_offchain_funds_sent.json new file mode 100644 index 000000000..dc76e4e39 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_offchain_funds_sent.json @@ -0,0 +1,36 @@ +{ + "name": "notify_offchain_funds_sent", + "summary": "Offchain funds sent", + "description": "Transaction flow is fully completed for the SEP-6 and SEP-24 withdrawal flow or SEP-31 receive flow. Payment has been submitted to external network, but is not yet confirmed for SEP-24 deposit flow", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/funds_sent_at" }, + { "$ref": "#/components/contentDescriptors/external_transaction_id" } + ], + "result": { + "name": "notify_offchain_funds_sentResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_offchain_funds_sentExample", + "description": "Example request to the `notify_offchain_funds_sent` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_offchain_funds_sent_message" }, + { "$ref": "#/components/examples/funds_sent_at" }, + { "$ref": "#/components/examples/external_transaction_id" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_onchain_funds_received.json b/openrpc/src/anchor-platform/methods/notify_onchain_funds_received.json new file mode 100644 index 000000000..50bc9f9a8 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_onchain_funds_received.json @@ -0,0 +1,39 @@ +{ + "name": "notify_onchain_funds_received", + "summary": "Onchain funds received", + "description": "Notify that the payment is being processed internally by anchor for SEP-6 or SEP-24. For SEP-31, notify that the payment is being processed by the Receiving Anchor. In the request, amount parameters are optional, but have a strict rule of how to set them. Either none, only `amount_in`, or all of fields (`amount_in`, `amount_out`, `amount_fee`) must be specified. ", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/stellar_transaction_id" }, + { "$ref": "#/components/contentDescriptors/amount_in" }, + { "$ref": "#/components/contentDescriptors/amount_out" }, + { "$ref": "#/components/contentDescriptors/amount_fee" }, + { "$ref": "#/components/contentDescriptors/fee_details" } + ], + "result": { + "name": "notify_onchain_funds_receivedResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_onchain_funds_receivedExample", + "description": "Example request to the `notify_onchain_funds_received` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_onchain_funds_received_message" }, + { "$ref": "#/components/examples/stellar_transaction_id" }, + { "$ref": "#/components/examples/AmountInNumberOnly" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_onchain_funds_sent.json b/openrpc/src/anchor-platform/methods/notify_onchain_funds_sent.json new file mode 100644 index 000000000..40d334278 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_onchain_funds_sent.json @@ -0,0 +1,33 @@ +{ + "name": "notify_onchain_funds_sent", + "summary": "Onchain funds sent", + "description": "Transaction flow is fully completed for SEP-6 or SEP-24 deposit", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/stellar_transaction_id" } + ], + "result": { + "name": "notify_onchain_funds_sentResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_onchain_funds_sentExample", + "description": "Example request to the `notify_onchain_funds_sent` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_onchain_funds_sent_message" }, + { "$ref": "#/components/examples/stellar_transaction_id" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_refund_pending.json b/openrpc/src/anchor-platform/methods/notify_refund_pending.json new file mode 100644 index 000000000..29bd8e063 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_refund_pending.json @@ -0,0 +1,33 @@ +{ + "name": "notify_refund_pending", + "summary": "Refund pending", + "description": "Refund has been submitted, but is not yet confirmed", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/RefundWithHash" } + ], + "result": { + "name": "notify_refund_pendingResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_refund_pendingExample", + "description": "Example request to the `notify_refund_pending` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_refund_pending_message" }, + { "$ref": "#/components/examples/RefundWithHash"} + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_refund_sent.json b/openrpc/src/anchor-platform/methods/notify_refund_sent.json new file mode 100644 index 000000000..35d823cf3 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_refund_sent.json @@ -0,0 +1,34 @@ +{ + "name": "notify_refund_sent", + "summary": "Payment refunded", + "description": "Refund payment completed", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/RefundWithHash" } + ], + "result": { + "name": "notify_refund_sentResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_refund_sentExample", + "description": "Example request to the `notify_refund_sent` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_refund_sent_message" }, + { "$ref": "#/components/examples/RefundWithHash"} + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_transaction_error.json b/openrpc/src/anchor-platform/methods/notify_transaction_error.json new file mode 100644 index 000000000..c0befc899 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_transaction_error.json @@ -0,0 +1,32 @@ +{ + "name": "notify_transaction_error", + "summary": "Transaction processing error", + "description": "There was an error processing transaction", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" } + ], + "result": { + "name": "notify_transaction_errorResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_transaction_errorExample", + "description": "Example request to the `notify_transaction_error` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_transaction_error_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_transaction_expired.json b/openrpc/src/anchor-platform/methods/notify_transaction_expired.json new file mode 100644 index 000000000..8a6a19c66 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_transaction_expired.json @@ -0,0 +1,32 @@ +{ + "name": "notify_transaction_expired", + "summary": "Transaction has expired", + "description": "Funds were never received by the anchor and the transaction is considered abandoned by the user", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" } + ], + "result": { + "name": "notify_transaction_expiredResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_transaction_expiredExample", + "description": "Example request to the `notify_transaction_expired` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_transaction_expired_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_transaction_on_hold.json b/openrpc/src/anchor-platform/methods/notify_transaction_on_hold.json new file mode 100644 index 000000000..4c00dde9d --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_transaction_on_hold.json @@ -0,0 +1,32 @@ +{ + "name": "notify_transaction_on_hold", + "summary": "Transaction transaction is on hold", + "description": "Notify transaction is currently on hold by the anchor (e.g. compliance hold). Anchor should update message to guide user through the steps.", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/user_action_required_by" } + ], + "result": { + "name": "notify_transaction_on_holdResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_transaction_on_holdExample", + "description": "Example request to the `notify_transaction_on_hold` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_transaction_on_hold_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_transaction_recovery.json b/openrpc/src/anchor-platform/methods/notify_transaction_recovery.json new file mode 100644 index 000000000..f9f89413e --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_transaction_recovery.json @@ -0,0 +1,32 @@ +{ + "name": "notify_transaction_recovery ", + "summary": "Transaction recovery", + "description": "Transaction status is changed from error / expired to pending_anchor(SEP-6 or SEP-24) or pending_receiver(SEP-31)", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" } + ], + "result": { + "name": "notify_transaction_recoveryResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_transaction_recoveryExample", + "description": "Example request to the `notify_transaction_recovery` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_transaction_recovery_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/notify_trust_set.json b/openrpc/src/anchor-platform/methods/notify_trust_set.json new file mode 100644 index 000000000..ce3f07cfc --- /dev/null +++ b/openrpc/src/anchor-platform/methods/notify_trust_set.json @@ -0,0 +1,39 @@ +{ + "name": "notify_trust_set", + "summary": "Asset trustline set", + "description": "The user has added a trustline for the asset", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { + "name": "success", + "description": "Flag which indicates if trustline was configured by user.", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "result": { + "name": "notify_trust_setResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "notify_trust_setExample", + "description": "Example request to the `notify_trust_set` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/notify_trust_set_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/request_customer_info_update.json b/openrpc/src/anchor-platform/methods/request_customer_info_update.json new file mode 100644 index 000000000..e8741195c --- /dev/null +++ b/openrpc/src/anchor-platform/methods/request_customer_info_update.json @@ -0,0 +1,31 @@ +{ + "name": "request_customer_info_update", + "summary": "Customer info needed", + "description": "Additional customer information is required", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-31" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" } + ], + "result": { + "name": "request_customer_info_updateResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "request_customer_info_updateExample", + "description": "Example request to the `request_customer_info_update` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/request_customer_info_update_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/request_offchain_funds.json b/openrpc/src/anchor-platform/methods/request_offchain_funds.json new file mode 100644 index 000000000..198cf6e06 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/request_offchain_funds.json @@ -0,0 +1,40 @@ +{ + "name": "request_offchain_funds", + "summary": "Request offchain funds", + "description": "The user has to initiate transfer to the anchor", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/amount_in" }, + { "$ref": "#/components/contentDescriptors/amount_out" }, + { "$ref": "#/components/contentDescriptors/amount_fee" }, + { "$ref": "#/components/contentDescriptors/fee_details" }, + { "$ref": "#/components/contentDescriptors/amount_expected" } + ], + "result": { + "name": "request_offchain_fundsResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "request_offchain_fundsExample", + "description": "Example request to the `request_offchain_funds` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/request_offchain_funds_message" }, + { "$ref": "#/components/examples/AmountInNumberIsoAsset" }, + { "$ref": "#/components/examples/AmountOutNumberStellarAsset" }, + { "$ref": "#/components/examples/AmountFeeNumberIsoAsset" }, + { "$ref": "#/components/examples/AmountExpectedNumberOnly" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/request_onchain_funds.json b/openrpc/src/anchor-platform/methods/request_onchain_funds.json new file mode 100644 index 000000000..98c14c159 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/request_onchain_funds.json @@ -0,0 +1,43 @@ +{ + "name": "request_onchain_funds", + "summary": "Request onchain funds", + "description": "The user has to initiate transfer to the anchor", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" }, + { "$ref": "#/components/contentDescriptors/amount_in" }, + { "$ref": "#/components/contentDescriptors/amount_out" }, + { "$ref": "#/components/contentDescriptors/amount_fee" }, + { "$ref": "#/components/contentDescriptors/fee_details" }, + { "$ref": "#/components/contentDescriptors/amount_expected" }, + { "$ref": "#/components/contentDescriptors/destination_account" }, + { "$ref": "#/components/contentDescriptors/memo" }, + { "$ref": "#/components/contentDescriptors/memo_type" } + ], + "result": { + "name": "request_onchain_fundsResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "request_onchain_fundsExample", + "description": "Example request to the `request_onchain_funds` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/request_onchain_funds_message" }, + { "$ref": "#/components/examples/AmountInNumberStellarAsset" }, + { "$ref": "#/components/examples/AmountOutNumberIsoAsset" }, + { "$ref": "#/components/examples/AmountFeeNumberStellarAsset" }, + { "$ref": "#/components/examples/AmountExpectedNumberOnly" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/methods/request_trust.json b/openrpc/src/anchor-platform/methods/request_trust.json new file mode 100644 index 000000000..a467fca33 --- /dev/null +++ b/openrpc/src/anchor-platform/methods/request_trust.json @@ -0,0 +1,31 @@ +{ + "name": "request_trust", + "summary": "A trustline to the asset isn't set", + "description": "The user must add a trustline for the asset to complete", + "paramStructure": "by-name", + "tags": [ + { "name": "SEP-6" }, + { "name": "SEP-24" } + ], + "params": [ + { "$ref": "#/components/contentDescriptors/transaction_id" }, + { "$ref": "#/components/contentDescriptors/message" } + ], + "result": { + "name": "request_trustResponse", + "schema": { + "$ref": "#/components/schemas/response" + } + }, + "examples": [ + { + "name": "request_trustExample", + "description": "Example request to the `request_trust` method.", + "params": [ + { "$ref": "#/components/examples/transaction_id" }, + { "$ref": "#/components/examples/request_trust_message" } + ], + "result": { "$ref": "#/components/examples/AnchorPlatformResponse" } + } + ] +} diff --git a/openrpc/src/anchor-platform/schemas/amount.json b/openrpc/src/anchor-platform/schemas/amount.json new file mode 100644 index 000000000..5b8856a44 --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/amount.json @@ -0,0 +1,54 @@ +{ + "AmountString": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "AmountNumber": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "AmountAsset": { + "title": "asset", + "description": "An asset.", + "type": "string" + }, + "AmountObjectString": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/AmountString" + }, + "asset": { + "$ref": "#/components/schemas/AmountAsset" + } + } + }, + "AmountObjectNumber": { + "type": "object", + "properties": { + "amount": { + "$ref": "#/components/schemas/AmountNumber" + }, + "asset": { + "$ref": "#/components/schemas/AmountAsset" + } + } + }, + "amount_expected": { + "title": "amount_expected", + "description": "The amount expected in the payment.", + "$ref": "#/components/schemas/AmountObjectString" + }, + "amount_in": { + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "$ref": "#/components/schemas/AmountObjectString" + }, + "amount_out": { + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "$ref": "#/components/schemas/AmountObjectString" + } +} diff --git a/openrpc/src/anchor-platform/schemas/datetime.json b/openrpc/src/anchor-platform/schemas/datetime.json new file mode 100644 index 000000000..8146263b4 --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/datetime.json @@ -0,0 +1,27 @@ +{ + "datetime": { + "title": "datetime", + "description": "A date and time.", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "$ref": "#/components/schemas/datetime" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "$ref": "#/components/schemas/datetime" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "$ref": "#/components/schemas/datetime" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "$ref": "#/components/schemas/datetime" + } +} diff --git a/openrpc/src/anchor-platform/schemas/fee.json b/openrpc/src/anchor-platform/schemas/fee.json new file mode 100644 index 000000000..747396a9f --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/fee.json @@ -0,0 +1,39 @@ +{ + "amount_fee": { + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "$ref": "#/components/schemas/AmountObjectString" + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + }, + "required": ["total", "asset"] + } +} diff --git a/openrpc/src/anchor-platform/schemas/message.json b/openrpc/src/anchor-platform/schemas/message.json new file mode 100644 index 000000000..9f80340c9 --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/message.json @@ -0,0 +1,7 @@ +{ + "message": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } +} diff --git a/openrpc/src/anchor-platform/schemas/quote.json b/openrpc/src/anchor-platform/schemas/quote.json new file mode 100644 index 000000000..7378a8939 --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/quote.json @@ -0,0 +1,7 @@ +{ + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + } +} diff --git a/openrpc/src/anchor-platform/schemas/refund.json b/openrpc/src/anchor-platform/schemas/refund.json new file mode 100644 index 000000000..25583ffb4 --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/refund.json @@ -0,0 +1,86 @@ +{ + "RefundAmount": { + "title": "amount", + "description": "Amount to be refunded", + "type": "object", + "properties": { + "amount": { + "description": "Amount of assets to refund", + "$ref": "#/components/schemas/AmountNumber" + }, + "asset": { + "description": "The asset of refund", + "$ref": "#/components/schemas/AmountAsset" + } + }, + "required": [ + "amount", + "asset" + ] + }, + "RefundAmountFee": { + "title": "amount_fee", + "description": "Amount of fee", + "type": "object", + "properties": { + "amount": { + "description": "The amount of fee", + "$ref": "#/components/schemas/AmountNumber" + }, + "asset": { + "description": "The asset of fee charged by anchor", + "$ref": "#/components/schemas/AmountAsset" + } + }, + "required": [ + "amount", + "asset" + ] + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "description": "The total amount refunded in units of amount_in_asset.", + "$ref": "#/components/schemas/AmountObjectNumber" + }, + "amount_fee": { + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "$ref": "#/components/schemas/AmountObjectNumber" + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "$ref": "#/components/schemas/StellarHash" + }, + "id_type": { + "type": "string" + }, + "amount": { + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "$ref": "#/components/schemas/AmountObjectNumber" + }, + "fee": { + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "$ref": "#/components/schemas/AmountObjectNumber" + }, + "requested_at": { + "description": "The date and time of requesting refund.", + "$ref": "#/components/schemas/datetime" + }, + "refunded_at": { + "description": "The date and time of making refund.", + "$ref": "#/components/schemas/datetime" + } + } + } + } + } + } +} diff --git a/openrpc/src/anchor-platform/schemas/response.json b/openrpc/src/anchor-platform/schemas/response.json new file mode 100644 index 000000000..344dd56d6 --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/response.json @@ -0,0 +1,57 @@ +{ + "response": { + "name": "response", + "type": "object", + "properties": { + "id": { + "$ref": "#/components/schemas/transaction_id" + }, + "sep": { + "$ref": "#/components/schemas/sep" + }, + "kind": { + "$ref": "#/components/schemas/kind" + }, + "status": { + "$ref": "#/components/schemas/status" + }, + "amount_expected": { + "$ref": "#/components/schemas/amount_expected" + }, + "amount_in": { + "$ref": "#/components/schemas/amount_in" + }, + "amount_out": { + "$ref": "#/components/schemas/amount_out" + }, + "amount_fee": { + "$ref": "#/components/schemas/amount_fee" + }, + "fee_details": { + "$ref": "#/components/schemas/fee_details" + }, + "quote_id": { + "$ref": "#/components/schemas/quote_id" + }, + "started_at": { + "$ref": "#/components/schemas/started_at" + }, + "updated_at": { + "$ref": "#/components/schemas/updated_at" + }, + "completed_at": { + "$ref": "#/components/schemas/completed_at" + }, + "transfer_received_at": { + "$ref": "#/components/schemas/transfer_received_at" + }, + "message": { + "description": "Human readable explanation of transaction status", + "$ref": "#/components/schemas/message" + }, + "refunds": { + "$ref": "#/components/schemas/refunds" + } + } + } +} diff --git a/openrpc/src/anchor-platform/schemas/transaction.json b/openrpc/src/anchor-platform/schemas/transaction.json new file mode 100644 index 000000000..cc612e7ab --- /dev/null +++ b/openrpc/src/anchor-platform/schemas/transaction.json @@ -0,0 +1,57 @@ +{ + "StellarHash": { + "title": "hash", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ 6, 24, 31 ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "transaction_id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } +} diff --git a/openrpc/src/contentDescriptors/EventFilters.json b/openrpc/src/stellar-rpc/contentDescriptors/EventFilters.json similarity index 100% rename from openrpc/src/contentDescriptors/EventFilters.json rename to openrpc/src/stellar-rpc/contentDescriptors/EventFilters.json diff --git a/openrpc/src/contentDescriptors/LedgerKeys.json b/openrpc/src/stellar-rpc/contentDescriptors/LedgerKeys.json similarity index 100% rename from openrpc/src/contentDescriptors/LedgerKeys.json rename to openrpc/src/stellar-rpc/contentDescriptors/LedgerKeys.json diff --git a/openrpc/src/contentDescriptors/Pagination.json b/openrpc/src/stellar-rpc/contentDescriptors/Pagination.json similarity index 100% rename from openrpc/src/contentDescriptors/Pagination.json rename to openrpc/src/stellar-rpc/contentDescriptors/Pagination.json diff --git a/openrpc/src/contentDescriptors/ResourceConfig.json b/openrpc/src/stellar-rpc/contentDescriptors/ResourceConfig.json similarity index 100% rename from openrpc/src/contentDescriptors/ResourceConfig.json rename to openrpc/src/stellar-rpc/contentDescriptors/ResourceConfig.json diff --git a/openrpc/src/contentDescriptors/StartLedger.json b/openrpc/src/stellar-rpc/contentDescriptors/StartLedger.json similarity index 100% rename from openrpc/src/contentDescriptors/StartLedger.json rename to openrpc/src/stellar-rpc/contentDescriptors/StartLedger.json diff --git a/openrpc/src/contentDescriptors/Transaction.json b/openrpc/src/stellar-rpc/contentDescriptors/Transaction.json similarity index 100% rename from openrpc/src/contentDescriptors/Transaction.json rename to openrpc/src/stellar-rpc/contentDescriptors/Transaction.json diff --git a/openrpc/src/contentDescriptors/TransactionHash.json b/openrpc/src/stellar-rpc/contentDescriptors/TransactionHash.json similarity index 100% rename from openrpc/src/contentDescriptors/TransactionHash.json rename to openrpc/src/stellar-rpc/contentDescriptors/TransactionHash.json diff --git a/openrpc/src/examplePairingObjects/EventsPairs.json b/openrpc/src/stellar-rpc/examplePairingObjects/EventsPairs.json similarity index 100% rename from openrpc/src/examplePairingObjects/EventsPairs.json rename to openrpc/src/stellar-rpc/examplePairingObjects/EventsPairs.json diff --git a/openrpc/src/examplePairingObjects/GetTransactionPairs.json b/openrpc/src/stellar-rpc/examplePairingObjects/GetTransactionPairs.json similarity index 100% rename from openrpc/src/examplePairingObjects/GetTransactionPairs.json rename to openrpc/src/stellar-rpc/examplePairingObjects/GetTransactionPairs.json diff --git a/openrpc/src/examplePairingObjects/GetTransactionsPairs.json b/openrpc/src/stellar-rpc/examplePairingObjects/GetTransactionsPairs.json similarity index 100% rename from openrpc/src/examplePairingObjects/GetTransactionsPairs.json rename to openrpc/src/stellar-rpc/examplePairingObjects/GetTransactionsPairs.json diff --git a/openrpc/src/examplePairingObjects/LedgerEntriesPairs.json b/openrpc/src/stellar-rpc/examplePairingObjects/LedgerEntriesPairs.json similarity index 100% rename from openrpc/src/examplePairingObjects/LedgerEntriesPairs.json rename to openrpc/src/stellar-rpc/examplePairingObjects/LedgerEntriesPairs.json diff --git a/openrpc/src/examplePairingObjects/NetworkPairs.json b/openrpc/src/stellar-rpc/examplePairingObjects/NetworkPairs.json similarity index 100% rename from openrpc/src/examplePairingObjects/NetworkPairs.json rename to openrpc/src/stellar-rpc/examplePairingObjects/NetworkPairs.json diff --git a/openrpc/src/examplePairingObjects/SendTransactionPairs.json b/openrpc/src/stellar-rpc/examplePairingObjects/SendTransactionPairs.json similarity index 100% rename from openrpc/src/examplePairingObjects/SendTransactionPairs.json rename to openrpc/src/stellar-rpc/examplePairingObjects/SendTransactionPairs.json diff --git a/openrpc/src/examplePairingObjects/SimulationPairs.json b/openrpc/src/stellar-rpc/examplePairingObjects/SimulationPairs.json similarity index 100% rename from openrpc/src/examplePairingObjects/SimulationPairs.json rename to openrpc/src/stellar-rpc/examplePairingObjects/SimulationPairs.json diff --git a/openrpc/src/examples/Events.json b/openrpc/src/stellar-rpc/examples/Events.json similarity index 100% rename from openrpc/src/examples/Events.json rename to openrpc/src/stellar-rpc/examples/Events.json diff --git a/openrpc/src/examples/LedgerEntries.json b/openrpc/src/stellar-rpc/examples/LedgerEntries.json similarity index 100% rename from openrpc/src/examples/LedgerEntries.json rename to openrpc/src/stellar-rpc/examples/LedgerEntries.json diff --git a/openrpc/src/examples/Simulations.json b/openrpc/src/stellar-rpc/examples/Simulations.json similarity index 100% rename from openrpc/src/examples/Simulations.json rename to openrpc/src/stellar-rpc/examples/Simulations.json diff --git a/openrpc/src/examples/Transactions.json b/openrpc/src/stellar-rpc/examples/Transactions.json similarity index 100% rename from openrpc/src/examples/Transactions.json rename to openrpc/src/stellar-rpc/examples/Transactions.json diff --git a/openrpc/src/methods/getEvents.json b/openrpc/src/stellar-rpc/methods/getEvents.json similarity index 100% rename from openrpc/src/methods/getEvents.json rename to openrpc/src/stellar-rpc/methods/getEvents.json diff --git a/openrpc/src/methods/getFeeStats.json b/openrpc/src/stellar-rpc/methods/getFeeStats.json similarity index 100% rename from openrpc/src/methods/getFeeStats.json rename to openrpc/src/stellar-rpc/methods/getFeeStats.json diff --git a/openrpc/src/methods/getHealth.json b/openrpc/src/stellar-rpc/methods/getHealth.json similarity index 100% rename from openrpc/src/methods/getHealth.json rename to openrpc/src/stellar-rpc/methods/getHealth.json diff --git a/openrpc/src/methods/getLatestLedger.json b/openrpc/src/stellar-rpc/methods/getLatestLedger.json similarity index 100% rename from openrpc/src/methods/getLatestLedger.json rename to openrpc/src/stellar-rpc/methods/getLatestLedger.json diff --git a/openrpc/src/methods/getLedgerEntries.json b/openrpc/src/stellar-rpc/methods/getLedgerEntries.json similarity index 100% rename from openrpc/src/methods/getLedgerEntries.json rename to openrpc/src/stellar-rpc/methods/getLedgerEntries.json diff --git a/openrpc/src/methods/getNetwork.json b/openrpc/src/stellar-rpc/methods/getNetwork.json similarity index 100% rename from openrpc/src/methods/getNetwork.json rename to openrpc/src/stellar-rpc/methods/getNetwork.json diff --git a/openrpc/src/methods/getTransaction.json b/openrpc/src/stellar-rpc/methods/getTransaction.json similarity index 100% rename from openrpc/src/methods/getTransaction.json rename to openrpc/src/stellar-rpc/methods/getTransaction.json diff --git a/openrpc/src/methods/getTransactions.json b/openrpc/src/stellar-rpc/methods/getTransactions.json similarity index 100% rename from openrpc/src/methods/getTransactions.json rename to openrpc/src/stellar-rpc/methods/getTransactions.json diff --git a/openrpc/src/methods/getVersionInfo.json b/openrpc/src/stellar-rpc/methods/getVersionInfo.json similarity index 100% rename from openrpc/src/methods/getVersionInfo.json rename to openrpc/src/stellar-rpc/methods/getVersionInfo.json diff --git a/openrpc/src/methods/sendTransaction.json b/openrpc/src/stellar-rpc/methods/sendTransaction.json similarity index 100% rename from openrpc/src/methods/sendTransaction.json rename to openrpc/src/stellar-rpc/methods/sendTransaction.json diff --git a/openrpc/src/methods/simulateTransaction.json b/openrpc/src/stellar-rpc/methods/simulateTransaction.json similarity index 100% rename from openrpc/src/methods/simulateTransaction.json rename to openrpc/src/stellar-rpc/methods/simulateTransaction.json diff --git a/openrpc/src/schemas/ContractIds.json b/openrpc/src/stellar-rpc/schemas/ContractIds.json similarity index 100% rename from openrpc/src/schemas/ContractIds.json rename to openrpc/src/stellar-rpc/schemas/ContractIds.json diff --git a/openrpc/src/schemas/Cursor.json b/openrpc/src/stellar-rpc/schemas/Cursor.json similarity index 100% rename from openrpc/src/schemas/Cursor.json rename to openrpc/src/stellar-rpc/schemas/Cursor.json diff --git a/openrpc/src/schemas/Event.json b/openrpc/src/stellar-rpc/schemas/Event.json similarity index 100% rename from openrpc/src/schemas/Event.json rename to openrpc/src/stellar-rpc/schemas/Event.json diff --git a/openrpc/src/schemas/EventFilters.json b/openrpc/src/stellar-rpc/schemas/EventFilters.json similarity index 100% rename from openrpc/src/schemas/EventFilters.json rename to openrpc/src/stellar-rpc/schemas/EventFilters.json diff --git a/openrpc/src/schemas/FeeDistribution.json b/openrpc/src/stellar-rpc/schemas/FeeDistribution.json similarity index 100% rename from openrpc/src/schemas/FeeDistribution.json rename to openrpc/src/stellar-rpc/schemas/FeeDistribution.json diff --git a/openrpc/src/schemas/Hash.json b/openrpc/src/stellar-rpc/schemas/Hash.json similarity index 100% rename from openrpc/src/schemas/Hash.json rename to openrpc/src/stellar-rpc/schemas/Hash.json diff --git a/openrpc/src/schemas/LedgerCloseTime.json b/openrpc/src/stellar-rpc/schemas/LedgerCloseTime.json similarity index 100% rename from openrpc/src/schemas/LedgerCloseTime.json rename to openrpc/src/stellar-rpc/schemas/LedgerCloseTime.json diff --git a/openrpc/src/schemas/LedgerEntries.json b/openrpc/src/stellar-rpc/schemas/LedgerEntries.json similarity index 100% rename from openrpc/src/schemas/LedgerEntries.json rename to openrpc/src/stellar-rpc/schemas/LedgerEntries.json diff --git a/openrpc/src/schemas/LedgerSequence.json b/openrpc/src/stellar-rpc/schemas/LedgerSequence.json similarity index 100% rename from openrpc/src/schemas/LedgerSequence.json rename to openrpc/src/stellar-rpc/schemas/LedgerSequence.json diff --git a/openrpc/src/schemas/NetworkConfig.json b/openrpc/src/stellar-rpc/schemas/NetworkConfig.json similarity index 100% rename from openrpc/src/schemas/NetworkConfig.json rename to openrpc/src/stellar-rpc/schemas/NetworkConfig.json diff --git a/openrpc/src/schemas/Pagination.json b/openrpc/src/stellar-rpc/schemas/Pagination.json similarity index 100% rename from openrpc/src/schemas/Pagination.json rename to openrpc/src/stellar-rpc/schemas/Pagination.json diff --git a/openrpc/src/schemas/ResourceConfig.json b/openrpc/src/stellar-rpc/schemas/ResourceConfig.json similarity index 100% rename from openrpc/src/schemas/ResourceConfig.json rename to openrpc/src/stellar-rpc/schemas/ResourceConfig.json diff --git a/openrpc/src/schemas/Transaction.json b/openrpc/src/stellar-rpc/schemas/Transaction.json similarity index 100% rename from openrpc/src/schemas/Transaction.json rename to openrpc/src/stellar-rpc/schemas/Transaction.json diff --git a/openrpc/src/schemas/Transactions.json b/openrpc/src/stellar-rpc/schemas/Transactions.json similarity index 100% rename from openrpc/src/schemas/Transactions.json rename to openrpc/src/stellar-rpc/schemas/Transactions.json diff --git a/package.json b/package.json index 0f6741376..ff24b4103 100644 --- a/package.json +++ b/package.json @@ -13,9 +13,9 @@ "api:clean": "docusaurus clean-api-docs -p openapi all && docusaurus clean-api-docs -p platformapis all", "api:bundle": "yarn bundle-horizon && yarn bundle-anchor-platform && yarn bundle-stellar-disbursement-platform", "bundle-horizon": "redocly bundle openapi/horizon/main.yml --output openapi/horizon/bundled.yml", - "bundle-anchor-platform": "redocly bundle openapi/anchor-platform/Platform\\ API.yml --output openapi/anchor-platform/bundled.yml && yarn redocly bundle openapi/anchor-platform/Callbacks\\ API.yml --output openapi/anchor-platform/bundled_callback.yml && yarn redocly bundle openapi/anchor-platform/Custody\\ API.yml --output openapi/anchor-platform/bundled_custody.yml", - "bundle-stellar-disbursement-platform": "redocly bundle openapi/stellar-disbursement-platform/main.yml --output openapi/stellar-disbursement-platform/bundled.yml", - "api:gen": "docusaurus gen-api-docs -p openapi all && docusaurus gen-api-docs -p platformapis all && rm docs/data/horizon/api-reference/*.info.mdx && rm platforms/anchor-platform/api-reference/resources/*.info.mdx && rm platforms/anchor-platform/api-reference/callbacks/*.info.mdx && rm platforms/stellar-disbursement-platform/api-reference/resources/*.info.mdx && rm platforms/anchor-platform/api-reference/custody-server/*.info.mdx", + "bundle-anchor-platform": "redocly bundle ap-platform --output openapi/anchor-platform/bundled-platform.yaml && redocly bundle ap-callbacks --output openapi/anchor-platform/bundled-callbacks.yaml && redocly bundle ap-custody --output openapi/anchor-platform/bundled-custody.yaml", + "bundle-stellar-disbursement-platform": "redocly bundle openapi/stellar-disbursement-platform/main.yaml --output openapi/stellar-disbursement-platform/bundled.yaml", + "api:gen": "docusaurus gen-api-docs -p openapi all && docusaurus gen-api-docs -p platformapis all && rm docs/data/horizon/api-reference/*.info.mdx && rm platforms/anchor-platform/api-reference/{callbacks,custody,platform/transactions}/*.info.mdx && rm platforms/stellar-disbursement-platform/api-reference/*.info.mdx", "api": "yarn api:clean && yarn api:bundle && yarn api:gen", "write-translations": "docusaurus write-translations", "write-heading-ids": "docusaurus write-heading-ids", @@ -71,7 +71,7 @@ "@docusaurus/types": "3.4.0", "@eslint/eslintrc": "^3.1.0", "@eslint/js": "^9.6.0", - "@redocly/cli": "^1.17.1", + "@redocly/cli": "^1.19.0", "@stellar/prettier-config": "^1.2.0", "eslint": "^9.6.0", "husky": "^9.0.11", diff --git a/patches/@metamask+open-rpc-docs-react+0.1.2.patch b/patches/@metamask+open-rpc-docs-react+0.1.2.patch index 61e8f0de8..663e045c4 100644 --- a/patches/@metamask+open-rpc-docs-react+0.1.2.patch +++ b/patches/@metamask+open-rpc-docs-react+0.1.2.patch @@ -1,8 +1,8 @@ diff --git a/node_modules/@metamask/open-rpc-docs-react/dist/ExamplePairing/ExamplePairing.js b/node_modules/@metamask/open-rpc-docs-react/dist/ExamplePairing/ExamplePairing.js -index 354ce73..129371f 100644 +index 354ce73..08c0940 100644 --- a/node_modules/@metamask/open-rpc-docs-react/dist/ExamplePairing/ExamplePairing.js +++ b/node_modules/@metamask/open-rpc-docs-react/dist/ExamplePairing/ExamplePairing.js -@@ -45,10 +45,37 @@ class ExamplePairing extends react_1.Component { +@@ -45,10 +45,40 @@ class ExamplePairing extends react_1.Component { }), {}) : examplePairing.params.map(((p) => p.value)); const methodCall = { @@ -21,12 +21,15 @@ index 354ce73..129371f 100644 + result: examplePairing.result.value + } + // const jsCode = `await window.ethereum.request(${JSON.stringify(methodCall, null, " ")});`; ++ const serverUrl = methodName.indexOf('_') > -1 ++ ? 'https://platform-server.exampleanchor.com' ++ : 'https://soroban-testnet.stellar.org' + const curlCode = `curl -X POST \\ +-H 'Content-Type: application/json' \\ +-d '${JSON.stringify(methodCall, null, 2)}' \\ -+https://soroban-testnet.stellar.org:443 | jq` ++${serverUrl} | jq` + const jsCode = `let requestBody = ${JSON.stringify(methodCall, null, 2)} -+let res = await fetch('https://soroban-testnet.stellar.org', { ++let res = await fetch('${serverUrl}', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', @@ -36,12 +39,12 @@ index 354ce73..129371f 100644 +let json = await res.json() +console.log(json)` + const pythonCode = `import json, requests -+res = requests.post('https://soroban-testnet.stellar.org', json=${JSON.stringify(methodCall, null, 4)}) ++res = requests.post('${serverUrl}', json=${JSON.stringify(methodCall, null, 4)}) +print(json.dumps(res.json(), indent=4))` return (react_1.default.createElement("div", null, react_1.default.createElement("div", null, react_1.default.createElement(MarkdownDescription_1.default, { uiSchema: uiSchema, source: examplePairing.description || "", className: "example-pairing-description" })), -@@ -56,18 +83,28 @@ class ExamplePairing extends react_1.Component { +@@ -56,18 +86,28 @@ class ExamplePairing extends react_1.Component { react_1.default.createElement("div", null, react_1.default.createElement("h3", null, "Request"), react_1.default.createElement("div", null, @@ -94,7 +97,7 @@ index b8b0f3d..9a49549 100644 onExamplePairingChange?: (examplePairing: ExamplePairingObject | undefined) => void; reactJsonOptions?: object; diff --git a/node_modules/@metamask/open-rpc-docs-react/dist/Params/Params.js b/node_modules/@metamask/open-rpc-docs-react/dist/Params/Params.js -index 4b059a6..b5dafce 100644 +index 4b059a6..0ec9738 100644 --- a/node_modules/@metamask/open-rpc-docs-react/dist/Params/Params.js +++ b/node_modules/@metamask/open-rpc-docs-react/dist/Params/Params.js @@ -34,17 +34,20 @@ class Params extends react_1.Component { diff --git a/platforms/anchor-platform/admin-guide/architecture.mdx b/platforms/anchor-platform/admin-guide/architecture.mdx index b3ff5346c..1ad57c454 100644 --- a/platforms/anchor-platform/admin-guide/architecture.mdx +++ b/platforms/anchor-platform/admin-guide/architecture.mdx @@ -64,6 +64,6 @@ The Stellar observer, an alternative to the custody server pictured above, monit If you already have a solution for monitor payments to your Stellar accounts, such as an integration with your exchange, Horizon, or RPC, then this component is not required, although your business server will need to notify the Anchor Platform when a payment associated with an Anchor Platform transaction was made to your one of your Stellar accounts via the [Platform API][platform-api]. [seps]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/README.md -[platform-api]: ../api-reference/resources/README.mdx +[platform-api]: ../api-reference/platform/transactions/README.mdx [callback-api]: ../api-reference/callbacks/README.mdx [events]: ./events/README.mdx diff --git a/platforms/anchor-platform/admin-guide/sep24/integration.mdx b/platforms/anchor-platform/admin-guide/sep24/integration.mdx index 3b2646d22..aceca62a4 100644 --- a/platforms/anchor-platform/admin-guide/sep24/integration.mdx +++ b/platforms/anchor-platform/admin-guide/sep24/integration.mdx @@ -1007,4 +1007,4 @@ Works in the same manner as for the deposit flow. For more details, see [Transac [sep-9]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0009.md [sep-24]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md -[json-rpc-methods]: ../../api-reference/rpc/methods/README.mdx +[json-rpc-methods]: ../../api-reference/platform/rpc/methods/README.mdx diff --git a/platforms/anchor-platform/admin-guide/sep24/setting-up-production-server.mdx b/platforms/anchor-platform/admin-guide/sep24/setting-up-production-server.mdx index c563455fa..f631e5dbf 100644 --- a/platforms/anchor-platform/admin-guide/sep24/setting-up-production-server.mdx +++ b/platforms/anchor-platform/admin-guide/sep24/setting-up-production-server.mdx @@ -11,7 +11,7 @@ Once the test server is live and you have tested both deposit and withdraw flows Make sure to keep the test server up, and deploy the production (mainnet) system in a separate environment. Having two deploys allows you to validate new features on the testnet before moving them to the final production deploy. You can also have a third staging environment if there's a big team working on this codebase and/or there will be many pushes to be tested internally before sharing with other institutions. -To switch to Stellar's public (mainnet) network, all you have to do is change the network [passphrase](../../../../docs/learn/encyclopedia/network-configuration/network-passphrases) (for authenticating requests) and [Horizon URL](https://horizon.stellar.org/). +To switch to Stellar's public (mainnet) network, all you have to do is change the network [passphrase](/docs/learn/encyclopedia/network-configuration/network-passphrases) (for authenticating requests) and [Horizon URL](https://horizon.stellar.org/). You can copy your existing development configs to create a production configuration. @@ -56,7 +56,7 @@ Pre-filling the KYC form is a great way to reduce the friction of getting starte All fields from [SEP-9](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0009.md) can be sent by wallets in the previously mentioned endpoints, but the most common are: email, first name, last name and phone number. Also, you should still enable the pre-filled fields to be editable, since the user might have inputted a different name in the Wallet's sign-up process, and could want to edit it before finalizing the Anchor's KYC process. -All SEP-9 data that was sent from the wallet is a part of the [Interactive JWT](./faq.mdx#how-to-use-interactive-jwts), send by the Anchor Platform +All SEP-9 data that was sent from the wallet is a part of the [Interactive JWT](./faq.mdx#how-to-use-jwts), send by the Anchor Platform ## Connecting to Real Banking Rails diff --git a/platforms/anchor-platform/admin-guide/sep31/configuration.mdx b/platforms/anchor-platform/admin-guide/sep31/configuration.mdx index afff0922b..d68d781de 100644 --- a/platforms/anchor-platform/admin-guide/sep31/configuration.mdx +++ b/platforms/anchor-platform/admin-guide/sep31/configuration.mdx @@ -379,4 +379,4 @@ Note that as of 2.x path segments are not supported in `CALLBACK_API_BASE_URL` ( [get-rates-api]: ../../api-reference/callbacks/get-rates.api.mdx [sep38]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0038.md [sep38-post-quote]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0038.md#post-quote -[platform-api-kyc]: ../../api-reference/callbacks/customer/README.mdx +[platform-api-kyc]: ../../api-reference/callbacks/get-customer.api.mdx diff --git a/platforms/anchor-platform/admin-guide/sep31/integration.mdx b/platforms/anchor-platform/admin-guide/sep31/integration.mdx index e033b7de5..ce54f0b3b 100644 --- a/platforms/anchor-platform/admin-guide/sep31/integration.mdx +++ b/platforms/anchor-platform/admin-guide/sep31/integration.mdx @@ -684,10 +684,9 @@ This endpoint may be removed during future major version updates of the Anchor P [put-customer]: ../../api-reference/callbacks/put-customer.api.mdx [get-rate]: ../../api-reference/callbacks/get-rates.api.mdx [get-fee]: ../../api-reference/callbacks/get-fee.api.mdx -[get-unique-address]: ../../api-reference/callbacks/gen-address.api.mdx [put-customer-callback]: ../../api-reference/callbacks/put-customer.api.mdx [delete-customer]: ../../api-reference/callbacks/del-customer.api.mdx -[json-rpc-methods]: ../../api-reference/rpc/methods/README.mdx +[json-rpc-methods]: ../../api-reference/platform/rpc/methods/README.mdx [sep24-integration-make-json-rpc-request]: ../sep24/integration.mdx#making-json-rpc-requests [sep24-integration-rpc-request]: ../sep24/integration.mdx#json-rpc-request [sep24-integration-rpc-response]: ../sep24/integration.mdx#json-rpc-response diff --git a/platforms/anchor-platform/admin-guide/sep6/configuration.mdx b/platforms/anchor-platform/admin-guide/sep6/configuration.mdx index e1bbb1ff4..ef21642a2 100644 --- a/platforms/anchor-platform/admin-guide/sep6/configuration.mdx +++ b/platforms/anchor-platform/admin-guide/sep6/configuration.mdx @@ -65,7 +65,7 @@ Note that you will need to create another file for your production deployment th ### Modify the Assets Configuration File -Now you're ready to specify the following in your `dev.assets.yaml` file, and change the values depending on your use case. This example asset file enables support for Circle's USDC and a fiat USD to deposit from and withdraw to. +Now you're ready to specify the following in your `dev.assets.yaml` file, and change the values depending on your use case. This example asset file enables support for Circle's USDC and a fiat USD to deposit from and withdraw to. The methods specified in the `sep38` sections are methods that will be exposed by the SEP-38 [`GET /info`][sep38] endpoint. @@ -108,7 +108,7 @@ assets: sell_delivery_methods: - name: ACH description: ACH credit for US bank accounts - + ``` @@ -247,6 +247,6 @@ The demo wallet should be able to find your `stellar.toml` file, authenticate us [stellar-demo-wallet]: https://demo-wallet.stellar.org/ [get-rates-api]: ../../api-reference/callbacks/get-rates.api.mdx [sep38]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0038.md -[platform-api-kyc]: ../../api-reference/callbacks/customer/README.mdx -[request-onchain-funds]: ../../api-reference/rpc/methods/request_onchain_funds/README.mdx +[platform-api-kyc]: ../../api-reference/callbacks/get-customer.api.mdx +[request-onchain-funds]: ../../api-reference/platform/rpc/methods/request_onchain_funds.mdx [how-to-use-jwt]:../sep24/faq.mdx diff --git a/platforms/anchor-platform/admin-guide/sep6/integration.mdx b/platforms/anchor-platform/admin-guide/sep6/integration.mdx index 66eee67a1..2b22056c7 100644 --- a/platforms/anchor-platform/admin-guide/sep6/integration.mdx +++ b/platforms/anchor-platform/admin-guide/sep6/integration.mdx @@ -968,4 +968,4 @@ Works in the same manner as for the deposit flow. For more details, see [Transac -[get-transactions]: ../../api-reference/resources/transactions/README.mdx +[get-transactions]: ../../api-reference/platform/transactions/get-transactions.api.mdx diff --git a/platforms/anchor-platform/api-reference/callbacks/README.mdx b/platforms/anchor-platform/api-reference/callbacks/README.mdx index 8cd63ad79..54cf2996c 100644 --- a/platforms/anchor-platform/api-reference/callbacks/README.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/README.mdx @@ -1,19 +1,22 @@ --- -title: Callbacks -sidebar_position: 40 +title: Callbacks Server +sidebar_position: 20 --- -import {MethodTable} from "@site/src/components/MethodTable"; +import { EndpointsTable } from "@site/src/components/EndpointsTable"; The Anchor Platform provides several callback functionalities for your business server. - + -| | | -| --------------------------------------------------- | --- | -| [Customer](./customer/README.mdx) | | -| [Fee](./fee/README.mdx) | | -| [Rate](./rate/README.mdx) | | -| [Unique address generation](./unique-address/README.mdx) | | +| | | +| ------ | ---------------------------------------- | +| GET | [/customer](./get-customer.api.mdx) | +| PUT | [/customer](./put-customer.api.mdx) | +| DELETE | [/customer/:id](./del-customer.api.mdx) | +| POST | [/event](./post-event.api.mdx) | +| GET | [/fee](./get-fee.api.mdx) | +| GET | [/rate](./get-rates.api.mdx) | +| GET | [/unique_address](./gen-address.api.mdx) | - + diff --git a/platforms/anchor-platform/api-reference/callbacks/customer/README.mdx b/platforms/anchor-platform/api-reference/callbacks/customer/README.mdx deleted file mode 100644 index 1dc782321..000000000 --- a/platforms/anchor-platform/api-reference/callbacks/customer/README.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: Customers -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -The Anchor Platform does not store customer KYC data. Instead, the Anchor Platform forwards this data to and requests it from the business. - -The customer callbacks are designed for this purpose. Currently, requests & responses for these endpoints are almost identical to the [SEP-12 KYC API specification][sep-12]. - - - -| | | -| --- | --------------------- | -| GET | [/customer](../get-customer.api.mdx) | -| PUT | [/customer](../put-customer.api.mdx) | -| DELETE | [/customer/:id](../del-customer.api.mdx) | - - - - -[sep-12]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/callbacks/del-customer.api.mdx b/platforms/anchor-platform/api-reference/callbacks/del-customer.api.mdx index 7856a0eba..db4713926 100644 --- a/platforms/anchor-platform/api-reference/callbacks/del-customer.api.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/del-customer.api.mdx @@ -5,15 +5,16 @@ description: "The request for this endpoint is identical to the" sidebar_label: "Delete Customer Data" hide_title: true hide_table_of_contents: true -api: eJztVMFu2zAM/RWBO6wDXDvtdvKtWHMosEOxdqckwBSJqbXJkirS2wLD/z7Qdtqmy/YF88U2RYrk43vsgfUDQb2Cjx1xbDETFHC3vD2/uJw/3l/ApgCLZLJL7GKAGu4bVBkfOyRWu5gVN44UBpuiC6wcKWcxsDPaK46KG1yH1dfr5afl/VJVZs70dXPWMCeqq+rBcdNtSxPbihi91/nwPk85cjTRV1sft1WriTFXaCLtibGtCNP5YnFxWbb2zeHic4seGd+tw6FGizsX0CoX1NRbuQ7rcD26SXnqEPqWlNWsVczqscPu+HA+k4bHDC6Gch2ggJgwa/m9sVCDRX8AEwpIOusWWYCtVz04gS9pbqCAoFuEGpyFAsg02Gqoe+B9EitxduEBhgKkCZfRQs25w2EjFkoxEJL4Xy4+yOt4QHedMUhUSvyHUw6HClWIMsIu2BIKMDEwBhZ3nZJ3Zuyq+kYS0/9ZZNx+Q8PSZRYM2E0lYc4xn+zF2RPmox5Xc/SmAHbsxW85GgZ5CmiRmzjDjIwjwtxADU+8qnpnByjAhV2UbD8w09T0ZbkoF3CKzHf7YJocQ+xIfdTeb7X5Turq9kZRQuN2MxIz2VHdTexUV8E0Matbr3kXc6tSjoLISK9/3ztRkg4yItVqi2q7H69/uu9n4zwqN2oq5SgzdeFB6Wf15dgqrYx3GFi9GFqp7kV2eizwreSZOTMrkvA5td7t0PBx5tf+p1KM5D9M6a+tytxTJG71SKKZ9bP4nnh4rVm/Hk3/TMj/K+d45cwSYvzFVfLaBUG5y15AmwSxAvO8hWpnRVFNJJaTvt9qwi/ZD4OYHzvMe6hXmwJ+6Oz0Vga66sE6km8L9U57wn9M5+zzLOB36m/FzUYd9iBpfCd/UMB33E9LcNgMBTSoLeYx+3RwZQwmfhHyx2KSjfi0FaaJwzD8BvmUZss= +api: eJztVE1v2zgQ/SvE7KEtIEuON4dCtyDxIUCxCNbZk22gFDm22FIkwxk1MQT99wVlKbZbb3/B6iJpOB+ceW9eByz3BOUa7lti32Ak2GbwNiMMg3m1fJrdLCAbPv68SYcaSUUT2HgHJTzXKCK+tEgsdj4Krg0JdDp441gYEkajY6OkFewF17hx668Pyy/L56Uo1Fj06/ZjzRyoLIq94bqtcuWbghitlXF6z0L07JW3RWV9VTSSGGOBytOBGJuCMMzm85tF3ug/psQzjRYZP23cdEeNO+NQC+PEsbd84zbuYXBL1xNT6AcSWrIUPoqXFtvLw/EsNTxUMN7lGwcZ+IBRpt9HDSVotNNcIYMgo2yQ04zLdQcmjS9IriEDJxuEEoyGDEjV2EgoO+BDSFbiaNwe+gxSEyaihpJji/02WSh4R0jJfzG/Ta9LgFatUkiUp/jbaw7TDYXzCcLW6RwyUN4xOk7uMgRr1NBV8Y1STPfrJX31DRWnLmOaAZvjlTBGH6/2YvQV80WP6zF6mwEbtslvORj69GSAb4yOjHfHeX7HA5QTdTP4IW2LVymc5tYg136ECBkHdLiGEt45WXRG9wkOjD8myNpooYSJqkpaW0n1Pa9aMg6JZkffHN9kEyxKp2ofE5UhlTRu51PLKdtx8ov8c34L1zZqdXCqjt75lsT9WIbE3dOjoIDK7EY4xo1DsTquiLgbSoonK3nnYyNC9AmWgeO/z3vcC5p2mUQjNYrqMKR/z/daG4vCDIsdok/EMm4v5EkCom+EFMoadCzOmJOL57T7x5l8SHVG4o6yQHgqLXc7VHxZ+Wf/ayWGDZyocmpvNaACGVij0BEmEMaFuwtS1SgW+RyyM3TLonh9fc3lcJr7uC/GUCq+PN4v/1otZ4t8ntfc2IGzwRM30p0lHgXlfbceJMufke5OS/a/jF7K6CgLjG9cBCuNS4ox4NONi7oGdVLW0uikErUnTiddV0nCf6Lt+2R+aTEeoFxvkyhEI6vEj3UH2lD61lDupCX8DTof/x5F6ZP4r8uNRukOJ+0ByEZVMhr6bZ9BjVJjPJOrO6Uw8FnIL2J7oVZHxKHv/wVOQ7B+ sidebar_class_name: "delete api-method" -info_path: platforms/anchor-platform/api-reference/callbacks/synchronous-callbacks-api +info_path: platforms/anchor-platform/api-reference/callbacks/callbacks-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/anchor-platform/api-reference/callbacks/event/README.mdx b/platforms/anchor-platform/api-reference/callbacks/event/README.mdx deleted file mode 100644 index e1f42f072..000000000 --- a/platforms/anchor-platform/api-reference/callbacks/event/README.mdx +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: Events -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -The Anchor Platform can be configured to notify the business of events, such as a transaction being initiated by a client or a payment being sent to one of the business' distribution accounts. - -Currently, the Anchor Platform takes a fairly unforgiving approach to event delivery, retrying a maximum of three times within three seconds before discarding the event. This will likely change in future releases, but for now, businesses should ensure that they implement a mechanism to recover from missed events. - -For example, if you're using the Anchor Platform's `--stellar-observer` to monitor incoming payments, a cron job can check how long it has been since a transaction was updated as ready to receive funds, and if a reasonable amount of time has passed without receiving funds, it can fetch the latest status of the transaction using the Anchor Platform's `GET /transactions/:id` endpoint to make sure the event was not missed, or continuing processing the transaction if it was. - - - -| | | -| --- | --------------------- | -| POST | [/event](../post-event.api.mdx) | - - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/callbacks/fee/README.mdx b/platforms/anchor-platform/api-reference/callbacks/fee/README.mdx deleted file mode 100644 index e1a2044fc..000000000 --- a/platforms/anchor-platform/api-reference/callbacks/fee/README.mdx +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: Fees -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -The `/fee` is a special endpoint, that is called to fetch fee information for a transaction without a quote. - -For example, if your business supports clients who want to skip the quote creation process and will be using the businesses' market rate. - - - -| | | -| --- | --------------------- | -| GET | [/fee](../get-fee.api.mdx) | - - - diff --git a/platforms/anchor-platform/api-reference/callbacks/gen-address.api.mdx b/platforms/anchor-platform/api-reference/callbacks/gen-address.api.mdx index a8fb9dd28..8b94d4086 100644 --- a/platforms/anchor-platform/api-reference/callbacks/gen-address.api.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/gen-address.api.mdx @@ -5,15 +5,16 @@ description: "If the platform is configured with `depositInfoGeneratorType: api` sidebar_label: "Generate Unique Address" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "get api-method" -info_path: platforms/anchor-platform/api-reference/callbacks/synchronous-callbacks-api +info_path: platforms/anchor-platform/api-reference/callbacks/callbacks-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/anchor-platform/api-reference/callbacks/get-customer.api.mdx b/platforms/anchor-platform/api-reference/callbacks/get-customer.api.mdx index 965172366..e3b7377f5 100644 --- a/platforms/anchor-platform/api-reference/callbacks/get-customer.api.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/get-customer.api.mdx @@ -5,15 +5,16 @@ description: "The request and response for this endpoint is identical to the" sidebar_label: "Retrieve Customer's Info" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "get api-method" -info_path: platforms/anchor-platform/api-reference/callbacks/synchronous-callbacks-api +info_path: platforms/anchor-platform/api-reference/callbacks/callbacks-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -194,8 +195,8 @@ If the server still needs more info, or the server needs updated information, it name={"status"} required={true} schemaName={"string"} - qualifierMessage={"**Possible values:** [`ACCEPTED PROCESSING NEEDS_INFO REJECTED`]"} - schema={{"type":"string","enum":["ACCEPTED PROCESSING NEEDS_INFO REJECTED"]}} + qualifierMessage={"**Possible values:** [`ACCEPTED`, `PROCESSING`, `NEEDS_INFO`, `REJECTED`]"} + schema={{"type":"string","enum":["ACCEPTED","PROCESSING","NEEDS_INFO","REJECTED"]}} > - - - - - - - +
+ + + + property name* + + + + +
+ + + + + + + + + +
+
@@ -292,59 +323,89 @@ If the server still needs more info, or the server needs updated information, it style={{"marginLeft":"1rem"}} > - - - - - - - - - - - +
+ + + + property name* + + + + +
+ + + + + + + + + + + + + +
+
@@ -365,7 +426,7 @@ If the server still needs more info, or the server needs updated information, it value={"Example (from schema)"} > diff --git a/platforms/anchor-platform/api-reference/callbacks/get-fee.api.mdx b/platforms/anchor-platform/api-reference/callbacks/get-fee.api.mdx index 5f6672502..0fefdfa51 100644 --- a/platforms/anchor-platform/api-reference/callbacks/get-fee.api.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/get-fee.api.mdx @@ -5,15 +5,16 @@ description: "The Platform will make this request to the anchor every time a tra sidebar_label: "Retrieve Fees" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "get api-method" -info_path: platforms/anchor-platform/api-reference/callbacks/synchronous-callbacks-api +info_path: platforms/anchor-platform/api-reference/callbacks/callbacks-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/anchor-platform/api-reference/callbacks/get-rates.api.mdx b/platforms/anchor-platform/api-reference/callbacks/get-rates.api.mdx index bc41fbd33..aad1a4a95 100644 --- a/platforms/anchor-platform/api-reference/callbacks/get-rates.api.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/get-rates.api.mdx @@ -5,15 +5,16 @@ description: "Transactions that involve two non-equivalent on & off-chain assets sidebar_label: "Retrieve Rates" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "get api-method" -info_path: platforms/anchor-platform/api-reference/callbacks/synchronous-callbacks-api +info_path: platforms/anchor-platform/api-reference/callbacks/callbacks-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -398,7 +399,7 @@ either `sell_delivery_method` and `buy_delivery_method` may be included in reque value={"Example (from schema)"} > diff --git a/platforms/anchor-platform/api-reference/callbacks/post-event.api.mdx b/platforms/anchor-platform/api-reference/callbacks/post-event.api.mdx index 678783f45..8e95b4919 100644 --- a/platforms/anchor-platform/api-reference/callbacks/post-event.api.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/post-event.api.mdx @@ -5,15 +5,16 @@ description: "Receive a JSON object representing an event." sidebar_label: "Receive an Event" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "post api-method" -info_path: platforms/anchor-platform/api-reference/callbacks/synchronous-callbacks-api +info_path: platforms/anchor-platform/api-reference/callbacks/callbacks-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/anchor-platform/api-reference/callbacks/put-customer.api.mdx b/platforms/anchor-platform/api-reference/callbacks/put-customer.api.mdx index 1ca3b503d..a47eaee11 100644 --- a/platforms/anchor-platform/api-reference/callbacks/put-customer.api.mdx +++ b/platforms/anchor-platform/api-reference/callbacks/put-customer.api.mdx @@ -5,15 +5,16 @@ description: "**The Anchor Platform does not persist any customer KYC data.**" sidebar_label: "Create or Update Customer Info" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "put api-method" -info_path: platforms/anchor-platform/api-reference/callbacks/synchronous-callbacks-api +info_path: platforms/anchor-platform/api-reference/callbacks/callbacks-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -137,7 +138,7 @@ binary fields will be forwarded to the anchor as with the `multipart/form-data` required={false} schemaName={"string"} qualifierMessage={undefined} - schema={{"description":"The type of action the customer is being KYCd for. \nSee the [Type Specification](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md#type-specification) documented in SEP-12 for more info.\nFor SEP-31 you can define your own types in the assets configuration.\nFor SEP-24 pre-defined value `sep24-customer` is used.\n","type":"string"}} + schema={{"description":"The type of action the customer is being KYCd for.\nSee the [Type Specification](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md#type-specification) documented in SEP-12 for more info.\nFor SEP-31 you can define your own types in the assets configuration.\nFor SEP-24 pre-defined value `sep24-customer` is used.\n","type":"string"}} >
- -| | | -| --- | --------------------- | -| GET | [/rate](../get-rates.api.mdx) | - - - diff --git a/platforms/anchor-platform/api-reference/callbacks/sidebar.ts b/platforms/anchor-platform/api-reference/callbacks/sidebar.ts deleted file mode 100644 index ac2827ed1..000000000 --- a/platforms/anchor-platform/api-reference/callbacks/sidebar.ts +++ /dev/null @@ -1,210 +0,0 @@ -import type { SidebarsConfig } from "@docusaurus/plugin-content-docs"; - -const sidebar: SidebarsConfig = { - apisidebar: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/synchronous-callbacks-api", - }, - { - type: "category", - label: "Unique Address", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/gen-address", - label: "Generate Unique Address", - className: "api-method get", - }, - ], - }, - { - type: "category", - label: "Fees", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-fee", - label: "Retrieve Fees", - className: "api-method get", - }, - ], - }, - { - type: "category", - label: "Rates", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-rates", - label: "Retrieve Rates", - className: "api-method get", - }, - ], - }, - { - type: "category", - label: "Customers", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-customer", - label: "Retrieve Customer's Info", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/put-customer", - label: "Create or Update Customer Info", - className: "api-method put", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/del-customer", - label: "Delete Customer Data", - className: "api-method delete", - }, - ], - }, - { - type: "category", - label: "SEP-31", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/gen-address", - label: "Generate Unique Address", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-fee", - label: "Retrieve Fees", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-rates", - label: "Retrieve Rates", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-customer", - label: "Retrieve Customer's Info", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/put-customer", - label: "Create or Update Customer Info", - className: "api-method put", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/del-customer", - label: "Delete Customer Data", - className: "api-method delete", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/post-event", - label: "Receive an Event", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "SEP-38", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-rates", - label: "Retrieve Rates", - className: "api-method get", - }, - ], - }, - { - type: "category", - label: "SEP-6", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-customer", - label: "Retrieve Customer's Info", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/put-customer", - label: "Create or Update Customer Info", - className: "api-method put", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/post-event", - label: "Receive an Event", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "SEP-12", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/get-customer", - label: "Retrieve Customer's Info", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/put-customer", - label: "Create or Update Customer Info", - className: "api-method put", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/del-customer", - label: "Delete Customer Data", - className: "api-method delete", - }, - ], - }, - { - type: "category", - label: "SEP-24", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/put-customer", - label: "Create or Update Customer Info", - className: "api-method put", - }, - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/post-event", - label: "Receive an Event", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "Events", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/callbacks/post-event", - label: "Receive an Event", - className: "api-method post", - }, - ], - }, - ], -}; - -export default sidebar.apisidebar; diff --git a/platforms/anchor-platform/api-reference/callbacks/unique-address/README.mdx b/platforms/anchor-platform/api-reference/callbacks/unique-address/README.mdx deleted file mode 100644 index ab18b6ecb..000000000 --- a/platforms/anchor-platform/api-reference/callbacks/unique-address/README.mdx +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: Unique Address -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - - -Unique Address is a unique Stellar address + memo pair that is assigned to a new [SEP-31] transaction. - -When creating SEP-31 transaction, a destination address/memo pair is generated automatically by the Anchor Platform. When monitoring Stellar chain (e.g. via Payment Observer), this unique address is used to map on-chain transfers to the SEP transaction. - -In addition, it's possible to define your own address generator (e.g. you can delegate it to your custodial service). This callback is used to generate such addresses. - - - -| | | -| --- | --------------------- | -| GET | [/unique_address](../gen-address.api.mdx) | - - - - -[sep-31]: https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0031.md \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/custody-server/custody-transactions/README.mdx b/platforms/anchor-platform/api-reference/custody-server/custody-transactions/README.mdx deleted file mode 100644 index eac2210f5..000000000 --- a/platforms/anchor-platform/api-reference/custody-server/custody-transactions/README.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Custody Transactions -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -Custody Server creates custody transaction record in DB. - - - -| | | -| --- | --------------------- | -| POST | [/transactions](../create-custody-transaction.api.mdx) | - - - diff --git a/platforms/anchor-platform/api-reference/custody-server/payments/README.mdx b/platforms/anchor-platform/api-reference/custody-server/payments/README.mdx deleted file mode 100644 index ce910acd2..000000000 --- a/platforms/anchor-platform/api-reference/custody-server/payments/README.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Payments -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -Custody Server calls the configured custody service to send payment. - - - -| | | -| --- | --------------------- | -| POST | [/transactions/:id/payments](../send-payment.api.mdx) | - - - diff --git a/platforms/anchor-platform/api-reference/custody-server/refunds/README.mdx b/platforms/anchor-platform/api-reference/custody-server/refunds/README.mdx deleted file mode 100644 index 4a250d9c1..000000000 --- a/platforms/anchor-platform/api-reference/custody-server/refunds/README.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Refunds -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -Custody Server calls the configured custody service to send refund. - - - -| | | -| --- | --------------------- | -| POST | [/transactions/:id/refunds](../send-refund.api.mdx) | - - - diff --git a/platforms/anchor-platform/api-reference/custody-server/sidebar.ts b/platforms/anchor-platform/api-reference/custody-server/sidebar.ts deleted file mode 100644 index eb30011c9..000000000 --- a/platforms/anchor-platform/api-reference/custody-server/sidebar.ts +++ /dev/null @@ -1,150 +0,0 @@ -import type { SidebarsConfig } from "@docusaurus/plugin-content-docs"; - -const sidebar: SidebarsConfig = { - apisidebar: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/custody-server-api", - }, - { - type: "category", - label: "Custody Transactions", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/create-custody-transaction", - label: "Create Custody Transaction", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "Payments", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-payment", - label: "Send Payment", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "Refunds", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-refund", - label: "Send Refund", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "Unique Address", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/generate-unique-address", - label: "Generate Unique Address", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "SEP-6", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/create-custody-transaction", - label: "Create Custody Transaction", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-payment", - label: "Send Payment", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-refund", - label: "Send Refund", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/generate-unique-address", - label: "Generate Unique Address", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "SEP-24", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/create-custody-transaction", - label: "Create Custody Transaction", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-payment", - label: "Send Payment", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-refund", - label: "Send Refund", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/generate-unique-address", - label: "Generate Unique Address", - className: "api-method post", - }, - ], - }, - { - type: "category", - label: "SEP-31", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/create-custody-transaction", - label: "Create Custody Transaction", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-payment", - label: "Send Payment", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/send-refund", - label: "Send Refund", - className: "api-method post", - }, - { - type: "doc", - id: "anchor-platform/api-reference/custody-server/generate-unique-address", - label: "Generate Unique Address", - className: "api-method post", - }, - ], - }, - ], -}; - -export default sidebar.apisidebar; diff --git a/platforms/anchor-platform/api-reference/custody-server/unique-address/README.mdx b/platforms/anchor-platform/api-reference/custody-server/unique-address/README.mdx deleted file mode 100644 index 616e31c05..000000000 --- a/platforms/anchor-platform/api-reference/custody-server/unique-address/README.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Unique Address -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -Custody Server calls the configured custody service to generate deposit address and memo. - - - -| | | -| --- | --------------------- | -| POST | [/assets/:asset/addresses](../generate-unique-address.api.mdx) | - - - diff --git a/platforms/anchor-platform/api-reference/custody-server/README.mdx b/platforms/anchor-platform/api-reference/custody/README.mdx similarity index 58% rename from platforms/anchor-platform/api-reference/custody-server/README.mdx rename to platforms/anchor-platform/api-reference/custody/README.mdx index fb139d433..2626d39e3 100644 --- a/platforms/anchor-platform/api-reference/custody-server/README.mdx +++ b/platforms/anchor-platform/api-reference/custody/README.mdx @@ -1,6 +1,6 @@ --- title: Custody Server -sidebar_position: 50 +sidebar_position: 30 --- import {MethodTable} from "@site/src/components/MethodTable"; @@ -11,9 +11,9 @@ The Custody Server provides a set of endpoints to interact with custody services | | | | --------------------------------------------------- | --- | -| [Custody Transaction](./custody-transactions/README.mdx) | | -| [Payment](./payments/README.mdx) | | -| [Refund](./refunds/README.mdx) | | -| [Unique address generation](./unique-address/README.mdx) | | +| [Custody Transaction](./create-custody-transaction.api.mdx) | | +| [Payment](./send-payment.api.mdx) | | +| [Refund](./send-refund.api.mdx) | | +| [Unique address generation](./generate-unique-address.api.mdx) | | diff --git a/platforms/anchor-platform/api-reference/custody-server/create-custody-transaction.api.mdx b/platforms/anchor-platform/api-reference/custody/create-custody-transaction.api.mdx similarity index 84% rename from platforms/anchor-platform/api-reference/custody-server/create-custody-transaction.api.mdx rename to platforms/anchor-platform/api-reference/custody/create-custody-transaction.api.mdx index 39f37774e..8d9b161e1 100644 --- a/platforms/anchor-platform/api-reference/custody-server/create-custody-transaction.api.mdx +++ b/platforms/anchor-platform/api-reference/custody/create-custody-transaction.api.mdx @@ -5,15 +5,16 @@ description: "Custody Server creates custody transaction record in DB." sidebar_label: "Create Custody Transaction" hide_title: true hide_table_of_contents: true -api: eJytVU1vGjEQ/SvWnJ2QkDSHvSUNkVBVFZX0hDgY74R1smtv7FkoQvz3auwlC4REaVoOYMbz/Wae15Bj0N7UZJyFDL42gVy+EmP0C/RCe1SEQehWTF7ZoDQrC4/a+VwYK25vTkGCq9ErvhnmkEGybN3dd2YggdQ8QDZ5ibVzG0DCeDA6uWp/+5ft4eIcphI8PjcY6MblK8jWoJ0ltMRHVdel0TF87zFwKWsIusBK8YlWNUIGbvaImkBC7TlZMhj41uT8vd+H8WC0V+zwlkts/QTyxs5hI6HCyr02/o6VEwtVNigFFYqECaIJmAtywuRoyTyshLEz19hcOC9cQ+lcq1WFlsKbse6j8DAeS4V7EKzx3yJKQNtUjJPJQUKhQsE6+JtguoktJKdd+TqbUXvDGR208Z0oV7J/KS/O2fWDd9W11q5J0B4A4xqvUYwJy1J5oZLe0YaRe9PLLQYyNo7Lh1yp6rif6yjnSqlAoUJA6gAIaKnnUaNZYP6O2zs8gukd4ocayF447JHc/jabJ2OPbMI3wyOTCvw4nJBj7YLhZVsaKnKvlqoE3uCYAEw38cOCUDsb0ib2z86OIN5ojSFO6CcXPkX6csz50BJ6q8ot4Q28d/7zkRJFGY859wCjs+kh3yRxZ7tFgEfWUIkdDads2k5VSIVjaq1diCSmqIAMerRPn5ziz44nB79VVZe45bkOqERd+/8TvaSF7xb86mAlO5udDeuE2105lMQx3xGmqe0EafxeBmcjwdiHyK4L9CHB1T89Oz0DeQAivGrcFs7r0ZAdcccqFZGzqop68XkSR56gQ+87z8y/vI4t1syfvbpUxnJejY/8mZCcwB6SUwkFA51NYL2eqYC/fLnZsPi5Qb+CbDKVsFDeqBlXPmHmLFDl6CGbrOEJV5xwSv0kAsvqZcNZvBrpjdxaXGuNNb2rO92ZxdGP8T1ImLUvcuVytvFqyauglgkcV6eSsnWSraFUdt6oOesmn/z5A4q88vk= +api: eJytV0tv2zgQ/isDXvaiyNnsAwvd0jTFBvuoscme0hzG1NhiQ5EqObJjGP7vxZDyI4obtN31wVZG8358M9momqIOpmPjnarUVR/Z12u4pbCkADoQMkXQA5kDuohamCGQ9qEG4+Dtm1IVyncUUN7c1KpSWXJQd3cQU4ViXERV3e9tHb2N6qFQT2eRusRxez09+1UV6ffi5+Hhpx+FKdCnniK/8fVaVRulvWNyLI/Yddbo5MnkY5SoNirqhlqUJ153pCrlZx9JsypUF8RvNhTlranl+3lKbq+nz+K+eSvRDnoiB+MWaluollr/Uvgvaj0s0fZUADfIYCL0kWpgD6Ymx2a+BuNmvnc1+AC+5/zc4bolx/GLtu4ScWxPqODnIBz/m8VCketbKYipVaEajI3w0BOrh21KIXvt7UtvpsMb8WiUxtesSMlTuaXU20LNg28vtfZ9LvCoPL4PmuCWyVoMgJnvZNrYf1HLW4psXGqar1KF7Wk9l4ku8XJDgDESH8oQyfEkkCazpPoVte/oRGXfEX1VGkWLmD3h27d682jciXn4w0jj5AC/oag1dT4aGbmV4aYOuEKrZI6TA+phmz5CiJ13Mc/jxfn5iYr3WlNMffqdY58t/XJK+Y1jCg7tDgGvQ/Dh+y1loDKBaskBJWUPY9TJ5IPsrgLSsoYtHXA5ezNkip6YXEyoWd1v1COtVbUDz0Il0HkVRLcPgiTceMHrzscEh8iNqtSEjzG5UDElI9vpg1WVapi7WE0mw2Y4yxwlPWHbWUKnGx9K7VslViRL/xwA+zoz7QD30CsZQ5//nXEuI88BaRJGPMOFg9TRmB+Iu4EdU9KsHRHz6BwIeQb23bstlHHzBPSSkNwzF+VvpSR2VKyhhVQxxuiG9gs1DnvWO0eao4A0SQd2wUSCFVpLDF3wS1NTiAXEXjeAEd6ZQDPr9WMsRCaSqwFdDcM47cEc5j4cT2gE4wwbZKphaTAN8WUqFkwt8tyHtoS7JsFDWBpNghToAG0aCxbd7PPsDzD5fjYEIaZmfTSOYqQIq8bL4gHvaAcXse86H8T2PqQSbhxgXZsEvYPqee+St2gNr8HP5xSohtn6pN0iUceHS/I5epijNtYwMr3cdGJOW0OOf4hj1BfH5rD2fVYjgYgZWibBITnFM1Vr3x/EYWWsBQ5msaAACL/f3U1Bo7Uz1I/QYk17kV3OhmYoP7gPbm87ENZraHBJUgbjmBb5ygKB0axg1CYpIQ5Yqqh923lHLiG+8ww7OCqkpI3vF81JJ7L7jvLd4Hy6Gk40C6zEFO7yIBvP69xeyT90LySOb6kV5j0kRnwAGejszrga+2bdq7mc3qRMXfUhkGOb3fPOrk+0mUR/GJnyg5yh1mhyMaGQw1bm9rJD3RBclOeqOIK5ajJZrVYlprelD4vJIBonf95cXf99e312UZ6XDbc2YbZAaYvuSPFVOobhxME7BoejS/a/3OLDIpETbdJZNE6AK0W0GSD+XvHo7G5kA1T3arOZYaR/g91uhfypp7BW1f2DrJRgcCYQdy9nWUNYUzjaPVfZ9bME2fsN9HJfboudxKXW1PGrvMdLavr+9k4VajYc/a2vRSbgSvYsrlSl0v8hOaRqk2kbZdEtelwIb9Ypn880aYvU sidebar_class_name: "post api-method" -info_path: platforms/anchor-platform/api-reference/custody-server/custody-server-api +info_path: platforms/anchor-platform/api-reference/custody/custody-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -117,7 +118,7 @@ Custody Server creates custody transaction record in DB. required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`6`, `24`, `31`]"} - schema={{"description":"Protocol of SEP transaction.","type":"string","enum":[6,24,31]}} + schema={{"description":"Protocol of SEP transaction.","type":"string","enum":["6","24","31"]}} > + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -38,7 +39,7 @@ import TabItem from "@theme/TabItem"; diff --git a/platforms/anchor-platform/api-reference/custody-server/send-payment.api.mdx b/platforms/anchor-platform/api-reference/custody/send-payment.api.mdx similarity index 91% rename from platforms/anchor-platform/api-reference/custody-server/send-payment.api.mdx rename to platforms/anchor-platform/api-reference/custody/send-payment.api.mdx index d63c08606..54193ca92 100644 --- a/platforms/anchor-platform/api-reference/custody-server/send-payment.api.mdx +++ b/platforms/anchor-platform/api-reference/custody/send-payment.api.mdx @@ -5,15 +5,16 @@ description: "Custody Server calls the configured custody service to send paymen sidebar_label: "Send Payment" hide_title: true hide_table_of_contents: true -api: eJzNlMFu2zAMhl9F4NlL0jQbMN+2LofcgriHAcMOqsQkKmxJE2kjgeF3HxgrSNt0GLBdcpIgUeT/kRR7sEgmucgueCjhoSUO9qgqTB0mZXRdk+I9KhP81u3ahFaZbEOYOmdQcVCE3qqojw16nkABIWLS4nJloQS5XY+XUADrHUH5A/IJQQHVcv3hU17ni7y5v4OfBST81SLx12CPUPZggmdxU/agY6ydOUWZPpOo74HMHhstOz5GhBLC0zMahmEYBvFFMXhCEoP5bCbLa/yqNQaJBOEfIxUQk9CzG8M4+8KGODm/g+JN1OWBMXldq8fvavVNbVNo3iZ5AgLAjmvxU10SuslMGXHxHtXKd7p2Vm3GXP4XndTDJbRSQUwpJCnSa+Tx+Ir6JUBus+XJ8qx8ca383I6PSXvSRk6VI+UDq21ovb1RlPnnP6NU+dckzahq1zgWIjwYRIs3CvTx/a7KXZtnxenBreq//3tBHKnW6067Wj/VeIsgQwEN8j7ITI2BTsNG8x5KmPLlg9C0dHYaL9NV9G4uY3R50E2UAP1QgPPbICo6TDSmZT6ZTWZXIwquZJ3L/mW9gmH4DZO4MOo= +api: eJzNVstu6zYQ/ZUBN90ocuqbFq12aeqiBoo2iL0o0NwFTY0s3lCkyhnZEQz/ezGU/IjjtkC7yUoCyXmcM8Mz3KkSyUTbsg1eFeqhIw5lDwuMG4xgtHMEXCOY4Cu77iKWYMYzhHFjDQIHIPQltLpv0HOuMhVajFpczktVKNl9HDZVplivSRV/qHGF1OdMvd4Qtml1MXu8+VZl6Tu9G38+fS2HIv7ZIfEPoexVsVMmeBaPxU7ptnXWpICTLyRAdopMjY2WP+5bVIUKqy9oWO33+734ojZ4QpID09tb+bxlYtEZg0SC5j9GylQbhQi2Qxhbnp0hjtavVXYRdfbKGL12sPwd5j9CFUNzyXeuBABbduJnceL2acQ0Qry7hmruN9rZEp4GLv8XOqmHjVhK2TDGEKVIbyEPy+9QnwMYO26WTh4yv3uf+aEzl1F70kZWwRL4wFCFzpcfFMr0+7+HshgvUNSM4GxjWRDhq0Es8YMC+uZ6V41dO8pGMvio+X/694JYgs7rjbZOrxx+RCD7TOEroycbvOjmTr1gr4qDkGZqo12H/yio+8+ZapDrIBLdBkqCpblWhZrw6ZLRpLDlpD2IdaYo1XgI2kWnClUzt1RMJqNQ3QwncnzVTetQe1OHmJvQKAkplD2dlHw2HFLFbp8p66sgRIj/oTLT/Ltckr4gYmy0d/K5lEl1JpcywoL3aJhkTKH0aRstIWy1c8jQxrCxJUbKgDpTgyb4yUZcuWBeKDuONu1LiGjQbvAw5giqEOGcKLDestWMJWysTlPzPmGHR6e5CrHJYVlbOg5OS6A9aJcuD4tvDslsweicjvDbagQhoVYdWY9ESLCtA3SEEDxCqJIJdW0bosQ+Qsph7kGXpU1aObquOp+y1c5yD6GqUEb6qr8aN0ur794EkjMFqLSxzrKIV+h4JSJ8IocDGGfR81d0dKuNCZ1nSayCPnSDGwEiYXCTDEdysjeu+tCdzGFrnQOOdr3GCBp+Xi4f00tlpc0LNLrEo8mBs7EZ8mf/7I+xI+qyh1pvUMpgPeN6eLTA1nI9OLhok0SIB5YqmtC0waPnwxg6XPVMSlqHbl1fTWJI3yOWkqYPbKv+WrPAVkLpAw+giYIZ2ivlp/07i7NuhK2WgJ4lSIjDSyKlc1mNY7Me3dw/zhNTD12M6NkN6QXv+ittJuhPVyZ/9ipTzhqUh0ixU143cm/vW21qhGl+q7Iz1Sgmk+12m+u0m4e4noymNPll/jD7dTG7mea3ec2NE9n7C3X2yKY= sidebar_class_name: "post api-method" -info_path: platforms/anchor-platform/api-reference/custody-server/custody-server-api +info_path: platforms/anchor-platform/api-reference/custody/custody-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/anchor-platform/api-reference/custody-server/send-refund.api.mdx b/platforms/anchor-platform/api-reference/custody/send-refund.api.mdx similarity index 91% rename from platforms/anchor-platform/api-reference/custody-server/send-refund.api.mdx rename to platforms/anchor-platform/api-reference/custody/send-refund.api.mdx index ce30cade4..bb26f533d 100644 --- a/platforms/anchor-platform/api-reference/custody-server/send-refund.api.mdx +++ b/platforms/anchor-platform/api-reference/custody/send-refund.api.mdx @@ -5,15 +5,16 @@ description: "Custody Server calls configured Custody Service to send refund. Cu sidebar_label: "Send Refund" hide_title: true hide_table_of_contents: true -api: eJzNVU2P2jAQ/SujOadAWVqpue12WYlDJQQcKlU9GHsCXjl2ak8oCO1/r+yEJXxse9geyMXW2Hnz3ng+9qgoSK8r1s5ijl/rwE7tYE5+Qx6kMCaAdLbQq9qTgu65lgTsIJBV4Kmoreq9nrMXNggZUcGTdF6BDiBMcCA9CSYF2sLjQw8zdBV5EW9OFOYY4WYJDTNksQqY/8DGEDDD+Xj64XO7Dkft5u4j/szQ06+aAj84tcN8j9JZJstxK6rKaJl89J9DFLrHINdUirjjXUWYo1s+k2TMsPKREWsK8bSk0sX1NE7fqHSwEaamDHgtGH5rY2BJIJQiFcPCa2qjApXYlWQ5am19BfbarvAlS/CLZDx3Ea3gCog33ulElK5uInHq4j7Zz8AbPFJ/QXqiK3yfKNE9UroCkL74UqFyNjQBHg4Gl2DzWkoKIUL8p3fUqnOn5ZOdeR1vmbwVBhbfYfIIhXclyDajQ5PxPYwCWLOJOHOyatoEftZqwkbi6Jqqid0IoxXMmkx9l7qY7dqTiuVB3jsfS+BUcmO+UN0V0NbrON08MB9dMj/U9aJT1zqAdQyFa9/6BqUMv7wt5dDCvGACo0vNURFtJVGb/bcn6NP1rGqztm3a6Ydb5X/37wfRAWorNkIbsTR0i0JS3+a1i/OqciE1G8FrzLHfGXyhn2vV96+jK9KdHWfUeCvKytBxxhy70nEoHG2HHn5uSb2406G1LdK82pAPTXyHvUFvcNHr8ELfIX/upxN8efkDH+PSKQ== +api: eJzNVktv40YM/ivEXHpR5DSbFq1u2ayDGugjiH0o0OxhPKKs2Yxm1CFlRwjy3wuO5Edsd3vYHuKLhXl85Edy+PFFlUgm2pZt8KpQtx1xKHuYY1xjBKOdIzDBV3bVRSzhcN8aBA5A6EuIWHW+zHf7HLUnbQQVIpoQS7AE2lEAE1EzlmA9fPqYq0yFFqOWk7NSFUrgHhKayhTrFaniLzUskPqcqecLwjYtzqf3Fz+qLP1fXY8fH76XQxH/7pD4Yyh7VbwoEzyjZ/nUbeusSeYmX0g4vygyNTZavrhvURUqLL+gYZWpNopzbJFkt8EmyP/bkP2GTYC1dh1mwLVm2FjnYImgyxJLiRDXOAYIWt036Floj7aIo/Ur9Zol+EVaPDYhqxAqkBPfaEQ3oRsi8dbETVo/Ah/wsPwK0h2e8fcOk7t7l84ApJ9kitrgaQjw1eXlKdi8MwaJBOJ/yqMtD86M/mRHVqfPjNFrB4s/YfYJqhgaMGNx01D8uRICbNkJzhx9eT8E/mHkpAaK1+dYzfxaO1vCw1Cp38ROqt1GLOVRYIwhyhN4S3lYPmF9SGB8utN0cuv59ann2ye+OHjilsAHhiqMuX6HVK5+/ncq224WNSM421gWRvhsEMfqf3+EfjhfVWPVjv07XXiv/n/474RYgs7rtbZOLx2+RyKvmcJnRk82eFGlF/WEvSq2MpWppAxflavXz9L7uQ4if22g1LA016pQkwMdpUlhy0kclTBTlFI82OyiU4WqmVsqJpOxT10MJ3J81k3rUHtTh5ib0CixKBF72MvkdDi0l7l9Y9zr0n5tKyPHK0kODkTC+ipJpng6pPgq/ykX9kcRHSv2pA8vanzTd2UoCd6jYRLVQyn4NlpC2GjnkKGNYW1LjJQBdaYGTXBnIy5dME+U7QYWnYYWg3aNW70kqEI8nFwIrLds07Sytjrp2U2KItw7zVWITQ6L2tJWEdKM40G79ApZsEdlnjM6pyP8sRxJiKllR9YjERJs6gAdIQS/U07q2jZEsb2jlMPMi+Lb1HRH6KrzyVvtLPcQqgplUFv2Z+1mafVkyvPDaFZpY51l6YKh42U4GCZStI2z6Pk72sFqYyTr4lgFfegGGCEiZnCdLo7Byd5A9aHbXx8GDo52tcIIGn5ZLO7T7LnU5gkaXeLuyjZmYzHkj/7R72xH1GUPtV6jpMF6xtUwWcLGcj0AHJVJCogHliya0LTBo+etnm17RiYprUO3qs86MbjvcRjEfGBb9eeKBTZiSm/jAJoomKG8kn/an9w4nKM3Wgx6FiMhDiNJcuc4G7ti3cHc3M9SpG67GNGzG9wL3vVnykzY759M/uhVppw1KBNN8aK8buTd3rTa1AhX+aXKDvpPMZlsNptcp908xNVkvEqTX2e309/n04ur/DKvuXHSP/8BrbBp9A== sidebar_class_name: "post api-method" -info_path: platforms/anchor-platform/api-reference/custody-server/custody-server-api +info_path: platforms/anchor-platform/api-reference/custody/custody-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/anchor-platform/api-reference/platform/README.mdx b/platforms/anchor-platform/api-reference/platform/README.mdx new file mode 100644 index 000000000..b5deef803 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/README.mdx @@ -0,0 +1,17 @@ +--- +title: Platform Server +sidebar_position: 10 +--- + +import {MethodTable} from "@site/src/components/MethodTable"; + +Data on the Anchor Platform is available through two different APIs: A REST API and a JSON-RPC API. Each of these APIs has associated documentation here. + + + +| | | +| --------------------------------------------------- | --- | +| [REST API](./transactions/README.mdx) | | +| [JSON-RPC API](./rpc/README.mdx) | | + + diff --git a/platforms/anchor-platform/api-reference/rpc/README.mdx b/platforms/anchor-platform/api-reference/platform/rpc/README.mdx similarity index 90% rename from platforms/anchor-platform/api-reference/rpc/README.mdx rename to platforms/anchor-platform/api-reference/platform/rpc/README.mdx index 0fef3870b..f4ccb2a98 100644 --- a/platforms/anchor-platform/api-reference/rpc/README.mdx +++ b/platforms/anchor-platform/api-reference/platform/rpc/README.mdx @@ -1,6 +1,6 @@ --- title: JSON-RPC API -sidebar_position: 60 +sidebar_position: 20 --- import DocCardList from "@theme/DocCardList"; diff --git a/platforms/anchor-platform/api-reference/platform/rpc/anchor-platform.openrpc.json b/platforms/anchor-platform/api-reference/platform/rpc/anchor-platform.openrpc.json new file mode 100644 index 000000000..19413e9d9 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/anchor-platform.openrpc.json @@ -0,0 +1,9507 @@ +{ + "openrpc": "1.2.6", + "info": { + "title": "Anchor Platform", + "description": "The Anchor Platform is a set of tools and APIs that enable developers and businesses to build their own on and off-ramp services for the Stellar network. It provides a standardized interface, including the implementation of several Stellar Ecosystem Proposals (SEPs), to make it easy for businesses to integrate with Stellar-based wallets and exchanges.", + "termsOfService": "https://stellar.org/terms-of-service", + "contact": { + "name": "Stellar Development Foundation", + "url": "https://stellar.org/connect", + "email": "hello@stellar.org" + }, + "license": { + "name": "Apache 2.0", + "url": "https://www.apache.org/licenses/LICENSE-2.0.html" + }, + "version": "2.8.4" + }, + "servers": [ + { + "name": "Platform API", + "url": "https://platform-server.exampleanchor.com", + "summary": "Example URL endpoint for the Platform Server.", + "description": "Example URL endpoint for the Platform Server. Note: This is an example URL only, you must configure your own Platform Server." + } + ], + "methods": [ + { + "name": "do_stellar_payment", + "summary": "Submits a Stellar payment", + "description": "Submits a payment to a stellar network by a custody service.", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + } + ], + "result": { + "name": "do_stellar_paymentResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "do_stellar_paymentExample", + "description": "Example request to the `do_stellar_payment` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Do Stellar payment" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "do_stellar_refund", + "summary": "Submits a Stellar refund", + "description": "Submits a refund payment to a stellar network by a custody service", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "refund", + "description": "An object describing refund associated with this transaction.", + "required": false, + "schema": { + "type": "object", + "required": [ + "amount", + "amount_fee" + ], + "properties": { + "amount": { + "title": "amount", + "description": "Amount to be refunded", + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "Amount of assets to refund", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset of refund", + "type": "string" + } + } + }, + "amount_fee": { + "title": "amount_fee", + "description": "Amount of fee", + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "The amount of fee", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset of fee charged by anchor", + "type": "string" + } + } + } + } + } + } + ], + "result": { + "name": "do_stellar_refundResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "do_stellar_refundExample", + "description": "Example request to the `do_stellar_refund` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Do Stellar refund" + }, + { + "name": "refund", + "value": { + "amount": { + "amount": 1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_fee": { + "amount": 0.1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_amounts_updated", + "summary": "Update transaction amounts", + "description": "Update amount_out and amount_fee values", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "amount_out", + "description": "Amount sent by anchor to user", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be sent by anchor to user at end of transaction", + "type": "string" + } + } + } + }, + { + "name": "amount_fee", + "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor", + "required": false, + "deprecated": true, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + }, + { + "name": "fee_details", + "description": "Description of fees charged by the anchor", + "required": true, + "schema": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + } + } + ], + "result": { + "name": "notify_amounts_updatedResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_amounts_updatedExample", + "description": "Example request to the `notify_amounts_updated` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Amounts updated" + }, + { + "name": "amount_out", + "value": { + "amount": 1 + } + }, + { + "name": "amount_fee", + "value": { + "amount": 0.1 + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_customer_info_updated", + "summary": "Customer info updated", + "description": "Additional customer information was received and updated.", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + } + ], + "result": { + "name": "notify_customer_info_updatedResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_customer_info_updatedExample", + "description": "Example request to the `notify_customer_info_updated` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Customer info updated" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_interactive_flow_completed", + "summary": "Interactive flow completed", + "description": "Platform has collected the transaction amounts and fees from the business", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "amount_in", + "description": "The amount expected in the payment", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be received by the Anchor", + "type": "string" + } + } + } + }, + { + "name": "amount_out", + "description": "Amount sent by anchor to user", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be sent by anchor to user at end of transaction", + "type": "string" + } + } + } + }, + { + "name": "amount_fee", + "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor", + "required": false, + "deprecated": true, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + }, + { + "name": "fee_details", + "description": "Description of fees charged by the anchor", + "required": true, + "schema": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + } + }, + { + "name": "amount_expected", + "description": "The amount expected in the payment", + "required": false, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + } + ], + "result": { + "name": "notify_interactive_flow_completedResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_interactive_flow_completedExample", + "description": "Example request to the `notify_interactive_flow_completed` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Interactive flow completed successfully." + }, + { + "name": "amount_in", + "value": { + "amount": 1, + "asset": "iso4217:USD" + } + }, + { + "name": "amount_out", + "value": { + "amount": 0.9, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + }, + { + "name": "amount_fee", + "value": { + "amount": 0.1, + "asset": "iso4217:USD" + } + }, + { + "name": "amount_expected", + "value": { + "amount": 1 + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_offchain_funds_available", + "summary": "Offchain funds are available", + "description": "Funds are ready for the user / recipient to pick up.", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "external_transaction_id", + "summary": "ID of the transaction on external network", + "description": "The unique identifier of this transaction on the external network.", + "required": false, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + } + ], + "result": { + "name": "notify_offchain_funds_availableResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_offchain_funds_availableExample", + "description": "Example request to the `notify_offchain_funds_available` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Offchain funds available" + }, + { + "name": "stellar_transaction_id", + "value": "ab295bf48920f2bab4aa7cfe31f488eed779d42e57a243aacdff2e6e96ec484e" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_offchain_funds_pending", + "summary": "Offchain funds pending", + "description": "Payment has been submitted to external network, but is not yet confirmed", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "external_transaction_id", + "summary": "ID of the transaction on external network", + "description": "The unique identifier of this transaction on the external network.", + "required": false, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + } + ], + "result": { + "name": "notify_offchain_funds_pendingResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_offchain_funds_pendingExample", + "description": "Example request to the `notify_offchain_funds_pending` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Offchain funds pending" + }, + { + "name": "external_transaction_id", + "value": "3320c6faad48c3cf39b6d4ac15ed50b6e5868b62551e69cde15df2d66c8ca360" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_offchain_funds_received", + "summary": "Offchain funds received", + "description": "Payment is being processed internally by anchor", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "funds_received_at", + "description": "The date and time of receiving funds.", + "required": false, + "schema": { + "title": "datetime", + "description": "A date and time.", + "type": "string" + } + }, + { + "name": "external_transaction_id", + "summary": "ID of the transaction on external network", + "description": "The unique identifier of this transaction on the external network.", + "required": false, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "amount_in", + "description": "The amount expected in the payment", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be received by the Anchor", + "type": "string" + } + } + } + }, + { + "name": "amount_out", + "description": "Amount sent by anchor to user", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be sent by anchor to user at end of transaction", + "type": "string" + } + } + } + }, + { + "name": "amount_fee", + "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor", + "required": false, + "deprecated": true, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + }, + { + "name": "fee_details", + "description": "Description of fees charged by the anchor", + "required": true, + "schema": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + } + } + ], + "result": { + "name": "notify_offchain_funds_receivedResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_offchain_funds_receivedExample", + "description": "Example request to the `notify_offchain_funds_received` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Funds received successfully" + }, + { + "name": "funds_received_at", + "value": "2023-07-04T12:34:56Z" + }, + { + "name": "external_transaction_id", + "value": "3320c6faad48c3cf39b6d4ac15ed50b6e5868b62551e69cde15df2d66c8ca360" + }, + { + "name": "amount_in", + "value": { + "amount": 1 + } + }, + { + "name": "amount_out", + "value": { + "amount": 0.9 + } + }, + { + "name": "amount_fee", + "value": { + "amount": 0.1 + } + }, + { + "name": "amount_expected", + "value": { + "amount": 1 + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_offchain_funds_sent", + "summary": "Offchain funds sent", + "description": "Transaction flow is fully completed for the SEP-6 and SEP-24 withdrawal flow or SEP-31 receive flow. Payment has been submitted to external network, but is not yet confirmed for SEP-24 deposit flow", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "funds_sent_at", + "description": "The date and time of sending funds.", + "required": false, + "schema": { + "title": "datetime", + "description": "A date and time.", + "type": "string" + } + }, + { + "name": "external_transaction_id", + "summary": "ID of the transaction on external network", + "description": "The unique identifier of this transaction on the external network.", + "required": false, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + } + ], + "result": { + "name": "notify_offchain_funds_sentResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_offchain_funds_sentExample", + "description": "Example request to the `notify_offchain_funds_sent` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Offchain funds sent" + }, + { + "name": "funds_sent_at", + "value": "2023-07-04T12:34:38Z" + }, + { + "name": "external_transaction_id", + "value": "3320c6faad48c3cf39b6d4ac15ed50b6e5868b62551e69cde15df2d66c8ca360" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_onchain_funds_received", + "summary": "Onchain funds received", + "description": "Notify that the payment is being processed internally by anchor for SEP-6 or SEP-24. For SEP-31, notify that the payment is being processed by the Receiving Anchor. In the request, amount parameters are optional, but have a strict rule of how to set them. Either none, only `amount_in`, or all of fields (`amount_in`, `amount_out`, `amount_fee`) must be specified. ", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "stellar_transaction_id", + "summary": "Transaction ID on Stellar", + "description": "The unique transaction identifier for this transfer on the Stellar network.", + "required": true, + "schema": { + "title": "hash", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + } + }, + { + "name": "amount_in", + "description": "The amount expected in the payment", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be received by the Anchor", + "type": "string" + } + } + } + }, + { + "name": "amount_out", + "description": "Amount sent by anchor to user", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be sent by anchor to user at end of transaction", + "type": "string" + } + } + } + }, + { + "name": "amount_fee", + "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor", + "required": false, + "deprecated": true, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + }, + { + "name": "fee_details", + "description": "Description of fees charged by the anchor", + "required": true, + "schema": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + } + } + ], + "result": { + "name": "notify_onchain_funds_receivedResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_onchain_funds_receivedExample", + "description": "Example request to the `notify_onchain_funds_received` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Onchain funds received" + }, + { + "name": "stellar_transaction_id", + "value": "ab295bf48920f2bab4aa7cfe31f488eed779d42e57a243aacdff2e6e96ec484e" + }, + { + "name": "amount_in", + "value": { + "amount": 1 + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_onchain_funds_sent", + "summary": "Onchain funds sent", + "description": "Transaction flow is fully completed for SEP-6 or SEP-24 deposit", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "stellar_transaction_id", + "summary": "Transaction ID on Stellar", + "description": "The unique transaction identifier for this transfer on the Stellar network.", + "required": true, + "schema": { + "title": "hash", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + } + } + ], + "result": { + "name": "notify_onchain_funds_sentResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_onchain_funds_sentExample", + "description": "Example request to the `notify_onchain_funds_sent` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Onchain funds sent" + }, + { + "name": "stellar_transaction_id", + "value": "ab295bf48920f2bab4aa7cfe31f488eed779d42e57a243aacdff2e6e96ec484e" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_refund_pending", + "summary": "Refund pending", + "description": "Refund has been submitted, but is not yet confirmed", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "refund", + "schema": { + "type": "object", + "required": [ + "amount", + "amount_fee", + "id" + ], + "properties": { + "amount": { + "title": "amount", + "description": "Amount to be refunded", + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "Amount of assets to refund", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset of refund", + "type": "string" + } + } + }, + "amount_fee": { + "title": "amount_fee", + "description": "Amount of fee", + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "The amount of fee", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset of fee charged by anchor", + "type": "string" + } + } + }, + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + } + } + } + } + ], + "result": { + "name": "notify_refund_pendingResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_refund_pendingExample", + "description": "Example request to the `notify_refund_pending` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Refund pending" + }, + { + "name": "refund", + "value": { + "id": "ab295bf48920f2bab4aa7cfe31f488eed779d42e57a243aacdff2e6e96ec484e", + "amount": { + "amount": 1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_fee": { + "amount": 0.1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_refund_sent", + "summary": "Payment refunded", + "description": "Refund payment completed", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "refund", + "schema": { + "type": "object", + "required": [ + "amount", + "amount_fee", + "id" + ], + "properties": { + "amount": { + "title": "amount", + "description": "Amount to be refunded", + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "Amount of assets to refund", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset of refund", + "type": "string" + } + } + }, + "amount_fee": { + "title": "amount_fee", + "description": "Amount of fee", + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "The amount of fee", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset of fee charged by anchor", + "type": "string" + } + } + }, + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + } + } + } + } + ], + "result": { + "name": "notify_refund_sentResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_refund_sentExample", + "description": "Example request to the `notify_refund_sent` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Refund sent" + }, + { + "name": "refund", + "value": { + "id": "ab295bf48920f2bab4aa7cfe31f488eed779d42e57a243aacdff2e6e96ec484e", + "amount": { + "amount": 1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_fee": { + "amount": 0.1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_transaction_error", + "summary": "Transaction processing error", + "description": "There was an error processing transaction", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + } + ], + "result": { + "name": "notify_transaction_errorResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_transaction_errorExample", + "description": "Example request to the `notify_transaction_error` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Transaction error" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_transaction_expired", + "summary": "Transaction has expired", + "description": "Funds were never received by the anchor and the transaction is considered abandoned by the user", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + } + ], + "result": { + "name": "notify_transaction_expiredResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_transaction_expiredExample", + "description": "Example request to the `notify_transaction_expired` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Transaction expired" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_transaction_on_hold", + "summary": "Transaction transaction is on hold", + "description": "Notify transaction is currently on hold by the anchor (e.g. compliance hold). Anchor should update message to guide user through the steps.", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "user_action_required_by", + "description": "Time and date by which user action is required", + "required": false, + "schema": { + "title": "datetime", + "description": "A date and time.", + "type": "string" + } + } + ], + "result": { + "name": "notify_transaction_on_holdResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_transaction_on_holdExample", + "description": "Example request to the `notify_transaction_on_hold` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Transaction on hold, please contact customer service to lift the hold." + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_transaction_recovery ", + "summary": "Transaction recovery", + "description": "Transaction status is changed from error / expired to pending_anchor(SEP-6 or SEP-24) or pending_receiver(SEP-31)", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + } + ], + "result": { + "name": "notify_transaction_recoveryResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_transaction_recoveryExample", + "description": "Example request to the `notify_transaction_recovery` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Transaction recovered" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "notify_trust_set", + "summary": "Asset trustline set", + "description": "The user has added a trustline for the asset", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "success", + "description": "Flag which indicates if trustline was configured by user.", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "result": { + "name": "notify_trust_setResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "notify_trust_setExample", + "description": "Example request to the `notify_trust_set` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Trustline set" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "request_customer_info_update", + "summary": "Customer info needed", + "description": "Additional customer information is required", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-31" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + } + ], + "result": { + "name": "request_customer_info_updateResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "request_customer_info_updateExample", + "description": "Example request to the `request_customer_info_update` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Customer info requested" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "request_offchain_funds", + "summary": "Request offchain funds", + "description": "The user has to initiate transfer to the anchor", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "amount_in", + "description": "The amount expected in the payment", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be received by the Anchor", + "type": "string" + } + } + } + }, + { + "name": "amount_out", + "description": "Amount sent by anchor to user", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be sent by anchor to user at end of transaction", + "type": "string" + } + } + } + }, + { + "name": "amount_fee", + "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor", + "required": false, + "deprecated": true, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + }, + { + "name": "fee_details", + "description": "Description of fees charged by the anchor", + "required": true, + "schema": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + } + }, + { + "name": "amount_expected", + "description": "The amount expected in the payment", + "required": false, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + } + ], + "result": { + "name": "request_offchain_fundsResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "request_offchain_fundsExample", + "description": "Example request to the `request_offchain_funds` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Request offchain funds" + }, + { + "name": "amount_in", + "value": { + "amount": 1, + "asset": "iso4217:USD" + } + }, + { + "name": "amount_out", + "value": { + "amount": 0.9, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + }, + { + "name": "amount_fee", + "value": { + "amount": 0.1, + "asset": "iso4217:USD" + } + }, + { + "name": "amount_expected", + "value": { + "amount": 1 + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "request_onchain_funds", + "summary": "Request onchain funds", + "description": "The user has to initiate transfer to the anchor", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + }, + { + "name": "amount_in", + "description": "The amount expected in the payment", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be received by the Anchor", + "type": "string" + } + } + } + }, + { + "name": "amount_out", + "description": "Amount sent by anchor to user", + "required": true, + "schema": { + "type": "object", + "required": [ + "amount", + "asset" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "The asset to be sent by anchor to user at end of transaction", + "type": "string" + } + } + } + }, + { + "name": "amount_fee", + "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor", + "required": false, + "deprecated": true, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + }, + { + "name": "fee_details", + "description": "Description of fees charged by the anchor", + "required": true, + "schema": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + } + }, + { + "name": "amount_expected", + "description": "The amount expected in the payment", + "required": false, + "schema": { + "type": "object", + "required": [ + "amount" + ], + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + } + } + } + }, + { + "name": "destination_account", + "description": "Destination account", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "memo", + "description": "Value of memo to attach to transaction", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "memo_type", + "description": "Type of memo that anchor should attach to the transaction", + "required": false, + "schema": { + "type": "string" + } + } + ], + "result": { + "name": "request_onchain_fundsResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "request_onchain_fundsExample", + "description": "Example request to the `request_onchain_funds` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Requesting onchain funds" + }, + { + "name": "amount_in", + "value": { + "amount": 1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + }, + { + "name": "amount_out", + "value": { + "amount": 0.9, + "asset": "iso4217:USD" + } + }, + { + "name": "amount_fee", + "value": { + "amount": 0.1, + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + } + }, + { + "name": "amount_expected", + "value": { + "amount": 1 + } + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + }, + { + "name": "request_trust", + "summary": "A trustline to the asset isn't set", + "description": "The user must add a trustline for the asset to complete", + "paramStructure": "by-name", + "tags": [ + { + "name": "SEP-6" + }, + { + "name": "SEP-24" + } + ], + "params": [ + { + "name": "transaction_id", + "summary": "ID of the transaction.", + "description": "The unique identifier of this transaction.", + "required": true, + "schema": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + } + }, + { + "name": "message", + "summary": "Human readable explanation.", + "description": "Human readable explanation of transaction status.", + "required": false, + "schema": { + "title": "message", + "description": "A human readable message.", + "type": "string" + } + } + ], + "result": { + "name": "request_trustResponse", + "schema": { + "name": "response", + "type": "object", + "properties": { + "id": { + "title": "transaction_id", + "description": "A unique transaction identifier.", + "type": "string" + }, + "sep": { + "title": "sep", + "description": "Protocol of the transaction.", + "type": "integer", + "enum": [ + 6, + 24, + 31 + ] + }, + "kind": { + "title": "kind", + "description": "The kind of transaction that is desired.", + "type": "string", + "enum": [ + "undefined", + "receive", + "deposit", + "deposit-exchange", + "withdrawal", + "withdrawal-exchange" + ] + }, + "status": { + "title": "status", + "description": "Processing status of the transaction.", + "type": "string", + "enum": [ + "pending_anchor", + "pending_trust", + "pending_user", + "pending_user_transfer_start", + "pending_user_transfer_complete", + "incomplete", + "no_market", + "too_small", + "too_large", + "pending_sender", + "pending_receiver", + "pending_transaction_info_update", + "pending_customer_info_update", + "completed", + "refunded", + "expired", + "error", + "pending_external", + "pending_stellar" + ] + }, + "amount_expected": { + "type": "object", + "title": "amount_expected", + "description": "The amount expected in the payment.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_in": { + "type": "object", + "title": "amount_in", + "description": "Amount expected/received by anchor.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_out": { + "type": "object", + "title": "amount_out", + "description": "The amount expected to be sent by anchor to user at end of transaction.", + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "title": "amount_fee", + "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "deprecated": true, + "properties": { + "amount": { + "title": "amount", + "description": "A stringified amount of an asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee_details": { + "title": "fee_details", + "description": "Description of fee charged by the anchor.", + "type": "object", + "required": [ + "total", + "asset" + ], + "properties": { + "total": { + "type": "number" + }, + "asset": { + "type": "string" + }, + "details": { + "type": "array", + "description": "Details about fee charged.", + "items": { + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "amount": { + "type": "number" + } + } + } + } + } + }, + "quote_id": { + "title": "quote_id", + "description": "The id returned from a SEP-38 POST /quote response", + "type": "string" + }, + "started_at": { + "title": "started_at", + "description": "Start date and time of transaction.", + "type": "string" + }, + "updated_at": { + "title": "updated_at", + "description": "The date and time of transaction reaching the current status.", + "type": "string" + }, + "completed_at": { + "title": "completed_at", + "description": "The date and time of transaction reaching completed or refunded status.", + "type": "string" + }, + "transfer_received_at": { + "title": "transfer_received_at", + "description": "The date and time of receiving transfer.", + "type": "string" + }, + "message": { + "title": "message", + "description": "Human readable explanation of transaction status", + "type": "string" + }, + "refunds": { + "title": "refunds", + "description": "An object describing any on or offchain refund associated with this transaction.", + "type": "object", + "properties": { + "amount_refunded": { + "type": "object", + "description": "The total amount refunded in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "amount_fee": { + "type": "object", + "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "payments": { + "type": "array", + "description": "A list of objects containing information on the individual payments made back as refunds.", + "items": { + "properties": { + "id": { + "title": "id", + "description": "The Stellar transaction hash of the transaction that included the refund payment.", + "type": "string" + }, + "id_type": { + "type": "string" + }, + "amount": { + "type": "object", + "description": "The amount sent back for the payment identified by id, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "fee": { + "type": "object", + "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset.", + "properties": { + "amount": { + "title": "amount", + "description": "A numerical representation of an amount of some asset.", + "type": "string" + }, + "asset": { + "title": "asset", + "description": "An asset.", + "type": "string" + } + } + }, + "requested_at": { + "title": "datetime", + "description": "The date and time of requesting refund.", + "type": "string" + }, + "refunded_at": { + "title": "datetime", + "description": "The date and time of making refund.", + "type": "string" + } + } + } + } + } + } + } + } + }, + "examples": [ + { + "name": "request_trustExample", + "description": "Example request to the `request_trust` method.", + "params": [ + { + "name": "transaction_id", + "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" + }, + { + "name": "message", + "value": "Request trust" + } + ], + "result": { + "name": "AnchorPlatformResponse", + "value": { + "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", + "sep": "24", + "kind": "deposit", + "status": "completed", + "amount_expected": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_in": { + "amount": "1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "amount_out": { + "amount": "0.9", + "asset": "iso4217:USD" + }, + "amount_fee": { + "amount": "0.1", + "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" + }, + "started_at": "2023-08-04T10:04:06.280923Z", + "updated_at": "2023-08-04T10:04:15.716233Z", + "message": "Transaction complete", + "source_account": "GB4GJAV4Q7DPGU7WI3H5TMVKEYZJ4JFLFEF3O3TRJKDPXK7NAMRBXWFL", + "destination_account": "GDIN5ZULIOT5YPBIXJXFGNH4TCNTDKIA4ZF6QQE3S2P5P44BHCQQJNDC" + } + } + } + ] + } + ], + "components": {} +} \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/README.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/README.mdx new file mode 100644 index 000000000..39a2b6bba --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/README.mdx @@ -0,0 +1,43 @@ +--- +title: JSON-RPC Methods +order: 20 +sidebar_label: Methods +--- + +import {EndpointsTable} from "@site/src/components/EndpointsTable"; + +This section lists the Anchor Platform JSON-RPC API methods that should be called by Stellar clients to update status of the transaction. + +The OpenRPC Specification for JSON-RPC API is available [here](https://playground.open-rpc.org/?schemaUrl=https://raw.githubusercontent.com/stellar/stellar-docs/main/static/assets/rpc-methods/open-rpc.json). + +Postman collection is available [here](https://documenter.getpostman.com/view/9257637/2s9Y5U1kra) + + + +| | | +| --- | --------------------- | +| | [notify_interactive_flow_completed](notify_interactive_flow_completed.mdx) | +| | [request_offchain_funds](request_offchain_funds.mdx) | +| | [request_onchain_funds](request_onchain_funds.mdx) | +| | [notify_offchain_funds_received](notify_offchain_funds_received.mdx) | +| | [notify_onchain_funds_received](notify_onchain_funds_received.mdx) | +| | [notify_amounts_updated](notify_amounts_updated.mdx) | +| | [notify_refund_pending](notify_refund_pending.mdx) | +| | [notify_refund_sent](notify_refund_sent.mdx) | +| | [do_stellar_payment](do_stellar_payment.mdx) | +| | [do_stellar_refund](do_stellar_refund.mdx) | +| | [notify_onchain_funds_sent](notify_onchain_funds_sent.mdx) | +| | [notify_offchain_funds_sent](notify_offchain_funds_sent.mdx) | +| | [notify_offchain_funds_available](notify_offchain_funds_available.mdx) | +| | [notify_offchain_funds_pending](notify_offchain_funds_pending.mdx) | +| | [request_trust](request_trust.mdx) | +| | [notify_trust_set](notify_trust_set.mdx) | +| | [request_customer_info_update](request_customer_info_update.mdx) | +| | [notify_customer_info_updated](notify_customer_info_updated.mdx) | +| | [notify_transaction_error](notify_transaction_error.mdx) | +| | [notify_transaction_expired](notify_transaction_expired.mdx) | +| | [notify_transaction_recovery](notify_transaction_recovery.mdx) | +| | [notify_transaction_on_hold](notify_transaction_on_hold.mdx) | + + + diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/do_stellar_payment.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/do_stellar_payment.mdx new file mode 100644 index 000000000..1b4ba90a7 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/do_stellar_payment.mdx @@ -0,0 +1,9 @@ +--- +title: do_stellar_payment +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "do_stellar_payment")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/do_stellar_refund.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/do_stellar_refund.mdx new file mode 100644 index 000000000..614119e70 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/do_stellar_refund.mdx @@ -0,0 +1,9 @@ +--- +title: do_stellar_refund +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "do_stellar_refund")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_amounts_updated.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_amounts_updated.mdx new file mode 100644 index 000000000..7dcef8f95 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_amounts_updated.mdx @@ -0,0 +1,9 @@ +--- +title: notify_amounts_updated +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_amounts_updated")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_customer_info_updated.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_customer_info_updated.mdx new file mode 100644 index 000000000..26aef1d6b --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_customer_info_updated.mdx @@ -0,0 +1,9 @@ +--- +title: notify_customer_info_updated +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_customer_info_updated")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_interactive_flow_completed.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_interactive_flow_completed.mdx new file mode 100644 index 000000000..8ba92ae4f --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_interactive_flow_completed.mdx @@ -0,0 +1,9 @@ +--- +title: notify_interactive_flow_completed +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_interactive_flow_completed")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_available.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_available.mdx new file mode 100644 index 000000000..a87e8dcfc --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_available.mdx @@ -0,0 +1,9 @@ +--- +title: notify_offchain_funds_available +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_offchain_funds_available")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_pending.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_pending.mdx new file mode 100644 index 000000000..62f1a96ef --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_pending.mdx @@ -0,0 +1,9 @@ +--- +title: notify_offchain_funds_pending +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_offchain_funds_pending")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_received.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_received.mdx new file mode 100644 index 000000000..00df1f4cb --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_received.mdx @@ -0,0 +1,9 @@ +--- +title: notify_offchain_funds_received +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_offchain_funds_received")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_sent.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_sent.mdx new file mode 100644 index 000000000..62ed404c2 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_offchain_funds_sent.mdx @@ -0,0 +1,9 @@ +--- +title: notify_offchain_funds_sent +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_offchain_funds_sent")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_onchain_funds_received.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_onchain_funds_received.mdx new file mode 100644 index 000000000..a572a3b8d --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_onchain_funds_received.mdx @@ -0,0 +1,9 @@ +--- +title: notify_onchain_funds_received +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_onchain_funds_received")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_onchain_funds_sent.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_onchain_funds_sent.mdx new file mode 100644 index 000000000..865d03932 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_onchain_funds_sent.mdx @@ -0,0 +1,9 @@ +--- +title: notify_onchain_funds_sent +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_onchain_funds_sent")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_refund_pending.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_refund_pending.mdx new file mode 100644 index 000000000..f2be09f1d --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_refund_pending.mdx @@ -0,0 +1,9 @@ +--- +title: notify_refund_pending +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_refund_pending")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_refund_sent.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_refund_sent.mdx new file mode 100644 index 000000000..e16770a88 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_refund_sent.mdx @@ -0,0 +1,9 @@ +--- +title: notify_refund_sent +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_refund_sent")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_error.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_error.mdx new file mode 100644 index 000000000..1b1cb7d34 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_error.mdx @@ -0,0 +1,9 @@ +--- +title: notify_transaction_error +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_transaction_error")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_expired.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_expired.mdx new file mode 100644 index 000000000..406381526 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_expired.mdx @@ -0,0 +1,9 @@ +--- +title: notify_transaction_expired +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_transaction_expired")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_on_hold.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_on_hold.mdx new file mode 100644 index 000000000..2ff9845f9 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_on_hold.mdx @@ -0,0 +1,9 @@ +--- +title: notify_transaction_on_hold +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_transaction_on_hold")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_recovery.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_recovery.mdx new file mode 100644 index 000000000..fbc8d0516 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_transaction_recovery.mdx @@ -0,0 +1,9 @@ +--- +title: notify_transaction_recovery +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_transaction_recovery")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_trust_set.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_trust_set.mdx new file mode 100644 index 000000000..e21ec74bd --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/notify_trust_set.mdx @@ -0,0 +1,9 @@ +--- +title: notify_trust_set +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "notify_trust_set")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/request_customer_info_update.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_customer_info_update.mdx new file mode 100644 index 000000000..7ca4194c8 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_customer_info_update.mdx @@ -0,0 +1,9 @@ +--- +title: request_customer_info_update +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "request_customer_info_update")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/request_offchain_funds.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_offchain_funds.mdx new file mode 100644 index 000000000..67656758b --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_offchain_funds.mdx @@ -0,0 +1,9 @@ +--- +title: request_offchain_funds +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "request_offchain_funds")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/request_onchain_funds.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_onchain_funds.mdx new file mode 100644 index 000000000..4542b40b0 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_onchain_funds.mdx @@ -0,0 +1,9 @@ +--- +title: request_onchain_funds +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "request_onchain_funds")[0]} /> diff --git a/platforms/anchor-platform/api-reference/platform/rpc/methods/request_trust.mdx b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_trust.mdx new file mode 100644 index 000000000..dab327e60 --- /dev/null +++ b/platforms/anchor-platform/api-reference/platform/rpc/methods/request_trust.mdx @@ -0,0 +1,9 @@ +--- +title: request_trust +hide_title: true +--- + +import { RpcMethod } from "@site/src/components/RpcMethod"; +import rpcSpec from '../anchor-platform.openrpc.json' + + meth.name === "request_trust")[0]} /> diff --git a/platforms/anchor-platform/api-reference/rpc/overview.mdx b/platforms/anchor-platform/api-reference/platform/rpc/overview.mdx similarity index 97% rename from platforms/anchor-platform/api-reference/rpc/overview.mdx rename to platforms/anchor-platform/api-reference/platform/rpc/overview.mdx index 7ccb3e5bf..949a0e4c4 100644 --- a/platforms/anchor-platform/api-reference/rpc/overview.mdx +++ b/platforms/anchor-platform/api-reference/platform/rpc/overview.mdx @@ -1,6 +1,6 @@ --- title: Overview -sidebar_position: 60 +sidebar_position: 10 --- JSON-RPC is a stateless, light-weight remote procedure call (RPC) protocol. diff --git a/platforms/anchor-platform/api-reference/resources/transactions/README.mdx b/platforms/anchor-platform/api-reference/platform/transactions/README.mdx similarity index 66% rename from platforms/anchor-platform/api-reference/resources/transactions/README.mdx rename to platforms/anchor-platform/api-reference/platform/transactions/README.mdx index badd0fe67..0faa55f9c 100644 --- a/platforms/anchor-platform/api-reference/resources/transactions/README.mdx +++ b/platforms/anchor-platform/api-reference/platform/transactions/README.mdx @@ -1,8 +1,9 @@ --- title: Transactions +sidebar_position: 10 --- -import {EndpointsTable} from "@site/src/components/EndpointsTable"; +import { EndpointsTable } from "@site/src/components/EndpointsTable"; Transactions are representations of a SEP transaction. It holds information about the protocol being used, and all necessary information passed by an external party (such as wallet or an anchor). @@ -12,7 +13,7 @@ Should not be confused with stellar [transactions](/docs/learn/glossary#transact | | | | --- | --------------------- | -| GET | [/transactions/:id](../get-transaction.api.mdx) | -| GET | [/transactions/](../get-transactions.api.mdx) | +| GET | [/transactions/:id](get-transaction.api.mdx) | +| GET | [/transactions/](./get-transactions.api.mdx) | diff --git a/platforms/anchor-platform/api-reference/resources/get-transaction.api.mdx b/platforms/anchor-platform/api-reference/platform/transactions/get-transaction.api.mdx similarity index 99% rename from platforms/anchor-platform/api-reference/resources/get-transaction.api.mdx rename to platforms/anchor-platform/api-reference/platform/transactions/get-transaction.api.mdx index 0beb4d086..73885e605 100644 --- a/platforms/anchor-platform/api-reference/resources/get-transaction.api.mdx +++ b/platforms/anchor-platform/api-reference/platform/transactions/get-transaction.api.mdx @@ -5,15 +5,16 @@ description: "Provides the information necessary for the business to determine t sidebar_label: "Retrieve a Transaction" hide_title: true hide_table_of_contents: true -api: eJzdVUtP20AQ/iurObXSloQQcfCNSlHFqRHQUxTBxjtOBuxdszuOiKz979XYbpNQiig9VOrJuzuv75uXW2CzjpAt4CYYF03O5F0EDdez+afz4TuZDoezU1hq8DUGI3qXFjJYIx+YggaLMQ9Ud7cM5sFvyWJUvEFFrvCh6myVwxxjNGGnCh866aqJ5DBGxV5ZZAwVOewkkQ2j8kV34X00RRYdU0Fo1Wqn7sjeaWUxJ4uKCmXcTg2KVRNZrVCxeUAnAXLvmFyDqg5egJBbP/eulXFWHCjvOpl4juTdCWioTTCVgJTktUDCtTa8AQ3OVAgZkAUNAR8bCmgh49CghphvsDKQtcC7WrQiB3JrSGkpyrH2LmIU+WQ8ls9xNg8yrQrfOCtQhAo6Fm1T1yXlXYJH91FM2oOQ3uHXooM7BPere8z5COaixx2xBg0P5LoLG25ifwiM9taw9AETl3gM6no2P4ek3x3AVL5xfItPNeaMtu8mJtcxujV5LuI3AplM/wbJWyKcnUJappSShulL1fpsrLrCxwYj/0mZniOug0wcU98XGIIPLzSQFjYv9NUx4976gNGse/hBYvp6yznP72i7f8QnaaiQN35YUt3M8gYyGB3MeBy1ZBNokNUk4bYYYk98cjI+GcPe87w0LOtLXcwvBV7tI1em4zpM/BVyINyiMuqVldjuM/ffbsehaIxPPKpLQ04S1oRS2PdVWAAf/3AyslLHjY8s0rZdmYjfQpmSPD82GHaQLZYatiaQWUlJFi1YinK2kBWmjPhKqj9cDW3zUf0O4PBo3A4kTNnITXYD7vp9npZJwwaNxdBF7wUXeY41H5j8Mg6y3H/24pfZDaT0Heq3kw8= +api: eJzdlU1v4zYQhv/KYE4toMhZb7AodEsLozBQtEaSnrJBliZHFjcSyZAjJ4ah/14MLSPybhpst4cCPeljhvOldx7tkdUmYXWLN1G5pDRb7xLeFfh8lihky/VidfYBi3ydX4w379+Jkw8UlRxZGqxwQzyJggUaSjrakJ8qXEW/tYYScENgXe1jl8+CI00pqbiD2sdsXffJOkoJ2IMhpthZR9mSWDGBr/MDv2QDa8ixrS0ZWO/gkzWfCjCkrSGwNSi3g9Gx6xPDmoDVAzlJoL1j63qCEL0UYt3my+gFKGckAHiXbRI5We9KLDCoqDopUqa1Ryu9BsUNFuhUR1ihNVhgpMfeRjJYceypwKQb6hRWe+RdEK/E0boNDsOdOKfgXaIk9vn5uVxOpzmZNNS+d0ZKkVbIsXirEFqr84Bnn5Mc2U9Sekd/1LncMblffybNJ2XeHupOFLDAB+vyAyvu0+EmMpl7xaIDttzSaVHXi9UHHIrvTqA63zu+p+dAmskc1MTW5Y7uldZi/sZC5hf/ppJvyfD+HQ53wzAMBV689rV+Vgau6LGnxP/kM31ZcYiycWwPuqAYfXxFQIV084quTjs+nJ50tMgvjk1cvC055/k7ZPcf9TMUSM9MLmW4ieofaIfVkXEFblXb05usk6XsiBs/gi7vPTdY4WzCiTTbWzNkJcXtEQh9bLHChjmkajYLrWJB39nBpaRn1YWWlNONj6X2HUoqwaO0LEEOw5+XP5VS0LG71RgHrnOcr2h70xAcc8EhF9gEyoF1TNGpFrTvgnfkuIQlQ2p83xohY+MTkwHrQEGIdivEdcRPPj5kDo6eIoE1gdIZmuuWoI6+y3hc5hTEJdw0Nh3Tk1PrduT/lPA1sW5y5D4YSXYK+sl4oc90tpzgcrUsP8pPprWaXCKZ1ojby6B0QzAvz7GYTL+azZ6enkqVraWPm9l4NM1+W/6y+P16cTYvz8uGuzaLK/jEnXKTwFfE0dKWQMEbP7r9yz78b/954yoyPbMo2jrZ0jzq/bgXtzj9cFhgZY1sp4hLrPv9WiX6M7bDIK8fe4o7rG7vZBmjFaHk5TE2yb3BqlZtojdG/cPVCIMf4e8KHF8qt3vZeRTiZxpYIwwvsCFlKE4wcak1BZ4c+QpyJ3T4dXGDw/AX+0E5jA== sidebar_class_name: "get api-method" -info_path: platforms/anchor-platform/api-reference/resources/platform-api +info_path: platforms/anchor-platform/api-reference/platform/transactions/platform-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/anchor-platform/api-reference/resources/get-transactions.api.mdx b/platforms/anchor-platform/api-reference/platform/transactions/get-transactions.api.mdx similarity index 98% rename from platforms/anchor-platform/api-reference/resources/get-transactions.api.mdx rename to platforms/anchor-platform/api-reference/platform/transactions/get-transactions.api.mdx index 7bd18ef09..c19b1d8d3 100644 --- a/platforms/anchor-platform/api-reference/resources/get-transactions.api.mdx +++ b/platforms/anchor-platform/api-reference/platform/transactions/get-transactions.api.mdx @@ -5,15 +5,16 @@ description: "Allows to query list of transactions for desired SEP. This api sup sidebar_label: "Retrieve a List of Transactions" hide_title: true hide_table_of_contents: true -api: eJztWFFv2zgM/iuEXq4FvKzLij3krQd0hwK9XbB0T12QKhadaJUlT6SzdkH++4GymzppmrYbcAMOe0oiU+LH7yMpOkvFekZqcKkuovakc7bBk8rU6HT46l372T9uv7x9o8aZChVGLXZnRg3UDHlrq0HKo63kpxqoE+fCNwIO8LXGeAvOEkMogDuboAgRDJKNaGB0OuzBxdwS6MoC1VUVIhNUemZ9cpuB9gYs/0FQBSI7dQgHshQxD2WJ3qA5FIelvkYoa8e2cggRv9ZI3IHShSAuEZwmFk8IliCizudo4NscPfAcwdflFKOAR4clehYbrqNHA9PbZILeVMF6lv1UaucwAs+1hyqGhTVo4EqOn5D9jlc9lalKR10iYxQRlsoKZQmdypTXJaqBIqxUpgS+8KMGHGvMFOVzLLUaLBXfVsmMo/UzlSn0dakGl++y/nH29s14ta3IeQjXdbUpwBRd8DPrZ8IOC/kig1pluyGFaDBOprLyJA6VR9SMZqJZZSp5LTBOIuZoF83yWCAWunasBl3zB9BHFea2sEhQWHRGqOXNQL5Z52CKkBAmXXrwITBmjS1hHrzR8RYoxKRSZzdYA9aDphy9ES4W2tXY++zPethr08CWSKzLqsnZPoQIZYi4CcISWIOeba6dOMbbNS5x26SLNU/w+yxyNeVtyW2yKOt76EsONphZZ3nDrCXwtXMZaOe2GeZ5etbQs45MaieDiDMdjUMiqRMKArfxBgcfPp2fj+D8ZHRx2Pvs34cIeKPLygmENi0SwVDqW/CBE18tZJP4plBuUi0OSSrcz8B6DnC1K8GuYIpiIah7cCa4sl1BBf/qPjDa1qxpMW29FzZKuEWQ9tYIuoep+7R5XHNizTUh7ZJdx6jF1DKWtCsdNnUe3rXF5sy7eITBbZCdVLI+D6IGo8rU3VeTWk9RS1MV25sqNaFMYYxBUrRqamVCjM7p7greMEavXWepJoyTtULEOvKjTztg7gy0z+cbTjnWtH2CMBompY7XmBpOCJPUidvvTsdZ90yS+6J7Zps3m27WhE2sL8KkrozeQJbXxKHEuPF4nCm27ESoURJidDo8cU6tHhTme+vkCnh4Kd6nf0qBVFNtnqREliq5u1oyKNIxqRYIjCU9dWjgoO0KMMW5XtgQDx/NwfXdtCsJrWecJV7WbaZ/9LDH2O8oMDWQ9TPJQdQxn6dbtQd/15TKugpk2S7w8XJIUJob95lgHmIZyk3e3tocoCZMpObBs/V1qKkF14NkmYfac9MqCDTDUU+txpL+VAUvlTlYqv7RkXxs+ukMQFCE2pteqiDP6FmsdVU5m6fh5fUXki3LTkTB4z9Fuv3b2ML0C+Ypd9vs6Zx/bolHp8N3ibfn2/ePX7jh7Ru1Gq9WkqrHu0L+Uxv42ExUL4l1G0AVZZpk25Db9JQH7W2VKWt2LK+6U9Flu7tTdKdp4S6I4/26SSW9XLtfFM8qUyXyPLQDeJojea4G6vVWb5d2JJ4WGKmJud876h11pB86zUWIJZwMzwRZFYhLncJsK/EjcrS4QNBw3g7v+yb+5T17v4f//cN/qz/jDb+unLZeBKijExIbQS/VhqDjTM0Dsawvl1NN+Cm61UqWm+4pTeSu76tBoR3hHnUOPrbZdggveCd4BPY13q7fVdK8oQYq9Zzn4/m/Tfd7meq8Qv00Xb+n+V82zT+t8Y8L/F9Phfsr+/715Efz9YWT4V443Un1B/H8/HT4NML1AHuPcSw/ohWQanApf8/MUUueSPNutp7kOVbc2fVgCJFT1hPAX6cXarX6FwNU+Q4= +api: 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 sidebar_class_name: "get api-method" -info_path: platforms/anchor-platform/api-reference/resources/platform-api +info_path: platforms/anchor-platform/api-reference/platform/transactions/platform-server custom_edit_url: null +hide_send_button: true --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +74,7 @@ Allows to query list of transactions for desired SEP. This api supports paginati
    - -| | | -| --------------------------------------------------- | --- | -| [Transactions](./transactions/README.mdx) | | - - diff --git a/platforms/anchor-platform/api-reference/resources/sidebar.ts b/platforms/anchor-platform/api-reference/resources/sidebar.ts deleted file mode 100644 index 501500e6e..000000000 --- a/platforms/anchor-platform/api-reference/resources/sidebar.ts +++ /dev/null @@ -1,84 +0,0 @@ -import type { SidebarsConfig } from "@docusaurus/plugin-content-docs"; - -const sidebar: SidebarsConfig = { - apisidebar: [ - { - type: "doc", - id: "anchor-platform/api-reference/resources/platform-api", - }, - { - type: "category", - label: "Transactions", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transactions", - label: "Retrieve a List of Transactions", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transaction", - label: "Retrieve a Transaction", - className: "api-method get", - }, - ], - }, - { - type: "category", - label: "SEP-6", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transactions", - label: "Retrieve a List of Transactions", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transaction", - label: "Retrieve a Transaction", - className: "api-method get", - }, - ], - }, - { - type: "category", - label: "SEP-24", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transactions", - label: "Retrieve a List of Transactions", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transaction", - label: "Retrieve a Transaction", - className: "api-method get", - }, - ], - }, - { - type: "category", - label: "SEP-31", - items: [ - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transactions", - label: "Retrieve a List of Transactions", - className: "api-method get", - }, - { - type: "doc", - id: "anchor-platform/api-reference/resources/get-transaction", - label: "Retrieve a Transaction", - className: "api-method get", - }, - ], - }, - ], -}; - -export default sidebar.apisidebar; diff --git a/platforms/anchor-platform/api-reference/rpc/methods/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/README.mdx deleted file mode 100644 index 51a6ea378..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/README.mdx +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: JSON-RPC Methods -order: 20 -sidebar_label: Methods ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -This section lists the Anchor Platform JSON-RPC API methods that should be called by Stellar clients to update status of the transaction. - -The OpenRPC Specification for JSON-RPC API is available [here](https://playground.open-rpc.org/?schemaUrl=https://raw.githubusercontent.com/stellar/stellar-docs/main/static/assets/rpc-methods/open-rpc.json). - -Postman collection is available [here](https://documenter.getpostman.com/view/9257637/2s9Y5U1kra) - - - -| | | -| --- | --------------------- | -| | [notify_interactive_flow_completed](notify_interactive_flow_completed/README.mdx) | -| | [request_offchain_funds](request_offchain_funds/README.mdx) | -| | [request_onchain_funds](request_onchain_funds/README.mdx) | -| | [notify_offchain_funds_received](notify_offchain_funds_received/README.mdx) | -| | [notify_onchain_funds_received](notify_onchain_funds_received/README.mdx) | -| | [notify_amounts_updated](notify_amounts_updated/README.mdx) | -| | [notify_refund_pending](notify_refund_pending/README.mdx) | -| | [notify_refund_sent](notify_refund_sent/README.mdx) | -| | [do_stellar_payment](do_stellar_payment/README.mdx) | -| | [do_stellar_refund](do_stellar_refund/README.mdx) | -| | [notify_onchain_funds_sent](notify_onchain_funds_sent/README.mdx) | -| | [notify_offchain_funds_sent](notify_offchain_funds_sent/README.mdx) | -| | [notify_offchain_funds_available](notify_offchain_funds_available/README.mdx) | -| | [notify_offchain_funds_pending](notify_offchain_funds_pending/README.mdx) | -| | [request_trust](request_trust/README.mdx) | -| | [notify_trust_set](notify_trust_set/README.mdx) | -| | [request_customer_info_update](request_customer_info_update/README.mdx) | -| | [notify_customer_info_updated](notify_customer_info_updated/README.mdx) | -| | [notify_transaction_error](notify_transaction_error/README.mdx) | -| | [notify_transaction_expired](notify_transaction_expired/README.mdx) | -| | [notify_transaction_recovery](notify_transaction_recovery/README.mdx) | -| | [notify_transaction_on_hold](notify_transaction_on_hold/README.mdx) | - - - diff --git a/platforms/anchor-platform/api-reference/rpc/methods/do_stellar_payment/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/do_stellar_payment/README.mdx deleted file mode 100644 index 45a6e117d..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/do_stellar_payment/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: do_stellar_payment -order: 30 -hide_title: true ---- - -import {RpcMethod} from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - diff --git a/platforms/anchor-platform/api-reference/rpc/methods/do_stellar_refund/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/do_stellar_refund/README.mdx deleted file mode 100644 index be531f439..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/do_stellar_refund/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: do_stellar_refund -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_amounts_updated/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_amounts_updated/README.mdx deleted file mode 100644 index 71414ce3e..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_amounts_updated/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_amounts_updated -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_customer_info_updated/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_customer_info_updated/README.mdx deleted file mode 100644 index dc6fdbf93..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_customer_info_updated/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_customer_info_updated -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_interactive_flow_completed/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_interactive_flow_completed/README.mdx deleted file mode 100644 index 5e997851c..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_interactive_flow_completed/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_interactive_flow_completed -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_available/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_available/README.mdx deleted file mode 100644 index 16d358351..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_available/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_offchain_funds_available -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_pending/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_pending/README.mdx deleted file mode 100644 index cfcd2fbb7..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_pending/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_offchain_funds_pending -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_received/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_received/README.mdx deleted file mode 100644 index cc4b8101d..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_received/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_offchain_funds_received -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_sent/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_sent/README.mdx deleted file mode 100644 index 1ff02829e..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_offchain_funds_sent/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_offchain_funds_sent -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_onchain_funds_received/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_onchain_funds_received/README.mdx deleted file mode 100644 index fc9ad1bb6..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_onchain_funds_received/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_onchain_funds_received -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_onchain_funds_sent/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_onchain_funds_sent/README.mdx deleted file mode 100644 index 55bfea42f..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_onchain_funds_sent/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_onchain_funds_sent -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_refund_pending/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_refund_pending/README.mdx deleted file mode 100644 index daed45bae..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_refund_pending/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_refund_pending -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_refund_sent/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_refund_sent/README.mdx deleted file mode 100644 index b0eb4869c..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_refund_sent/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_refund_sent -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_error/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_error/README.mdx deleted file mode 100644 index 6c6d1b93a..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_error/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_transaction_error -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_expired/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_expired/README.mdx deleted file mode 100644 index b2282419d..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_expired/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_transaction_expired -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_on_hold/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_on_hold/README.mdx deleted file mode 100644 index 0ab018429..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_on_hold/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_transaction_on_hold -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_recovery/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_recovery/README.mdx deleted file mode 100644 index fd30e8372..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_transaction_recovery/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_transaction_recovery -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/notify_trust_set/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/notify_trust_set/README.mdx deleted file mode 100644 index 91cca996e..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/notify_trust_set/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: notify_trust_set -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - diff --git a/platforms/anchor-platform/api-reference/rpc/methods/request_customer_info_update/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/request_customer_info_update/README.mdx deleted file mode 100644 index d1b65199f..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/request_customer_info_update/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: request_customer_info_update -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/request_offchain_funds/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/request_offchain_funds/README.mdx deleted file mode 100644 index ee8110ef2..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/request_offchain_funds/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: request_offchain_funds -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/request_onchain_funds/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/request_onchain_funds/README.mdx deleted file mode 100644 index 9d6fefdd6..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/request_onchain_funds/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: request_onchain_funds -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/methods/request_trust/README.mdx b/platforms/anchor-platform/api-reference/rpc/methods/request_trust/README.mdx deleted file mode 100644 index 605587b3c..000000000 --- a/platforms/anchor-platform/api-reference/rpc/methods/request_trust/README.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: request_trust -order: 30 -hide_title: true ---- - -import { RpcMethod } from "@site/src/components/RpcMethod"; -import {CodeFromFileExample} from "@site/src/components/CodeFromFileExample"; - - -
    -

    Example

    -

    Request

    - - - ```json - ``` - - - -
    -

    Response

    - - - ```json - ``` - - \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/notify_interactive_flow_completed.api.mdx b/platforms/anchor-platform/api-reference/rpc/notify_interactive_flow_completed.api.mdx deleted file mode 100644 index 99e638ee5..000000000 --- a/platforms/anchor-platform/api-reference/rpc/notify_interactive_flow_completed.api.mdx +++ /dev/null @@ -1 +0,0 @@ -TODO: Add description \ No newline at end of file diff --git a/platforms/anchor-platform/api-reference/rpc/sidebar.js b/platforms/anchor-platform/api-reference/rpc/sidebar.js deleted file mode 100644 index a77eab7f2..000000000 --- a/platforms/anchor-platform/api-reference/rpc/sidebar.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = [{"type":"doc","id":"anchor-platform/rpc/rpc-api"},{"type":"category","label":"Methods","link":{"type":"generated-index","title":"Methods","slug":"/category/anchor-platform/rpc/methods"},"items":[{"type":"doc","id":"anchor-platform/rpc/notify_interactive_flow_completed","label":"Interactive flow completed","className":"api-method patch"}]},{"type":"category","label":"SEP-24","link":{"type":"generated-index","title":"SEP-24","slug":"/category/anchor-platform/rpc/sep-24"},"items":[{"type":"doc","id":"anchor-platform/rpc/notify_interactive_flow_completed","label":"Interactive flow completed","className":"api-method patch"}]},{"type":"category","label":"SEP-31","link":{"type":"generated-index","title":"SEP-31","slug":"/category/anchor-platform/resources/sep-31"},"items":[{"type":"doc","id":"anchor-platform/rpc/notify_interactive_flow_completed","label":"Interactive flow completed","className":"api-method patch"}]}]; \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/README.mdx b/platforms/stellar-disbursement-platform/README.mdx index ce5e0171d..391f2fe96 100644 --- a/platforms/stellar-disbursement-platform/README.mdx +++ b/platforms/stellar-disbursement-platform/README.mdx @@ -1,7 +1,6 @@ --- title: Stellar Disbursement Platform Introduction sidebar_position: 10 -slug: /stellar-disbursement-platform --- # Stellar Disbursement Platform @@ -13,4 +12,4 @@ This is an open-source project that is built on top of the Stellar network, and - [stellar/stellar-disbursement-platform-frontend](https://github.com/stellar/stellar-disbursement-platform-frontend): This repository contains the web frontend code for the Stellar Disbursement Platform. - [stellar/helm-charts](https://github.com/stellar/helm-charts/tree/main/charts/stellar-disbursement-platform): This repository contains the Helm chart for deploying the Stellar Disbursement Platform using kubernetes. -In this section, you'll find an [Admin Guide](./admin-guide/README.mdx) that will teach you how to run the Stellar Disbursement Platform as well as an [API Reference](./api-reference/resources/README.mdx). +In this section, you'll find an [Admin Guide](./admin-guide/10-overview.mdx) that will teach you how to run the Stellar Disbursement Platform as well as an [API Reference](./api-reference/admin.tag.mdx). diff --git a/platforms/stellar-disbursement-platform/admin-guide/20-design-and-architecture.mdx b/platforms/stellar-disbursement-platform/admin-guide/20-design-and-architecture.mdx index 29624e509..6d3e9c2b4 100644 --- a/platforms/stellar-disbursement-platform/admin-guide/20-design-and-architecture.mdx +++ b/platforms/stellar-disbursement-platform/admin-guide/20-design-and-architecture.mdx @@ -8,8 +8,8 @@ The Stellar Disbursement Platform consists of four services deployed together: - **Dashboard**: the user interface administrators use to initiate and track the progress of disbursements - **SDP Core Service**: the core backend service that performs several functions: - - **Dashboard API**: the API used by the front-end UI for all disbursement requests. The API is documented [here](../api-reference/resources/README.mdx) - - **Admin API**: the API used by the host organization to manage tenant provisioning and configuration. The API is documented [here](../api-reference/resources/admin/README.mdx) + - **Dashboard API**: the API used by the front-end UI for all disbursement requests. The API is documented [here](../api-reference) + - **Admin API**: the API used by the host organization to manage tenant provisioning and configuration. The API is documented [here](../api-reference/admin) - **Messaging Service**: a recurring process that sends text messages to users prompting them to download the wallet selected for a particular disbursement and verify their phone with an OTP - **Wallet Registration UI**: a web application that collects and verifies the recipient’s OTP code and verification information via Stellar’s [SEP-24: Hosted Deposit and Withdrawal](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md) protocol - **Anchor Platform Service**: the API server that the wallet uses to authenticate and initiate the recipient’s registration process through the SEP-24 deposit flow @@ -54,11 +54,11 @@ The SDP uses a tenant resolution strategy to determine which tenant a request be Resolution priority goes as follows: JWT token (authenticated requests) > Header > Subdomain. #### Single Tenant Mode {#single-tenant-mode} -When single tenant mode is enabled using the `SINGLE_TENANT_MODE` environment variable, all tenants will automatically resolve to the default tenant. A default tenant is set by calling the API [`POST /tenants/default-tenant`](../api-reference/resources/default-tenant). +When single tenant mode is enabled using the `SINGLE_TENANT_MODE` environment variable, all tenants will automatically resolve to the default tenant. A default tenant is set by calling the API [`POST /tenants/default-tenant`](../api-reference/default-tenant.api.mdx). Default tenant is useful for development purposes or when the SDP is used by a single organization. This allows the organization to skip specifying the tenant in every request and simplifies the SDP setup operationally by removing the need of providing wildcard TLS certificates for multi-tenant configurations. #### Subdomain Resolution {#subdomain-resolution} When running the SDP in multi-tenant mode, the SDP uses the subdomain of the request URL to resolve the tenant. For example, `tenant1.sdp.backend.test` would resolve to the tenant `tenant1`. This allows the SDP to differentiate between tenants without requiring the tenant name to be specified in the request. -The subdomain resolution is particularly important for the Wallet Registration process, as the SDP relies on subdomains to differentiate between tenants during the SEP-24 deposit flow. Home domains, which contain the tenant name as a subdomain, are used during the registration process by the SDP to identify the tenant and route the wallet-registration request to the correct tenant context. \ No newline at end of file +The subdomain resolution is particularly important for the Wallet Registration process, as the SDP relies on subdomains to differentiate between tenants during the SEP-24 deposit flow. Home domains, which contain the tenant name as a subdomain, are used during the registration process by the SDP to identify the tenant and route the wallet-registration request to the correct tenant context. diff --git a/platforms/stellar-disbursement-platform/admin-guide/48-tenant-provisioning.mdx b/platforms/stellar-disbursement-platform/admin-guide/48-tenant-provisioning.mdx index cadc02579..5ac281e49 100644 --- a/platforms/stellar-disbursement-platform/admin-guide/48-tenant-provisioning.mdx +++ b/platforms/stellar-disbursement-platform/admin-guide/48-tenant-provisioning.mdx @@ -8,11 +8,11 @@ sidebar_position: 48 This section covers the steps to provision a new tenant in the Stellar Disbursement Platform (SDP). A tenant is an isolated organization or entity that uses the SDP to manage disbursements. Each tenant has its own configuration settings, users, disbursements, and most importantly, its own source of funds. -The endpoints needed to manage tenants can be found in the [Admin (Tenant Management)](../api-reference/resources/admin) docs. +The endpoints needed to manage tenants can be found in the [Admin (Tenant Management)](../api-reference/admin.tag.mdx) docs. ## Creating Tenants -Tenants can be created through the [POST /tenants](../api-reference/resources/create-tenant) endpoint. As a quickstart, you can execute the [main.sh](https://github.com/stellar/stellar-disbursement-platform-backend/blob/develop/dev/main.sh) script from our repository and make sure to replace it with the desired values. +Tenants can be created through the [POST /tenants](../api-reference/create-tenant.api.mdx) endpoint. As a quickstart, you can execute the [main.sh](https://github.com/stellar/stellar-disbursement-platform-backend/blob/develop/dev/main.sh) script from our repository and make sure to replace it with the desired values. The following sections detail how each field is used on the provisioning process and, so you can ensure the tenants are provisioned as expected: @@ -78,7 +78,7 @@ The platform is designed for multi-tenant mode, but it can also be used in singl To enable signle-tenant mode, tiy need to follow two steps: 1. Set the env `SINGLE_TENANT_MODE=true`. -1. As a HOST, you need to update the database by configuring which tenant is the default one by calling [POST /tenants/default-tenant](../api-reference/resources/default-tenant) +1. As a HOST, you need to update the database by configuring which tenant is the default one by calling [POST /tenants/default-tenant](../api-reference/default-tenant.api.mdx) :::caution @@ -88,15 +88,15 @@ Once this `SINGLE_TENANT_MODE` env is enabled, all tenant-related requests will ## Fetching Tenants -The tenants can be fetched through the [GET /tenants](../api-reference/resources/get-all-tenants) and [GET /tenants/:id-or-name](../api-reference/resources/retrieve-a-tenant) endpoints. +The tenants can be fetched through the [GET /tenants](../api-reference/get-all-tenants.api.mdx) and [GET /tenants/:id-or-name](../api-reference/retrieve-a-tenant.api.mdx) endpoints. ## Deleting Tenants -Tenants can be deleted through the [DELETE /tenants/:id](../api-reference/resources/soft-delete-a-tenant) endpoint. This is a soft deletion though and despite the system not providing a way to ubdelete it, the tenant information won't be deleted from the database with the current implementation. +Tenants can be deleted through the [DELETE /tenants/:id](../api-reference/soft-delete-a-tenant.api.mdx) endpoint. This is a soft deletion though and despite the system not providing a way to ubdelete it, the tenant information won't be deleted from the database with the current implementation. ## Updating Tenants -Some fields of a tenant can be updated through the [PATCH /tenants/:id](../api-reference/resources/update-a-tenant) endpoint. The API documentation provides more details on which fields can be updated. +Some fields of a tenant can be updated through the [PATCH /tenants/:id](../api-reference/update-a-tenant.api.mdx) endpoint. The API documentation provides more details on which fields can be updated. [Circle]: https://www.circle.com [USDC]: https://www.circle.com/en/usdc diff --git a/platforms/stellar-disbursement-platform/admin-guide/70-migrating-to-sdp-multi-tenant.mdx b/platforms/stellar-disbursement-platform/admin-guide/70-migrating-to-sdp-multi-tenant.mdx index 2565b3760..52a00130c 100644 --- a/platforms/stellar-disbursement-platform/admin-guide/70-migrating-to-sdp-multi-tenant.mdx +++ b/platforms/stellar-disbursement-platform/admin-guide/70-migrating-to-sdp-multi-tenant.mdx @@ -98,7 +98,7 @@ Among the changes introduced in the multi-tenant version, the most significant o ### Infrastructure -For the infrastructure setup, SDP Multi-tenant offers flexible operational modes. +For the infrastructure setup, SDP Multi-tenant offers flexible operational modes. #### Event Broker vs Scheduled Jobs @@ -116,9 +116,9 @@ General environment variables: - `ADMIN_ACCOUNT`: The username of the admin account used to authenticate HTTP requests to the Admin server. The Admin-targeted requests should add the "Authorization" header, formatted as Base64-encoded `"ADMIN_ACCOUNT:ADMIN_API_KEY"`. - `ADMIN_API_KEY`: The api key of the admin accountused to authenticate HTTP requests to the Admin server. The Admin-targeted requests should add the "Authorization" header, formatted as Base64-encoded `"ADMIN_ACCOUNT:ADMIN_API_KEY"`. -- `ADMIN_PORT`: the port of the Admin server used to create and manage tenants. Default is 8003. +- `ADMIN_PORT`: the port of the Admin server used to create and manage tenants. Default is 8003. - `INSTANCE_NAME`: the name of the SDP instance to be displayed in the `stellar.toml` file. Example: "SDP Testnet". -- `SINGLE_TENANT_MODE`: When set to `"true"`, it enables the single-tenant mode, which is useful for local development or single-tenant setups. In addition to set it to true, you'll need to configure the default tenant by calling the [`POST /tenants/default-tenant`](../api-reference/resources/default-tenant) request. +- `SINGLE_TENANT_MODE`: When set to `"true"`, it enables the single-tenant mode, which is useful for local development or single-tenant setups. In addition to set it to true, you'll need to configure the default tenant by calling the [`POST /tenants/default-tenant`](../api-reference/default-tenant.api.mdx) request. - `TENANT_XLM_BOOTSTRAP_AMOUNT`: The amount of XLM that the HOST Stellar account will deposit deposited to the tenant distribution account for tenant bootstrap. Stellar accounts configuration environment variables: @@ -151,7 +151,7 @@ On the Anchor Platform side, we must set the following envs: ### Seggregation of Funds -In the multi-tenant version, tenants funds are isolated from each other **unless the tenant is created with `"distribution_account_type": "DISTRIBUTION_ACCOUNT.STELLAR.ENV"`**. For more information on the distribution account types, please refer to the [Tenant Provisioning](tenant-provisioning#creating-tenants) section. +In the multi-tenant version, tenants funds are isolated from each other **unless the tenant is created with `"distribution_account_type": "DISTRIBUTION_ACCOUNT.STELLAR.ENV"`**. For more information on the distribution account types, please refer to the [Tenant Provisioning](48-tenant-provisioning.mdx#creating-tenants) section. The channel accounts on the other hand are shared between tenants, and they are created by the HOST distribution account, set in the `DISTRIBUTION_SEED` environment variable. The channel accounts are encrypted using the `CHANNEL_ACCOUNT_ENCRYPTION_PASSPHRASE` environment variable, or the `DISTRIBUTION_SEED` if the former is not set. In the single-tenant version, the channel accounts were encrypted by the `DISTRIBUTION_SEED`. @@ -251,7 +251,7 @@ After successfully applying the database migrations, the next step is to provisi Be aware that it will provision the tenants with all the per-tenant migrations included. -#### Starting the SDP API server +#### Starting the SDP API server To facilitate tenant provisioning, initiate the SDP Server using the command: @@ -302,7 +302,7 @@ curl -X POST http://localhost:8003/tenants \ -In the SDP Multi-tenant, certain configurations previously managed through environment variables in the single-tenant setup are now stored within the **tenants** table in the admin schema. This change allows each tenant to have its own custom configuration. +In the SDP Multi-tenant, certain configurations previously managed through environment variables in the single-tenant setup are now stored within the **tenants** table in the admin schema. This change allows each tenant to have its own custom configuration. The field **name** is important because it's the tenant identifier. The other fields can be set to the same values used on the environment variables used on the non-tenant version. @@ -365,4 +365,4 @@ COMMIT; This should conclude the data migration from the single-tenant version to the multi-tenant version of the SDP. Please, make sure to run an e2e test to ensure that everything is working as expected. -[SEP-10]: https://stellar.org/protocol/sep-10 \ No newline at end of file +[SEP-10]: https://stellar.org/protocol/sep-10 diff --git a/platforms/stellar-disbursement-platform/admin-guide/README.mdx b/platforms/stellar-disbursement-platform/admin-guide/README.mdx deleted file mode 100644 index 39975a6f9..000000000 --- a/platforms/stellar-disbursement-platform/admin-guide/README.mdx +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: Admin Guide -sidebar_position: 15 ---- - -import DocCardList from "@theme/DocCardList"; - -All you need to know about setting up, running, and using the Stellar -Disbursement Platform. - - diff --git a/platforms/stellar-disbursement-platform/api-reference/README.mdx b/platforms/stellar-disbursement-platform/api-reference/README.mdx deleted file mode 100644 index 5611fc6ae..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/README.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: API Reference -sidebar_position: 20 ---- - -import DocCardList from "@theme/DocCardList"; - -View all Stellar Disbursement Platform API information. - - diff --git a/platforms/stellar-disbursement-platform/api-reference/admin.tag.mdx b/platforms/stellar-disbursement-platform/api-reference/admin.tag.mdx new file mode 100644 index 000000000..ac04e35d2 --- /dev/null +++ b/platforms/stellar-disbursement-platform/api-reference/admin.tag.mdx @@ -0,0 +1,20 @@ +--- +id: admin +title: "Admin (Tenant Management)" +description: "Admin (Tenant Management)" +custom_edit_url: null +--- + + + +The Admin API oversees the management of tenants within the system, facilitating tasks such as provisioning new tenants, updating their information, and retrieving tenant data. + + + +```mdx-code-block +import DocCardList from '@theme/DocCardList'; +import {useCurrentSidebarCategory} from '@docusaurus/theme-common'; + + +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/authenticate-mfa.api.mdx b/platforms/stellar-disbursement-platform/api-reference/authenticate-mfa.api.mdx similarity index 78% rename from platforms/stellar-disbursement-platform/api-reference/resources/authenticate-mfa.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/authenticate-mfa.api.mdx index b2d9d15c3..2cedad005 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/authenticate-mfa.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/authenticate-mfa.api.mdx @@ -5,15 +5,15 @@ description: "Governs the multi-factor authentication process for SDP user login sidebar_label: "Provide Multi-Factor Authentication" hide_title: true hide_table_of_contents: true -api: eJzNVk1v20YQ/SuDvSQBKCkJ0h50oy27UVMngqWgCAxBGZJDauPlLrO7lKMK/O/FLKmIklynhxSoLqb3483szJs3sxMZudTKykujxVj8ZjZktQO/Jihr5eUgx9QbC1j7NWkvU+STUFmTknOQGwvzyQxqRxaUKaSOQOpU1ZnURUDBRCrpt+ANWCqpTMiG9Yw2MiVwBm6uY5AOtPGA6gG3Dix9raWlbCgiYSqyweY0E2PRc4NurmMRCY+FE+M7ER85KJaRqNBiSZ4s7++E5PetCTOyIhIaSxJjMQleDKYTEYm9VTHOUTmKTkIzzRg+l2TB5L0niEi4dE0livFO+G3FsM5bqQvRNMsWlpy/MNmWT6RGe9KeP7GqVOfv6ItjI7tzKJN8odSLSFSWQ+ElOd4tc1ylJqNzo6d+3zyRxoDQsI9tZlZlHzAxRhHqM8SLdh1yhcVZXpkJLWSKlU/XuPLmnvSP/VzwsUAoS5fxbHH5NoYNKpkFV4dw+301ADJl9hmDWitmI9v/PJnO44s/rla3V935z5AancuibnnEFx15dtzbmoaiafq5vzuEdtnw1kk0r2PoMgoZejziDeMFMFcZ7dpEvX75kv8co8zrlMsnr9VJRkT0swjyL6N+XDZtaEUTfpF485jvF5jBbRuBn+ctWWvsj72dkEepHGBiah/S3V5sIkHfvEV3bqkJe1hWinqGxFQHboHUVc3uHK7nklS2yo0R48N3n20i6tYTtN/PJGhBE2WOeZUQoAapPRVcDN+j+eo8mh81E8BY+VcAbvWJ/Wj+69g+EbNTBOfR1/1zuuZ6Z4iSnMPiERlq3/xI5N+zzvfffPBib+fNy1c95NMbfeBwbV9v/L1BVf90c10CS/Jrw12oMoH7Ffq1GItRmbMMOEprK/12zmlpHbsgtGS5xHrxwUq+o+2hBcWdqX39H/epY7b8/ueCBTYLMnmsHBE4WWjK4EH6NdPvav76l1+hsnKDnuCetkPO1wU6mZ54tPa+2nexoPt85lz1eRXeLhYzOBGN1iIk6OjXNwPSLJ4ZtDzgXvksntxM36/iy8sPH98vxt1/s+nq3dWnZ63+MqdvD43y6kCbQ6M7iMJRu2LRfaTd9GgudW7Cc6VnTDH3pBRamEiX1NZRSdrDTKHPjS0hnk1FJDZkXfvu80a1Jnga4vl8MnvBkoHgjVGQ1FL5kDNjC9RdroNUlHhPkNTqHircMkpYRSisqSsOnqVUVjJs8GwWRG9vXZN/MPZ+CJ9MDSlqsIQZlMZSp5C1249hPKTdrcnS8jmn241Ho4w2pLjM3dC1gENji1FmUjfi+aowdjuqHQ38mgbdiUHWe/Cg6h78IlCLq6LEIE0dtWfWbGRG0I4g1+0IEp82vKPo9gak/+Ew2hWMp29+VCmUmt9dW8V+t2oQxgeePtesEeM7sdtxXXy0qml4+WtNdivGd8tIbNBKTJiRd8tmL/1hVM2k441/mET7IXpiKH3U13vanky9nWAK0US7bvuyhR8sGOFw4qwHHW7EaUqVf/Lssqefsw/zhYhE0o3EZVveFh+4tvGhLToTntsKPK/thEJd1K1Gt5j8+xuEGnel +api: eJzNV01z2zYQ/SsYnJIMKTqetAfe5I80bpPUEznTg+NxluRSRAQCDLC0rHr03zsLkhZlJXLSNjPRRRKweHj7sNhd3EmCuZfppZy2VKEhlQMpa+RVJAv0uVNN+JvK3+wNOuMFVSjqVpOKS8jJOgFbC0XjbI7ei9I6MTs5F61HJ7SdKxMJZXLdFsrMAwpkSitaCbLCYY11hi6MF3ijchTeijcvp0J5YSwJ0EtYeeHwc6scFhMZSdugC3ueFTKVIxr45uVURrIBBzUSOvbvThqoUabyJKDHZycykoodqxAKdPKhv2cFo5UKnbDliJeM5EBCpiVoj5H0tNKM7VXdaLbA20bbAjcGeYU1yPRO0qoJluSUmcv1+qqDQ09HtlixxTYNlqA3EAUQyEjm1hAaYttnyTP+2sBvqF3KuoTrnFlcRcO2NvuEObE2jtUjhZ5X3VvuEHyoyps9Jx8Q1uxPd5jX9Rgws1YjmB3Eo25clBrmO6HAwdNB5tBQXsE12QWax3lesFmIQYfH0/OL41dTcQNaFYHqRLy7Hw2AHGWDdKI1mgOY9/94cjabHr0+vX532tt/FLk1pZq3XejxQo/ExMm1OJFr/oxDhIfDgG+s8Z3ehwcHuyc9a3O+OGWrHwi7feTQNLqfSD55a7bPf/85f6N426mgU6hzbB3JF1/ifgSFeNdF6f/HFp2z7nG2J0igtBeQ2ZbCqXUL13wNyYF/dKfgF95CuLybjeWZCSEjlGlakmO4UqEurktrZbr5PQ4iGfXjGbh7mwycMIiF53DJUIARyhDOOcbv1X2+q+57wwFhnfo7AP9Yeb9dNukJqB3bmZZvLkPU6D3Mv5BQ1l8T+y0n+bGbGxbDPi8Ono+QH674kcAB+zbmDDdHE/cJOc5ssYr7usK/O3A0XlnTFZ0FrmS6d2Ukb0C39whcEGqkynJNa2y4Tw1QJVOZ1CWnf4/uZqhprdMylWGRx7x1ilYzPv7ufI4QHDq+zaNzgEb9gaudW/T7XxecbYuQM7fzTyS8mhssxFJRxUF7Ojv85VfROHUDhGKBK67GvQzTXrchc41LLIuoTGkDG0WhZM4ItQYnTpTPWuexRkPiXAOV1tVien7GAqHzHcvDyfPJAWvQ1jU4lvaiQrEf48ns5Pwp300QZK0WWas0BTetm4PpqYY7WcMCRdbqhWhgxShhFMTc2bbhNsBhrhoVJrgdCtlm2N0gLa1bTHZr0U9H8YP5YC4q5cOWRtgGText63Lk9o3vuqAKiKc7KqEKNEMj9AAuEmCKMMFRLnIwnNxK25oiLKz4j9Z2yY2fw8Z6RdYp9CnziMWl7/CS/jsuRiLFTS9SnEG+QFNcPamIGp8myVxR1WaT3NbJdyE8TUVw/p7Kims6geq7294seKVM6cCTa3NqXe8gnws9dqaT7/CsdCGj/xfXBojHfFtiJgbbf+1NhbqO8woc+b2UR3YJOcSkBmWSfmCvP4+58Qp1LQJQ4F9go+1qeFfsv2utZ7tFm6EzSOgnHzhNEbra/1nO0IUeP5WDWz3NiXXzJBjFtox9bxZJrXI0PtSbIQE2kFcoDkOe6vIzY6VJslwuJxBmA1q/1Cevz45P385O48PJwaSiWoc8yam/BjMCPnf2RhUouhb8ZdeCTx92ilup527TK/yE77e+IBHeUtJoUIYbh6DYXV/ywhuGny8VF8L0Ut7dZeDxvdPrNQ9/bpGLwOUVF1GnIOOScnm1joaKwzWyUJ4nNq+1r0q058n3Ra5dcR8/KIdSLtfRUPuPO/j4ghE2Fvxy2xhN8xwbGk3vNHZbfcH5n7MLGXUNAz/fwtNNOljy4xSWgcB6/Q9FjJ0S sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ Governs the multi-factor authentication process for SDP user login, including th
      @@ -83,8 +83,8 @@ Governs the multi-factor authentication process for SDP user login, including th className={"openapi-tabs__mime"} >
      - +
      + + + + extras + + object + + +
      + + + +
      +
    @@ -322,24 +352,7 @@ Governs the multi-factor authentication process for SDP user login, including th Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/balances.tag.mdx b/platforms/stellar-disbursement-platform/api-reference/balances.tag.mdx new file mode 100644 index 000000000..77993d11d --- /dev/null +++ b/platforms/stellar-disbursement-platform/api-reference/balances.tag.mdx @@ -0,0 +1,20 @@ +--- +id: balances +title: "Balances" +description: "Balances" +custom_edit_url: null +--- + + + +Endpoints related to balances. A balance is an amount of a particular asset held by an organization, tenant, or account. + + + +```mdx-code-block +import DocCardList from '@theme/DocCardList'; +import {useCurrentSidebarCategory} from '@docusaurus/theme-common'; + + +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/create-asset.api.mdx b/platforms/stellar-disbursement-platform/api-reference/create-asset.api.mdx similarity index 69% rename from platforms/stellar-disbursement-platform/api-reference/resources/create-asset.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/create-asset.api.mdx index c6b4ac46b..970b7795c 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/create-asset.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/create-asset.api.mdx @@ -5,15 +5,15 @@ description: "This endpoint is used to create a new asset that can be used in a sidebar_label: "Create Asset" hide_title: true hide_table_of_contents: true -api: eJzVVW1PGzkQ/isjf2krbRKuUJD2W0LgykEhbQKIi6JqdnfIutnYW7+E7kX576exNxCgPZ10n+5L4rVnnvG8PI/XoiCbG1k7qZVIxaSUFkgVtZbKgbTgLRXgNOSG0BEgKHoAtJYcuBId5Kggo2gmFSAMpc28sbQk5bpwqR2l4EoCbeao5F/IgWDprYNSVwUgZFihyil612iczH2FZhtEMzZIF8+LXXSRCIdzK9KpuNpBF7NEGPruybqBLhqRrkWulSPleIl1Xck8GPa+WU56LWxe0hJ55ZqaRCp09o1yJxJRG12TcZJshClox8o6I9VcJK9qSO3lg30i6Acu64o9rsfDY7FJhLTWk/l3UK3tLszvg8Hw4Ojs9PDi9vxodPRpeHIzPr79cjQcXd/e7F/e7Q8nn09uTi8OLvuTg/7nj/t/XlycXvQ/iM0mlkYaKrhs7QXbELMNnz+/QX/bhYzaGSjELoYzngKorbWysUzv937jv58BtRBgfZ6Ttfe+qhouyMHe3muXARbQNjIBqVZYyccNyHTRgDZhtmqjV7KgIhS8F7Ph4W19uiFvS7k30jUina7FgNCQ6XtXinQ628wSsSRX6kKkotY2dB75TPRCJ6148h/zsMREd1EeW4m1PKdGJELhkr/5WJvtbCZCcmolYRGa+jzjP24nkUr32gB6V5Jy7bAmYOVcUQEP0pWACk7G7z8cQm3kiom5oKbLhRyglfmLG5XO1ZxAuLhIRcY2r2IHT/g4mYyg/yxyGxEytHR40CHFVS4gjizoe3jTH346u/zaPz6+ur6cpO3X6Ozr+cndm1h8ZtqXJ06ebEd5y6nIjCdi/IcR5wrf65C+dIEuY0cVK8quNMGoQnevzRL6ozORiBUZG+vwUxL+M8Tb8XD0jgcOwWldQeZl5UIPd1XPMo2WuCDIfLWAGhtGCbsIc6N9zcU0lMtahgO9ojjf2+iK3IM2iy7caR+U1xAWsNSGADPtHXjLLQkuwxFMSzI0e8vtt2mvV9CKKpYz27URsKvNvFfo3PZydDTXpul5Sx1XUqe16OwKbqduE34XRo2JssQgoO2oH8dHIlD9ZRl3RPj/98pEHjn64Xp1hVJx+t5UnFXUialodWKWiJIFJJ2K9ZoZc22qzYa3v3syLD6zRKzQSMx4NqezTbIVA9alBTVcx1ipzoTjsnnlo7K8eLqe6dboajwRicjaJ28ZeWXwgfUaH+Jk69CNIF5hby0qVHOPc7aNmExXfCVpiyBp7YJvuj1Szc4NX2pdTId/N8kvXNbrKJibzaN9PPqlx6N2RmvuBr9cfwPxPgPt +api: eJzVVk1T20gQ/Stdc0qqJIsQEqp0Mxg2bFggMQm1a3wYSW1rYmlGmQ8bRaX/vtUjCcxHyGZz2eVg7Jnu191vevpNwyxfGhbP2Llecim+cSuUZPOAZWhSLSr/M2aXuTCAMquUkBaEAWcwA6sg1cgtAgeJG+DGoAWbcwspl5BgZyYkcJgIkzhtsERpR3CmLMZgcwS1FRdKZyzkqsiAQ8ILLlPsvCuurUhdwfUQRBE2CNvtZ9voLGCqQu0hTzIWs0Of5JgcWcA0fnVo7IHKahY3DwodD+gJ9rVlLGCpkhalJXNeVYVIPXb0xZBPw0yaY8npG2ELjRkxmqoMWcCEMQ41UWrrClnMVPIFU0qk0pSmFWjI1ZvHzWBlrBZyyR4fBPYM9PB4w8uqII9P08kha28D/iOo3nYb5reDg8ne/snx29Or9/sX+39Mjj5PD68+7k8uPl19fn325+vJ5Yejz8ene2fjy73xh3ev/zo9PT4dv2Et/QVbFFjt0C+YSknTVbm78+p7pPd0g3FpisYsXFHU97gn9L2dncf+BzyD/lQDEHLNC3G7AInKalDaN1ul1VpkmHnyoq546ubeZ/QgXBswg6nTwtYsnjXsALlGPXY2Z/Fs3s4DdhMS0hJl2IcLKVwoeUlU0nfPrUVphJLGo6ywZvGzngFb88LdIlCgEm2uqJcrZXzvcEqCRb4XDKNE9Rp1F8HpgsXM+w35T6lFuyPYruK2R3gl3mP9qEd+v7rs7vBCaeDO5iht3/0BGLGUmMFG2By4hKPp7pu3UGmxpomwwpro7JmgaEoP4yVggsBz5BlqRjTTTfp4dy+Phm4crkXX3He9/QtdSsEXypcurO/4qcWCJsv2iIKLgtuF0iWML07oQFCbjpLd0avRDhHuypLrur9Iz2O8mE4uXlKjcbBKFZA4UVjP6fb4MzR3Sr5CSFyxgorXhOJXOSy1chWoBWhMRSX8hlpj19dDdIl2o/Rq9ORd/2+leC2vpVcVCilBVShDo5xO/S2lCdkJiTB9KkqCVR7+CbgAuMz8BvXLoD4L5WTmHXP6URRqI+QSNFbKCKu0QBNTHiHMTIcX9f/DbUEJq56kMOHpCmU2f5FbW5k4ipbC5i4ZpaqMfgrhZQy++NtUaqDBwwUxnCP0Zr4qIReaG6tdap3uC1yo+6w+eaajn6hsof3c+5XSBogf1bbBBAbbf11NjkUZpjnX1jyb8pZdZDViVHIho37h2Xp+VMY7LErwQD7/DKtC1dReP6wEnCG7lUtQS7RoRtc0Ey3q0pwvpqjXIqW5NJTVpzlSehl5o1AtQtObBawQKUrjh+UwbSue5gi7fk51YkBYcRRtNpsR97serXc10enJ4dHZ9CjcHe2MclsWfiiT1JRcbgF3DykYXlL3ZkxzJ53/u+diL4IWb2xUFVxIkglPXNMr7Yz1SjsPWE4SHM9Y0yTc4CddtC0tf3VIcjCbk3xrwRMSl9m8DQahuxP/w46p8JLi3qn9o7flPeW/OJ9esqB7EsQNKzth1HxDb1q+IcWnh6/tHhpNt9awgsul40uy7TDpaPkj9V959e+/UKbDlqy3Mnyo41059NkG33Fpmu5t0ba39t3Wdz16ugZrOo1527Z/AxqDc2E= sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/create-disbursement.api.mdx b/platforms/stellar-disbursement-platform/api-reference/create-disbursement.api.mdx similarity index 84% rename from platforms/stellar-disbursement-platform/api-reference/resources/create-disbursement.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/create-disbursement.api.mdx index d59f17373..bcb805772 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/create-disbursement.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/create-disbursement.api.mdx @@ -1,19 +1,19 @@ --- id: create-disbursement title: "Create Disbursement" -description: "Creates a new disbursement in ```draft``` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from ```draft``` to ```ready```." +description: "Creates a new disbursement in `draft ` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from `draft ` to `ready `." sidebar_label: "Create Disbursement" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Creates a new disbursement in ```draft``` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from ```draft``` to ```ready```. +Creates a new disbursement in `draft ` state with basic details. Important: a disbursement is not triggered until the organization adds receivers through the Upload Disbursement Instructions endpoint and the status changes from `draft ` to `ready `.
    @@ -421,7 +421,7 @@ Creates a new disbursement in ```draft``` state with basic details. Important: a required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -449,18 +449,18 @@ Creates a new disbursement in ```draft``` state with basic details. Important: a collapsible={false} name={"status"} required={false} - schemaName={"string"} + schemaName={"DisbursementStatus (string)"} qualifierMessage={"**Possible values:** [`DRAFT`, `READY`, `STARTED`, `PAUSED`, `COMPLETED`]"} - schema={{"description":"The status of the disbursement","example":"READY","type":"string","enum":["DRAFT","READY","STARTED","PAUSED","COMPLETED"]}} + schema={{"type":"string","enum":["DRAFT","READY","STARTED","PAUSED","COMPLETED"],"title":"DisbursementStatus"}} >
  • @@ -547,7 +547,7 @@ Creates a new disbursement in ```draft``` state with basic details. Important: a required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -650,24 +650,7 @@ Creates a new disbursement in ```draft``` state with basic details. Important: a Bad Request -
  • - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -59,8 +59,8 @@ Create Tenant className={"openapi-tabs__mime"} >
    @@ -348,24 +348,7 @@ Create Tenant Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -59,8 +59,8 @@ This endpoint creates a new SDP user as the result of an SDP owner adding their className={"openapi-tabs__mime"} >
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + +import ApiTabs from "@theme/ApiTabs"; +import DiscriminatorTabs from "@theme/DiscriminatorTabs"; +import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint"; +import SecuritySchemes from "@theme/ApiExplorer/SecuritySchemes"; +import MimeTabs from "@theme/MimeTabs"; +import ParamsItem from "@theme/ParamsItem"; +import ResponseSamples from "@theme/ResponseSamples"; +import SchemaItem from "@theme/SchemaItem"; +import SchemaTabs from "@theme/SchemaTabs"; +import Markdown from "@theme/Markdown"; +import Heading from "@theme/Heading"; +import OperationTabs from "@theme/OperationTabs"; +import TabItem from "@theme/TabItem"; + + + + + + + + + + +Sets the tenant specified in the request body as the default one, resolving all the incoming API request to that tenant when the env `SINGLE_TENANT_MODE` is set to true. Once set, the default tenant can be overwritten but never unset, although it is only effective when `SINGLE_TENANT_MODE` is set to true. + +Default tenant is useful for development purposes or when the SDP is used by a single organization. This allows the organization to skip specifying the tenant in every request and simplifies the SDP setup operationally by removing the need of providing wildcard TLS certificates for multi-tenant configurations. + + + + + + + +
    + +

    + Body +

    +
    + +
      + + + +
    +
    +
    +
    +
    + + +
    + + + Default tenant details + + +
    + + + + +
    + + + Schema + +
    + +
      + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    +
    +
    +
    + + + Unauthorized + + +
    + + + + +
    + + + Schema + +
    + +
      + + + +
      + + + + extras + + object + + +
      + + + + + +
      +
      +
      +
    +
    +
    + + + + + + + + +
    +
    +
    +
    +
    +
    + + + Forbidden + + +
    + + + + +
    + + + Schema + +
    + +
      + + + +
    +
    +
    + + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/delete-asset.api.mdx b/platforms/stellar-disbursement-platform/api-reference/delete-asset.api.mdx similarity index 63% rename from platforms/stellar-disbursement-platform/api-reference/resources/delete-asset.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/delete-asset.api.mdx index 8ec21b851..9f693c9c9 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/delete-asset.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/delete-asset.api.mdx @@ -5,15 +5,15 @@ description: "This endpoint is used to soft delete an asset." sidebar_label: "Delete Asset" hide_title: true hide_table_of_contents: true -api: eJydVNtu2zgQ/ZXBvDQBZDsIsn3Qm1sb2GxvRuNiURhGQYtji7BEquTQXVXQvy+GkrNp0uRhX3QhZ86Z25kONYXCm4aNs5jjujQByOrGGctgAsRAGthBcHsGTRUxgbKgQiCeYoasDgHzDX7yB2XNT5Vwthk2yquamLzcdmhVTZij0ZihEaJGcYnZI/bbBbg9cEkDvvAOlJihp+/ReNKYs4+UYShKqhXmHXLbCHZgb+wB+34rxqFxNlCQ++urK3n9SjVPBAO6hhCLgkLYx6pqsc/w+urmORdVeVK6PbuK9c3z1tYx7F20Gvs+w0BF9IbbVJI3pDz5eeQS881Woq6JS6cxx/ukU5VynKVyhFlndI//wdxJCYYcH4LdV0Q15h21mJ2rL9fOn5s0NqIkpck/acVff6+H3u+dBxW5JMumSJ4ZBHOwpOGH4VKGYXl3/cdraLw5KSY4UjuVqrxRwRSPIiqZGxx7J/87sXnCnTzhz/V6BfNfmEdG2KlAr28mZAunpXup8zI6r+aLD7cfv83fvv305eM6H/9Wt9/eLb++mqYeGLt3KSLDlYRwx1RVysPChF30gWqyDKtK8d75GuarW8zwRD4MoT2JdV0SvAxxcbdYXYqUFLBzFeyiqTiV1T3QTJBhr9WRYBerIzSqFZR0quDgXWwkP0+FaUy6cCfySSpndkv8w/njFL66CIWyIHMKtfMEauciQwxSpeSyWMGmJE/bC+lIyGczTSeqXEM+TMMAOHX+MNOuCLNCMR2cb2cx0IRLmowWE/0g4UkzJnyZut+4wLWyUulx+hbD8ki6eFzGDgtnmSz/rxU0zBbTPzxrKmWs8EdfCewgoA0OAsIMc6NlPZUusJx3nczSF1/1vRx/j+RFndsMT8obtZMR2XSoTZBvjfleVYFeiP7i87inLuGlbfbbmM+ytaLZk6oiDRN3pHbYnf22f7AlFsv3y/USM1RPZH9Msh8/JIHfQj/eBwOPPPvsGZeuG5ZK39/bD1fPetzvlzELK1n0/b/a/Dfx +api: eJzNVsFu4zYQ/RViTgkgW6mx7UG3dGOgaRfdoE7Rg+MDLY0s1hTJJUf2qoL+fTGU5HqTTYJsL71YljjzZt5wOI8dkNwFyNbw0e+kUf9IUtbAJoECQ+6Vi68Z3FcqCDSFs8qQUEE0AQtBVgRbkihQI6GQRsgQkOaQgHXoI9ZtARncRINrXoQEnPSyRkLPgTswskbIQBWQgOJgTlIFjzO4vRG2FFThEINjD2EhAY+fGuWxgIx8gwkEajVDBlU7zQb42WlbIGSl1IEN8gprCVkH1LpoSV6ZHfT9htGCsyZg4PXF1RU/vs4lEhnDFyI0eY4hlI3WLSSQW0NoCLKu7xNYXL17zl9qj7JoJ5wnru+edzWWRGkb89ipTyBg3nhFbSztzyg9+uuGKsjWGyZXI1WWt+RUvFjtDNJY1pB2quiBYfxh2qDGa8gA2H1CX3EBhwqdxzjVUzr1G7ZPNvHXv+6HzimtF7KhCg2pPPZJIoLaGSzEUVHFrbRcLX78STivDpJQ7LHlthp7haNZP3Xr2DYVygI9cBGUKW3MRlFshBWh1tKLGxW2jQ9YoyFxpyWV1tfi+u4WEmC6Q5aL+Q/zK65BU9fSt7H9UbyMcbG6ubvkgyEFWavFtlGaIk17drACt20t9yi2jd4LJ1tGiV+l2HnbOG5yj7lyKi7YA/rY9FN0g3S0fj9/Utr/X4oP5sHEucEhjbAOzSzYxuconLd/Y06CKhmnyZCKNYKsm475I7hESFPEhdwWKHJpxBaHQxAdK37R2h6V2QmPzgZF1isMGecxE+sw4KXjc1acFWnmxiLNtjLfoyk2FxWRC1ma7hRVzXae2zp9E8JlJiL5Uyqt4JMqFVe4QjGaRVbKlF4G8k1OjR8J8r7Qa3s6fwOz0sdB8V+oTRCvcTviVky2382mQl3P8kp6Ci+mfGaXkkdMa6lMOn54kc9rNH5BXYsIFPMv0Gnbcnu9ykQ0ge32zRa9QcIwf+AxRejr8LFcoT+onOfSRGtMc279Lo1GM1vOwmiWgFY5moA80aYB6GReoVjEOTXMZ8bK0vR4PM5lXI1oo2tIP9y+X/6+Ws4W86t5RbWOc9LZQLU0Z8CDUotJqr+aMd2/WvP2C8EoDISfKXVaKgP9mHk3StAaBgmCBDJV8B2ksoH4e9dtZcA/ve57/vypQZ7K600CB+mV3PKMX3dQqMD/i5PMP5v9xR/jjeFSvHSv+GbOk8IZlreD1A2/QQJ7bIdbTL/pz3T2Zvlheb+EBOQThdxHhRz/MIFvQj/WuiEO//bJMy5dN+hv35/sh6VnPUbtPLEwzKLvvwCSVJKU sidebar_class_name: "delete api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ This endpoint is used to soft delete an asset.
      diff --git a/platforms/stellar-disbursement-platform/api-reference/disbursements.tag.mdx b/platforms/stellar-disbursement-platform/api-reference/disbursements.tag.mdx new file mode 100644 index 000000000..badcdef40 --- /dev/null +++ b/platforms/stellar-disbursement-platform/api-reference/disbursements.tag.mdx @@ -0,0 +1,20 @@ +--- +id: disbursements +title: "Disbursements" +description: "Disbursements" +custom_edit_url: null +--- + + + +Endpoints related to disbursements. A disbursement is a group of payments sent to multiple individuals at once. An SDP user with the appropriate role triggers a new disbursement through the SDP dashboard by uploading a list of receivers and amounts. When the receiver has linked their wallet to the SDP, the payment automatically begins. SDP users can track their disbursements in real-time through the SDP dashboard. Each disbursement must have a unique name defined by the organization. + + + +```mdx-code-block +import DocCardList from '@theme/DocCardList'; +import {useCurrentSidebarCategory} from '@docusaurus/theme-common'; + + +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/download-disbursement-instructions.api.mdx b/platforms/stellar-disbursement-platform/api-reference/download-disbursement-instructions.api.mdx similarity index 87% rename from platforms/stellar-disbursement-platform/api-reference/resources/download-disbursement-instructions.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/download-disbursement-instructions.api.mdx index 4548c49c3..5ad89b5dc 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/download-disbursement-instructions.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/download-disbursement-instructions.api.mdx @@ -5,15 +5,15 @@ description: "Allows an SDP user to download the raw CSV file that was uploaded sidebar_label: "Download Disbursement Instructions" hide_title: true hide_table_of_contents: true -api: eJzlV21v20YM/ivEfWkCKHbaZf2gb85LN69YZjTOhiIwClqirWvkO/WOsuMa+u8DT7IjvyTFtmwYti+JnTuSDx+SzzEr5cgX1njyKl6pN6en8islnzhdsLZGxepS+3HpPM3IMFzc/AoTnZOKVEaYkgt2F9YwGT651L6wXteGu36GGQVTgzMCOwHOCBxx6QylG78dFSmfZDRDccDLglSsPDttpqqqok2kYTjZDcH0wN3Ez591UkUqqb2E07VJvFL0gLMir6lY8yKf55iX4kKMxfzsEE3nmMIH+lKS5y1yng63B9GOP1Mi1oWzBTnWNRRyzroDmUSKHtih/7aHibUH7WfkPU7pIEvBfeCjhUH1zRxznYLbZPqIIURRY3Sq5XnXAgp0OCMWcuooWBS5TlBo7H72ded8oxJ/I56mwK/3C3xrsOTMOv2V0n9dhT0jl+17ppyNyf25Il9bhq1cH1Gs45ydvm6TumPxAoV9EQxNMb/bL+Y768Y6Tcn8Q5U8TPQjir9O2JavJvGz/cSFpXe2NP+DFp40aR7qnLN252y9cGZj+UJd/BIwaijCVgDST+W6XZjcYgpbdn3j2ZWJ3PIq2il+L8/twgMauLkcQOnJAVtI147Ci4yLzWMMnCHDAj2UhVygFBYZGUgcIWszDQZpK3oHhpn2sNB5Dtbky+Z9B0e+zNkDTpgc6BZEyHBOMCYygMyYZJQKJITU4YS3natIMU69iu+2qPJqFKmWisd3KyU7hoqVFt61ZF4gZ3t09C/Xe0jbn4qUvA3aUapidiU9t0yMIuUpKZ3mZQh8TujI9UrOVHw3kuMZcWalXlMKPS9AYtVtZ+a7K51WXb1durXfGwle91rb+wYLFvo9LVW0TrrXaGDolHX+9ajvMfDTb0NpgxQm1gXxJMNNs0fg9VRWs4XmTFrm6ubN92+hcHqOTHBPy46M5jl6newgypiL9QpG4Qn2OtmLHSzhx+FwAL2tyE1EGKOnt2cnZBIrrVdzLhV71bv8uX/9qXdx8cvt9TBuvg36n95ffXzVCWKrzaReeTSLMKgbpjxHtz0rgxx5Yt0MeoO+itScnK+h7WGV3fV5F0c3l4Nj0B4Q2NocxqXOOdBq3RRNUw4vzT3De4Jxmd9DgctQ/7rlp86WheTnKNGFDgd2LjPaim6IF9bdd+CjLSFBmS1MYWYdAY5tyVD69WTKjN9l5Gh0JBXxcbeb0pxykRHf8bXDjnXTbmoT302QaWrdslt6OuGMTpobJ+1WPSmahI9D9QvreYZBE5vu++OqtHp8ev4DAlVPQHhBixy1EZZKl0ua9ejfqa3RV5GKG5lqUTSKVGY9y+3VSubg1uVVJX/+UpITqRlFao5O41ja+24lTuVzquIJ5p6e4fjoQ6Nux/CkAB5MY603RsRm8z9RpO5pWWttNarWS0XAVB/0koQKbpls1ostefzhaqgihXvadh+0rfkgXg/C2BW9OrT8rKInTFarWjmranO/PnrSYiOiTcZGMq6q3wEHAlcB +api: eJzdWE1z2zYQ/SsYnJIZSnRctwfenNhp3XZST+S0B0cHkFyKiECAWSylKBr9986CpEx92B4naSftxdIIu2/37QLYB68lqZmXya280D5t0EMFlrycRjIHn6GuSTsrE3lujFt6oayYXFyLxgMKciJ3S2ucygWVIFAtxavJn6LQBgSVisRSedHUbAC5WJZgRYagSNtZcMgHIcfiptReLLUxwlmzEgjUoBUIvjHkhSoIUGjrCZuMc/KiVAsQKYAVikhlJeSckhI5qoJ2wWUkXQ2o2PEql4m86BIfsr4agMtI1gpVBQTI5VlLqyqQidS5jKTmitSKSrlfpqsL4YpAbogsI4nwsdEIuUwIG4ikp5VhPK+r2oCMJHyqjctBJoUyng2yEiolk7WkVR0sCbWdyc1mymi+dtaD5/XTkxP+2E1kGH7bFRnJElQeKK3lK2cJLI0utK+d163jPs5NCcGV6ffU2tZAvsXl+n4FoWibyk1Y2c+B4BPFmV98XZRNJLM2TFjtMZO1hE8qoCWyNTs7VtCXKhdv4WMDntt5D9JBdJd+gIwdauQNSLptGSA6PJIk8yFU/nGEwrmj/hV4r2ZwtAABvqO6zUFe2YUyOhe4JXeXQ4giU4VygLzvIQYnpY2i6troLJy2+INvt9W/ETn07sVh795Z1VDpUH+G/HtonidFzdDONlUK+GX9e+NI7NC7y6KPc3byYljFPY8n9eybRAt9+uGwT68dpjrPwf5zTTpew7vAT6nFjlfgdHbIiem/do39f268omN2bBecDXfBzjyyW88n771vEZBDesga1LQKs/0lKAQ8b6iUye2UB2wFVDoWCjMIVeRZn8h4KCp8vNb5Jta7qsEDLnrJ0KAJM2V6F27CrW57MQy6rbmq9W+wOpAVv/51w5orF4XDcJjAUlewSHg942G81FSyPrucnP74k6hRLxSBmMOKp3OnXs67cxg8eyHTSoJwNLQt2rGiKczDCYExCnfEjLg2igqHlTi/vpKRZLptlqfjF+MTrkFTVQpXnXp4GOPZ5OL6udBeKEHOGZE22lCg6XCmbJeqZ2VXqTmItDFzUatV6ECr92bompq1CUKmax0W3IIF6iC6BVo6nI8PSvv9pfjevrdBDOugt10NduRdgxmIGh2f61Zda9+l4qwgV/fqbA8uEsq2+jxzOYhMWZFCexiCI+s7x+KeVTlCUIIONfiE8xiJW9/ixd3naHgGRnVXpFGqsjnYfPqsJKp9EsczTWWTjjNXxU9CeJ60L4FtKivB16bSXOESRGcWWGlboGqPX4MdQe4LPdbT8ROYFRhu7a+h1kM8xm0Jqehtv5hNCaYaZaVC8g+mPLCLCQHiSmkbdz88yOcxGr+AqUQACvnnUBu36h99D5+1xrPdvEkBLRD48Xu+pgiw8n8UE8CFzvhe6ml1aY4dzuJgNHLFyHdmkTQ6A+vDDOkvwJofiuI03FPt/cxYSRwvl8uxCqsBrXP18e9Xry7fTC5Hp+OTcUmVCfdk7TxVyg6A+wflLq+9J+XOzbO+kwP//dd1N76CqqmN0pYlRajvuhuet3JneMpIJt1belCiaSRL54mt1+tUeXiHZrPhnz82wBPldhrJhUKtUp5Pt2sG5e/59gF4b42fve2e4M/Fva/0ozT60Wx5Li+UacJLMZJzWLX/ENhMN/3DOuTULpxnGdQ0cNlKvh2B8fPljYykOpAB8yADui+MejSN/YHehua/m+gel/W6FRmbzda+XbrXo6O2ZWyZ8WbzN2Svcd0= sidebar_class_name: "get api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ Allows an SDP user to download the raw CSV file that was uploaded when creating
        @@ -199,16 +199,6 @@ Allows an SDP user to download the raw CSV file that was uploaded when creating any
    -
    - - -
    @@ -224,24 +214,7 @@ Allows an SDP user to download the raw CSV file that was uploaded when creating Bad Request -
    - - - Response Headers - -
      - -
    -
    +
    + + + +
    - - - Response Headers - -
      - -
    -
    +
    + + + +
    - - - Response Headers - -
      - -
    -
    +
    + + + +
    - - - Response Headers - -
      - -
    -
    +
    + + + + + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -59,8 +59,8 @@ Sends an email with a token to an SDP user who has gone through the Forgot Passw className={"openapi-tabs__mime"} >
    - +
    + + + + extras + + object + + +
    + + + +
    +
diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/get-all-assets.api.mdx b/platforms/stellar-disbursement-platform/api-reference/get-all-assets.api.mdx similarity index 82% rename from platforms/stellar-disbursement-platform/api-reference/resources/get-all-assets.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/get-all-assets.api.mdx index f9d387450..e12103ec3 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/get-all-assets.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/get-all-assets.api.mdx @@ -5,15 +5,15 @@ description: "Fetches the list of available assets to populate the dropdown box sidebar_label: "Get All Assets" hide_title: true hide_table_of_contents: true -api: eJzVVm1v4jgQ/iuWv+yuFCAtgZ7yjZa229suyx60VbdC1SQeiLdJnLMntCziv5/sAA0tPd3qXqTjQ0jsmWde/YyXXKCJtSxIqpyH/AwpTtAwSpCl0hBTUwZzkClEKTIwBskwUqxQRZkCoRMUWhVCPeYsUk9M5m5tgI+sL01UaoMZ5sSmqXpssoEiDJ2A0jPI5Q+whllWGmKJSgUDFkEKeYwWCFgBmmRcpqAr49Z2aZBJqvZFzUSTe5xgZnh4x7/U0PnE4xpNoXKDhodLfuj79m838t5zvC5K7vFY5YQ5WVkoilTGDq713ViFJTdxghnYN1oUyEMOWsOCe1wSZqa2rqLvGBP3XlgcJ8hGhOlzcFvBQqsCNcnKXylqYIa0zGfc4/gEWZHapekUMA6idiPoRn4jEFHQgCAOGt243fF/8TtHR36Hr2w8AvchvUiEc8XJ1o1cjfonFkQaU6L+qzCVNAMhNBqzA3h+fNwPji7Oupc3n46GR5/7p9ejk5vfjvrDq5vr9uC23R9/Pb0+uwwGvXHQ+/qx/e3y8uyyV0WiEQjFPdA+R6ZKZ3aHCyBskMx2Izn0D9sN/7Dht8cHfhh0ws5B0/f9bxa4LMS/Aywwxb8J3F0Dd2rA1c/jgX/wuqWvcigpUVr+QME9niAI1LajVj/f22+0Jmqt9jTDynpPGvaegl0EQ0BlXS4vswi1hcjQGJjtadkq5m1+tm7wgSK2E/OzFxs7gX9QQ36pUQd2ahvisO9zSMt/3Nymfu3X9TtTOpJCYP4fF29/bp+9+akc1dXWwRqMSy1pwcO7JT9G0Kh7JSU8vJusJjZblCjBQz5D5zPYLd7a0vJGfWTDrDyogzzTcSE/oeXjHDL73VvnvRoKHpc2x1VeX7HXrzdjO2cEmyrtCoY5rdPsMSNnOQr2KClhkLPT0WGnywot53YgPuCiaZv3GIyMX3iUEBU2AOc4D3lkZV7Zdprs43g8ZL0dy2uLLAKD3aCBuSVpwaqy2cn1rtf/fDG4752cfLkajMP11/Di/tPp7bumq5vMp8p5JMlRy2YA7czqYQpkKYn1hhfc43PUpnLtT2fYfoj3o/7wA5OGASOlUhaVMiWX1voNwF0qMnhAFpXpAytgYVHcKrCZVmVh49MYy0K6DTVH7e4RG+s50qPSD012q0oWQ840gmCZ0sggUiWx0tgsOZX+kN0lqHHy3lbEhK2WwDmm9myYpqkAm0rPWkLFphUD4UzpRas02KAEG2uJRv3y0SjWAX9w1S+UoQzcaVx33zkS66Up623aeCeRy+cz/f+/g1XNTvhErSIFmbvBqlMbZXWY7/j6ME88nihDdmW5tG19pdPVyi7/XqK2BDHx+By0tKE7ftgwoeOOB1zYcx3HWFimWHPPa07cYZXz0zH3OLziigfHFesXi77Zyhc17JckUrlgnyvvDZXlsmKi1WorX229qbElpUraZnCyWq3+AFs++3g= +api: eJzVV11z2jgU/SsaPW1nbOzwkez4jZYkzTabpgtpZpsyO7J9wSqypJWuoZThv+9INgQS2vRjO7PLA9jS1dE5V9I9YkWRTS1N7uhrM2WSf2LIlaTjgOZgM8O1f03oGWBWgCVYABHcIlETwuaMC5YKIMxaQEtQEa10JRiCD8yN0rlaSJKqj4RL33YFCzLgNq2MhRIkkolQixa5UgiJD1A7PEhZWSSFEjlhJGWCyQwcECOaGeRZJZipJ3dzVxYIx7o/35miRQOqNBgPeZHThJ4D9oXoe9Y0oAasVtKCpcmKtuPY/ezL79+L3gzKlESQ6GKZ1oJnHj76YN2AFbVZASVzT7jUQBPKjGFLGlCOUNqddpV+gAxpQLVxJJHXNHi+E2PRcDmlAYWPrNTCNU0mDLJu2gm7x2kcdvO0G7Ju1g2Ps04v/jXunZzEPbp2NHM4hPRAn8+hj92d5GY4eOFAuLUVmK+FqaMJy3MD1u4Bnj9/PuieXJwdX96+Ork++X1w+nb44vaPk8H1ze3bztWfncHozenbs8vuVX/U7b952Xl3eXl22a+VGGAI+V8MDxGZKFO6HpozhBB5ua+kHbc7YdwO487oKE66vaR39M6BVjr/90FzEPCDoMcNaK8BXT9M9agAMkQQ9ydgu5GQo0fyq0HX7hPQbnz0eFvfSFZhoQz/BPl3bOnPbF0wRh3YLGunEg37is1vkWG1GyerMgXjIEqwlk0PbOla5jaPWxr0SiHZk3nPYjNPNz7aQX444mcC10vTebw0Z8qkPM9B/vx1OazunsBXBHgdFrLKcFzS5G5FnwMzYPoVFjS5G6/HLg1YKFd9p+C5MddFo21BtWDmYKwfXRlBE0rdsA3q0Kmshexi39dXzV/B8lFJ+u125IwhJxNlfO5BYpPAgFg+lZCTBceCMElOh+3eMdGGz52DzWDpnEOy0h+mZtlqfwwod+AFsNxtS1ci5UR5Ns3h25zNPa+7Fgzd8Sf96wsaUCe3ZtluHbVil4OqLJlZPjjfhzF+GQ6unxFuCSOolCBpxQV6mbsW6l25ZDMgaSVmRLOlQ/GtjEyNqrRzNQMZ19x3qDkYb8Sb2SXgQplZ61Fq/3sU38v3clRw66eURGmQoVWVyYBoo9yhIFgw51ANFSUJKg9/AC4gTOa+wxkjyZgkKZCJqmTuBxbuRQi14HJKDGhlOSrDwSaOR0jubI0XNb/h7qUk1E2SwpRlM5D5+JcCUdskiqYciyptZaqMvgnhWUK8+C2VJXGVg3FZ39uaMK+Ky4lhFk2VYWUagW5d8Kk1bX2DsonxhetHpG0gntK2gJRsYr9bTQGiDLOCGbRfpLwTF6EBiErGZdQ0fFHPUzJegiiJB/L8c9BCLd32elIJqayLm1UpGAkItvXelSkEU9rXkyGYOc9cXdrIami2lJlGPihUk9A2YQEVPANpfb3fFEDNsgJI29epuj47rCSKFotFi/lej9YMtdHlxYvTq+Fp2G7FrQJL4eukVhZLJneAzwFJXwiyvY7vVZnVvfv97/+ENE6F8BEjLRiX/gbqUrlq7PCONnY4DmihLLqW1SplFm6MWK9d898VOIO4Gwd0zgx30r3DBhs3cv45A+ch/SwD7bx2zkRVe+SD28OeL5+fjmhA2SNbnXlbbR4c+qZLLnewHxpkTcF9r4PPDFmtatNer7fxdddnRzQSN9Eug+P1ev0PXdMlYQ== sidebar_class_name: "get api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -138,7 +138,7 @@ Fetches the list of available assets to populate the dropdown box in the New Dis required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} >
  • @@ -173,7 +173,7 @@ Fetches the list of available assets to populate the dropdown box in the New Dis value={"Example (from schema)"} > @@ -193,24 +193,7 @@ Fetches the list of available assets to populate the dropdown box in the New Dis Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -129,7 +129,7 @@ Fetches the list of available countries to populate the dropdown box in the New required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} >
  • @@ -155,7 +155,7 @@ Fetches the list of available countries to populate the dropdown box in the New value={"Example (from schema)"} > @@ -175,24 +175,7 @@ Fetches the list of available countries to populate the dropdown box in the New Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -63,24 +63,7 @@ Fetches available SDP roles, such as owner, financial controller, business user, OK -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -120,7 +120,7 @@ Get All Tenants required={true} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","example":"bluecorp","description":"The tenant name. It should match the pattern `^[a-z-]+$`."}} + schema={{"type":"string","description":"The tenant name. It should match the pattern `^[a-z-]+$`.","example":"bluecorp"}} >
  • @@ -247,24 +247,7 @@ Get All Tenants Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -193,24 +193,7 @@ Fetches all SDP users within the organization, whether they are active yet or no Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -202,24 +202,7 @@ Fetches the list of available wallet providers to populate the dropdown box in t Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -134,15 +134,7 @@ ATTENTION, this endpoint is only enabled when the tenant distribution account ty
    -
    - - - The organization's distribution account - - -
    @@ -300,8 +292,8 @@ ATTENTION, this endpoint is only enabled when the tenant distribution account ty schemaType={"response"} >
      - any + + + +
      + + + + extras + + object + + +
      + + + +
      +
      +
    +
    + + + @@ -348,24 +398,7 @@ ATTENTION, this endpoint is only enabled when the tenant distribution account ty Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -176,7 +176,7 @@ This endpoint returns the organization's info. It is used in many places across required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`DISTRIBUTION_ACCOUNT.STELLAR.ENV`, `DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT`, `DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT`]"} - schema={{"type":"string","description":"The type of the distribution account.","enum":["DISTRIBUTION_ACCOUNT.STELLAR.ENV","DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT","DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT"],"example":"DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT"}} + schema={{"type":"string","description":"The type of the distribution account.","example":"DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT","enum":["DISTRIBUTION_ACCOUNT.STELLAR.ENV","DISTRIBUTION_ACCOUNT.STELLAR.DB_VAULT","DISTRIBUTION_ACCOUNT.CIRCLE.DB_VAULT"]}} > @@ -215,7 +215,7 @@ This endpoint returns the organization's info. It is used in many places across required={true} schemaName={"boolean"} qualifierMessage={undefined} - schema={{"description":"Enables multi-user approval workflow for disbursements","type":"boolean","example":true}} + schema={{"type":"boolean","description":"Enables multi-user approval workflow for disbursements","example":true}} > @@ -291,24 +291,7 @@ This endpoint returns the organization's info. It is used in many places across Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/get-profile.api.mdx b/platforms/stellar-disbursement-platform/api-reference/get-profile.api.mdx similarity index 79% rename from platforms/stellar-disbursement-platform/api-reference/resources/get-profile.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/get-profile.api.mdx index 526fe4462..4e3b3eaf2 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/get-profile.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/get-profile.api.mdx @@ -5,15 +5,15 @@ description: "Fetches the individual information of the logged in user to popula sidebar_label: "Get Profile" hide_title: true hide_table_of_contents: true -api: eJy1Vd+P2kYQ/ldG85JEMhBFbR54KgnX9BI1RTmiKkLoNNiDvcd6d7u7JqGW//dq1j4Ojt6pL+UBzM6vb2a+b92i5+CsCRxw2uKb16/lp+CQe+Wisgan+IVj402AJrAH5+1WacYMc2simyj+5JxWOYn/5C5IUIshr7gmeYoHxzhFu7njPGKGzlvHPqq+5Fb5EG8N1XziG6JXpsQM+QfVTsvRRzKMXYaa/pP73CZvrknp5z3vCsu/iNvY+lJivNU9tCGGvKcDZqgi1+EyV9dlaH1JRv2dJvAEOHE7Fj1vu+/trLWE/wj/EcYjxBUWvGct48T1v6LAm8hak4eZKrBLnwzFPzldFzjFDxxhcdzq+ep/5ZhXHCBWDMoUaq+KhjQos7W+TinAbpNV27LkApTpaRItOOsaTZGTeSgAjkoeY4aRyoT/vvA6w8B541U84HTV4jsmz37WxAqnq3W3zrDmWFnBW3IiEYkJJw98vI+/EeL1CzzN8rBOpz6x7HOYkJitH8Yma5bGK6aC/cU8Pv65lP4K2FoP1MSKTRyIn0FQpeECvqtYARm4unnz81twXu1lCDs+jIVc7yio/BGiKkYnDSTgOMWN+FzUTpHw23K5gNlZ5aEibCjw259GbHJbcAE972Q/L2bz368/387ev//j6+fldPi3uL79dPXtxTgxUzaaEKmoT2kzV2HT+MA1mwgLTVEWD7PFNWa4Zx96aBdYlxXD8yle3swXr0AFIIjWatg0Ssc01lMWByFSTTuGTaN34OggWdIpQelt46Q/z7lyKhnsXsh3Ut1w/G79bgzfbAM5GfBMBdTWM9DGNhGaIFNKIfMFrCr2vH4pGwnTyeQorzAOfUIR4KSweZjkFLm0/jBpAo9ixaPBY1ScNDxyQ8Ov0vadDbGmdD8O7HtGfe3DFfs/CrGnYOQfceI0KSMwG5/uzF5jK3QPIq1siHLUtsK2r153nRz/1bAX4a4z3JNXtBESrdZddi8k0fSODyK3PGcnCt6Tbno9Pnp5nKn9w9USM6QLCe+ShIcHyX5vMoeT3I+13UOQ7y57IqRt+wui647+venJiONd0XvLCNdd1/0D2/CLEA== +api: eJzNVlFv4zYM/iuCnu4Ax+4KbA9+Wrd2XW/DViwd9pAGg2wzthpZ0ig6uVzg/z5QttOkXdvdhgHLQ+KIH6nvo2hSe0mqDjJfyFt0K21ALhNZQShRe9LOylx+B1Q2EAQ1ILSt9EZXnTJC25XDVjFIuFW0GlfXUAltRRcABTnhne+MIojmcQfhVQ2pTKTzgNH/ppK5vAaaKCQSIXhnAwSZ7+X52Rn/nLL6BahDG4ad/MGxdJbAEuOV90aXcYPsIbDTXoaygVbxE+08yFy64gFKkon0yHRID1uuNAb63aoWjrCBUNtaJhI+qtYbXvqgLMg+kUb9Lfili2holTavIx8qB18zLHVYsw86M1AbfRSi2slEaoI2PI/V94l0WCurP8UMvECOYYdNT2UP2k6kRf4H+k84HiguZAUbMJxOLqa/YCHnBMYoFBe6Ym2kKYqezr/nTyIDlB1q2sl8sZffgELAi44amS+W/TKRLVDjuHJqiAeo2CSzx1oIgBvAEN07ZMaS/aawc66FIafHwR8z7PUPwCk+LbwPv91x0VVi5VCojhqwNJZZIoKuLVRiq6kRyoqr+fmXXwmPesPvwBp2XPZjDng3h2Ni+CA5eAOqAozHwu9XZDMmZ8rZpQ5FhwFasCRujSJ+DcXF7Y1MJMsdWJ6nX6RnnIOubRXuZC7vGhCvx3g3v7x9L3QQSpBzRhSdNhRlHp9h4Pe6VWsQRWfWwqsdR4mrStToOs/tAKHUXkeD23AvONrdAm0drtNnqf3/Uby39/au0SFuaYXzYGfBdVgC9xxuHYIaRWweqDgryPmpIT4Jlwhlq2goXQWiVFYUIFaus1V0bPiPMW6rbS0QvAuaHGoIOfOYiUUY4mXj76w6StLMj0maFapcg62W7xoiH/IsqzU1XZGWrs0+K8L7XETxByo7wf1VaTtMgxEWVWm7QhUIu5I6HAXyudBbZ5p+hrIVxvb+b6RNId7StoVCTNh/rKYB087KRiGFVykf4TJCgKxV2mbjwqt63pLxPZhWxECRfwXeuB2X15tKRBcYt+4KQAsEIb3nNkWAbfh5NQfc6JL70iRrpMmzIIugmVvNwghLpNEl2BCnzNQAvSobEOexTw39mWPlWbbdblMVrTHa6BqyH2++vfppfjU7T8/ShloT+6R3gVpljwJfA4nHq8RJi9k/XhD+u3vNOD8IPlLmjdKWZ1wUuB+n1EL6x9tW4wLx0n5fqAC/oul7Xv6jA+7bi2UiNwq1KngKLJZ9Mg0JHmtr4NZ+UZbgeQZulOmG0fXk6nMyL6+v7mQi1bNpt47Tbnzg6JPJ7o5iP51bAwX+7pMXXPb7YZb2/QE/mF70GCVOaE7hsu/7PwGOS8iP sidebar_class_name: "get api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/list-all-disbursement-receivers.api.mdx b/platforms/stellar-disbursement-platform/api-reference/list-all-disbursement-receivers.api.mdx similarity index 89% rename from platforms/stellar-disbursement-platform/api-reference/resources/list-all-disbursement-receivers.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/list-all-disbursement-receivers.api.mdx index 5b54882cd..c5fe998b1 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/list-all-disbursement-receivers.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/list-all-disbursement-receivers.api.mdx @@ -1,19 +1,19 @@ --- id: list-all-disbursement-receivers title: "List All Disbursement Receivers" -description: "Fetches a list of receivers within a specific disbursement using the disbursement ```id```. This endpoint supports pagination." +description: "Fetches a list of receivers within a specific disbursement using the disbursement `id `. This endpoint supports pagination." sidebar_label: "List All Disbursement Receivers" hide_title: true hide_table_of_contents: true -api: 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 +api: eJztWm1z2zYS/isYfrhp5kSJ73qZ6dwplpw4sR3HsuM2qUcFiaWEmG8FQDs+j/77DUBSoixKtmO31970i2WSu4tnF4vF7gJ3msAzrg2+aCPK/ZxxiCERXLtsaQR4wGgmaJpoA20fRDAHjjCKKBcoDRGDAOg1MI5uqJjTBGHEMwhoSANEasJQzmkyQ2IO66/Rr5SgX9vobE45goRkKU0E4nmWpUxwlOEZTbAcva21tDQDph4OiDbQDikXwyiqQz6t0GgtLcMMxyDkw+DLnZbgGLSBRonW0qjUJcNirt1X8GAklZIo62K1lsbgt5wyINpAsBxaGhe3kZTHaZxFoLU0+JZFKQFtEOKIS4JgDjHWBneauM0UpWA0mWmLRWsJJsMzqOD8lgO73cBzNgdpA0BJHvvAkEhRKOegvQapGrLEFKYsriMqEd8HVIjcADSNaEzFw7BKRIUPpIxwCY6ByFmCMmAK9ovCvJSyeJYmHLj8bhmG/FlHNlx6Zn0CUd0xgjQRclIHdxrOsogGyqU6X7kUcLcJIPW/QiANkjHpgIIWw69c82HaBL6JTVeQumPlPgPtX9JcP9r/WM3Aj5a2kHLg+jGc5iYnnhWDl6w0ETADVuftLVqaSAWOdpOZ3kISUqHGO1npvWhpBIu6rTBjWLoLFRDzh+1CyW7dILCx2w0M3fU8Q3d8F+s47Ho6DjAJur7R9/u2RAExptFuUVWg+rckbadspmw0TxOYlh62k/2fpuu6lu31nK6rRvwmgCU4mj6kQs6ZafUNw5RcFYjpDY4iEM83UM+wDdskjm4Sw9GdXrev+x7p6yRwPccM+/1eD+oDP39Ew+qDBcTQQ/A93QkcQ+/5Tlc3eraHe27XMbGl1f2lWnqHVCgoL6W6iwnuA3F1x3Wx7nR7lo4NAN30jK7XBYOAr2xehLZdkj5Rn+FEoCHnlAvJM09jUMF5J99ciIwPOp3rgh9nWTtI4zXlL5SylepcQBRhNsWEMOB8t/Q3ez8N39k/vbM/vbff7b+1Px6N9j9M3h9Zx0dHn19PPtifDs688fnJx4vJ6MJ613WOLPv0dHJYHyiGOG3YgtYJpsXXBqqAARZApviB4GUZlq0blm7YZ6YxcNyBa7YNw/gsZeQZebYMmlzTJ8nob8qIMBdTHvMpL2P/fTHr+4igMXCB4wzdzCFRGUG1hpAUVT0RhBM0OZog7Ke5QEKmMaWHNyEzjU1kKgJPM3xbJF27NSwie0E6rTA8gifENALyyFGMImTEmCY0mT2NqUA0xXGar7M8cWvAnIOYBioz2DXs+WS0J0cu6Cnn+UOh/M3r1yOne7DvHV687550j0bjT5O9i9Pu6OT84pN9/LM9Ovs4/rR/6BwPz5zhx7f258PD/cOh26Df7oFMw2gbxlo8GBZsC7UEscibbZrksUrGT4f7Z1pLOx0PRz+r3zcHk7Px6XiktbT9w+GbN+ORzNHvR1peRJ1JMcByqOmccpGy2++fkz8Q8nL9NY0mM0cZC2T2AbokfWixfW7cktZGfVtYZ5wIdqstmsgL6toKfP4mRkhoWaHr6rbl9nWnZ1k6dsDSAzBM23b6/W7oKO/e6m6biXlBW9UxFdQmx1ztA4LhhONAStmS0WyOs6qVatyIFsFyUghGCYiblF210YFAAU6QDyjnQJCgqWQLruogtzCXteOX6vUh9lOG5WRd/lDtwdHyXbvUSeZ4nVctlLIl5/ibnJoVU0UJ6n3nVXs9oPm23Sdm0OsT23TMnuf3TKcbWDh0gr5KPXyf+AHpYoJ7xLR7nm33ja7n9H21eVIWRFBYNgQ2lXUQcPFo8+4pflTxo5IfHYyUMSlHaRLdooyB3NFW21RlyxvMUYwJlNYrxK1r2HWw1/M9rNuh19Udy/F1v+cbOrh9G5t90nU8u+4ly/q7UYmdMW1Tv4K2wU23hJKT8fHo4PiN/G94PlEBZXK+tzeeTGRoGR4crkeWk0LgE4LgvUIyQXg2YzCT2cuyqIxBYFnyoGK9cySLyWKbVGoUg8gOSUKKpbHMI9JwOUd8qX0wx8kMOEqDIGcMSPslgvGfxtYxcN6YRb9QgK/liusBfg3QemDfTaRK2nrn5zsj/OYU5An9LQdECSSChrTonNxvh9VVz3PVq1ppHbimj03i6q5FbN0xrVDHbj/QPQhti7h97Dv2roKnoYWDY9gCo7ZF1T7oX/MEdKu/e61v86rJ2fD0TDnT0qv2PhydHI7P1t2p3rlZ+dTuYmRTOUUvd6S1JbjL4ruczdNt48wwB5Y1cLvtnm32u+4j6ptNWKp4KJheHlmvbZuea95bDXV7VqWoSpefn7+EIYbA8W3d8XxDd4jv6NgJHN0LbNfoGW63a6i8eVsefy/mSlBI0Tal+NuT+yYxBTWqau2XqgB2u+F3Ba6HnOg7hRKI4JlCvVKouwqxmx5dpWXKpdDSkZYlj/K0v5tffze//qDm15+la/WHVctbS9XK9H+VmLWZnP1F0TedSa73FJoo6icritgxzM0TrvME52KeMvofIC93mgWMpQ1ba3HSwfD31CPVwV1L214HKDWXhl3C0I5TgdbUXKGoxnEMsyb5PsfvKbiYGntzavZT5lNCIPn956VZuxWARxAUajibakiN99M8+f92r7DUsMkBnLoDrB0kJ0vO31m2Es8hyBkVt+oGw2vADNgwF3Nt8OVSHofHIOapvAoxU8cN6kbDQOvUqwjeuaNk0WG1828O7Lq6FZGzSBtomhRWjTWRU1rYvD7iql2S0few2S95d3FWdPbClKn1IuvcwltaiNNZAkRdEZHnJeOJ5XooY/RaVkFXcCvbHuUVhGG51Io4WN5CmAMmxVUFjSZhcaRVBtIq+1yz5EmEhYzhaHhyoLU0qW6B0mqbbUPaII9jLLtAaxlss4wfJqOTV7LfhpFI0wj5OY2EUjNlM5yUUNX1hxhfAfLz6Krqsai3GM1YmmflVQmaUfUhlUdJTa3SxrLxzwXxl+SXRN3YkUMmKM0g0XmaswBQxlK5fpGYY9WkLKDIMjxdlrn3xLWW3TJZ+lVtYrUSFONcPkRReiO7bAyylFORMgp8IHHo6EuZWlb9XH2tZZGVRtJ9HFxBQlbt3xkV89yXaWvnSRJeDYrrSksot1UbkCuwJZnSiiYhw1ywPBA5KxWU8yIemtP2EzQLmYrSz1GtEvGQbjfgo4r2u7WZQxTrwRwzwXdCrtF1BAPoyBPJTvlipz4PqfEWohgpQQo/gSxKb6sm7u61VrTTr3IfWAICePsXGaYEsJh/CCfArmlQr4/qpxGKSE9DnZdkLS2iASRcbSBVAMxwMAdkqThVxGcpa9Dp3NzctLH6qqSVrLxzeLA3Pp6MdatttOcijlSczFIuYpzUBMv7cmgYRdtvRq2FnbvV3v+/vvdX7jwCvolOFmGqbh4p09yVm96XtTal1GWguqerfe9SFrZcSNK7Ox9zOGfRYiFfF1fc5G5IKMd+VLuqttUgu+7lNaK9gtvVhb9rHOWg9t3WUwd97K27B0AsL/mtoFzKB0Yllica44fT8orfK7T1/mQjniqjSG7rSCqclGiLS9mPKDZ/ian4MAwCyOrgNzLTteTozVjW2Hgji7lSWUz5j5TeCOd+PlJAkH/l5DWy3N0VOdJisaQvPm3lKFVcai41WCwW/wWjeKZU sidebar_class_name: "get api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Fetches a list of receivers within a specific disbursement using the disbursement ```id```. This endpoint supports pagination. +Fetches a list of receivers within a specific disbursement using the disbursement `id `. This endpoint supports pagination. @@ -97,12 +97,12 @@ Fetches a list of receivers within a specific disbursement using the disbursemen
      @@ -487,7 +487,7 @@ Fetches a list of receivers within a specific disbursement using the disbursemen required={false} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","example":"2023-02-10T10:45:51.000Z","description":"timestamp when the receiver last received an SMS about this wallet"}} + schema={{"type":"string","description":"timestamp when the receiver last received an SMS about this wallet","example":"2023-02-10T10:45:51.000Z"}} >
    • @@ -736,16 +736,16 @@ Fetches a list of receivers within a specific disbursement using the disbursemen required={false} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","deprecated":true}} + schema={{"type":"string"}} >
    • @@ -858,7 +858,7 @@ Fetches a list of receivers within a specific disbursement using the disbursemen required={false} schemaName={"uuid"} qualifierMessage={undefined} - schema={{"type":"string","format":"uuid","description":"The unique identifier of the disbursement","example":"c51ba1d5-52d3-412f-a59c-6ef32d59ab43"}} + schema={{"type":"string","description":"The unique identifier of the disbursement","format":"uuid","example":"c51ba1d5-52d3-412f-a59c-6ef32d59ab43"}} > @@ -968,7 +968,7 @@ Fetches a list of receivers within a specific disbursement using the disbursemen required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -1155,9 +1155,9 @@ Fetches a list of receivers within a specific disbursement using the disbursemen collapsible={false} name={"status"} required={false} - schemaName={"string"} + schemaName={"ReceiversWalletStatus (string)"} qualifierMessage={"**Possible values:** [`DRAFT`, `READY`, `REGISTERED`, `FLAGGED`]"} - schema={{"type":"string","enum":["DRAFT","READY","REGISTERED","FLAGGED"]}} + schema={{"type":"string","enum":["DRAFT","READY","REGISTERED","FLAGGED"],"title":"ReceiversWalletStatus"}} > @@ -1169,7 +1169,7 @@ Fetches a list of receivers within a specific disbursement using the disbursemen required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -1190,7 +1190,7 @@ Fetches a list of receivers within a specific disbursement using the disbursemen required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} >
    • @@ -1219,7 +1219,7 @@ Fetches a list of receivers within a specific disbursement using the disbursemen value={"Example (from schema)"} > @@ -1239,24 +1239,7 @@ Fetches a list of receivers within a specific disbursement using the disbursemen Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,42 +73,42 @@ Fetches all disbursements the organization has created. This endpoint supports p
      @@ -334,7 +334,7 @@ Fetches all disbursements the organization has created. This endpoint supports p required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -510,7 +510,7 @@ Fetches all disbursements the organization has created. This endpoint supports p required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -538,18 +538,18 @@ Fetches all disbursements the organization has created. This endpoint supports p collapsible={false} name={"status"} required={false} - schemaName={"string"} + schemaName={"DisbursementStatus (string)"} qualifierMessage={"**Possible values:** [`DRAFT`, `READY`, `STARTED`, `PAUSED`, `COMPLETED`]"} - schema={{"description":"The status of the disbursement","example":"READY","type":"string","enum":["DRAFT","READY","STARTED","PAUSED","COMPLETED"]}} + schema={{"type":"string","enum":["DRAFT","READY","STARTED","PAUSED","COMPLETED"],"title":"DisbursementStatus"}} >
    • @@ -636,7 +636,7 @@ Fetches all disbursements the organization has created. This endpoint supports p required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -748,24 +748,7 @@ Fetches all disbursements the organization has created. This endpoint supports p Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,42 +73,42 @@ Returns all individual payments matching the request criteria. This endpoint sup
      @@ -307,16 +307,16 @@ Returns all individual payments matching the request criteria. This endpoint sup required={false} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","deprecated":true}} + schema={{"type":"string"}} >
    • @@ -429,7 +429,7 @@ Returns all individual payments matching the request criteria. This endpoint sup required={false} schemaName={"uuid"} qualifierMessage={undefined} - schema={{"type":"string","format":"uuid","description":"The unique identifier of the disbursement","example":"c51ba1d5-52d3-412f-a59c-6ef32d59ab43"}} + schema={{"type":"string","description":"The unique identifier of the disbursement","format":"uuid","example":"c51ba1d5-52d3-412f-a59c-6ef32d59ab43"}} > @@ -539,7 +539,7 @@ Returns all individual payments matching the request criteria. This endpoint sup required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -726,9 +726,9 @@ Returns all individual payments matching the request criteria. This endpoint sup collapsible={false} name={"status"} required={false} - schemaName={"string"} + schemaName={"ReceiversWalletStatus (string)"} qualifierMessage={"**Possible values:** [`DRAFT`, `READY`, `REGISTERED`, `FLAGGED`]"} - schema={{"type":"string","enum":["DRAFT","READY","REGISTERED","FLAGGED"]}} + schema={{"type":"string","enum":["DRAFT","READY","REGISTERED","FLAGGED"],"title":"ReceiversWalletStatus"}} > @@ -740,7 +740,7 @@ Returns all individual payments matching the request criteria. This endpoint sup required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} >
    • @@ -769,7 +769,7 @@ Returns all individual payments matching the request criteria. This endpoint sup value={"Example (from schema)"} > @@ -789,24 +789,7 @@ Returns all individual payments matching the request criteria. This endpoint sup Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,42 +73,42 @@ Returns all receivers matching the request criteria. This endpoint supports pagi
      @@ -352,7 +352,7 @@ Returns all receivers matching the request criteria. This endpoint supports pagi required={false} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","example":1}} + schema={{"type":"string","example":"1"}} >
    • @@ -825,7 +825,7 @@ Returns all receivers matching the request criteria. This endpoint supports pagi value={"Example (from schema)"} > @@ -845,24 +845,7 @@ Returns all receivers matching the request criteria. This endpoint supports pagi Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -59,8 +59,8 @@ Allows credentialed SDP users to log in to the SDP dashboard with a password. No className={"openapi-tabs__mime"} >
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/patch-organization-circle.api.mdx b/platforms/stellar-disbursement-platform/api-reference/patch-organization-circle.api.mdx similarity index 71% rename from platforms/stellar-disbursement-platform/api-reference/resources/patch-organization-circle.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/patch-organization-circle.api.mdx index 60196eed2..b5af67cc5 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/patch-organization-circle.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/patch-organization-circle.api.mdx @@ -5,15 +5,15 @@ description: "Updates the Circle configuration for the organization. Only accoun sidebar_label: "Circle Account Setup" hide_title: true hide_table_of_contents: true -api: eJztVk2P2zgM/SuEDtsWcJKi6PaQW+YD29liO0EnxaIYBAPaZmJ1ZMmVqEnTwP99QdlJ3Mxs28MeN4fEkUhKfI989E6VFAqvG9bOqqn62JTIFIArgnPtC0NQOLvS6+hRTGDlfNp0fo1Wf0uLY7i2ZgtYFC5aBrex5ANU+EDQkK91COLJDkoHXOkwhveOaQraplAr7QMD6/rkrAzQGFhpMmUA9AQ12hLZ+W0GeWTAFZMHzaAD5ET24E0lIIMhDAzOFpTB1kUo0IKnxmBBgBC0XRvqoos1pguMVaZcQ935V6WaqjlyUV0Pku1QUZliXAc1vVXDTZWpfn+ZKU9fIgU+c+VWTXeqcJbJsjxi0xhdJI/J5yDA71QoKqpRnhovV2BNobPVd/eUIvC2ITVVgb22a5WdULc4UjabX8E9bWGjuRpQEISD+fXNAn6DPy4XwB5tWJEPqs3UBo0hvtPlr510dQFuNSyTDRpiWHlXw6YiTx210ZYBNtoYyAmCpN/K5zTik6XGTpxiqshSdXhqT6Waso/UykJonA0dTq9evpSfX4jbR4QQi4JCWEVjtir7dX56cFz+mQpW2QlfNYWAa3oKRfqKdWPoJ/fqEGoz9fqpjM6whA9dYf13dybvnf857xfEqE0AzF3kxG/n2Epq7DE8PqltB2kfDlJX9gGNLkHbJrIauqeGvFs5p6bHZ+nwA/tZv56jP9jk6MESlaEvGrSgLdOafI9mm6lARfSat2p6u1NnhJ78LHKlprfLdpmpmrhy0vGNdLxAhLKpJkOlmxSJuFFHnDoGvRGkOzCHoQ9wYKPfkVSZxVr+y7bzR9XQgm9FWJJ/BPuffy8gBiqT9mLkiiz3TGcQ9NpS2XU6Wri8efX7G2i8fkAm0YCxsHOGQRcnN6qYG0kgXVxNVS42j85OnvB2sZjD7LuT+xMhx0BvXo/IFq6UnkqVI9LwbHbx19X7u9n5+fXH94tp/29+dffu8tOzcSoMKdMPR5G8PNbJQfSOpTjQp/1iK7itXEpKc2qsGyZj0MOFDnn0gWqyDHODvHK+Fl1UmXogH7rsnlS2H4d4fnMxfyH1iMDOGcijNpyYGdZJqsMa7wnyaO6hwa1ESasIa+9iIxB5KnSj04Z7oG6u7k+3xBvn78fw6TC6sITaeerbL8oE61wu5nArkrt8LqSG6WRS0gMZ6fAwDl3AsfPrSemKMCmQae38dhIDjbiiUW8xKgcJj5o+4RepgBoXuMakKX0B7ydNP/NviGNzCudg5v3/YpHtG4/pK08ag9oKstGbNPOT2Nwq9/3LxPdys8xU5QKL3W4njffRm7aV5S+RvAjbMlMP6DXm0gy3yzbba4poXtdQ5x0lo4XcRsxN7ATqZHy02d5jVhTU8A9th/o5ny3O36pM5f17T+1KcfK4kRmOm67vXKqRJJhpbacM2nVMk1N1QUUi8JGM3icZ7R8krf2W3Q6ueKqvXSbyLXk96bLbdSLdtgf7butfPQ563VkLocu2bf8Bed35Fg== +api: eJztV1Fz2zYM/is4PuzaO9nOctse/JYmuTXbrs3V6e0h9fUgCbJYU6RKgnE1n//7DpRsa2mWtFsf9jA/2DIJgPgA8AO0VYyroOa36rVfodV/IGtn1TJTJYXC6zb9nau3bYlMAbgmONe+MASFs5VeRZ80oHI+bbqRmSm8tqYDLAoXLYPbWPIBarwjaMk3OgTRZAelA651mMIrxzQHbZOpSvvAwLq5d1YGaAxUmkwZAD1Bg7ZEdr7LII8MWDF50Aw6QE5kD9pUAjIYwsDgbEEZdC5CgRY8tQYLAoSg7cpQb12kMTkwVZlyLfXnX5Vqrq6Ri3ocsz4qKlOePkYK/MKVnZpv78Xxwdixg5wgphCXKlOFs0yWRRvb1ugiic0+BDGxVaGoqUF54q4lNVcu/0AFq0y1XpxkTaHX1e/X1I0EA3ttV+p+cm+OST27voI1dbDRXI+SFMTH69eLG/gOfr68AfZoQ0U+qF2mNmgM8XtdftlJVxfgqnEhbdAQQ+VdA5uaPPXJj7YMsNHGSGyChGMnnz6+2lOp5uwjpYXQOht60KcnJ18Y9SHeEGJRUAhVNKb7dsFvKARc0UMhoU/YtIae8KuHu8vUDw8heoElvOkL7dv5TN47/3QSL4hRmwCYu8gpWb3iTqCxx/DkSQnXIQyHg9WVvUOjS9C2jazG5tJ9fF85p+bHZ7ngh2rIhvUc/UEmRw+WqAzDFUML2jKtyA/R3WUqUBG95k7Nb7fqBaEnfxa5VvPb5W6ZqU+TwpW0IjsZ7vUkd2U3sdgIPHnu/SSb7kmyki7do5qZukMTDxbkoIa4dsIsrTCLRAzFCzUbM+qsSBUz6StGiff+Tq6hHBu9UXOVjO1BLSTzfXLH0A7pwVb/St1nGf7l9xuIgcrE6hi5JstDUWUQ9MpS2TMEWrhcnP74E7Re3yGTcIdw5RAeOc35fVPJlBbjNWGZEpApKdA3R7q8PFbEgbuORTiimf3iTkxWLgHSnK7UgskY9HChQx59oIYsw7VBrpxvhN4k9uRDD/R0+v30RMIYmwZ9NzDU4zaeLS6un0vpIbBzBvKoDadIjTOVSq7BNUEezRpa7MRKWkVYeRdbYUFPhW512nB31HfQ/emWeOP8evogif63XHxn39mbWod0pAXXkp0EF31B0HonDABcY9+Qkyup6bX7PnDPXAZoy7QhFyj155ygctGWSVG6gzPGbbRdSed2QbPzmsJc/JjAbejtzYbfSTkK0qQdgjTJsViTLZfPauY2zGezleY65tPCNbOvsvB8Dgn8wZVOGJ1R235eGsQSKm0rj4F9LDj6AeB+dHo0p9OvQFb51A/+DbS9iaewbSiHvew/RlOTaSZFjZ7Doy6P5GbsiWYNajsbFh7F8xSMl2QaSIaS/yW1xnVSXk8igSgTI6xjTt4SU5i+E6Zj8k14XS3I3+lCeGkPa3Bz6vxqloQmrpqEQSxTRhdkQ6LAPYe2WNQEp4mneooXW/PZbLPZTDHtJmuDapj9dnV++WpxOTmdnkxrbkyi2tYFbtCODO8nvmE6XxDH9j7XbI+jxf+vANm+azJ94llrUFvpQCkn26Fd36oxehnN/tKwl5mqXWCR225zDPTWm91Olj9Gkv5zu5TRwGvMpZvdLnfZvl8eB4vzPiWTG/HmOEl8Nvntsr3GWVFQy4/KjieQ67Ob85cq62cTmWVdKUoeN/J6gxuZMuR9iPuJZ9uvbZVBu4pp6FW9USk8/GziWKeJY3gQWPst241cvD879EjkW3A9qLLd9vPMbneQ77f+VmOI7V5aErrc7XZ/Ai5DXfM= sidebar_class_name: "patch api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -253,14 +253,44 @@ Updates the Circle configuration for the organization. Only account owners have > - +
    + + + + extras + + object + + +
    + + + +
    +
    diff --git a/platforms/stellar-disbursement-platform/api-reference/payments.tag.mdx b/platforms/stellar-disbursement-platform/api-reference/payments.tag.mdx new file mode 100644 index 000000000..2bf2d0811 --- /dev/null +++ b/platforms/stellar-disbursement-platform/api-reference/payments.tag.mdx @@ -0,0 +1,20 @@ +--- +id: payments +title: "Payments" +description: "Payments" +custom_edit_url: null +--- + + + +Endpoints related to payments. An SDP payment is an individual payment from an organization to a receiver. Each payment is part of a disbursement and occurs on the Stellar network. Granular payment status is stored in the SDP database and can be viewed in real-time on the SDP dashboard. There is no POST endpoint because submitting payments to the Stellar network is handled by the Transaction Submission Service (TSS). + + + +```mdx-code-block +import DocCardList from '@theme/DocCardList'; +import {useCurrentSidebarCategory} from '@docusaurus/theme-common'; + + +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/profile.tag.mdx b/platforms/stellar-disbursement-platform/api-reference/profile.tag.mdx new file mode 100644 index 000000000..7f8a1db9f --- /dev/null +++ b/platforms/stellar-disbursement-platform/api-reference/profile.tag.mdx @@ -0,0 +1,20 @@ +--- +id: profile +title: "Profile" +description: "Profile" +custom_edit_url: null +--- + + + +Profiles endpoints manage the process of getting and updating individual profile information. Profile information is set when the account is created and can be updated by the user on the SDP dashboard Profile page. Note: profiles never refer to receivers of funds. + + + +```mdx-code-block +import DocCardList from '@theme/DocCardList'; +import {useCurrentSidebarCategory} from '@docusaurus/theme-common'; + + +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/provide-signed-challenge-transaction.api.mdx b/platforms/stellar-disbursement-platform/api-reference/provide-signed-challenge-transaction.api.mdx similarity index 70% rename from platforms/stellar-disbursement-platform/api-reference/resources/provide-signed-challenge-transaction.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/provide-signed-challenge-transaction.api.mdx index 54e6b6d69..e7ebb3363 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/provide-signed-challenge-transaction.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/provide-signed-challenge-transaction.api.mdx @@ -1,19 +1,19 @@ --- id: provide-signed-challenge-transaction title: "Provide Signed Challenge Transaction" -description: "Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the ```WEB_AUTH_ENDPOINT``` variable." +description: "Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the `WEB_AUTH_ENDPOINT ` variable." sidebar_label: "Provide Signed Challenge Transaction" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the ```WEB_AUTH_ENDPOINT``` variable. +Allows the wallet to post the signed SEP-10 challenge transaction. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the toml file under the `WEB_AUTH_ENDPOINT ` variable.
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/refresh-token.api.mdx b/platforms/stellar-disbursement-platform/api-reference/refresh-token.api.mdx similarity index 76% rename from platforms/stellar-disbursement-platform/api-reference/resources/refresh-token.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/refresh-token.api.mdx index c3aa7ad8e..d3c3a7699 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/refresh-token.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/refresh-token.api.mdx @@ -5,15 +5,15 @@ description: "A user’s token expires after 15 minutes. This endpoint handles r sidebar_label: "Refresh Token" hide_title: true hide_table_of_contents: true -api: eJztVV1z2jgU/SsavbSdMRDSJJ3wRr5aJ8tHA2kIDJOR5WtbYEuKJAMu45n+jf17+0t2ZJuEQNPZh+7LzvIARro69+rcc4/XWIGWgmvQuLXGhwcH9scHTRWThgmOW/gWTKq4RgRxWCJCKWiNjJgDxw6OgPig7OHcwVRwA9xYCCJlzCixEI2ZtjhrrGkECbFPJpOAW1h4M6AGO1gqIUEZVlZRYr+EaaMYD3GeOxhWJJExbEVhyK4j7zNlPXZ9dffdbXaZq11+e0zP3RN3Lkffzq9P65BdN+nht8ydyU9uEs/dmWD+qBtT1pTjc1e7yTfzcB9ruz6+b0bkftUuf5fpw+GpcdmS0eRUj0cd1ovNJzc5jrz7O5t06I/OYsrHkh6eZi5v+sFgycajaOnOxKo7o83e8CHrDb9+DL7Wj8az0+xsRKMaS68ermpz+ngZfemvZnIpHyHs9P7weosjb3zTa3auFjS5DMfHnXj0pfnYDMZBeLci3TPaOfdvOyedz4OnG0GXn3l7m5mCwE1P7fOCxOn/fO3yZT8OPvqZ3M+Ij27hKQVtlfmbJA1KCbUvaWcn9wUYwmKNiCdSg0wEqDxY9Ncoovcz7UxFlQi7fEFi5iPGZWrLeTkeMIj9x0AI3Hp5RkwjBU8pU+Bjp1r3iHqO8YhCHMC3k488QIQjxg2EoLbYbO6zecdJaiKh2PcC+N+wize4/QVnuwjaEJNux/E08aCgPQGtSQg/c6M3mO8Kg17d+aWKTZ6jg+YW8u6J/B+N8+9MVzXQUlK0wPUL2w8U6AgNK6d/3dc2SjWov378Wb0KEKwkU6ARCQwo1DxGCeOpAV1Hw4hpBNyXgnGDIsL9GKzaCnjGw0LnO2hLZiI7Aj7TKpWmimLKpgHFgFOoI9dY2RrFwhAU+MUhxgu4jwc1DVRwu8h9sUQeBEJBsfeq3jp2sCGhxq0JbqcmAm4qHeKpgzXQVDGT4dZkjc+AKFA2CLcm03xqOTWRsFxJUZiFJHYPN6q71TYvyQ3MwCq67Ok22LO0iGQ3kGEHc5LY/+2qS2U9DmaW+XKE9hpyfT+0JPooEKpo78tNHKRZyCuC7OReDg6PT5BUbEEMoDlkdSv1M6IZ3akoMkbaCxSF4xb2bMxe7uIk+jIc9tFrDquMyCMaTo5qwKnwwUflCCERoHfti47bfWyfn/fuusNW9a/vPt5cPryrF+bGeCCKipixg4YHBuKYKHTBtJcqDQlwg/oxMYFQCWr3XezgBShdlrZX6zAC9GuI94OL/gerLIKMEDHyUhabglahQsKrdhRGmJA5IC+N50iSzKIUqwSFSqTS3k8BZZIVG2IBqtDfJjsHsxRqXkcPIkWUcKSA+CixMi39P9Wb6Rhc9NEkAgXT97YjutVo+LCA2E6srusSsC5U2PAF1Q1KDIRCZY1UQ81EUKsiav7WhWuyuvCHovtWwgkpjLdS3y8NYP3i3v8tLyh1b2BlGjImjFtuUhXbG5fjPcGvx3vq4MiOf2uC12sr9DsV57ldfkpBWeuYOnhBFCOe1e9kmm9eg4WrzCGzFFIK0lpI5e/7L8RXftPvDYbYwWTPPuaFfVQPFn6zxbMt8F1fKWuw37nzxpH1ujSnPH+OL7fePPHsU2W0ZXKa5/nfMJBc3g== +api: eJztV+FS2zgQfhWNfrUzTkJSaAf/AwqtaSGUhAJJM4wsr20ltiQkOcbNZKavca93T3Ij2YEALVzvrjM3N/cnjqXdT7uftPvJC2xIorE/xjuFSYEbRolhguOJhyPQVDHpXn28gwoN6vdvv2lkxAw4ghvJFGhEYgMKdbdQznhhQLfRMGUaAY+kYNyglPAoA40UxAp0yniCTAoP0UpmUlEYFDGtCmkaK6bsMqAYcAptFBjENDKKJQkoiJwT4w7u1UZLAxXcDvJIlCiEWChwc/fibWMPCwnKpRlE2MendWBDa4U9rEBLwTVo7C9wb2PDPu5TcQqmUFwjgjiUiFAKukkDe5gKboAb60WkzBo+O1NtXRdY0xRyYv+ZSgL2sQinQA32sFQ2LMPqhWu4OzNtFOMJXi49DDcklxmsWWGoDtPwHWV9dnhw9jXoHrNAB/x0i+4Fr4OZvPi8d7jdhuqwS3ufq2Aq3wR5NgumgkUXxxllXTnaC3SQfzaX55m246PzbkrOb3bqZ1lc9rZNwEpG8209ujhi/cy8CfKtNDw/s4sOo4vdjPKRpL3tKuDdKB6UbHSRlsFU3BxPabc/vKz6w0+v4k/tzdF0u9q9oGmLFQeXB60ZvdpP35/cTGUpryA56n8M+/PNcPSh3z06mNN8PxltHWUX77tX3XgUJ2c35HiXHu1Fp0evj94Nrj8IWr7jO/8z8wQzlpvN753kXRKhU7guQJt/7uiCUkI9ProPG8pbMIRlGpHQ1r2t09rR7aNRRD+70vLBnjcL44DPScYixLgsrNMdXMwgi65iIbB/99/2FAXXBVMQYa8ZD4m6tQmJQhwgskWOQkCEI8YNJKActzW73cfsnnFSmFQo9tUB/1p6/zxtWBtiinU7XuQhOOZz0Jok8L3G8wOyj4VB99K8i2K1zuZGdw35ocevBHbYGmihmKmwP17gXSAKlBU77I8ny4n1N6mwOiCFqwJJ7BzuNHrVWjV2DWoOSjuUQmXYx9i6r9AHdvtqftfXuOWRSPYBqkdVcHg+tFIYoVgoF/ydBntIs4Q3MmcP3f6gt/UaScXmxACaQWW1jJPcwu80edfq7WFmwVMgkTuk9j0WLhpmLM14YCDLiEJvmQ4LpSEHbtBJRkwsVI52TgLsYZtuHWWv3W1vWA6KPCeqwj4epoCexngxeHvy0tYWQUaIDIUFy4xLU6iE8CZUV1M5mQEKi2yGJKksihslKFGikEjESAFlkrkJMQflusVqdQ6mFGrWfkTtvy/EL/wLd5cjuyRHQgJvaVEoCkgqYWsVmZS4S04diuDICAf/HTgPER65CSoiQJRw25xiUfDIOab2JctEaS9TCqTQzAjFQPs2jhYa6xqv0zxb0RpJLdmQ1AoJnQGPJi9SY6T2O52EmbQI21TknZ9CeOnXN8PbUCpkWyJhluEUUGPmsmI8VkQbVVBTqCZBuy/muT1t/0RmsXId+e+ktoJ4LrcSQrSy/cvZpJDlLZoSZfSTIa/ZdYwC6OSE8U4z8GQ+z6XxHrIcOSAXfwQyE9XqRv90rRXa2s2KEBQH+5nwxbYpAyrX/XgAas6o7UurtJow20IlHWfUEnFLN2YezhgFrp1erBqgJDQF1HN9qu7PFsvvdMqybBM369AaV935GOztHw/2W732Rjs1eeb6pBWBnPA14ObzAK2+D+41mcWdqv+nvpAa0TJwYzoyI4zby4FjddEI5BjfF8iJh1MroP4YLxYh0XCmsuXSDl8XYCVjPPHwnChGQitA48nSW+mTVdQZWFXZoRSkFeE5yYpaNR9clO4p9kl/MMQeJo+UduaUtvlj4VdTvFoDf6iZdQz2d+n9wGWxqHV8uby1r6d+6NHkuLK2TE6Wy+UfvFR/mQ== sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -63,24 +63,7 @@ A user’s token expires after 15 minutes. This endpoint handles refreshing the Returns a new access token -
    - - - Response Headers - -
      - -
    -
    +
    - +
    + + + + extras + + object + + +
    + + + +
    +
    @@ -245,24 +258,7 @@ A user’s token expires after 15 minutes. This endpoint handles refreshing the Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    -| | | -| --- | --------------------- | -| GET | [/.well-known/stellar.toml](../retrieve-stellar-info-file.api.mdx) | -| GET | [WEB_AUTH_ENDPOINT](../request-challenge-transaction.api.mdx) | -| POST | [WEB_AUTH_ENDPOINT](../provide-signed-challenge-transaction.api.mdx) | -| POST | [TRANSFER_SERVER_SEP0024/transactions/deposit/interactive](../request-registration-url.api.mdx) | - +```mdx-code-block +import DocCardList from '@theme/DocCardList'; +import {useCurrentSidebarCategory} from '@docusaurus/theme-common'; - - -| | | -| --- | --------------------- | -| GET | [/wallet-registration/start](../start-wallet-registration.api.mdx) | -| POST | [/wallet-registration/otp](../send-one-time-passcode.api.mdx) | -| POST | [/wallet-registration/verification](../verify-receiver-registration.api.mdx) | - - \ No newline at end of file + +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/request-challenge-transaction.api.mdx b/platforms/stellar-disbursement-platform/api-reference/request-challenge-transaction.api.mdx similarity index 73% rename from platforms/stellar-disbursement-platform/api-reference/resources/request-challenge-transaction.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/request-challenge-transaction.api.mdx index dba8bfe05..b950a20d6 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/request-challenge-transaction.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/request-challenge-transaction.api.mdx @@ -1,19 +1,19 @@ --- id: request-challenge-transaction title: "Request Challenge Transaction" -description: "Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the ```WEB_AUTH_ENDPOINT``` variable." +description: "Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the `WEB_AUTH_ENDPOINT` variable." sidebar_label: "Request Challenge Transaction" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "get api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the ```WEB_AUTH_ENDPOINT``` variable. +Allows the wallet to get the SEP-10 challenge transaction to be signed. More information [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md#challenge). The endpoint url can change but is provided in the Get Stellar toml endpoint response under the `WEB_AUTH_ENDPOINT` variable. @@ -105,24 +105,7 @@ Allows the wallet to get the SEP-10 challenge transaction to be signed. More inf OK -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,8 +45,9 @@ import TabItem from "@theme/TabItem"; -The deposit endpoint allows a wallet to get deposit information from an anchor, so a user has all the information needed to initiate a deposit. -It also lets the anchor specify additional information that the user must submit interactively via a popup or embedded browser window to be able to deposit. Please check the detailed documentation [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2). +The deposit endpoint allows a wallet to get deposit information from an anchor, so a user has all the information needed to initiate a deposit. + +It also lets the anchor specify additional information that the user must submit interactively via a popup or embedded browser window to be able to deposit. Please check the detailed documentation [here](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md#deposit-2).
    diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/reset-password.api.mdx b/platforms/stellar-disbursement-platform/api-reference/reset-password.api.mdx similarity index 64% rename from platforms/stellar-disbursement-platform/api-reference/resources/reset-password.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/reset-password.api.mdx index af27f7a4d..769f95be7 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/reset-password.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/reset-password.api.mdx @@ -5,15 +5,15 @@ description: "Allows an SDP user who has gone through the Forgot Password proces sidebar_label: "Reset Rassword" hide_title: true hide_table_of_contents: true -api: eJzFVU2P2zYQ/SuDuSQBZDsI0hx086636DZoYqwdFIFhLEbSWGIskwxJ2VEM//diKDmWd4vkUqC+WCLng+/xvdERC/a5UzYoozHFaV2bgwfSsJjNofHs4FAZqMhDaTRDqJxpygpCxfC7caUJMCfvD8YVYJ3J2XsIBjwHCVEONB/AniMOKlRAEMyWNXjWAfaKgHek6jEmaCw7koPcF5iiY8/hXBwTDFR6TFc4bULFOqg8huI6QcdfG/bhxhQtpkfMjQ6sgzyStXUfOPniBeERfV7xjuQptJYxRZN94TxggtbJCYJiL7vnUw8ifXBKl5g8Ie3DEOPGuMiOcIenpIPxGCH/utIyMtN4LoRFVQjOTQsEe6pVcWkSi0KPG0+njgPluBCG7IW0Yff1SQKvGz7EQoO6sSIUFAiHRYNruANjjfYdQW9ev5a/64Lz6yP6JhdNbJq6boWNt/+Wc0MFPPRYkv/q+tg5437N+IwDqdoDZaaJmoUu8ZQgfwuO/PNOp7hHO1vzoBHe6+6SlLaNHOeSvlFcF48bYzC9PIPy8IPfpF/PyP2IyUjcw0U0VMbiSaUDlyKr7pfgjkNlxCzWRO4shQpTnETyRwMdeM4bp0K7EPY6gm6YHDtx0wAiWfWeW0xQ007eZds49b3zWoJKOKuYCnbPqPzz72UnXbEAXbk0Aa9KzecJoOFu8ea3d2Cd2lNg2HI7FsZvyKv8yYmqEKwAiAfHFDOJedY7ZsIfy+UcrufDeeZk5Pnd2xHr3BRcQKcGMBt4MZ39df/hcXp7+/HTh2Xav83vH9/ffX4xjpct0nu4zJi7y91fZsRFX1eGPy+fhLqNibhUkGRcBK5rcjBTPmuc553Mw3lNYWPcDqbze0xwz853AJ+Piorh5yVeLmbzVyIzmbimhqxRdYiXY1xJur/UKK8dbRmypt6CpVaqxFWC0pnGCkuOc2VV3DB77ibcubvmcDBuO4bPpoGcNDimAnbGce+qxgvXMWU2h1XFjtcv5V59OpkUvOdajOvHvis4Nq6cFCb3k5wCl8a1k8bzKFQ86iNGxQDwyPaAX0UNiRN2FEdFr+Fuxj1czHBF5OB78f9+/Xq9B/4WJrYmpQVN4+pOZ+KJFT7x9TrBSoyfrvB4FIV/cvXpJMtfG3Ytpqt1gntyijKR3Gp9Ss7mTVdH3HKLKd528EdL6S/hddNNgiez95ScM6Z5zjb8NHY9mE3zj4slJpj1n+edKSTH0UHMQodO3CZeRxxMce2INemyoVJiu5ry+wdbrw6z +api: eJzNVlFv2zYQ/isHPrWFZGXBtge9pU2HZRtao86whyQoTtJJYi2R7JGy4xr+78NRcmw3RYJuD5tfLInH7+6+493HrQrYeJXfqIshtGSCLjFoa9RdoiryJWsXX3N10XV27QENLC7nMHhiWLcWWvTQWEMQWrZD00JoCX6x3NgAc/R+bbkCx7Yk7yFY8BTERDMYWoPbW6x1aAEh2CUZ8GQCrDQC9ai7mUqUdcQxrqtK5YrJU9iDq0QxfR7Ih9e22qh8+1XcH8T44GiyhQoDqkSV1gQyQba9yl7Jny9b6lGexFQzVcKOO/bmKXyMkQpLYeNI5coWn6gMKlGOJdigyQvGw758u7f0gbVp1Nf8vjumo7YciRSa1e7U57NI15HEwVMlhOtKqlpvAGGFna6OqRBmJkLUTn7JUdKBBxpdO2v8mM752dljhuengH4opdj10HWbE4YF/sdvAbzGCj5MYZyUBJ3rpgOZffLWnNbnaeaJ2fLzZF1SQN15wMIO8WTCuHGXKLoPjP5ZT5E2usfedXTkWF2ZkW9t3CCbDnC1pq76WFur8sMzaA8P5CfT9wL5waZA6RmqYhsVJJ2oTaBGTshuqt59WtqKGjLpVNa0sNUmNdhL/PI8BkLGa2uk77dqSRuVP7kzUSvshgeE3V2iegqtlV50NhbNYWhVrrJ4BNKjbvHEK+LR08CdylXc76kcWIfNQqo5Fuw1IRPLGDqiHJ3+nTaPqvbbX9fjAZdGwZPJlYDXjaH9SDHwdnH+08/gWK8wECxpIwNlYkS8WdZfxpmXKC3gLWEVSZX32sZodJDiqkWgrkOGS+2LgT31MqnmHYbacg8X8yvhitiPUZ7PfpidCQdD3yMLy9ctwdMYLxaX85dyFmQY2g6KQXchpmm5QTOFGs9Aj0uCYuiW4HAjKPErQsN2cGBrYCq103HBrmicKHvvhsLa8nL2eHr870K8NbfmutU+ujRgHZnU24FLEmGRloTQYpDlMRRrINgI/w24BNBUcUEOPJRopJlqO5gqbmzlRbROmwaYnPU6WNbkc4kjhRs/4mXTf1odkZS6iaS0wHJJprp70YbgfJ5ljQ7tUMxK22ffhfAyh5j8QygbkAmJWhhuCSazmJU2NaMPPJRh4CnBvZQ8WdPZd2RWcxzQ/ya1PcRzua2pgL3tP86mpa5PyxY5+CdDPrLLAhNlPWqTTR+ezOe5NH6lrocIFOOvyHV2I8fr2Uxg8GK3HApiQ4H87FbGVCDu/ft6QbzSpcylfVpTmDPLTRaNUlunfjJLVKdLMj6q1H4AOixbgvM4p8b5LFh5lq3X6xnG1Yg2bfXZH1dv3r5bvE3PZ2ezNvRdnJOiAj2aI+Dx2vXhIAQnU2Z7UPn/9mI5yUyg+5C5DrUR4Y88bCdNu1FfadpdoloRvfxGbbcFevqTu91OPn8eSKb8zZ0IJmssRDNu7nbJXlIOcvtmTD+9Fv8HfZU76C7ZG12UJblwtPzoPnQixfP3i2uVjBqdb1VvK9nDuJZLK66j9O52fwOrz0ME sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -59,8 +59,8 @@ Allows an SDP user who has gone through the Forgot Password process to set their className={"openapi-tabs__mime"} >
    - +
    + + + + extras + + object + + +
    + + + +
    +
    diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/README.mdx deleted file mode 100644 index 0dee509ed..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/README.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: Resources -sidebar_position: 20 ---- - -import {MethodTable} from "@site/src/components/MethodTable"; - -Data on the Stellar Disbursement Platform is organized according to resources. Each resource has several different endpoints. - - - -| | | -| --------------------------------------------------- | --- | -| [Admin (Tenant Management)](./admin/README.mdx) | | -| [Authentication](./auth/README.mdx) | | -| [Balances](./balances/README.mdx) | | -| [Disbursements](./disbursements/README.mdx) | | -| [Organization](./organization/README.mdx) | | -| [Payments](./payments/README.mdx) | | -| [Profiles](./profile/README.mdx) | | -| [Receivers](./receivers/README.mdx) | | -| [Registration](./registration/README.mdx) | | -| [Statistics](./statistics/README.mdx) | | -| [Users](./users/README.mdx) | | - - diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/_category_.json b/platforms/stellar-disbursement-platform/api-reference/resources/_category_.json deleted file mode 100644 index 0d4475828..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/_category_.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "collapsed": false -} diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/admin/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/admin/README.mdx deleted file mode 100644 index 75b92e990..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/admin/README.mdx +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: Admin (Tenant Management) -order: 9 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -The Admin API oversees the management of tenants within the system, facilitating tasks such as provisioning new tenants, updating their information, and retrieving tenant data. - - - -| | | -| --- | --------------------- | -| GET | [/tenants](../get-all-tenants.api.mdx) | -| POST | [/tenants](../create-tenant.api.mdx) | -| GET | [/tenants/:arg](../retrieve-a-tenant.api.mdx) | -| PATCH | [/tenants/:id](../update-a-tenant.api.mdx) | -| DELETE | [/tenants/:id](../soft-delete-a-tenant.api.mdx) | -| POST | [/tenants/default-tenant](../default-tenant.api.mdx) - - - diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/auth/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/auth/README.mdx deleted file mode 100644 index 6c71ecb25..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/auth/README.mdx +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: Authentication -order: 0 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -Authentication controls the log in/log out process for all SDP users, as well as the token refresh process. Authentication uses a JWT approach signed with an ES256 private key. - - - -| | | -| --- | --------------------- | -| POST | [/login](../log-in.api.mdx) | -| POST | [/refresh-token](../refresh-token.api.mdx) | -| POST | [/mfa](../authenticate-mfa.api.mdx) | -| POST | [/forgot-password](../forgot-password.api.mdx) | -| POST | [/reset-password](../reset-password.api.mdx) | - - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/balances/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/balances/README.mdx deleted file mode 100644 index 3483fcda0..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/balances/README.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Balances -order: 3 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -The Admin API oversees the management of tenants within the system, facilitating tasks such as provisioning new tenants, updating their information, and retrieving tenant data. - - - -| | | -| --- | --------------------- | -| GET | [/balances](../get-organization-circle-balances.api.mdx) | - - - diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/default-tenant.api.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/default-tenant.api.mdx deleted file mode 100644 index 08e79f591..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/default-tenant.api.mdx +++ /dev/null @@ -1,373 +0,0 @@ ---- -id: default-tenant -title: "Default Tenant" -description: "Sets the tenant specified in the request body as the default one, resolving all the incoming API request to that tenant when the env `SINGLE_TENANT_MODE` is set to true. Once set, the default tenant can be overwritten but never unset, although it is only effective when `SINGLE_TENANT_MODE` is set to true." -sidebar_label: "Default Tenant" -hide_title: true -hide_table_of_contents: true -api: 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 -sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api -custom_edit_url: null ---- - -import { SepBadge } from "@site/src/components/SepBadge"; - - - -import ApiTabs from "@theme/ApiTabs"; -import DiscriminatorTabs from "@theme/DiscriminatorTabs"; -import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint"; -import SecuritySchemes from "@theme/ApiExplorer/SecuritySchemes"; -import MimeTabs from "@theme/MimeTabs"; -import ParamsItem from "@theme/ParamsItem"; -import ResponseSamples from "@theme/ResponseSamples"; -import SchemaItem from "@theme/SchemaItem"; -import SchemaTabs from "@theme/SchemaTabs"; -import Markdown from "@theme/Markdown"; -import Heading from "@theme/Heading"; -import OperationTabs from "@theme/OperationTabs"; -import TabItem from "@theme/TabItem"; - - - - - - - - - - -Sets the tenant specified in the request body as the default one, resolving all the incoming API request to that tenant when the env `SINGLE_TENANT_MODE` is set to true. Once set, the default tenant can be overwritten but never unset, although it is only effective when `SINGLE_TENANT_MODE` is set to true. - -Default tenant is useful for development purposes or when the SDP is used by a single organization. This allows the organization to skip specifying the tenant in every request and simplifies the SDP setup operationally by removing the need of providing wildcard TLS certificates for multi-tenant configurations. - - - - - - - -
    - -

    - Body -

    -
    - -
      - - - -
    -
    -
    -
    -
    - - -
    - - - - - -
    - -
    -
    -
    - - - Unauthorized - - -
    - - - Response Headers - -
      - -
    -
    - - - - -
    - - - Schema - -
    - -
      - - - -
      - - - - extras - - object - - -
      - - - - - -
      -
      -
      -
    -
    -
    - - - - - - - - -
    -
    -
    -
    -
    -
    - - - Forbidden - - -
    - - - Response Headers - -
      - -
    -
    - - - - -
    - - - Schema - -
    - -
      - - - -
    -
    -
    - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/disbursements/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/disbursements/README.mdx deleted file mode 100644 index 88a277be4..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/disbursements/README.mdx +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: Disbursements -order: 1 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -A disbursement is a group of payments sent to multiple individuals at once. An SDP user with the appropriate role triggers a new disbursement through the SDP dashboard by uploading a list of receivers and amounts. When the receiver has linked their wallet to the SDP, the payment automatically begins. SDP users can track their disbursements in real-time through the SDP dashboard. Each disbursement must have a unique name defined by the organization. - - - -| | | -| --- | --------------------- | -| GET | [/disbursements](../list-all-disbursements.api.mdx) | -| POST | [/disbursements](../create-disbursement.api.mdx) | -| GET | [/disbursements/:id](../retrieve-a-disbursement.api.mdx) | -| GET | [/disbursements/:id/receivers](../list-all-disbursement-receivers.api.mdx) | -| POST | [/disbursements/:id/instructions](../upload-disbursement-instructions.api.mdx) | -| GET | [/disbursements/:id/instructions](../download-disbursement-instructions.api.mdx) | -| PATCH | [/disbursements/:id/status](../update-a-disbursement-status.api.mdx) | - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/organization/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/organization/README.mdx deleted file mode 100644 index eba43faec..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/organization/README.mdx +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: Organization -order: 2 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -Organization endpoints manage the process of getting and updating organizational profile information. The organization's profile has basic information set at the time of SDP deployment. It can be modified by the Owner. Organizations can also manage their preferences, like which assets to use, through these endpoints. - - - -| | | -| --- | --------------------- | -| GET | [/organization](../get-organization-info.api.mdx) | -| PATCH | [/organization](../update-organization-profile.api.mdx) | -| GET | [/organization/logo](../get-organization-logo.api.mdx) | -| PATCH | [/organization/circle-config](../patch-organization-circle.api.mdx) | -| GET | [/countries](../get-all-countries.api.mdx) | -| GET | [/assets](../get-all-assets.api.mdx) | -| POST | [/assets](../create-asset.api.mdx) | -| DELETE | [/assets/:id](../delete-asset.api.mdx) | -| GET | [/wallets](../get-all-wallets.api.mdx) | - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/payments/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/payments/README.mdx deleted file mode 100644 index 04b8625c0..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/payments/README.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Payments -order: 3 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -An SDP payment is an individual payment from an organization to a receiver. Each payment is part of a disbursement and occurs on the Stellar network. Granular payment status is stored in the SDP database and can be viewed in real-time on the SDP dashboard. There is no POST endpoint because submitting payments to the Stellar network is handled by the Transaction Submission Service (TSS). - - - -| | | -| --- | --------------------- | -| GET | [/payments](../list-all-payments.api.mdx) | -| GET | [/payments/:id](../retrieve-a-payment.api.mdx) | - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/profile/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/profile/README.mdx deleted file mode 100644 index d5343be42..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/profile/README.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Profile -order: 4 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -Profiles endpoints manage the process of getting and updating individual profile information. Profile information is set when the account is created and can be updated by the user on the SDP dashboard Profile page. Note: profiles never refer to receivers of funds. - - - -| | | -| --- | --------------------- | -| GET | [/profile](../get-profile.api.mdx) | -| PATCH | [/profile](../update-user-profile.api.mdx) | - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/receivers/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/receivers/README.mdx deleted file mode 100644 index 98906d21d..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/receivers/README.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: Receivers -order: 5 ---- - -import {EndpointsTable} from "@site/src/components/EndpointsTable"; - -A receiver is an individual receiving a payment in a disbursement. The receiver is tracked by phone number to reduce the need for personally identifiable information. Each receiver must be unique within the disbursement. - -Each receiver will have at least one wallet associated with them. The wallet public key will remain null until the receiver registers with a wallet provider and links the wallet to the SDP through SEP-24. Receivers must verify their identity through that process, which requires the SDP to store verification information on receivers like date of birth, national ID number, or personal PIN. This information can be updated by the organization through the receiver endpoints. - - - -| | | -| --- | --------------------- | -| GET | [/receivers](../list-all-receivers.api.mdx) | -| GET | [/receivers/:id](../retrieve-a-receiver.api.mdx) | -| PATCH | [/receivers/:id](../update-a-receiver.api.mdx) | - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/statistics/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/statistics/README.mdx deleted file mode 100644 index 727961f2b..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/statistics/README.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: Statistics -order: 7 ---- - -Statistics endpoints return general aggregated data per organization, as well as disbursement-specific metrics. SDP users can use this data to monitor their disbursements over time. - - - -| | | -| --- | --------------------- | -| GET | [/statistics](../retrieve-all-statistics.api.mdx) | -| GET | [/statistics/disbursements/:id](../retrieve-disbursement-statistics.api.mdx) | - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/users/README.mdx b/platforms/stellar-disbursement-platform/api-reference/resources/users/README.mdx deleted file mode 100644 index dc4f45092..000000000 --- a/platforms/stellar-disbursement-platform/api-reference/resources/users/README.mdx +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: Users -order: 8 ---- - -The users endpoints facilitate the creation of new SDP users–including setting the appropriate role, sending an email invitation, and activating a user–and managing roles. - - - -| | | -| --- | --------------------- | -| GET | [/users](../get-all-users.api.mdx) | -| POST | [/users](../create-user.api.mdx) | -| PATCH | [/users/activation](../update-user-activation-status.api.mdx) | -| GET | [/users/roles](../get-all-roles.api.mdx) | -| PATCH | [/users/roles](../update-user-role.api.mdx) | - - \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/retrieve-a-disbursement.api.mdx b/platforms/stellar-disbursement-platform/api-reference/retrieve-a-disbursement.api.mdx similarity index 85% rename from platforms/stellar-disbursement-platform/api-reference/resources/retrieve-a-disbursement.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/retrieve-a-disbursement.api.mdx index b02ac9590..579f000e2 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/retrieve-a-disbursement.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/retrieve-a-disbursement.api.mdx @@ -1,19 +1,19 @@ --- id: retrieve-a-disbursement title: "Retrieve a Disbursement" -description: "Fetches information on a specific disbursement by ```id```." +description: "Fetches information on a specific disbursement by `id `." sidebar_label: "Retrieve a Disbursement" hide_title: true hide_table_of_contents: true -api: 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 +api: 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 sidebar_class_name: "get api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Fetches information on a specific disbursement by ```id```. +Fetches information on a specific disbursement by `id `. @@ -200,7 +200,7 @@ Fetches information on a specific disbursement by ```id```. required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -376,7 +376,7 @@ Fetches information on a specific disbursement by ```id```. required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -404,18 +404,18 @@ Fetches information on a specific disbursement by ```id```. collapsible={false} name={"status"} required={false} - schemaName={"string"} + schemaName={"DisbursementStatus (string)"} qualifierMessage={"**Possible values:** [`DRAFT`, `READY`, `STARTED`, `PAUSED`, `COMPLETED`]"} - schema={{"description":"The status of the disbursement","example":"READY","type":"string","enum":["DRAFT","READY","STARTED","PAUSED","COMPLETED"]}} + schema={{"type":"string","enum":["DRAFT","READY","STARTED","PAUSED","COMPLETED"],"title":"DisbursementStatus"}} >
  • @@ -502,7 +502,7 @@ Fetches information on a specific disbursement by ```id```. required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -605,24 +605,7 @@ Fetches information on a specific disbursement by ```id```. Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Fetches detailed information on a specific payment by ```id```. +Fetches detailed information on a specific payment by `id `. @@ -173,16 +173,16 @@ Fetches detailed information on a specific payment by ```id```. required={false} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","deprecated":true}} + schema={{"type":"string"}} >
  • @@ -295,7 +295,7 @@ Fetches detailed information on a specific payment by ```id```. required={false} schemaName={"uuid"} qualifierMessage={undefined} - schema={{"type":"string","format":"uuid","description":"The unique identifier of the disbursement","example":"c51ba1d5-52d3-412f-a59c-6ef32d59ab43"}} + schema={{"type":"string","description":"The unique identifier of the disbursement","format":"uuid","example":"c51ba1d5-52d3-412f-a59c-6ef32d59ab43"}} > @@ -405,7 +405,7 @@ Fetches detailed information on a specific payment by ```id```. required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -592,9 +592,9 @@ Fetches detailed information on a specific payment by ```id```. collapsible={false} name={"status"} required={false} - schemaName={"string"} + schemaName={"ReceiversWalletStatus (string)"} qualifierMessage={"**Possible values:** [`DRAFT`, `READY`, `REGISTERED`, `FLAGGED`]"} - schema={{"type":"string","enum":["DRAFT","READY","REGISTERED","FLAGGED"]}} + schema={{"type":"string","enum":["DRAFT","READY","REGISTERED","FLAGGED"],"title":"ReceiversWalletStatus"}} > @@ -606,7 +606,7 @@ Fetches detailed information on a specific payment by ```id```. required={false} schemaName={"date-time"} qualifierMessage={undefined} - schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51.000Z"}} + schema={{"type":"string","format":"date-time","example":"2023-02-03T10:45:51Z"}} > @@ -626,7 +626,7 @@ Fetches detailed information on a specific payment by ```id```. value={"Example (from schema)"} > @@ -646,24 +646,7 @@ Fetches detailed information on a specific payment by ```id```. Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Fetches detailed information on a specific receiver by ```id```, including all associated wallets. +Fetches detailed information on a specific receiver by `id `, including all associated wallets. @@ -218,7 +218,7 @@ Fetches detailed information on a specific receiver by ```id```, including all a required={false} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","example":1}} + schema={{"type":"string","example":"1"}} >
  • @@ -682,7 +682,7 @@ Fetches detailed information on a specific receiver by ```id```, including all a value={"Example (from schema)"} > @@ -702,24 +702,7 @@ Fetches detailed information on a specific receiver by ```id```, including all a Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -38,7 +38,7 @@ import TabItem from "@theme/TabItem"; @@ -73,7 +73,7 @@ Retrieve a Tenant
      @@ -146,7 +146,7 @@ Retrieve a Tenant required={true} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","example":"bluecorp","description":"The tenant name. It should match the pattern `^[a-z-]+$`."}} + schema={{"type":"string","description":"The tenant name. It should match the pattern `^[a-z-]+$`.","example":"bluecorp"}} > @@ -267,24 +267,7 @@ Retrieve a Tenant Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -466,24 +466,7 @@ Fetches all metrics on all disbursements the organization has created. The respo Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Fetches metrics on a specific disbursement by ```id```. +Fetches metrics on a specific disbursement by `id `. @@ -489,24 +489,7 @@ Fetches metrics on a specific disbursement by ```id```. Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -63,24 +63,7 @@ Allows the wallet to fetch the SEP-10 server url, SEP-10 signing public key and Token is valid and the webpage will be loaded normally. -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ This endpoint generates a 6-digit OTP and sends it via SMS to the phone number p
      @@ -277,14 +277,44 @@ This endpoint generates a 6-digit OTP and sends it via SMS to the phone number p > - +
      + + + + extras + + object + + +
      + + + +
      +
    @@ -313,24 +343,7 @@ This endpoint generates a 6-digit OTP and sends it via SMS to the phone number p Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ Soft delete a Tenant
      @@ -146,7 +146,7 @@ Soft delete a Tenant required={true} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","example":"bluecorp","description":"The tenant name. It should match the pattern `^[a-z-]+$`."}} + schema={{"type":"string","description":"The tenant name. It should match the pattern `^[a-z-]+$`.","example":"bluecorp"}} > @@ -318,7 +318,7 @@ Soft delete a Tenant required={true} schemaName={"string"} qualifierMessage={undefined} - schema={{"type":"string","example":"bluecorp","description":"The tenant name. It should match the pattern `^[a-z-]+$`."}} + schema={{"type":"string","description":"The tenant name. It should match the pattern `^[a-z-]+$`.","example":"bluecorp"}} > @@ -445,8 +445,8 @@ Soft delete a Tenant schemaType={"response"} >
        - any + + + +
        + + + + extras + + object + + +
        + + + +
        +
        +
      +
      + + + @@ -493,24 +551,7 @@ Soft delete a Tenant Not Found -
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,12 +73,12 @@ This is the endpoint the browser reaches with the first token so that the receiv
      @@ -208,14 +208,44 @@ This is the endpoint the browser reaches with the first token so that the receiv > - +
      + + + + extras + + object + + +
      + + + +
      +
    @@ -244,24 +274,7 @@ This is the endpoint the browser reaches with the first token so that the receiv Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    + + + + +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/update-a-disbursement-status.api.mdx b/platforms/stellar-disbursement-platform/api-reference/update-a-disbursement-status.api.mdx similarity index 82% rename from platforms/stellar-disbursement-platform/api-reference/resources/update-a-disbursement-status.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/update-a-disbursement-status.api.mdx index 884987ad2..f82d418c4 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/update-a-disbursement-status.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/update-a-disbursement-status.api.mdx @@ -1,19 +1,19 @@ --- id: update-a-disbursement-status title: "Update a Disbursement Status" -description: "Updates the status of a disbursement according to the state machine. The disbursement must move from ```draft``` to ```ready``` in order to start the disbursement and trigger payments. Payments will start as soon as this endpoint is hit. A disbursement can also be moved into ```paused``` state by an SDP user to prevent further payments from going out and restarted when they are ready." +description: "Updates the status of a disbursement according to the state machine. The disbursement must move from `draft ` to `ready ` in order to start the disbursement and trigger payments. Payments will start as soon as this endpoint is hit. A disbursement can also be moved into `paused ` state by an SDP user to prevent further payments from going out and restarted when they are ready." sidebar_label: "Update a Disbursement Status" hide_title: true hide_table_of_contents: true -api: eJztV99v2zYQ/lcOfGkLKHbaZX3wm5O0aFa0M5IUQxEYNS2eLTYSqRxPTl1D//twlOzIsdMtQDYM6PxgU9L9+O4+3kd5pQhD6V3AoAYr9erwUH4MhpRsydY7NVAfMAQ9RzhvLVWiUu8YHYutLsvcplps+1+DOKxUSDMstKx4WaIaKD/9iimrRJXkSyS2TbqiidwxDEzWzVVdJ4rwprKERg2uNobjOlH4TRdl3gRYg5f1QucVbkVVpzZMKwpYoGMIrInRqDp+EnW0r9ZjbeAcbyoMgjZDbZAkU/1kNSORpz0VS2FMOvx1hMCaq66dq4opkoT4QUPru9Z1YMSCaVPwHYR1kqPDw+ShjtoAzjMQarME9jDFbpP/BlP/PIg11S93qf7kdMWZJ/sdzc/B9UfPsFXzvk6/7Hb6nsfjWH2KdGv+ftnl762nqTUG3b9M3v7e3qF5VI+6butaj3Zrlca89ZX7iTbqrC1336Y5elAN3Mbz8Xv1CTK2HEpjIhFnRoSmNJoRNGz5XTSxk/uqFI0DcBZ1jKsAfgYaTNdXp6knY91cBG9tiVDoNLMOe3CZ4bZDUQWGwi8QZuQLmEwmhvSMJ5OJRJhMJlE+5dI68GSQ5H7U0Rh/O7szwGTncyQo9VLuhR6M2hXc2jxvXXWA4L2TX85sAHSm9LYR7cxyD4bbkVPtQOchirigNWBdg6/UVUAjAJtSp0vQDi5OR1CFBmxJuJAYs4o46yBrKp576ZavGvSE7REBtxk6qXAJmrA5RHoqUaznQd47uowFNU5UqUkXyHH+rlbK6UI2hJVtY4W+UnO2w+nZqXB4v4+q+4rDVGGyO66bQRknKmBakeVlTHyMmpCGFWdqcDWWxwVy5k0DIRUMEcpA9bs5Q39lTd0P6723jnkhiZsx6Ube4NClfY9LlawLHrYiHTf5uvZGmHaq/+2PSyHJwMxTVHd03OpUAsHOndBgORNC31y8+vU1lGQXQvI1LnsiIMc62PQeooy5VG3H5HoqNju5oye8u7wcwXArc5sRpjrg66MDdKk3aKDpt7D1bHj64ezjl+HJye+fPl4O2qvR2Zf3bz4/60WRt27mIyLLIl/qgjHPNW2P+SjXPPNUwHB0phK1QAoNtB2sMrQ/DvH84nT0QmZHA3ufw7SyOce2eppr19IRZBoKfY0wrfLruzlgDxrm5KtS6iNMbWnjA7+QCepkd8i3nq578NlXcSZlLqDwhKCnMkNViNojLqcjuMqQcPxcGAmDft/gAnNRwNALTcCep3nf+DT0U80497TsVwEPOMOD1uKgu0kPyrbgF5H90gcudDzO2t33GEFd3R2R/2vrf0NbmwFm/Mb9MtfWCckV5cJVo1lXakuzVKIGUWFb2RonKvOBxW61kgH+RHldy+2bCkn0cZyohSarpzKXVysJJ2ujBjOdB/zBFnl+3kryC3hQtfcWsBZKJyrZvl7IjF/jsjkgavnv2kqkYGoeDNMUS+647LzFbWn7aHh58k4lSu/I83WU53Yh8fcCuq/bDQj5rpMHXFarRvzremPfPHrQY3MOtLVLDXVd/wm4f8NE +api: eJztWN9v2zYQ/lcOfGoB2Uqzbg96c5sWzX50QZ1iD2mAUNLZYi2R7PHk1DP0vw9HyY6dOMm6odtQ7CWyxLvj992RvI9ZK9bzoLILdWJC3lLABi0HdZmoEkNBxrNxVmXqvS81YwCuEAJrbgO4GWgod9xAF4Wj0tg5sNtaIjS6qIzFMZxXuO/QtIGhcUuEGbkG4KokPWO4En+4ItTlCq7AWHBUIsnXwJo4xt6f2ZbAZOZzJPB6FUmM4Wz4BdemrgdXHSA4Z+XJlQmAtvTOWAYToDI8hsl+5EJb0HVwkGNEWoKxEZ3XbcASrgaS+Qq0henJGbShh+oJlxJh1hJXO7h6rnMneXJtj50wosMSriu0wm8FmhBiCsYqUc4jaanFabmtxmS3ZtNYFJUor0k3yEhS1rWyukGVKVOqRBmppNdcqdvlPT2Rct5Oq0oU4afWEJYqY2oxUYFXtcQLpvE1qkThZ1+7ElU203UQg6LCRqtsrXjloyWTsXPVdZcSLXhnAwYZPz46ksc+kF8wBD1HeDdYqkQVzrKAydZKe1+bIuYh/RjEYb0z4Q3WC9X0cWQhDzhc/hELoeRJksmmR7ExPAA4UWw4sh1QbUF1wlvHDOyG2NtEMFRUdZ2Een6I7Qtdwjv81GLgLyH6MCMkcnSAj2Bm0uHxCP0G37GzbZMjSYgH0tXtZ2WAETnSluMNhM0kz4+OkvtSaAJYx/0ukC2V425W/+Hp+io+u1vF91a3XDkyv2P5zZbxrWPYo3kotc92U3vL42sG7kvz3d3SvHaUm7JE+/XrcpjdDYA/YdDTeH6XhjB+7Vr7bS+v2cDw0AJ4fu+mtVvPrxw7hg9YtGR4FXvrC9SENGm5UtnFpTS4BrlyZd9liyp2YxlU6W5bDenalF0aNh07IC037bqlWmVKSazNVFOpaJ/y3Qm3qdXe/ISrOy39x9/OISqUmaO4XdDysFgSCGZuRWwYrkS2vJoef/8DeDJLkTILjJJjUA6TYadFz42IqFCXUupO3mcuohl65ZSxrjXBXiLPas0zRw1Mzk5VooRuj/J4/Gx8JDlom0bTSmVKROLDMZ5MT86eymGtgZ2rIW9NzZGmo7m2A9QgJ3ijFwh5Wy9u1Bc70DAn13qRPISF8SYOuKXotp3ZLfK1o8X4Tmr/exA/2A/2XOSsTGnBebSj4FoqEDw52b7AlY4drofiLLDzG9F3K1zS6+kKoXAlRgmcY78RomMlL3XtrkXCEnoXDDsyGDLBMYKL0MdLh+dod/WP/JCkUa6LBdry8knF7EOWpnPDVZuPC9ekXxThaQaR/BbKCuSU1Mb2F5bBLLIydkY6MLUFtzQQlLrwYzUdfwGzGcVD+u9Q24R4jNs15rCx/ctsKqybUVFp4vAg5B27lAkxbbSx6fDhQT6P0XiDdQMxUMRfoq/dKt4kH91rbRC7RZsjWWQM4w9yTDFSE36dTZGWppBzaUNrgDl2NE+j0cjNRmEwS1RtChSJn22vThOviwrhOJ5T/fkssbI0vb6+Hus4GqMNriH9+fTlq7fTV6Pj8dG44qaO56R3gRttdwL3tzjQ+7y2F7m9M2d90/f/v4v/y3fxoe8yfubU19pYkTxxYayHfn+h9vq9SlQWL+BDy79MVOUCi916neuA76nuOvn8qUVpgheXiVpqMjqXlnqxlnDyu9xes+9dHE/eDbfgp3Dvpf4ggY2asCIllrpu5U0laoGr/v8H3WWXbBq/YOoHJkWBnndc7ojSPV10Njl/+UYlSt/RMIuoYYYfEv8goNtqpAchf7vkHpf1uldIXbe174fu9RhIbrkLh67r/gAA78jm sidebar_class_name: "patch api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Updates the status of a disbursement according to the state machine. The disbursement must move from ```draft``` to ```ready``` in order to start the disbursement and trigger payments. Payments will start as soon as this endpoint is hit. A disbursement can also be moved into ```paused``` state by an SDP user to prevent further payments from going out and restarted when they are ready. +Updates the status of a disbursement according to the state machine. The disbursement must move from `draft ` to `ready ` in order to start the disbursement and trigger payments. Payments will start as soon as this endpoint is hit. A disbursement can also be moved into `paused ` state by an SDP user to prevent further payments from going out and restarted when they are ready. @@ -154,8 +154,8 @@ Updates the status of a disbursement according to the state machine. The disburs
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ This endpoint allows an organization to add and update information on the receiv
      @@ -83,8 +83,8 @@ This endpoint allows an organization to add and update information on the receiv className={"openapi-tabs__mime"} >
    • @@ -772,7 +772,7 @@ This endpoint allows an organization to add and update information on the receiv value={"Example (from schema)"} > @@ -838,14 +838,44 @@ This endpoint allows an organization to add and update information on the receiv > - +
      + + + + extras + + object + + +
      + + + +
      +
    @@ -874,24 +904,7 @@ This endpoint allows an organization to add and update information on the receiv Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ This endpoint updates the Tenant data.
      @@ -83,8 +83,8 @@ This endpoint updates the Tenant data. className={"openapi-tabs__mime"} >
      @@ -385,14 +385,44 @@ This endpoint updates the Tenant data. > - +
      + + + + extras + + object + + +
      + + + +
      +
    @@ -421,24 +451,7 @@ This endpoint updates the Tenant data. Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -90,7 +90,7 @@ Updates the organization profile details. Only account owners have permission to required={false} schemaName={"binary"} qualifierMessage={undefined} - schema={{"description":"The logo of the organization, file type must be png or jpeg.","type":"string","format":"binary"}} + schema={{"type":"string","description":"The logo of the organization, file type must be png or jpeg.","format":"binary"}} > @@ -181,8 +181,8 @@ Updates the organization profile details. Only account owners have permission to
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -59,8 +59,8 @@ Updates the SDP user’s activation status. This endpoint is primarily used to m className={"openapi-tabs__mime"} >
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -59,8 +59,8 @@ Updates the profile details of the logged in user, including changing password f className={"openapi-tabs__mime"} >
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Updates an SDP user’s role by ```user_ID```. +Updates an SDP user’s role by `user_ID `.
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -45,7 +45,7 @@ import TabItem from "@theme/TabItem"; -Adds a file containing a list of receivers to a ```draft``` disbursement. This step is required before a disbursement can begin. The file must be a CSV and has a standard format that can be found at ```dev/sample/sample-disbursement.csv```. The operation is idempotent, guaranteed by deleting and recreating the disbursement attributes when this endpoint is called. +Adds a file containing a list of receivers to a `draft ` disbursement. This step is required before a disbursement can begin. The file must be a CSV and has a standard format that can be found at `dev/sample/sample-disbursement.csv `. The operation is idempotent, guaranteed by deleting and recreating the disbursement attributes when this endpoint is called. @@ -118,7 +118,7 @@ Adds a file containing a list of receivers to a ```draft``` disbursement. This s required={true} schemaName={"binary"} qualifierMessage={undefined} - schema={{"description":"Disbursement instructions file to upload. The CSV file should be in the following format: `phone,id,amount,verification`","type":"string","format":"binary"}} + schema={{"type":"string","description":"Disbursement instructions file to upload. The CSV file should be in the following format: `phone,id,amount,verification`","format":"binary"}} > @@ -141,24 +141,7 @@ Adds a file containing a list of receivers to a ```draft``` disbursement. This s Created -
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    - - - Response Headers - -
      - -
    -
    +
    +``` + \ No newline at end of file diff --git a/platforms/stellar-disbursement-platform/api-reference/resources/verify-receiver-registration.api.mdx b/platforms/stellar-disbursement-platform/api-reference/verify-receiver-registration.api.mdx similarity index 79% rename from platforms/stellar-disbursement-platform/api-reference/resources/verify-receiver-registration.api.mdx rename to platforms/stellar-disbursement-platform/api-reference/verify-receiver-registration.api.mdx index 7b3946808..8e09cf0e6 100644 --- a/platforms/stellar-disbursement-platform/api-reference/resources/verify-receiver-registration.api.mdx +++ b/platforms/stellar-disbursement-platform/api-reference/verify-receiver-registration.api.mdx @@ -5,15 +5,15 @@ description: "This endpoint verifies the receiver's registration by validating t sidebar_label: "Verify Receiver Registration" hide_title: true hide_table_of_contents: true -api: eJzdV1Fv2zYQ/ivEvaQFZLstsj7ozYnT1euaGLHToQgMg5LOFmuJZEnKqWbovw9HyrEce2k3dC/zS0Tp+N3x+N13ly0ojYY7oeQ4gxg+oRHLmt1iimKDht3iSlgXDCCCDG1qhParGGa5sAxlppWQjm1oq0DLXI7MtABnlpkOBEtqtuGFyLgTcuUtb2YTxmXGlMvRtCBpMN7wokLLtFEbkWHGhGyxv1ZoHUtUVvfZMACy6dWk9+acObVGyWyuqiJjCTIh06LqbB5WLldG/Bk85MgzNEwtu8B9iMDxlYX4Hg7OP49Ac8NLdGjo6xYkLxFiOACFCARlJ2AfJe0gzqUyjB9E9OKdMiV3MTu7QG7QsK23bM5eQgQUoDCYQexMhRHYNMeSQ7wFV2sKxDoj5AqaZh6M0boLldVkkSrpUDp65FoXbY4HXyxFtT2GUskXTB1EoA1RxAm09FXnSuJCVmWC5tjx08NOyJoFa1bZcA1dQkATgXL6+0g3EnszUSKbcGsflMl2FMt8Eru8IcyD9XfBPx2xbk+6pPbcqCyap8CLgPo99FmtkSh2zG2IAGVVEtFGw9nV4ubd4mJ8O3sPEUzG1xDB9XA2vrke/r4YjxbXdx8vrm5h3tDVply7NOcLT44fCMGzbZ8xo0r2q1Krgkh/OZzMLt8PoaHfs6nJuONtRVH56s7tRlTI0YkzRr66H70E4h9x2R/KaiVtoNmbV6/ozzOx2CpN0dplVUD0s8hdorV8dfJK8RsvdeH3rkOmmgjOT0V5wTN2G2rv50WGxqgfqLcROi4Ky3iiKud5GzY2dABnuD321DSdwz06grEMsiqkrhx0ty8FFtliqRTE+2cmLHu80ah9n3DzaJNwwyRiZplTpMtcMiEdrqiqHrP5+jibd3Knjx44iCrF0fzXuX0mZ08RrOOu6tq1+thEf0+pcOYTmb9Wjh2ceR/Fzs/5q9cd5Kc7usB+266y6Dnozk92115giS5XNEVo5bmvucshhsEDLwp0va7uDw4EOgKLaWWEq6d0ZyHq0P+otXaSx7X4gDVE/6bz/vbHLPSgXddF6doIImbFSmLGHoTLiZtX0ze/vGXaiA13yNZY9+kyL7gV6ZOIcuc0tK2Y1gnZHPn2O9n72WziJ5C959YjS7jFt+c9lKmirhNIQl3jbDj6OL5eDC8vb+6uZ3G7mowXH64+n/V9+RLhb/fd/mrPqcNuvVcN33L3y8Nuefp92+yOGtVRL+rUj5BL5VMlnJfOqcOi4IaNhE0qY7FE6dik4G6pTMmGk3HwaUMYJ+ZNZM9DvJiOJi9JizhzShUsqUTh/H0rs+Ky5YnXoJKvkSVVsWaa14Ti33K2MqrSlHiDqdDCf1A0CruOd4nuQZl1n31WFUs5tVaesVIZbKW3srv5djqasPscDc5fEFVsPBhkuMGC9MP2bQDsK7MaZCq1g5Q7XClTDyqLPZdjr7XoZZ0D93R74JeellRuJfea15bFPxnjO6Ph/3qiD/R1+M0NdMGFHxMrU/gy8UJ1DyeE6ml1zCPISd3ie9huqWjvTNE09PprhaaG+H4ewYYbwROi/D2Na60e0T8Ma6whhsuQ8B5NhuQgaPJxE2ui3Y5hmqJ2z9rOOwI8uZnOIIKknf1LldEewx+oYPlDKC7lCRA6BL3bQsHlqgoiHzDp9xczH/iQ +api: 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 sidebar_class_name: "post api-method" -info_path: platforms/stellar-disbursement-platform/api-reference/resources/stellar-disbursement-platform-api +info_path: platforms/stellar-disbursement-platform/api-reference/stellar-disbursement-platform-api custom_edit_url: null --- import { SepBadge } from "@site/src/components/SepBadge"; - + import ApiTabs from "@theme/ApiTabs"; import DiscriminatorTabs from "@theme/DiscriminatorTabs"; @@ -73,7 +73,7 @@ This endpoint verifies the receiver's registration by validating the OTP and oth
      @@ -304,14 +304,44 @@ This endpoint verifies the receiver's registration by validating the OTP and oth > - +
      + + + + extras + + object + + +
      + + + +
      +
    @@ -340,24 +370,7 @@ This endpoint verifies the receiver's registration by validating the OTP and oth Unauthorized -
    - - - Response Headers - -
      - -
    -
    +
    item.type === 'category'), + ], }, ], }, diff --git a/src/components/CodeFromFileExample.tsx b/src/components/CodeFromFileExample.tsx deleted file mode 100644 index 5d2fbc231..000000000 --- a/src/components/CodeFromFileExample.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import React from 'react'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; -import CodeBlock from '@theme/CodeBlock'; -import {CODE_LANGS} from "../constants"; - -export const CodeFromFileExample = ({path, showLineNumbers, children}) => { - const codeExample = require(`@site/static/assets/${path}`); - return ( - - - {React.Children.map(children, (child, index) => { - - const codeProps = child.props.children.props; - const {className = ''} = codeProps; - - const [, language] = className.split('-'); - return ( - - - {language === 'json' ? JSON.stringify(codeExample, null, " ") : JSON.stringify(codeExample)} - - - ); - })} - - ); -}; diff --git a/src/components/RpcMethod.tsx b/src/components/RpcMethod.tsx index 6bf2e2845..f715ccc29 100644 --- a/src/components/RpcMethod.tsx +++ b/src/components/RpcMethod.tsx @@ -1,17 +1,11 @@ import Method from "@metamask/open-rpc-docs-react"; import React from "react"; +import type { MethodObject } from "@open-rpc/meta-schema"; const CodeBlock = require('@theme/CodeBlock').default; const Tabs = require('@theme/Tabs').default; const TabItem = require('@theme/TabItem').default; -export const RpcMethod = ({ method, platform }) => { - if (platform === 'soroban') { - const rpcDoc = require('@site/static/openrpc.json'); - const rpcMethod = rpcDoc.methods.filter((meth: any) => meth.name === method)[0]; - return (); - } - const rpcMethod = require(`@site/static/assets/rpc-methods/${method}.json`); - return (); - +export const RpcMethod = ({ method }: { method: MethodObject}) => { + return (); }; diff --git a/src/sidebar-platforms-generator.js b/src/sidebar-platforms-generator.js deleted file mode 100644 index 5c210cd8b..000000000 --- a/src/sidebar-platforms-generator.js +++ /dev/null @@ -1,109 +0,0 @@ -import fs from "fs"; -import path from "path"; - -module.exports = async ({ defaultSidebarItemsGenerator, ...args }) => { - const docs = args.docs.filter( - (item) => - !item.source.includes(".api.mdx") && - !item.source.includes(".tag.mdx") && - item.source !== "@site/api/READ_FIRST.md", - ); - - const sidebarItems = await defaultSidebarItemsGenerator({ ...args, docs }); - - const apiReference = sidebarItems.find( - (item) => - item.type === "category" && item.label.toLowerCase() === 'api reference', - ); - - if (apiReference) { - const resources = apiReference.items.find( - (item) => - item.type === "category" && item.label.toLowerCase() === "resources", - ); - - const sidebarPath = path.join( - args.version.contentPath, - args.item.dirName, - "./api-reference/resources/sidebar.ts", - ); - - if (resources && fs.existsSync(sidebarPath)) { - const generatedApiSidebar = require(sidebarPath); - - const categories = resources.items.filter( - (item) => item.type === "category", - ); - - categories.forEach((category) => { - const generatedCategory = generatedApiSidebar.find( - (item) => item.type === "category" && item.label === category.label, - ); - - if (generatedCategory) { - category.items = [...category.items, ...generatedCategory.items]; - } - }); - } - - const resources2 = apiReference.items.find( - (item) => - item.type === "category" && item.label.toLowerCase() === "callbacks", - ); - - const sidebarPath2 = path.join( - args.version.contentPath, - args.item.dirName, - "./api-reference/callbacks/sidebar.ts", - ); - - if (resources2 && fs.existsSync(sidebarPath2)) { - const generatedApiSidebar = require(sidebarPath2); - - const categories = resources2.items.filter( - (item) => item.type === "category", - ); - - categories.forEach((category) => { - const generatedCategory = generatedApiSidebar.find( - (item) => item.type === "category" && item.label === category.label, - ); - - if (generatedCategory) { - category.items = [...category.items, ...generatedCategory.items]; - } - }); - } - - const resources3 = apiReference.items.find( - (item) => - item.type === "category" && item.label.toLowerCase() === "custody server", - ); - - const sidebarPath3 = path.join( - args.version.contentPath, - args.item.dirName, - "./api-reference/custody-server/sidebar.ts", - ); - - if (resources3 && fs.existsSync(sidebarPath3)) { - const generatedApiSidebar = require(sidebarPath3); - - const categories = resources3.items.filter( - (item) => item.type === "category", - ); - - categories.forEach((category) => { - const generatedCategory = generatedApiSidebar.find( - (item) => item.type === "category" && item.label === category.label, - ); - - if (generatedCategory) { - category.items = [...category.items, ...generatedCategory.items]; - } - }); - } - } - - return sidebarItems; -}; diff --git a/src/template.mustache b/src/template.mustache index 0a56d2230..338a0e7a8 100644 --- a/src/template.mustache +++ b/src/template.mustache @@ -39,7 +39,7 @@ show_extensions: true import { SepBadge } from "@site/src/components/SepBadge"; {{#api}} - + {{/api}} {{{markdown}}} diff --git a/src/theme/ApiItem/index.js b/src/theme/ApiItem/index.js index a6428c032..b286d0008 100644 --- a/src/theme/ApiItem/index.js +++ b/src/theme/ApiItem/index.js @@ -6,7 +6,7 @@ export default function ApiItemWrapper(props) { if ( props.location?.pathname?.includes('api-reference') && !props.location?.pathname?.includes('rpc') - && !props.location?.pathname.includes('error-handling') + && !props.location?.pathname.includes('error-handling') ) { return ( <> diff --git a/static/assets/rpc-methods/do_stellar_payment.json b/static/assets/rpc-methods/do_stellar_payment.json deleted file mode 100644 index 2ae17515b..000000000 --- a/static/assets/rpc-methods/do_stellar_payment.json +++ /dev/null @@ -1,268 +0,0 @@ -{ - "name": "do_stellar_payment", - "summary": "Stellar payment", - "description": "Submits a payment to a stellar network by a custody service", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/do_stellar_refund.json b/static/assets/rpc-methods/do_stellar_refund.json deleted file mode 100644 index bfb3ca08d..000000000 --- a/static/assets/rpc-methods/do_stellar_refund.json +++ /dev/null @@ -1,322 +0,0 @@ -{ - "name": "do_stellar_refund", - "summary": "Stellar refund", - "description": "Submits a refund payment to a stellar network by a custody service", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "refund", - "description": "An object describing refund associated with this transaction", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "description": "Amount to be refunded", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets to refund" - }, - "asset": { - "type": "string", - "description": "The asset of refund" - } - }, - "required": [ - "amount", - "asset" - ] - }, - "amount_fee": { - "description": "Amount of fee", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "The amount of fee" - }, - "asset": { - "type": "string", - "description": "The asset of fee charged by anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - "required": [ - "amount", - "amount_fee" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/do_stellar_payment_example.json b/static/assets/rpc-methods/examples/do_stellar_payment_example.json deleted file mode 100644 index cdf081cc4..000000000 --- a/static/assets/rpc-methods/examples/do_stellar_payment_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "do_stellar_payment", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Do Stellar payment" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/do_stellar_refund_example.json b/static/assets/rpc-methods/examples/do_stellar_refund_example.json deleted file mode 100644 index 641191f7f..000000000 --- a/static/assets/rpc-methods/examples/do_stellar_refund_example.json +++ /dev/null @@ -1,19 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "do_stellar_refund", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Do Stellar refund", - "refund": { - "amount": { - "amount": 1, - "asset": "stellar:USDC:G...5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - } - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_amounts_updated_example.json b/static/assets/rpc-methods/examples/notify_amounts_updated_example.json deleted file mode 100644 index b3815894a..000000000 --- a/static/assets/rpc-methods/examples/notify_amounts_updated_example.json +++ /dev/null @@ -1,15 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_amounts_updated", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Amounts updated", - "amount_out": { - "amount": 1 - }, - "amount_fee": { - "amount": 0.1 - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_customer_info_updated_example.json b/static/assets/rpc-methods/examples/notify_customer_info_updated_example.json deleted file mode 100644 index a2739a371..000000000 --- a/static/assets/rpc-methods/examples/notify_customer_info_updated_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_customer_info_updated", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Customer info updated" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_interactive_flow_completed_example.json b/static/assets/rpc-methods/examples/notify_interactive_flow_completed_example.json deleted file mode 100644 index 0f256e720..000000000 --- a/static/assets/rpc-methods/examples/notify_interactive_flow_completed_example.json +++ /dev/null @@ -1,24 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_interactive_flow_completed", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Interactive flow completed successfully.", - "amount_in": { - "amount": 1, - "asset": "iso4217:USD" - }, - "amount_out": { - "amount": 0.9, - "asset": "stellar:USDC:G...5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "iso4217:USD" - }, - "amount_expected": { - "amount": 1 - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_offchain_funds_available_example.json b/static/assets/rpc-methods/examples/notify_offchain_funds_available_example.json deleted file mode 100644 index fc5212f64..000000000 --- a/static/assets/rpc-methods/examples/notify_offchain_funds_available_example.json +++ /dev/null @@ -1,10 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_offchain_funds_available", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Offchain funds available", - "external_transaction_id": "f...1" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_offchain_funds_pending_example.json b/static/assets/rpc-methods/examples/notify_offchain_funds_pending_example.json deleted file mode 100644 index 617df431c..000000000 --- a/static/assets/rpc-methods/examples/notify_offchain_funds_pending_example.json +++ /dev/null @@ -1,10 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_offchain_funds_pending", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Offchain funds pending", - "external_transaction_id": "f...1" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_offchain_funds_received_example.json b/static/assets/rpc-methods/examples/notify_offchain_funds_received_example.json deleted file mode 100644 index 4bde1a5d0..000000000 --- a/static/assets/rpc-methods/examples/notify_offchain_funds_received_example.json +++ /dev/null @@ -1,23 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_offchain_funds_received", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Funds received successfully", - "funds_received_at": "2023-07-04T12:34:56Z", - "external_transaction_id": "7...9", - "amount_in": { - "amount": 1 - }, - "amount_out": { - "amount": 0.9 - }, - "amount_fee": { - "amount": 0.1 - }, - "amount_expected": { - "amount": 1 - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_offchain_funds_sent_example.json b/static/assets/rpc-methods/examples/notify_offchain_funds_sent_example.json deleted file mode 100644 index 1acf0953a..000000000 --- a/static/assets/rpc-methods/examples/notify_offchain_funds_sent_example.json +++ /dev/null @@ -1,10 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_offchain_funds_sent", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Offchain funds sent", - "external_transaction_id": "f...1" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_onchain_funds_received_example.json b/static/assets/rpc-methods/examples/notify_onchain_funds_received_example.json deleted file mode 100644 index 002834592..000000000 --- a/static/assets/rpc-methods/examples/notify_onchain_funds_received_example.json +++ /dev/null @@ -1,13 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_onchain_funds_received", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Onchain funds received", - "stellar_transaction_id": "7...9", - "amount_in": { - "amount": 1 - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_onchain_funds_sent_example.json b/static/assets/rpc-methods/examples/notify_onchain_funds_sent_example.json deleted file mode 100644 index b07b4a4a5..000000000 --- a/static/assets/rpc-methods/examples/notify_onchain_funds_sent_example.json +++ /dev/null @@ -1,10 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_onchain_funds_sent", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Onchain funds sent", - "stellar_transaction_id": "f...1" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_refund_pending_example.json b/static/assets/rpc-methods/examples/notify_refund_pending_example.json deleted file mode 100644 index ccf184e51..000000000 --- a/static/assets/rpc-methods/examples/notify_refund_pending_example.json +++ /dev/null @@ -1,20 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_refund_pending", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Refund pending", - "refund": { - "id": "1c186184-09ee-486c-82a6-aa7a0ab1119c", - "amount": { - "amount": 1, - "asset": "stellar:USDC:G...5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - } - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_refund_sent_example.json b/static/assets/rpc-methods/examples/notify_refund_sent_example.json deleted file mode 100644 index 7630920d9..000000000 --- a/static/assets/rpc-methods/examples/notify_refund_sent_example.json +++ /dev/null @@ -1,20 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_refund_sent", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Refund sent", - "refund": { - "id": "1c186184-09ee-486c-82a6-aa7a0ab1119c", - "amount": { - "amount": 1, - "asset": "stellar:USDC:G...5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - } - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_transaction_error_example.json b/static/assets/rpc-methods/examples/notify_transaction_error_example.json deleted file mode 100644 index 85ad15c61..000000000 --- a/static/assets/rpc-methods/examples/notify_transaction_error_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_transaction_error", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Transaction error" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_transaction_expired_example.json b/static/assets/rpc-methods/examples/notify_transaction_expired_example.json deleted file mode 100644 index a9b6463e1..000000000 --- a/static/assets/rpc-methods/examples/notify_transaction_expired_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_transaction_expired", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Transaction expired" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_transaction_on_hold_example.json b/static/assets/rpc-methods/examples/notify_transaction_on_hold_example.json deleted file mode 100644 index ebee75bde..000000000 --- a/static/assets/rpc-methods/examples/notify_transaction_on_hold_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_transaction_on_hold", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Transaction on hold, please contact customer service to lift the hold." - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_transaction_recovery_example.json b/static/assets/rpc-methods/examples/notify_transaction_recovery_example.json deleted file mode 100644 index db4a230c3..000000000 --- a/static/assets/rpc-methods/examples/notify_transaction_recovery_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_transaction_recovery ", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Transaction recovered" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/notify_trust_set_example.json b/static/assets/rpc-methods/examples/notify_trust_set_example.json deleted file mode 100644 index 12b1231a4..000000000 --- a/static/assets/rpc-methods/examples/notify_trust_set_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "notify_trust_set", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Trustline set" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/request_customer_info_update_example.json b/static/assets/rpc-methods/examples/request_customer_info_update_example.json deleted file mode 100644 index 1f68837af..000000000 --- a/static/assets/rpc-methods/examples/request_customer_info_update_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "request_customer_info_update", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Customer info requested" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/request_offchain_funds_example.json b/static/assets/rpc-methods/examples/request_offchain_funds_example.json deleted file mode 100644 index d4ec1c77b..000000000 --- a/static/assets/rpc-methods/examples/request_offchain_funds_example.json +++ /dev/null @@ -1,24 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "request_offchain_funds", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Request offchain funds", - "amount_in": { - "amount": 1, - "asset": "iso4217:USD" - }, - "amount_out": { - "amount": 0.9, - "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "iso4217:USD" - }, - "amount_expected": { - "amount": 1 - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/request_onchain_funds_example.json b/static/assets/rpc-methods/examples/request_onchain_funds_example.json deleted file mode 100644 index 19dfb92f0..000000000 --- a/static/assets/rpc-methods/examples/request_onchain_funds_example.json +++ /dev/null @@ -1,24 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "request_onchain_funds", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Requesting onchain funds", - "amount_in": { - "amount": 1, - "asset": "stellar:USDC:G...5" - }, - "amount_out": { - "amount": 0.9, - "asset": "iso4217:USD" - }, - "amount_fee": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - }, - "amount_expected": { - "amount": 1 - } - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/request_trust_example.json b/static/assets/rpc-methods/examples/request_trust_example.json deleted file mode 100644 index 995187d53..000000000 --- a/static/assets/rpc-methods/examples/request_trust_example.json +++ /dev/null @@ -1,9 +0,0 @@ -[{ - "id": 1, - "jsonrpc": "2.0", - "method": "request_trust", - "params": { - "transaction_id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "message": "Request trust" - } -}] \ No newline at end of file diff --git a/static/assets/rpc-methods/examples/response_example.json b/static/assets/rpc-methods/examples/response_example.json deleted file mode 100644 index cc8178f14..000000000 --- a/static/assets/rpc-methods/examples/response_example.json +++ /dev/null @@ -1,33 +0,0 @@ -[ - { - "id": 1, - "jsonrpc": "2.0", - "result": { - "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "sep": "24 / 31", - "kind": "deposit/withdrawal/receive", - "status": "...", - "amount_expected": { - "amount": "1", - "asset": "stellar:USDC:G...5" - }, - "amount_in": { - "amount": "1", - "asset": "stellar:USDC:G...5" - }, - "amount_out": { - "amount": "0.9", - "asset": "iso4217:USD" - }, - "amount_fee": { - "amount": "0.1", - "asset": "stellar:USDC:G...5" - }, - "started_at": "2023-08-04T10:04:06.280923Z", - "updated_at": "2023-08-04T10:04:15.716233Z", - "message": "Transaction status message", - "source_account": "G...W", - "destination_account": "G...S" - } - } -] \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_amounts_updated.json b/static/assets/rpc-methods/notify_amounts_updated.json deleted file mode 100644 index 449961277..000000000 --- a/static/assets/rpc-methods/notify_amounts_updated.json +++ /dev/null @@ -1,329 +0,0 @@ -{ - "name": "notify_amounts_updated", - "summary": "Update transaction amounts", - "description": "Update amount_out and amount_fee values", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "amount_out", - "description": "Amount sent by anchor to user", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "amount_fee", - "description": "DEPRECATED in favor of fee_detailss. Amount of fee charged by anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "fee_details", - "description": "Description of fees charged by the anchor", - "required": true, - "schema": { - "type": "object", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - }, - "required": ["total", "asset"] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": ["6", "24", "31"] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} diff --git a/static/assets/rpc-methods/notify_customer_info_updated.json b/static/assets/rpc-methods/notify_customer_info_updated.json deleted file mode 100644 index 385802f99..000000000 --- a/static/assets/rpc-methods/notify_customer_info_updated.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "name": "notify_customer_info_updated", - "summary": "Customer info updated", - "description": "Additional customer information was received and updated", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": ["6", "24", "31"] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} diff --git a/static/assets/rpc-methods/notify_interactive_flow_completed.json b/static/assets/rpc-methods/notify_interactive_flow_completed.json deleted file mode 100644 index c4474dd7d..000000000 --- a/static/assets/rpc-methods/notify_interactive_flow_completed.json +++ /dev/null @@ -1,380 +0,0 @@ -{ - "name": "notify_interactive_flow_completed", - "summary": "Interactive flow completed", - "description": "Platform has collected the transaction amounts and fees from the business", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The id of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "The amount expected in the payment", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be received by the Anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_out", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be sent by anchor to user at end of transaction" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_fee", - "description": "DEPRECATED in favor of fee_details. The amount of fee expected to be charged by anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset in which fees are calculated in" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "fee_details", - "description": "Description of fees charged by the anchor", - "required": true, - "schema": { - "type": "object", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - }, - "required": ["total", "asset"] - } - }, - { - "name": "amount_expected", - "description": "The amount expected in the payment", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "withdrawal" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_offchain_funds_available.json b/static/assets/rpc-methods/notify_offchain_funds_available.json deleted file mode 100644 index f6ddca0ee..000000000 --- a/static/assets/rpc-methods/notify_offchain_funds_available.json +++ /dev/null @@ -1,277 +0,0 @@ -{ - "name": "notify_offchain_funds_available", - "summary": "Offchain funds are available", - "description": "Funds are ready for the user / recipient to pick up", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_offchain_funds_pending.json b/static/assets/rpc-methods/notify_offchain_funds_pending.json deleted file mode 100644 index 11ddef302..000000000 --- a/static/assets/rpc-methods/notify_offchain_funds_pending.json +++ /dev/null @@ -1,280 +0,0 @@ -{ - "name": "notify_offchain_funds_pending", - "summary": "Offchain funds pending", - "description": "Payment has been submitted to external network, but is not yet confirmed", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_offchain_funds_received.json b/static/assets/rpc-methods/notify_offchain_funds_received.json deleted file mode 100644 index 20961fc0e..000000000 --- a/static/assets/rpc-methods/notify_offchain_funds_received.json +++ /dev/null @@ -1,359 +0,0 @@ -{ - "name": "notify_offchain_funds_received", - "summary": "Offchain funds received", - "description": "Payment is being processed internally by anchor", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "funds_received_at", - "description": "The date and time of receiving funds", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network that either started the deposit or completed the withdrawal", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "Amount received by anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "amount_out", - "description": "Amount expected to be sent by anchor to user", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "amount_fee", - "description": "DEPRECATED in favour of fee_details. Amount of fee charged by anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "fee_details", - "description": "Description of fees charged by the anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - }, - "required": ["total", "asset"] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": ["6", "24", "31"] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The amount of fee expected to be charged by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} diff --git a/static/assets/rpc-methods/notify_offchain_funds_sent.json b/static/assets/rpc-methods/notify_offchain_funds_sent.json deleted file mode 100644 index 2dcace7bc..000000000 --- a/static/assets/rpc-methods/notify_offchain_funds_sent.json +++ /dev/null @@ -1,288 +0,0 @@ -{ - "name": "notify_offchain_funds_sent", - "summary": "Offchain funds sent", - "description": "Transaction flow is fully completed for the SEP-6 and SEP-24 withdrawal flow or SEP-31 receive flow. Payment has been submitted to external network, but is not yet confirmed for SEP-24 deposit flow", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "funds_sent_at", - "description": "The date and time of sending funds", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_onchain_funds_received.json b/static/assets/rpc-methods/notify_onchain_funds_received.json deleted file mode 100644 index 37cab18ef..000000000 --- a/static/assets/rpc-methods/notify_onchain_funds_received.json +++ /dev/null @@ -1,358 +0,0 @@ -{ - "name": "notify_onchain_funds_received", - "summary": "Onchain funds received", - "description": "Notify that the payment is being processed internally by anchor for SEP-6 or SEP-24. For SEP-31, notify that the payment is being processed by the Receiving Anchor. In the request, amount parameters are optional, but have a strict rule of how to set them. Either none, only `amount_in`, or all of fields (`amount_in`, `amount_out`, `amount_fee`) must be specified. ", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "stellar_transaction_id", - "description": "Transaction id on Stellar network of the transfer", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "Amount received by anchor.", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "amount_out", - "description": "Amount expected to be sent by anchor to user. If set, both `amount_in` and `fee_details` must be specified", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "amount_fee", - "description": "DEPRECATED in favor of fee_details. Amount of fee charged by anchor. If set, both `amount_in` and `amount_out` must be specified", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": ["amount"] - } - }, - { - "name": "fee_details", - "description": "Description of fees charged by the anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - }, - "required": [ - "total", - "asset" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": ["6", "24", "31"] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} diff --git a/static/assets/rpc-methods/notify_onchain_funds_sent.json b/static/assets/rpc-methods/notify_onchain_funds_sent.json deleted file mode 100644 index ad2c85d9f..000000000 --- a/static/assets/rpc-methods/notify_onchain_funds_sent.json +++ /dev/null @@ -1,277 +0,0 @@ -{ - "name": "notify_onchain_funds_sent", - "summary": "Onchain funds sent", - "description": "Transaction flow is fully completed for SEP-6 or SEP-24 deposit", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "stellar_transaction_id", - "description": "Transaction id on Stellar network of the transfer", - "required": true, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_refund_pending.json b/static/assets/rpc-methods/notify_refund_pending.json deleted file mode 100644 index 282379ec7..000000000 --- a/static/assets/rpc-methods/notify_refund_pending.json +++ /dev/null @@ -1,324 +0,0 @@ -{ - "name": "notify_refund_pending", - "summary": "Refund pending", - "description": "Refund has been submitted, but is not yet confirmed", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "refund", - "description": "An object describing refund associated with this transaction", - "required": true, - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Transaction id on Stellar network of the transfer" - }, - "amount": { - "description": "Amount to be refunded", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets to refund" - }, - "asset": { - "type": "string", - "description": "The asset of refund" - } - }, - "required": [ - "amount", - "asset" - ] - }, - "amount_fee": { - "description": "Amount of fee", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "The amount of fee" - }, - "asset": { - "type": "string", - "description": "The asset of fee charged by anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - "required": [ - "id", - "amount", - "amount_fee" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} diff --git a/static/assets/rpc-methods/notify_refund_sent.json b/static/assets/rpc-methods/notify_refund_sent.json deleted file mode 100644 index 2ef0e472f..000000000 --- a/static/assets/rpc-methods/notify_refund_sent.json +++ /dev/null @@ -1,326 +0,0 @@ -{ - "name": "notify_refund_sent", - "summary": "Payment refunded", - "description": "Refund payment completed", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "refund", - "description": "An object describing refund associated with this transaction", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Transaction id on Stellar network of the transfer" - }, - "amount": { - "description": "Amount refunded", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets refunded" - }, - "asset": { - "type": "string", - "description": "The asset of refund" - } - }, - "required": [ - "amount", - "asset" - ] - }, - "amount_fee": { - "description": "Amount of fee", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "The amount of fee" - }, - "asset": { - "type": "string", - "description": "The asset of fee charged by anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - "required": [ - "id", - "amount", - "amount_fee" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_transaction_error.json b/static/assets/rpc-methods/notify_transaction_error.json deleted file mode 100644 index c2bfff2bb..000000000 --- a/static/assets/rpc-methods/notify_transaction_error.json +++ /dev/null @@ -1,271 +0,0 @@ -{ - "name": "notify_transaction_error", - "summary": "Transaction processing error", - "description": "There was an error processing transaction", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Description of the error", - "required": true, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_transaction_expired.json b/static/assets/rpc-methods/notify_transaction_expired.json deleted file mode 100644 index 46af461e4..000000000 --- a/static/assets/rpc-methods/notify_transaction_expired.json +++ /dev/null @@ -1,272 +0,0 @@ -{ - "name": "notify_transaction_expired", - "summary": "Transaction has expired", - "description": "Funds were never received by the anchor and the transaction is considered abandoned by the user", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": true, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_transaction_on_hold.json b/static/assets/rpc-methods/notify_transaction_on_hold.json deleted file mode 100644 index 57b86858e..000000000 --- a/static/assets/rpc-methods/notify_transaction_on_hold.json +++ /dev/null @@ -1,277 +0,0 @@ -{ - "name": "notify_transaction_on_hold", - "summary": "Transaction transaction is on hold", - "description": "Notify transaction is currently on hold by the anchor (e.g. compliance hold). Anchor should update message to guide user through the steps.", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "user_action_required_by", - "description": "Time and date by which user action is required", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_transaction_recovery.json b/static/assets/rpc-methods/notify_transaction_recovery.json deleted file mode 100644 index 894a5e56b..000000000 --- a/static/assets/rpc-methods/notify_transaction_recovery.json +++ /dev/null @@ -1,272 +0,0 @@ -{ - "name": "notify_transaction_recovery ", - "summary": "Transaction recovery", - "description": "Transaction status is changed from error / expired to pending_anchor(SEP-6 or SEP-24) or pending_receiver(SEP-31)", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/notify_trust_set.json b/static/assets/rpc-methods/notify_trust_set.json deleted file mode 100644 index 0ef40daad..000000000 --- a/static/assets/rpc-methods/notify_trust_set.json +++ /dev/null @@ -1,277 +0,0 @@ -{ - "name": "notify_trust_set", - "summary": "Asset trustline set", - "description": "The user has added a trustline for the asset", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "success", - "description": "Flag which indicates if trustline was configured by user", - "required": false, - "schema": { - "type": "boolean" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/open-rpc.json b/static/assets/rpc-methods/open-rpc.json deleted file mode 100644 index 3f47507f3..000000000 --- a/static/assets/rpc-methods/open-rpc.json +++ /dev/null @@ -1,2360 +0,0 @@ -{ - "openrpc": "1.0.0", - "info": { - "version": "1.0.0", - "title": "Anchor Platform RPC Methods", - "description": "This API lets you interact with Anchor Platform via RPC methods" - }, - "methods": [ - { - "name": "notify_interactive_flow_completed", - "summary": "Interactive flow completed", - "description": "Platform has collected the transaction amounts and fees from the business", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The id of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "The amount expected in the payment", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be received by the Anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_out", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be sent by anchor to user at end of transaction" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_fee", - "description": "The amount of fee expected to be charged by anchor", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset in which fees are calculated in" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_expected", - "description": "The amount expected in the payment", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Notify interactive flow completed example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Interactive flow completed successfully." - }, - { - "name": "amount_in", - "value": { - "amount": 1, - "asset": "iso4217:USD" - } - }, - { - "name": "amount_out", - "value": { - "amount": 0.9, - "asset": "stellar:USDC:G...5" - } - }, - { - "name": "amount_fee", - "value": { - "amount": 0.1, - "asset": "iso4217:USD" - } - } - , - { - "name": "amount_expected", - "value": { - "amount": 1 - } - } - ], - "result": { - "name": "Notify interactive flow completed result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "request_offchain_funds", - "summary": "Request offchain funds", - "description": "The user has to initiate transfer to the anchor", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "The amount expected in the payment", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be received by the Anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_out", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be sent by anchor to user at end of transaction" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_fee", - "description": "The amount of fee expected to be charged by anchor", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset in which fees are calculated in" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_expected", - "description": "The amount expected in the payment", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Request offchain funds example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Request offchain funds" - }, - { - "name": "amount_in", - "value": { - "amount": 1, - "asset": "iso4217:USD" - } - }, - { - "name": "amount_out", - "value": { - "amount": 0.9, - "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" - } - }, - { - "name": "amount_fee", - "value": { - "amount": 0.1, - "asset": "iso4217:USD" - } - } - , - { - "name": "amount_expected", - "value": { - "amount": 1 - } - } - ], - "result": { - "name": "Request offchain funds result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "request_onchain_funds", - "summary": "Request onchain funds", - "description": "The user has to initiate transfer to the anchor", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "The amount expected in the payment", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be received by the Anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_out", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be sent by anchor to user at end of transaction" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_fee", - "description": "The amount of fee expected to be charged by anchor", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset in which fees are calculated in" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_expected", - "description": "The amount expected in the payment", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - }, - { - "name": "destination_account", - "description": "Destination account", - "schema": { - "type": "string" - } - }, - { - "name": "memo", - "description": "Value of memo to attach to transaction", - "schema": { - "type": "string" - } - }, - { - "name": "memo_type", - "description": "Type of memo that anchor should attach to the transaction", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Request onchain funds example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Requesting onchain funds" - }, - { - "name": "amount_in", - "value": { - "amount": 1, - "asset": "stellar:USDC:G...5" - } - }, - { - "name": "amount_out", - "value": { - "amount": 0.9, - "asset": "iso4217:USD" - } - }, - { - "name": "amount_fee", - "value": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - } - } - , - { - "name": "amount_expected", - "value": { - "amount": 1 - } - } - ], - "result": { - "name": "Request onchain funds result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_offchain_funds_received", - "summary": "Offchain funds received", - "description": "Payment is being processed internally by anchor", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "funds_received_at", - "description": "The date and time of receiving funds", - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network that either started the deposit or completed the withdrawal", - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "Amount received by anchor", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - }, - { - "name": "amount_out", - "description": "Amount expected to be sent by anchor to user", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - }, - { - "name": "amount_fee", - "description": "Amount of fee charged by anchor", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Offchain funds received example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Funds received successfully" - }, - { - "name": "funds_received_at", - "value": "2023-07-04T12:34:56Z" - }, - { - "name": "external_transaction_id", - "value": "7...9" - }, - { - "name": "amount_in", - "value": { - "amount": 1 - } - }, - { - "name": "amount_out", - "value": { - "amount": 0.9 - } - }, - { - "name": "amount_fee", - "value": { - "amount": 0.1 - } - }, - { - "name": "amount_expected", - "value": { - "amount": 1 - } - } - ], - "result": { - "name": "Offchain funds received result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_onchain_funds_received", - "summary": "Onchain funds received", - "description": "Payment is being processed internally by anchor for SEP-6 or SEP-24. Payment is being processed by the Receiving Anchor for SEP-31", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "stellar_transaction_id", - "description": "Transaction id on Stellar network of the transfer", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "Amount received by anchor", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - }, - { - "name": "amount_out", - "description": "Amount expected to be sent by anchor to user", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - }, - { - "name": "amount_fee", - "description": "Amount of fee charged by anchor", - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Onchain funds received example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Onchain funds received" - }, - { - "name": "stellar_transaction_id", - "value": "7...9" - }, - { - "name": "amount_in", - "value": { - "amount": 1 - } - } - ], - "result": { - "name": "Onchain funds received result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_amounts_updated", - "summary": "Update transaction amounts", - "description": "Update amount_out and amount_fee values", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "amount_out", - "description": "Amount sent by anchor to user", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - }, - { - "name": "amount_fee", - "description": "Amount of fee charged by anchor", - "required": true, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Amounts updated example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Amounts updated" - }, - { - "name": "amount_out", - "value": { - "amount": 1 - } - }, - { - "name": "amount_fee", - "value": { - "amount": 0.1 - } - } - ], - "result": { - "name": "Amounts updated result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_refund_pending", - "summary": "Refund pending", - "description": "Refund has been submitted, but is not yet confirmed", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "refund", - "description": "An object describing refund associated with this transaction", - "required": true, - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Transaction id on Stellar network of the transfer" - }, - "amount": { - "description": "Amount to be refunded", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets to refund" - }, - "asset": { - "type": "string", - "description": "The asset of refund" - } - }, - "required": [ - "amount", - "asset" - ] - }, - "amount_fee": { - "description": "Amount of fee", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "The amount of fee" - }, - "asset": { - "type": "string", - "description": "The asset of fee charged by anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - "required": [ - "id", - "amount", - "amount_fee" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Refund pending example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Refund pending" - }, - { - "name": "refund", - "value": { - "id": "1c186184-09ee-486c-82a6-aa7a0ab1119c", - "amount": { - "amount": 1, - "asset": "stellar:USDC:G...5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - } - } - } - ], - "result": { - "name": "Refund pending result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_refund_sent", - "summary": "Payment refunded", - "description": "Refund payment completed", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "refund", - "description": "An object describing refund associated with this transaction", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Transaction id on Stellar network of the transfer" - }, - "amount": { - "description": "Amount refunded", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets refunded" - }, - "asset": { - "type": "string", - "description": "The asset of refund" - } - }, - "required": [ - "amount", - "asset" - ] - }, - "amount_fee": { - "description": "Amount of fee", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "The amount of fee" - }, - "asset": { - "type": "string", - "description": "The asset of fee charged by anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - "required": [ - "id", - "amount", - "amount_fee" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Refund sent example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Refund sent" - }, - { - "name": "refund", - "value": { - "id": "1c186184-09ee-486c-82a6-aa7a0ab1119c", - "amount": { - "amount": 1, - "asset": "stellar:USDC:G...5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - } - } - } - ], - "result": { - "name": "Refund sent result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "do_stellar_payment", - "summary": "Stellar payment", - "description": "Submits a payment to stellar network by a custody service", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Do Stellar payment example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Do Stellar payment" - } - ], - "result": { - "name": "Do Stellar payment result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "do_stellar_refund", - "summary": "Stellar refund", - "description": "Submits a refund payment to stellar network by a custody service", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "refund", - "description": "An object describing refund associated with this transaction", - "schema": { - "type": "object", - "properties": { - "amount": { - "description": "Amount to be refunded", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets to refund" - }, - "asset": { - "type": "string", - "description": "The asset of refund" - } - }, - "required": [ - "amount", - "asset" - ] - }, - "amount_fee": { - "description": "Amount of fee", - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "The amount of fee" - }, - "asset": { - "type": "string", - "description": "The asset of fee charged by anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - "required": [ - "amount", - "amount_fee" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Do Stellar refund example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Do Stellar refund" - }, - { - "name": "refund", - "value": { - "amount": { - "amount": 1, - "asset": "stellar:USDC:G...5" - }, - "amount_fee": { - "amount": 0.1, - "asset": "stellar:USDC:G...5" - } - } - } - ], - "result": { - "name": "Do Stellar refund result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_onchain_funds_sent", - "summary": "Onchain funds sent", - "description": "Transaction flow is fully completed for SEP-6 or SEP-24 deposit", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "stellar_transaction_id", - "description": "Transaction id on Stellar network of the transfer", - "required": true, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Onchain funds sent example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Onchain funds sent" - }, - { - "name": "stellar_transaction_id", - "value": "f...1" - } - ], - "result": { - "name": "Onchain funds sent result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_offchain_funds_sent", - "summary": "Offchain funds sent", - "description": "Transaction flow is fully completed for the SEP-6 and SEP-24 withdrawal flow or SEP-31 receive flow. Payment has been submitted to external network, but is not yet confirmed for SEP-24 deposit flow", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "funds_sent_at", - "description": "The date and time of sending funds", - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Offchain funds sent example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Offchain funds sent" - }, - { - "name": "external_transaction_id", - "value": "f...1" - } - ], - "result": { - "name": "Offchain funds sent result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_offchain_funds_available", - "summary": "Offchain funds are available", - "description": "Funds are ready for the user / recipient to pick up", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Offchain funds available example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Offchain funds available" - }, - { - "name": "external_transaction_id", - "value": "f...1" - } - ], - "result": { - "name": "Offchain funds available result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_offchain_funds_pending", - "summary": "Offchain funds pending", - "description": "Payment has been submitted to external network, but is not yet confirmed", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "external_transaction_id", - "description": "ID of transaction on external network", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Offchain funds pending example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Offchain funds pending" - }, - { - "name": "external_transaction_id", - "value": "f...1" - } - ], - "result": { - "name": "Offchain funds pending result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "request_trust", - "summary": "A trustline to the asset isn't set", - "description": "The user must add a trustline for the asset to complete", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Request trust example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Request trust" - } - ], - "result": { - "name": "Request trust result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_trust_set", - "summary": "Asset trustline set", - "description": "The user has added a trustline for the asset", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - }, - { - "name": "success", - "description": "Flag which indicates if trustline was configured by user", - "schema": { - "type": "boolean" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Trustline set example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Trustline set" - } - ], - "result": { - "name": "Trustline set result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "request_customer_info_update", - "summary": "Customer info needed", - "description": "Additional customer information is required", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Customer info needed example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Customer info requested" - } - ], - "result": { - "name": "Customer info needed result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_customer_info_updated", - "summary": "Customer info updated", - "description": "Additional customer information was received and updated", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Customer info updated example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Customer info updated" - } - ], - "result": { - "name": "Customer info updated result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_transaction_error", - "summary": "Transaction processing error", - "description": "There was an error processing transaction", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Description of the error", - "required": true, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Transaction error example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Transaction error" - } - ], - "result": { - "name": "Transaction error result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_transaction_expired", - "summary": "Transaction has expired", - "description": "Funds were never received by the anchor and the transaction is considered abandoned by the user", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": true, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Transaction expired example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Transaction expired" - } - ], - "result": { - "name": "Transaction expired result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_transaction_on_hold", - "summary": "Transaction transaction is on hold", - "description": "Notify transaction is currently on hold by the anchor (e.g. compliance hold). Anchor should update message to guide user through the steps.", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "user_action_required_by", - "description": "Time and date by which user action is required", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Transaction on hold example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Transaction is on hold, please contact user service to lift the hold." - } - ], - "result": { - "name": "Transaction on hold result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - }, - { - "name": "notify_transaction_recovery ", - "summary": "Transaction recovery", - "description": "Transaction status is changed from error / expired to pending_anchor(SEP-6 or SEP-24) or pending_receiver(SEP-31)", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "$ref": "#/components/schemas/Response" - } - }, - "examples": [ - { - "name": "Transaction recovery example", - "params": [ - { - "name": "transaction_id", - "value": "1c186184-09ee-486c-82a7-aa7a0ab1119d" - }, - { - "name": "message", - "value": "Transaction recovered" - } - ], - "result": { - "name": "Transaction recovery result", - "value": { - "$ref": "#/components/schemas/ResponseExample" - } - } - } - ] - } - ],"components": { - "contentDescriptors": { - }, - "schemas": { - "Response": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The amount of fee expected to be charged by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - }, - "ResponseExample": { - "id": "1c186184-09ee-486c-82a7-aa7a0ab1119d", - "sep": "24 / 31", - "kind": "deposit/withdrawal/receive", - "status": "...", - "amount_expected": { - "amount": "1", - "asset": "stellar:USDC:G...5" - }, - "amount_in": { - "amount": "1", - "asset": "stellar:USDC:G...5" - }, - "amount_out": { - "amount": "0.9", - "asset": "iso4217:USD" - }, - "amount_fee": { - "amount": "0.1", - "asset": "stellar:USDC:G...5" - }, - "started_at": "2023-08-04T10:04:06.280923Z", - "updated_at": "2023-08-04T10:04:15.716233Z", - "message": "Transaction status message", - "source_account": "G...W", - "destination_account": "G...S" - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/request_customer_info_update.json b/static/assets/rpc-methods/request_customer_info_update.json deleted file mode 100644 index 49cd81528..000000000 --- a/static/assets/rpc-methods/request_customer_info_update.json +++ /dev/null @@ -1,265 +0,0 @@ -{ - "name": "request_customer_info_update", - "summary": "Customer info needed", - "description": "Additional customer information is required", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 31" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": ["6", "24", "31"] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} diff --git a/static/assets/rpc-methods/request_offchain_funds.json b/static/assets/rpc-methods/request_offchain_funds.json deleted file mode 100644 index c47172d04..000000000 --- a/static/assets/rpc-methods/request_offchain_funds.json +++ /dev/null @@ -1,386 +0,0 @@ -{ - "name": "request_offchain_funds", - "summary": "Request offchain funds", - "description": "The user has to initiate transfer to the anchor", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "The amount expected in the payment", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be received by the Anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_out", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be sent by anchor to user at end of transaction" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_fee", - "description": "DEPRECATED in favour of fee_details. The amount of fee expected to be charged by anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset in which fees are calculated in" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "fee_details", - "description": "Description of fees charged by the anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - }, - "required": ["total", "asset"] - } - }, - { - "name": "amount_expected", - "description": "The amount expected in the payment", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/request_onchain_funds.json b/static/assets/rpc-methods/request_onchain_funds.json deleted file mode 100644 index 96d25e3cf..000000000 --- a/static/assets/rpc-methods/request_onchain_funds.json +++ /dev/null @@ -1,410 +0,0 @@ -{ - "name": "request_onchain_funds", - "summary": "Request onchain funds", - "description": "The user has to initiate transfer to the anchor", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "amount_in", - "description": "The amount expected in the payment", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be received by the Anchor" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_out", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset to be sent by anchor to user at end of transaction" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "amount_fee", - "description": "DEPRECATED in favour of fee_details. The amount of fee expected to be charged by anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - }, - "asset": { - "type": "string", - "description": "The asset in which fees are calculated in" - } - }, - "required": [ - "amount", - "asset" - ] - } - }, - { - "name": "fee_details", - "description": "Description of fees charged by the anchor", - "required": false, - "schema": { - "type": "object", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - }, - "required": ["total", "asset"] - } - }, - { - "name": "amount_expected", - "description": "The amount expected in the payment", - "required": false, - "schema": { - "type": "object", - "properties": { - "amount": { - "type": "number", - "description": "Amount of assets" - } - }, - "required": [ - "amount" - ] - } - }, - { - "name": "destination_account", - "description": "Destination account", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "memo", - "description": "Value of memo to attach to transaction", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "memo_type", - "description": "Type of memo that anchor should attach to the transaction", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": [ - "6", - "24", - "31" - ] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} \ No newline at end of file diff --git a/static/assets/rpc-methods/request_trust.json b/static/assets/rpc-methods/request_trust.json deleted file mode 100644 index 61ef60a4a..000000000 --- a/static/assets/rpc-methods/request_trust.json +++ /dev/null @@ -1,265 +0,0 @@ -{ - "name": "request_trust", - "summary": "A trustline to the asset isn't set", - "description": "The user must add a trustline for the asset to complete", - "paramStructure": "by-name", - "tags": [ - { - "name": "SEP - 6" - }, - { - "name": "SEP - 24" - } - ], - "params": [ - { - "name": "transaction_id", - "description": "The ID of the transaction", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "message", - "description": "Human readable explanation of transaction status", - "required": false, - "schema": { - "type": "string" - } - } - ], - "result": { - "name": "Response", - "schema": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The ID of the transaction" - }, - "sep": { - "type": "integer", - "description": "Protocol of the transaction", - "enum": ["6", "24", "31"] - }, - "kind": { - "type": "string", - "description": "The kind of transaction that is desired", - "enum": [ - "undefined", - "receive", - "deposit", - "deposit-exchange", - "withdrawal", - "withdrawal-exchange" - ] - }, - "status": { - "type": "string", - "description": "Processing status of the transaction", - "enum": [ - "pending_anchor", - "pending_trust", - "pending_user", - "pending_user_transfer_start", - "pending_user_transfer_complete", - "incomplete", - "no_market", - "too_small", - "too_large", - "pending_sender", - "pending_receiver", - "pending_transaction_info_update", - "pending_customer_info_update", - "completed", - "refunded", - "expired", - "error", - "pending_external", - "pending_stellar" - ] - }, - "amount_expected": { - "description": "The amount expected in the payment", - "type": "object", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_in": { - "type": "object", - "description": "Amount expected/received by anchor", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_out": { - "type": "object", - "description": "The amount expected to be sent by anchor to user at end of transaction", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "DEPRECATED in favour of fee_details. The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "asset": { - "type": "string" - }, - "amount": { - "type": "string" - } - } - }, - "fee_details": { - "type": "object", - "description": "Description of fee charged by the anchor.", - "properties": { - "total": { - "type": "number" - }, - "asset": { - "type": "string" - }, - "details": { - "type": "array", - "description": "Details about fee charged", - "items": { - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "amount": { - "type": "number" - } - } - } - } - } - }, - - "quote_id": { - "type": "string", - "description": "The id returned from a SEP-38 POST /quote response" - }, - "started_at": { - "type": "string", - "description": "Start date and time of transaction" - }, - "updated_at": { - "type": "string", - "description": "The date and time of transaction reaching the current status" - }, - "completed_at": { - "type": "string", - "description": "The date and time of transaction reaching completed or refunded status" - }, - "transfer_received_at": { - "type": "string", - "description": "The date and time of receiving transfer" - }, - "message": { - "type": "string", - "description": "Human readable explanation of transaction status" - }, - "refunds": { - "type": "object", - "description": "An object describing any on or offchain refund associated with this transaction", - "properties": { - "amount_refunded": { - "type": "object", - "description": "The total amount refunded in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "amount_fee": { - "type": "object", - "description": "The total amount charged in fees for processing all refund payments, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "payments": { - "type": "array", - "description": "A list of objects containing information on the individual payments made back as refunds", - "items": { - "properties": { - "id": { - "type": "string", - "description": "The Stellar transaction hash of the transaction that included the refund payment" - }, - "id_type": { - "type": "string" - }, - "amount": { - "type": "object", - "description": "The amount sent back for the payment identified by id, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "fee": { - "type": "object", - "description": "The amount charged as a fee for processing the refund, in units of amount_in_asset", - "properties": { - "amount": { - "type": "number" - }, - "asset": { - "type": "string" - } - } - }, - "requested_at": { - "type": "string", - "description": "The date and time of requesting refund" - }, - "refunded_at": { - "type": "string", - "description": "The date and time of making refund" - } - } - } - } - } - } - } - } - } -} diff --git a/static/openrpc.json b/static/stellar-rpc.openrpc.json similarity index 99% rename from static/openrpc.json rename to static/stellar-rpc.openrpc.json index 886fd977d..3998c52b8 100644 --- a/static/openrpc.json +++ b/static/stellar-rpc.openrpc.json @@ -1,5 +1,5 @@ { - "openrpc": "1.2.4", + "openrpc": "1.2.6", "info": { "title": "Soroban RPC", "description": "Soroban-RPC allows you to communicate directly with Soroban via a JSON RPC interface.", diff --git a/yarn.lock b/yarn.lock index d745b42a6..3fccd432e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2307,12 +2307,12 @@ require-from-string "^2.0.2" uri-js "^4.2.2" -"@redocly/cli@^1.17.1": - version "1.17.1" - resolved "https://registry.yarnpkg.com/@redocly/cli/-/cli-1.17.1.tgz#a6b5523e98ff84530b7c2654a897414b16dcf6b5" - integrity sha512-a7OIlsGQT8OBRMPswqcJzCoub/nvm1zYvOCOBnaLt1cYeYK9nRzYCXA6Bnx0I7wMCXf5YmL7rVTMG8RJTC+3mA== +"@redocly/cli@^1.19.0": + version "1.19.0" + resolved "https://registry.yarnpkg.com/@redocly/cli/-/cli-1.19.0.tgz#fa7ac88c50b8850c1358bb68a22a3330efe0e0b0" + integrity sha512-ev6J0eD+quprvW9PVCl9JmRFZbj6cuK+mnYPAjcrPvesy2RF752fflcpgQjGnyFaGb1Cj+DiwDi3dYr3EAp04A== dependencies: - "@redocly/openapi-core" "1.17.1" + "@redocly/openapi-core" "1.19.0" abort-controller "^3.0.0" chokidar "^3.5.1" colorette "^1.2.0" @@ -2323,6 +2323,7 @@ handlebars "^4.7.6" mobx "^6.0.4" node-fetch "^2.6.1" + pluralize "^8.0.0" react "^17.0.0 || ^18.2.0" react-dom "^17.0.0 || ^18.2.0" redoc "~2.1.5" @@ -2336,18 +2337,18 @@ resolved "https://registry.yarnpkg.com/@redocly/config/-/config-0.6.2.tgz#b5180ccb407673ee048b818c3be9a4f9d0636a64" integrity sha512-c3K5u64eMnr2ootPcpEI0ioIRLE8QP8ptvLxG9MwAmb2sU8HMRfVwXDU3AZiMVY2w4Ts0mDc+Xv4HTIk8DRqFw== -"@redocly/config@^0.6.2": - version "0.6.3" - resolved "https://registry.yarnpkg.com/@redocly/config/-/config-0.6.3.tgz#0dab6278721abd5aae6b375deee97665005b0472" - integrity sha512-hGWJgCsXRw0Ow4rplqRlUQifZvoSwZipkYnt11e3SeH1Eb23VUIDBcRuaQOUqy1wn0eevXkU2GzzQ8fbKdQ7Mg== +"@redocly/config@^0.7.0": + version "0.7.0" + resolved "https://registry.yarnpkg.com/@redocly/config/-/config-0.7.0.tgz#e8d06dc1f2d9cb9a4b5c5ce09afbf8536b32161c" + integrity sha512-6GKxTo/9df0654Mtivvr4lQnMOp+pRj9neVywmI5+BwfZLTtkJnj2qB3D6d8FHTr4apsNOf6zTa5FojX0Evh4g== -"@redocly/openapi-core@1.17.1": - version "1.17.1" - resolved "https://registry.yarnpkg.com/@redocly/openapi-core/-/openapi-core-1.17.1.tgz#d18c5223e5b578d64d789c4101b96cbb589162dc" - integrity sha512-PQxDLLNk5cBatJBBxvfk49HFw/nVozw1XZ6Dw/GX0Tviq+WxeEjEuLAKfnLVvb5L0wgs4TNmVG4Y+JyofSPu1A== +"@redocly/openapi-core@1.19.0": + version "1.19.0" + resolved "https://registry.yarnpkg.com/@redocly/openapi-core/-/openapi-core-1.19.0.tgz#8c6db2f0286b7776d79e392335f89f702ea19432" + integrity sha512-ezK6qr80sXvjDgHNrk/zmRs9vwpIAeHa0T/qmo96S+ib4ThQ5a8f3qjwEqxMeVxkxCTbkaY9sYSJKOxv4ejg5w== dependencies: "@redocly/ajv" "^8.11.0" - "@redocly/config" "^0.6.2" + "@redocly/config" "^0.7.0" colorette "^1.2.0" https-proxy-agent "^7.0.4" js-levenshtein "^1.1.6"