Skip to content

Commit 9d7385f

Browse files
authored
stellar-rpc: Update getEvents schema for v23.0 release (#1595)
* Update getEvents schema to reflect the removal of diagnostic events and support for the new ** wildcard. * Make filters param optional. * - Update Event Id description. - Update getEvents examples. - Fix event filter type description.
1 parent 1b26025 commit 9d7385f

5 files changed

Lines changed: 112 additions & 104 deletions

File tree

openrpc/src/stellar-rpc/contentDescriptors/EventFilters.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"description": "List of filters for the returned events. Events matching any of the filters are included. To match a filter, an event must match both a contractId and a topic. Maximum 5 filters are allowed per request.",
66
"schema": {
77
"$ref": "#/components/schemas/EventFilters"
8-
}
8+
},
9+
"required": false
910
}
1011
}
Lines changed: 47 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"StartLedger": {
33
"name": "startLedger",
4-
"value": 1190000
4+
"value": 199616
55
},
66
"NativeTransfersFilter": {
77
"name": "filters",
@@ -31,81 +31,82 @@
3131
"events": [
3232
{
3333
"type": "contract",
34-
"ledger": 1192402,
35-
"ledgerClosedAt": "2024-04-19T06:19:00Z",
34+
"ledger": 200010,
35+
"ledgerClosedAt": "2025-06-30T07:27:13Z",
3636
"contractId": "CDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC",
37-
"id": "0005121327593697280-0000000002",
38-
"pagingToken": "0005121327593697280-0000000002",
37+
"id": "0000859036408881152-0000000003",
38+
"pagingToken": "0000859036408881152-0000000003",
39+
"inSuccessfulContractCall": true,
40+
"txHash": "d9e771ac73ec80503c7594f540d10ec068fb80981d11acea41aa193b7543c5ce",
3941
"topic": [
4042
"AAAADwAAAAh0cmFuc2Zlcg==",
41-
"AAAAEgAAAAAAAAAA/ItF3cwsGhkee6lL5X6kicifdluxtsuDq9J/F0zou6Q=",
42-
"AAAAEgAAAAAAAAAA2uSCoRk2StNEYAmWOhGXKQg0SLV6avaiN7TdV/uMozQ=",
43+
"AAAAEgAAAAAAAAAA6qNYcgGe/Zw2XRAUKPzIjtK2Cfp0eT8bn/BCJTcEq4s=",
44+
"AAAAEgAAAAGWF5MS3cqvdZjF5BY4yqI44bey/KmQmH9oF0gX3IIWuw==",
4345
"AAAADgAAAAZuYXRpdmUAAA=="
4446
],
45-
"value": "AAAACgAAAAAAAAAAAAAAAAX14QA=",
46-
"inSuccessfulContractCall": true,
47-
"txHash": "bd8a6611a3b44ff7dce76a27fb32fa69c9f6eff3435ca5296f6035d5105617ed"
47+
"value": "AAAACgAAAAAAAAAAAAAAAF2UTIA="
4848
},
4949
{
5050
"type": "contract",
51-
"ledger": 1192438,
52-
"ledgerClosedAt": "2024-04-19T06:22:14Z",
51+
"ledger": 201047,
52+
"ledgerClosedAt": "2025-06-30T08:53:44Z",
5353
"contractId": "CDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC",
54-
"id": "0005121482212511744-0000000002",
55-
"pagingToken": "0005121482212511744-0000000002",
54+
"id": "0000863490289963008-0000000010",
55+
"pagingToken": "0000863490289963008-0000000010",
56+
"inSuccessfulContractCall": true,
57+
"txHash": "d0ee56996d4a750989c385bde0feb322825dbcf82e8053659806e79db1998828",
5658
"topic": [
5759
"AAAADwAAAAh0cmFuc2Zlcg==",
58-
"AAAAEgAAAAAAAAAA/ItF3cwsGhkee6lL5X6kicifdluxtsuDq9J/F0zou6Q=",
59-
"AAAAEgAAAAAAAAAA2uSCoRk2StNEYAmWOhGXKQg0SLV6avaiN7TdV/uMozQ=",
60+
"AAAAEgAAAAAAAAAACMEAtVPau/0s+2y4o3aWt1MAtjmdqWNzPmy6MRVcdfo=",
61+
"AAAAEgAAAAHlC9It3oz+Kboqo4BcasoaIkOFNSzYyClfcGqpVj/sJA==",
6062
"AAAADgAAAAZuYXRpdmUAAA=="
6163
],
62-
"value": "AAAACgAAAAAAAAAAAAAAAACYloA=",
63-
"inSuccessfulContractCall": true,
64-
"txHash": "3fa1787085a4aa585507751394d70494a02e71d347446095a763ecbfc647937c"
64+
"value": "AAAACgAAAAAAAAAAAAAAAAAAAAo="
6565
}
6666
],
67-
"latestLedger": 1197926,
68-
"cursor": "0005121482212511744-0000000002"
67+
"latestLedger": 320543,
68+
"cursor": "0000863490289963008-0000000010"
6969
}
7070
},
7171
"AnyTwoEvents": {
7272
"name": "getEventsResult",
7373
"value": {
7474
"events": [
7575
{
76-
"type": "diagnostic",
77-
"ledger": 1190017,
78-
"ledgerClosedAt": "2024-04-19T02:50:17Z",
79-
"contractId": "",
80-
"id": "0005111084096696320-0000000000",
81-
"pagingToken": "0005111084096696320-0000000000",
76+
"type": "contract",
77+
"ledger": 199629,
78+
"ledgerClosedAt": "2025-06-30T06:55:26Z",
79+
"contractId": "CCSSOHTBL3LEWUCBBEB5NJFC2OKFRC74OWEIJIZLRJBGAAU4VMU5NV4W",
80+
"id": "0000857400026345472-0000000001",
81+
"pagingToken": "0000857400026345472-0000000001",
82+
"inSuccessfulContractCall": true,
83+
"txHash": "593f3ada587b687fd66afff3a38062fab4f9763172a6e1390993f7ff5a1cb555",
8284
"topic": [
83-
"AAAADwAAAAdmbl9jYWxsAA==",
84-
"AAAADQAAACBVkqNeeMWaJ6fGFVD0NhNxSTQdXVfI6TONZODy5H/xvg==",
85-
"AAAADwAAAAlzZXRfcHJpY2UAAAA="
85+
"AAAADwAAAAlyZWZsZWN0b3IAAAA=",
86+
"AAAADwAAAAZwcmljZXMAAA==",
87+
"AAAADwAAAAZ1cGRhdGUAAA=="
8688
],
87-
"value": "AAAAEAAAAAEAAAADAAAAEgAAAAAAAAAA858ZjeNabvXLtYtAqjhYbr6rR/MbcXLFLbxWY8fGUAgAAAAQAAAAAQAAABAAAAAKAAAAAAAAAABTWsrEVyIb1AAAAAoAAAAAAAAAAAP9XFVkfEupAAAACgAAAAAAAAAAAABa9LTrFrkAAAAKAAAAAAAAAAAAACq5DCLjjwAAAAoAAAAAAAAAAAAuBCdIqyAdAAAACgAAAAAAAAAAAABa9mXQ2hAAAAAKAAAAAAAAAAAAACbhkTWsHAAAAAoAAAAAAAAAAAALcW2qL4PCAAAACgAAAAAAAAAAAAI9JfSlL3wAAAAKAAAAAAAAAAAAADjldDj7agAAAAoAAAAAAAAAAAAElSMStjuiAAAACgAAAAAAAAAAAABa9B4QqpEAAAAKAAAAAAAAAAAAArrTgYuhhwAAAAoAAAAAAAAAAAAACXlZqfeBAAAACgAAAAAAAAAAAAJpfzLdSfEAAAAKAAAAAAAAAAAAAGBtabYd9QAAAAUAAAGO9ELDwA==",
88-
"inSuccessfulContractCall": true,
89-
"txHash": "3f81b00a78830bb0186539cceed5ac137aad0d6872dd998c533c2758fbda0a6c"
89+
"value": "AAAAEAAAAAEAAAAJAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADRVVSAAAAAAoAAAAAAAAAAAAAarej/6bAAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADR0JQAAAAAAoAAAAAAAAAAAAAfN+/atHAAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADQ0hGAAAAAAoAAAAAAAAAAAAAcfVk+YPAAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADQ0FEAAAAAAoAAAAAAAAAAAAAQpZ5zOoAAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADTVhOAAAAAAoAAAAAAAAAAAAABNXkIlOAAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADQVJTAAAAAAoAAAAAAAAAAAAAABOX2Z4AAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADQlJMAAAAAAoAAAAAAAAAAAAAEJb13GMAAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADVEhCAAAAAAoAAAAAAAAAAAAAAsyLFRqAAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAVPdGhlcgAAAAAAAA8AAAADWEFVAAAAAAoAAAAAAAAAAASQp+OEeUEA"
9090
},
9191
{
92-
"type": "diagnostic",
93-
"ledger": 1190017,
94-
"ledgerClosedAt": "2024-04-19T02:50:17Z",
95-
"contractId": "CBKZFI26PDCZUJ5HYYKVB5BWCNYUSNA5LVL4R2JTRVSOB4XEP7Y34OPN",
96-
"id": "0005111084096696320-0000000001",
97-
"pagingToken": "0005111084096696320-0000000001",
92+
"type": "contract",
93+
"ledger": 199629,
94+
"ledgerClosedAt": "2025-06-30T06:55:26Z",
95+
"contractId": "CAVLP5DH2GJPZMVO7IJY4CVOD5MWEFTJFVPD2YY2FQXOQHRGHK4D6HLP",
96+
"id": "0000857400026349568-0000000001",
97+
"pagingToken": "0000857400026349568-0000000001",
98+
"inSuccessfulContractCall": true,
99+
"txHash": "9eca73816d7baf199c923c6eb4879aa6b63145dd283c623f05d106a3c9a4622c",
98100
"topic": [
99-
"AAAADwAAAAlmbl9yZXR1cm4AAAA=",
100-
"AAAADwAAAAlzZXRfcHJpY2UAAAA="
101+
"AAAADwAAAAlyZWZsZWN0b3IAAAA=",
102+
"AAAADwAAAAZwcmljZXMAAA==",
103+
"AAAADwAAAAZ1cGRhdGUAAA=="
101104
],
102-
"value": "AAAAAQ==",
103-
"inSuccessfulContractCall": true,
104-
"txHash": "3f81b00a78830bb0186539cceed5ac137aad0d6872dd998c533c2758fbda0a6c"
105+
"value": "AAAAEAAAAAEAAAAHAAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAdTdGVsbGFyAAAAABIAAAABLH5dkYL+BORXImsTnZP2P5eUUBSUtBUr2CqINF2cq2UAAAAKAAAAAAAAAAAAAAAAAAAAAAAAABAAAAABAAAAAgAAABAAAAABAAAAAgAAAA8AAAAHU3RlbGxhcgAAAAASAAAAAdJdJghrv2iW4dAAdbmlG96OM3bVGdmc0IfSxI0ETgXBAAAACgAAAAAAAAAAAAAAEowk+FwAAAAQAAAAAQAAAAIAAAAQAAAAAQAAAAIAAAAPAAAAB1N0ZWxsYXIAAAAAEgAAAAEDbEFmdDuNxRilcJzUG+9xW/JPAxvnRGCqcwC951njFQAAAAoAAAAAAAAAAAAAWuxNCgH1AAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAdTdGVsbGFyAAAAABIAAAABpwrZOHKolMpzUngjpVN0fvP6eQACmnfUvchJrBqHThMAAAAKAAAAAAAAAAAAAAAdehfbewAAABAAAAABAAAAAgAAABAAAAABAAAAAgAAAA8AAAAHU3RlbGxhcgAAAAASAAAAATg8JlE3zvrN6cgQ9tBbokUCZ53xnrxXEdIBMQQPnCvqAAAACgAAAAAAAAAAAAAACw7wEtMAAAAQAAAAAQAAAAIAAAAQAAAAAQAAAAIAAAAPAAAAB1N0ZWxsYXIAAAAAEgAAAAFBETE4jFssCsKOyU08hwHscIoSYhUEUkO0dhV8QRP9rQAAAAoAAAAAAAAAAAAAABNYI4s2AAAAEAAAAAEAAAACAAAAEAAAAAEAAAACAAAADwAAAAdTdGVsbGFyAAAAABIAAAABgoavkxQqSDdQ0Z3vRlwVqAiggskSD6a4g7Zql4s3jpYAAAAKAAAAAAAAAAAAAGJFGso+IQ=="
105106
}
106107
],
107-
"latestLedger": 1197964,
108-
"cursor": "0005111084096696320-0000000001"
108+
"latestLedger": 320508,
109+
"cursor": "0000857400026349568-0000000001"
109110
}
110111
}
111112
}

