From f9ed4817885a600c8172de18d96cf964807ff9d7 Mon Sep 17 00:00:00 2001 From: Jane Wang Date: Thu, 12 Sep 2024 09:55:07 -0400 Subject: [PATCH] Update getEvents retention window --- docs/build/guides/dapps/frontend-guide.mdx | 4 +- docs/build/guides/events/ingest.mdx | 8 +- docs/data/rpc/admin-guide.mdx | 4 - .../contract-development/events.mdx | 2 +- .../src/stellar-rpc/methods/getEvents.json | 2 +- .../stellar-rpc/schemas/LedgerEntries.json | 2 +- .../platform/rpc/anchor-platform.openrpc.json | 486 +++++++++++++++++- static/stellar-rpc.openrpc.json | 4 +- 8 files changed, 485 insertions(+), 27 deletions(-) diff --git a/docs/build/guides/dapps/frontend-guide.mdx b/docs/build/guides/dapps/frontend-guide.mdx index 7a4cf8045..f4db4eec8 100644 --- a/docs/build/guides/dapps/frontend-guide.mdx +++ b/docs/build/guides/dapps/frontend-guide.mdx @@ -721,7 +721,7 @@ This is made possible by using the `server.getEvents` method which allows you to We will be editing the `CounterPage` component to read events from the counter smart contract immediately the page loads to get the initial counter value and update instead of using "Unknown". Before we continue, please take a look at the [contract code](https://github.com/stellar/soroban-examples/blob/main/events/src/lib.rs). In the contract code, an event named `increment` is emitted whenever the `increment` function is called. It is published over 2 topics, `increment` and `COUNTER` and we need to listen to these topics to get the events. -The topics are stored in a data type called `symbol` and we will need to convert both `increment` and `COUNTER` to `symbol` before we can use them in the [`server.getEvents`](https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents) method. By default, soroban RPCs keep track of events for 24 hours and you can query events that happened within the last 24 hours, so if you need to store events for longer, you may need to make use of an [indexer](/docs/tools/developer-tools/data-indexers). +The topics are stored in a data type called `symbol` and we will need to convert both `increment` and `COUNTER` to `symbol` before we can use them in the [`server.getEvents`](https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents) method. By default, soroban RPCs keep track of events for 7 days and you can query events that happened within the last 7 days, so if you need to store events for longer, you may need to make use of an [indexer](/docs/tools/developer-tools/data-indexers). To use events,we edit our counter page and add the following code: @@ -819,5 +819,5 @@ State Archival is a characteristic of soroban contracts where some data stored o A few things to note about data retention in soroban contracts: -- Events Data can be queried within 24 hours of the event happening. So you may need an indexer to store events for longer periods. +- Events Data can be queried within 7 days of the event happening. So you may need an indexer to store events for longer periods. - Transaction data is stored with a retention period of 1440 ledgers. This means after 1440 ledgers, the transaction data cannot be queried using the RPC. Again, you may need an indexer to store transaction data for longer periods. diff --git a/docs/build/guides/events/ingest.mdx b/docs/build/guides/events/ingest.mdx index 069855c20..fade94c36 100644 --- a/docs/build/guides/events/ingest.mdx +++ b/docs/build/guides/events/ingest.mdx @@ -1,12 +1,12 @@ --- title: Ingest events published from a contract -description: Use Soroban RPC's getEvents method for querying events, with a 24-hour retention window +description: Use Soroban RPC's getEvents method for querying events, with a 7 days retention window --- import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; -Soroban RPC provides a `getEvents` method which allows you to query events from a smart contract. However, the data retention window for these events is roughly 24 hours. If you need access to a longer-lived record of these events you'll want to "ingest" the events as they are published, maintaining your own record or database as events are ingested. +Soroban RPC provides a `getEvents` method which allows you to query events from a smart contract. However, the data retention window for these events is 7 days. If you need access to a longer-lived record of these events you'll want to "ingest" the events as they are published, maintaining your own record or database as events are ingested. There are many strategies you can use to ingest and keep the events published by a smart contract. Among the simplest might be using a community-developed tool such as [Mercury](https://mercurydata.app) which will take all the infrastructure work off your plate for a low subscription fee. @@ -139,13 +139,13 @@ We are making some assumptions here. We'll assume that your contract sees enough -If we start from scratch, there is no known ledger so we can try to ingest roughly the last 24 hours assuming a ledger closes every 6s. +If we start from scratch, there is no known ledger so we can try to ingest roughly the last 7 days assuming a ledger closes every 6s. ```python import stellar_sdk soroban_server = stellar_sdk.SorobanServer() -ledger = soroban_server.get_latest_ledger().sequence-int(3600 / 6 * 24) +ledger = soroban_server.get_latest_ledger().sequence-int(3600 / 6 * 24 * 7) ``` Later on, we will be able to start from the latest ingested ledger by making a query to our DB. diff --git a/docs/data/rpc/admin-guide.mdx b/docs/data/rpc/admin-guide.mdx index fc4cc9c09..c9e328112 100644 --- a/docs/data/rpc/admin-guide.mdx +++ b/docs/data/rpc/admin-guide.mdx @@ -352,10 +352,6 @@ DEFAULT_EVENTS_LIMIT = 100 # Endpoint to listen and serve on ENDPOINT = "0.0.0.0:8000" -# configures the event retention window expressed in number of ledgers, the -# default value is 17280 which corresponds to about 24 hours of history -EVENT_RETENTION_WINDOW = 17280 - # The friendbot URL to be returned by getNetwork endpoint # FRIENDBOT_URL = "" diff --git a/docs/learn/encyclopedia/contract-development/events.mdx b/docs/learn/encyclopedia/contract-development/events.mdx index cce175a6a..719f27206 100644 --- a/docs/learn/encyclopedia/contract-development/events.mdx +++ b/docs/learn/encyclopedia/contract-development/events.mdx @@ -25,7 +25,7 @@ Events are the mechanism that applications off-chain can use to monitor changes :::info -Events are ephemeral, the data retention window is roughly 24 hours. See the [ingestion guide](../../../build/guides/events/ingest.mdx) to learn how to work with this constraint. +Events are ephemeral, the data retention window is 7 days. See the [ingestion guide](../../../build/guides/events/ingest.mdx) to learn how to work with this constraint. ::: diff --git a/openrpc/src/stellar-rpc/methods/getEvents.json b/openrpc/src/stellar-rpc/methods/getEvents.json index 256357b2e..ed2b42d34 100644 --- a/openrpc/src/stellar-rpc/methods/getEvents.json +++ b/openrpc/src/stellar-rpc/methods/getEvents.json @@ -1,7 +1,7 @@ { "name": "getEvents", "summary": "returns contract events", - "description": "Clients can request a filtered list of events emitted by a given ledger range.\n\nSoroban-RPC will support querying within a maximum 24 hours of recent ledgers.\n\nNote, this could be used by the client to only prompt a refresh when there is a new ledger with relevant events. It should also be used by backend Dapp components to \"ingest\" events into their own database for querying and serving.\n\nIf making multiple requests, clients should deduplicate any events received, based on the event's unique id field. This prevents double-processing in the case of duplicate events being received.\n\nBy default soroban-rpc retains the most recent 24 hours of events.", + "description": "Clients can request a filtered list of events emitted by a given ledger range.\n\nSoroban-RPC will support querying within a maximum 7 days of recent ledgers.\n\nNote, this could be used by the client to only prompt a refresh when there is a new ledger with relevant events. It should also be used by backend Dapp components to \"ingest\" events into their own database for querying and serving.\n\nIf making multiple requests, clients should deduplicate any events received, based on the event's unique id field. This prevents double-processing in the case of duplicate events being received.\n\nBy default soroban-rpc retains the most recent 7 days of events.", "externalDocs": { "url": "https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents" }, diff --git a/openrpc/src/stellar-rpc/schemas/LedgerEntries.json b/openrpc/src/stellar-rpc/schemas/LedgerEntries.json index dc9b98efb..898e4ea60 100644 --- a/openrpc/src/stellar-rpc/schemas/LedgerEntries.json +++ b/openrpc/src/stellar-rpc/schemas/LedgerEntries.json @@ -4,7 +4,7 @@ "description": "Ledger key, serialized as a base64 string, corresponding to an existing ledger entry you wish to retrieve." }, "LedgerKeys": { - "description": "Array containing ledger keys.", + "description": "Array containing ledger keys. The maximum number of ledger keys accepted is 200.", "type": "array", "items": { "$ref": "#/components/schemas/LedgerKey" 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 index 8466565d2..9f464b9cf 100644 --- a/platforms/anchor-platform/api-reference/platform/rpc/anchor-platform.openrpc.json +++ b/platforms/anchor-platform/api-reference/platform/rpc/anchor-platform.openrpc.json @@ -172,6 +172,24 @@ } } }, + "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.", @@ -590,6 +608,24 @@ } } }, + "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.", @@ -817,7 +853,7 @@ { "name": "notify_amounts_updated", "summary": "Update transaction amounts", - "description": "Update amount_out and fee_details values", + "description": "Update amount_out and amount_fee values", "paramStructure": "by-name", "tags": [ { @@ -1025,6 +1061,24 @@ } } }, + "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.", @@ -1209,9 +1263,9 @@ } }, { - "name": "fee_details", + "name": "amount_fee", "value": { - "total": 0.1 + "amount": 0.1 } } ], @@ -1412,6 +1466,24 @@ } } }, + "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.", @@ -1768,6 +1840,16 @@ } } } + }, + { + "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": { @@ -1881,6 +1963,24 @@ } } }, + "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.", @@ -2073,9 +2173,9 @@ } }, { - "name": "fee_details", + "name": "amount_fee", "value": { - "total": 0.1, + "amount": 0.1, "asset": "iso4217:USD" } }, @@ -2165,6 +2265,16 @@ "description": "A unique transaction identifier.", "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": { @@ -2278,6 +2388,24 @@ } } }, + "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.", @@ -2542,6 +2670,16 @@ "description": "A unique transaction identifier.", "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": { @@ -2655,6 +2793,24 @@ } } }, + "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.", @@ -3126,6 +3282,24 @@ } } }, + "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.", @@ -3324,9 +3498,9 @@ } }, { - "name": "fee_details", + "name": "amount_fee", "value": { - "total": 0.1 + "amount": 0.1 } }, { @@ -3541,6 +3715,24 @@ } } }, + "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.", @@ -3763,7 +3955,7 @@ { "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`, `fee_details`) must be specified. ", + "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": [ { @@ -4009,6 +4201,24 @@ } } }, + "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.", @@ -4389,6 +4599,24 @@ } } }, + "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.", @@ -4812,6 +5040,24 @@ } } }, + "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.", @@ -5248,6 +5494,24 @@ } } }, + "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.", @@ -5624,6 +5888,24 @@ } } }, + "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.", @@ -5986,6 +6268,24 @@ } } }, + "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.", @@ -6355,6 +6655,24 @@ } } }, + "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.", @@ -6717,6 +7035,24 @@ } } }, + "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.", @@ -7084,6 +7420,24 @@ } } }, + "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.", @@ -7435,6 +7789,16 @@ } } } + }, + { + "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": { @@ -7548,6 +7912,24 @@ } } }, + "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.", @@ -7740,9 +8122,9 @@ } }, { - "name": "fee_details", + "name": "amount_fee", "value": { - "total": 0.1, + "amount": 0.1, "asset": "iso4217:USD" } }, @@ -7846,6 +8228,30 @@ } } }, + { + "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_out", "description": "This is required if the transaction is associated with a firm quote and for transactions where `amount_in.asset` and `amount_out.asset` are the same.", @@ -7950,6 +8356,16 @@ "schema": { "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": { @@ -8063,6 +8479,24 @@ } } }, + "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.", @@ -8255,9 +8689,9 @@ } }, { - "name": "fee_details", + "name": "amount_fee", "value": { - "total": 0.1, + "amount": 0.1, "asset": "stellar:USDC:GBBD47IF6LWK7P7MDEVSCWR7DPUWV3NY3DTQEVFL4NAT4AQH3ZLLFLA5" } }, @@ -8336,6 +8770,16 @@ "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": { @@ -8449,6 +8893,24 @@ } } }, + "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.", diff --git a/static/stellar-rpc.openrpc.json b/static/stellar-rpc.openrpc.json index 3998c52b8..543e5da8a 100644 --- a/static/stellar-rpc.openrpc.json +++ b/static/stellar-rpc.openrpc.json @@ -33,7 +33,7 @@ { "name": "getEvents", "summary": "returns contract events", - "description": "Clients can request a filtered list of events emitted by a given ledger range.\n\nSoroban-RPC will support querying within a maximum 24 hours of recent ledgers.\n\nNote, this could be used by the client to only prompt a refresh when there is a new ledger with relevant events. It should also be used by backend Dapp components to \"ingest\" events into their own database for querying and serving.\n\nIf making multiple requests, clients should deduplicate any events received, based on the event's unique id field. This prevents double-processing in the case of duplicate events being received.\n\nBy default soroban-rpc retains the most recent 24 hours of events.", + "description": "Clients can request a filtered list of events emitted by a given ledger range.\n\nSoroban-RPC will support querying within a maximum 7 days of recent ledgers.\n\nNote, this could be used by the client to only prompt a refresh when there is a new ledger with relevant events. It should also be used by backend Dapp components to \"ingest\" events into their own database for querying and serving.\n\nIf making multiple requests, clients should deduplicate any events received, based on the event's unique id field. This prevents double-processing in the case of duplicate events being received.\n\nBy default soroban-rpc retains the most recent 7 days of events.", "externalDocs": { "url": "https://developers.stellar.org/docs/data/rpc/api-reference/methods/getEvents" }, @@ -663,7 +663,7 @@ "description": "Array containing the keys of the ledger entries you wish to retrieve. (an array of serialized base64 strings)", "required": true, "schema": { - "description": "Array containing ledger keys.", + "description": "Array containing ledger keys. The maximum number of ledger keys accepted is 200.", "type": "array", "items": { "type": "string",