-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnfts.proto
265 lines (226 loc) · 6.62 KB
/
nfts.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
syntax = "proto3";
package nfts.proto;
message NftEventKey {
// the primary object id
string id = 1;
// the user that triggered the event
string user_id = 2;
// the project that triggered the event
string project_id = 3;
}
enum Blockchain {
BLOCKCHAIN_UNSPECIFIED = 0;
BLOCKCHAIN_SOLANA = 1;
BLOCKCHAIN_POLYGON = 2;
BLOCKCHAIN_ETHEREUM = 3;
}
message Transaction {
bytes serialized_message = 1;
repeated string signed_message_signatures = 2;
Blockchain blockchain = 3;
}
message DropTransaction {
Transaction transaction = 1;
string project_id = 2;
}
message MintTransaction {
Transaction transaction = 1;
string project_id = 2;
string drop_id = 3;
}
message UpdateMetadataTransaction {
Transaction transaction = 1;
string project_id = 2;
string drop_id = 3;
}
message TransferMintTransaction {
Transaction transaction = 1;
string address = 2;
string sender = 3;
string recipient = 4;
string transfer_id = 6;
}
message Creator {
string address = 1;
int32 share = 2;
bool verified = 3;
}
message MasterEdition {
string name = 3;
string symbol = 4;
string metadata_uri = 5;
repeated Creator creators = 6;
int32 seller_fee_basis_points = 7;
optional int64 supply = 8;
string owner_address = 9;
}
message MetaplexMetadata {
string name = 3;
string symbol = 4;
string metadata_uri = 5;
repeated Creator creators = 6;
int32 seller_fee_basis_points = 7;
string owner_address = 9;
}
message MetaplexMasterEditionTransaction {
MasterEdition master_edition = 3;
}
message MintMetaplexMetadataTransaction {
string recipient_address = 1;
MetaplexMetadata metadata = 2;
string collection_id = 3;
bool compressed = 4;
}
message MetaplexUpdateMetadataTransaction {
MetaplexMetadata metadata = 1;
}
message MintMetaplexEditionTransaction {
string recipient_address = 3;
string owner_address = 4;
int64 edition = 5;
string collection_id = 6;
}
message TransferMetaplexAssetTransaction {
string recipient_address = 1;
string owner_address = 2;
string collection_mint_id = 3;
}
message EditionInfo {
string description = 1;
string image_uri = 2;
string collection = 3;
string uri = 4;
string creator = 5;
}
message CreateEditionTransaction {
EditionInfo edition_info = 1;
int64 amount = 6;
int32 fee_numerator = 7;
string fee_receiver = 8;
}
message MintEditionTransaction {
string receiver = 2;
int64 amount = 3;
string collection_id = 4;
}
message UpdateEdtionTransaction {
EditionInfo edition_info = 1;
}
enum CreationStatus {
IN_PROGRESS = 0;
COMPLETED = 1;
FAILED = 2;
QUEUED = 3;
}
message DropCreation {
CreationStatus status = 2;
string collection_id = 3;
}
message CollectionCreation {
CreationStatus status = 2;
}
message MintCollectionCreation {
string collection_id = 1;
CreationStatus status = 2;
}
message MintCreation {
string drop_id = 1;
CreationStatus status = 2;
}
message SolanaEvents {
oneof event {
MetaplexMasterEditionTransaction create_drop = 1;
MetaplexMasterEditionTransaction retry_drop = 2;
MetaplexMasterEditionTransaction update_drop = 3;
MintMetaplexEditionTransaction mint_drop = 4;
MintMetaplexEditionTransaction retry_mint_drop = 5;
TransferMetaplexAssetTransaction transfer_asset = 6;
}
}
message TransferPolygonAsset {
string collection_mint_id = 1;
string owner_address = 2;
string recipient_address = 3;
int64 amount = 4;
}
message PolygonEvents {
oneof event {
CreateEditionTransaction create_drop = 1;
MintEditionTransaction mint_drop = 2;
UpdateEdtionTransaction update_drop = 3;
CreateEditionTransaction retry_drop = 4;
MintEditionTransaction retry_mint_drop = 5;
TransferPolygonAsset transfer_asset = 6;
}
}
message CollectionImport {
string mint_address = 1;
}
message UpdateSolanaMintPayload {
string mint_id = 1;
MetaplexMetadata metadata = 2;
string collection_id = 3;
}
message RetryUpdateSolanaMintPayload {
string mint_id = 1;
string collection_id = 2;
}
message SolanaUpdatedMintPayload {
string mint_id = 1;
}
message SwitchCollectionPayload {
string mint_id = 1;
string collection_id = 2;
}
message MintOpenDropTransaction {
string recipient_address = 1;
MetaplexMetadata metadata = 2;
string mint_id = 3;
}
message SolanaMintOpenDropBatchedPayload {
string collection_id = 1;
bool compressed = 2;
repeated MintOpenDropTransaction mint_open_drop_transactions = 3;
}
message NftEvents {
oneof event {
DropTransaction create_drop = 4;
MintTransaction mint_drop = 5;
UpdateMetadataTransaction update_metadata = 6;
TransferMintTransaction transfer_mint = 7;
MintTransaction retry_mint = 8;
DropTransaction retry_drop = 9;
DropCreation drop_created = 10;
MintCreation drop_minted = 11;
CreateEditionTransaction polygon_create_drop = 20;
MintEditionTransaction polygon_mint_drop = 21;
UpdateEdtionTransaction polygon_update_drop = 22;
CreateEditionTransaction polygon_retry_drop = 23;
MintEditionTransaction polygon_retry_mint_drop = 24;
TransferPolygonAsset polygon_transfer_asset = 25;
MetaplexMasterEditionTransaction solana_create_edition_drop = 26;
MetaplexMasterEditionTransaction solana_retry_edition_drop = 27;
MetaplexMasterEditionTransaction solana_update_edition_drop = 28;
MintMetaplexEditionTransaction solana_mint_edition_drop = 29;
MintMetaplexEditionTransaction solana_retry_mint_edition_drop = 30;
TransferMetaplexAssetTransaction solana_transfer_asset = 31;
MetaplexMasterEditionTransaction solana_create_collection = 32;
MetaplexMasterEditionTransaction solana_update_collection = 33;
MetaplexMasterEditionTransaction solana_retry_create_collection = 34;
MintMetaplexMetadataTransaction solana_mint_to_collection = 35;
MintMetaplexMetadataTransaction solana_retry_mint_to_collection = 36;
CollectionCreation collection_created = 37;
MintCollectionCreation minted_to_collection = 38;
CollectionImport started_importing_solana_collection = 39;
UpdateSolanaMintPayload solana_updated_collection_mint = 41;
RetryUpdateSolanaMintPayload solana_retry_updated_collection_mint = 42;
SolanaUpdatedMintPayload solana_mint_updated = 43;
SwitchCollectionPayload solana_switch_mint_collection_requested = 44;
MetaplexMasterEditionTransaction solana_create_open_drop = 45;
MetaplexMasterEditionTransaction solana_retry_open_drop = 46;
MetaplexMasterEditionTransaction solana_update_open_drop = 47;
MintMetaplexMetadataTransaction solana_mint_open_drop = 48;
MintMetaplexMetadataTransaction solana_retry_mint_open_drop = 49;
SolanaMintOpenDropBatchedPayload solana_mint_open_drop_batched = 50;
}
}