Skip to content

Commit dd1989f

Browse files
committed
schemas/tx: add 4844 tx
1 parent fe8e13c commit dd1989f

File tree

1 file changed

+83
-0
lines changed

1 file changed

+83
-0
lines changed

src/schemas/transaction.yaml

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,63 @@
1+
Transaction4844Unsigned:
2+
type: object
3+
title: EIP-4844 transaction.
4+
required:
5+
- type
6+
- nonce
7+
- address
8+
- gas
9+
- value
10+
- input
11+
- maxPriorityFeePerGas
12+
- maxFeePerGas
13+
- maxFeePerBlobGas
14+
- accessList
15+
- chainId
16+
properties:
17+
type:
18+
title: type
19+
$ref: '#/components/schemas/byte'
20+
nonce:
21+
title: nonce
22+
$ref: '#/components/schemas/uint'
23+
to:
24+
title: to address
25+
$ref: '#/components/schemas/address'
26+
gas:
27+
title: gas limit
28+
$ref: '#/components/schemas/uint'
29+
value:
30+
title: value
31+
$ref: '#/components/schemas/uint'
32+
input:
33+
title: input data
34+
$ref: '#/components/schemas/bytes'
35+
maxPriorityFeePerGas:
36+
title: max priority fee per gas
37+
description: Maximum fee per gas the sender is willing to pay to miners in wei
38+
$ref: '#/components/schemas/uint'
39+
maxFeePerGas:
40+
title: max fee per gas
41+
description: The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei
42+
$ref: '#/components/schemas/uint'
43+
maxFeePerBlobGas:
44+
title: max fee per blob gas
45+
description: The maximum total fee per gas the sender is willing to pay for blob gas in wei
46+
$ref: '#components/schemas/uint'
47+
accessList:
48+
title: accessList
49+
description: EIP-2930 access list
50+
$ref: '#/components/schemas/AccessList'
51+
blobVersionedHashes:
52+
title: blobVersionedHashes
53+
description: List of versioned blob hashes associated with the transaction's EIP-4844 data blobs.
54+
type: array
55+
items:
56+
$ref: '#/components/schemas/hash32'
57+
chainId:
58+
title: chainId
59+
description: Chain ID that this transaction is valid on.
60+
$ref: '#/components/schemas/uint'
161
AccessListEntry:
262
title: Access list entry
363
type: object
@@ -164,9 +224,31 @@ TransactionLegacyUnsigned:
164224
$ref: '#/components/schemas/uint'
165225
TransactionUnsigned:
166226
oneOf:
227+
- $ref: '#/components/schemas/Transaction4844Unsigned'
167228
- $ref: '#/components/schemas/Transaction1559Unsigned'
168229
- $ref: '#/components/schemas/Transaction2930Unsigned'
169230
- $ref: '#/components/schemas/TransactionLegacyUnsigned'
231+
Transaction4844Signed:
232+
title: Signed 4844 Transaction
233+
type: object
234+
allOf:
235+
- $ref: '#/components/schemas/Transaction4844Unsigned'
236+
- title: EIP-4844 transaction signature properties.
237+
required:
238+
- yParity
239+
- r
240+
- s
241+
properties:
242+
yParity:
243+
title: yParity
244+
description: The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature.
245+
$ref: '#/components/schemas/uint'
246+
r:
247+
title: r
248+
$ref: '#/components/schemas/uint'
249+
s:
250+
title: s
251+
$ref: '#/components/schemas/uint'
170252
Transaction1559Signed:
171253
title: Signed 1559 Transaction
172254
type: object
@@ -239,6 +321,7 @@ TransactionLegacySigned:
239321
$ref: '#/components/schemas/uint'
240322
TransactionSigned:
241323
oneOf:
324+
- $ref: '#/components/schemas/Transaction4844Signed'
242325
- $ref: '#/components/schemas/Transaction1559Signed'
243326
- $ref: '#/components/schemas/Transaction2930Signed'
244327
- $ref: '#/components/schemas/TransactionLegacySigned'

0 commit comments

Comments
 (0)