openrpc/src/stellar-rpc/schemas/Event.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,10 @@
4646
"title": "type",
4747
"description": "The type of event emission.",
4848
"type": "string",
49-
"enum": [ "contract", "diagnostic", "system" ]
49+
"enum": [ "contract", "system" ]
5050
},
5151
"EventId": {
52-
"description": "Unique identifier for this event.\n\n- The event's unique id field is based on a [`toid` from Horizon](https://github.com/stellar/go/blob/master/toid/main.go) as used in Horizon's /effects endpoint.\n\n- https://github.com/stellar/go/blob/master/services/horizon/internal/db2/history/effect.go#L58\n\n- Specifically, it is a string containing:\n\n- bigint(32 bit ledger sequence + 20 bit txn number + 12 bit operation) + `<hyphen>` + number for the event within the operation.\n\n- For example: `1234-1`",
52+
"description": "Unique identifier for this event, based on the [TOID](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0035.md#specification) format. It combines a 19-character TOID and a 10-character, zero-padded event index, separated by a hyphen. \n\n- For example: `0000000000000123456-0000000001`",
5353
"type": "string"
5454
},
5555
"EventValue": {

openrpc/src/stellar-rpc/schemas/EventFilters.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@
2424
"EventFilterType": {
2525
"title": "type",
2626
"type": "string",
27-
"description": "A comma separated list of event types (system, contract, or diagnostic) used to filter events. If omitted, all event types are included."
27+
"description": "Filter events by type. If omitted, all event types are included.",
28+
"enum": ["system", "contract"]
2829
},
2930
"TopicFilters": {
3031
"title": "topics",
@@ -38,7 +39,7 @@
3839
"SegmentMatcher": {
3940
"title": "SegmentMatcher",
4041
"type": "string",
41-
"description": "A `SegmentMatcher` is one of the following:\n\n- For an exact segment match, a string containing a base64-encoded ScVal\n\n- For a wildcard single-segment match, the string \"*\", matches exactly one segment."
42+
"description": "A `SegmentMatcher` is one of the following:\n\n- For an exact segment match, a string containing a base64-encoded ScVal\n\n- The string \"*\" functions as a wildcard that matches exactly one segment.\n\n- The string \"**\" matches zero or more segments and is used to match events with variable topic lengths. It can only appear as the final segment.\n\n"
4243
},
4344
"TopicFilter": {
4445
"type": "array",

0 commit comments

Comments
 (0)