forked from ethereum/builder-specs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
header.yaml
73 lines (71 loc) · 2.64 KB
/
header.yaml
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
get:
operationId: "getHeader"
summary: Get an execution payload header.
description: |
Requests a builder node to produce a valid execution payload header, which
can be integrated into a blinded beacon block and signed.
Builder must immediately return the header that is able to pay the
proposer's registered `fee_recipient` the most. If the builder is unaware
of `parent_hash`, it must error. If `pubkey` does not match the builder's
expected proposer `pubkey` for `slot`, it must error. If the builder has
not received a validator registration associated with `pubkey`, it must
error.
When possible, the builder must return a header with `gas_limit` equal to
proposer's registered value. If this isn't possible due to the large
difference between `parent.gas_limit` and the preferred `gas_limit`, the
builder must return a header that moves `gas_limit` the maximum amount
allowed under the rules of consensus (currently `parent.gas_limit +/-
parent.gas_limit / 1024`).
tags:
- Builder
parameters:
- name: slot
in: path
required: true
description: The slot for which the block should be proposed.
schema:
$ref: "../../builder-oapi.yaml#/components/schemas/Uint64"
- name: parent_hash
in: path
required: true
description: Hash of execution layer block the proposer will build on.
schema:
$ref: "../../builder-oapi.yaml#/components/schemas/Root"
- name: pubkey
in: path
required: true
description: The validator's BLS public key.
schema:
$ref: "../../builder-oapi.yaml#/components/schemas/Pubkey"
responses:
"200":
description: Success response.
content:
application/json:
schema:
title: GetHeaderResponse
type: object
properties:
version:
type: string
enum: [ bellatrix ]
example: "bellatrix"
data:
oneOf:
- $ref: "../../builder-oapi.yaml#/components/schemas/Bellatrix.SignedBuilderBid"
examples:
bellatrix:
$ref: "../../builder-oapi.yaml#/components/examples/Bellatrix.SignedBuilderBid"
"400":
description: Error response.
content:
application/json:
schema:
$ref: "../../builder-oapi.yaml#/components/schemas/ErrorMessage"
examples:
InvalidRequest:
value:
code: 400
message: "Unknown hash: missing parent hash"
"500":
$ref: "../../builder-oapi.yaml#/components/responses/InternalError"