diff --git a/signing/paths/public_keys.yaml b/signing/paths/public_keys.yaml index 59f38d1..e3bf38b 100644 --- a/signing/paths/public_keys.yaml +++ b/signing/paths/public_keys.yaml @@ -12,8 +12,19 @@ get: schema: type: array items: - type: string - example: '0x93247f2209abcacf57b75a51dafae777f9dd38bc7053d1af526f220a7489a6d3a2753e5f3e8b1cfe39b56f43611df74a' + oneOf: + - type: string + - type: object + properties: + pubkey: + type: string + block_properties: + type: array + items: + type: string + example: + - pubkey: '0x93247f2209abcacf57b75a51dafae777f9dd38bc7053d1af526f220a7489a6d3a2753e5f3e8b1cfe39b56f43611df74a' + block_properties: ['.execution_payload.fee_recipient', '.graffiti'] '400': description: 'Bad request format' '500': diff --git a/signing/paths/sign.yaml b/signing/paths/sign.yaml index dadb8ee..b8c1d79 100644 --- a/signing/paths/sign.yaml +++ b/signing/paths/sign.yaml @@ -49,6 +49,17 @@ post: BLOCK_V2 (DENEB): value: type: "BLOCK_V2" + proofs: + - index: "401" + proof: + - "0x779b271e405f605a48317e56cac7d45363866a55dd4e0895f4df104d09e7a192" + - "0x644d4588f408c24fe29e8ca8b668d6cffcedd9496682cda1ad564532f67f58f9" + - "0xb4a81f606555f57fa28b1a394acfc79a2c4b4a12cb406fc4efba434833732322" + - "0xdc07f92f1f0079b9724556f0e74b30b816b20beb9dd98629a5d85d7ff1ee7276" + - "0xface4c8dc79e2dad391b534b69530d4470eb551927548555854d2022fe2b22a0" + - "0x336488033fe5f3ef4ccc12af07b9370b92e553e35ecb4a337a1b1c0e4afe1e0e" + - "0xdb56114e00fdd4c1f85c892bf35ac9a89289aaecb1ebd0a96cde606a748b5d71" + - "0x60ba834cd8f04bb6edf3276fc70d9731148ee1c8e1efd6b7c685f82e721176ef" signingRoot: "0xaa2e0c465c1a45d7b6637fcce4ad6ceb71fc12064b548078d619a411f0de8adc" fork_info: fork: @@ -65,8 +76,19 @@ post: state_root: "0xfd18cf40cc907a739be483f1ca0ee23ad65cdd3df23205eabc6d660a75d1f54e" body_root: "0xa759d8029a69d4fdd8b3996086e9722983977e4efc1f12f4098ea3d93e868a6b" BLOCK_V2 (CAPELLA): - value: + value: type: "BLOCK_V2" + proofs: + - index: "401" + proof: + - "0x779b271e405f605a48317e56cac7d45363866a55dd4e0895f4df104d09e7a192" + - "0x644d4588f408c24fe29e8ca8b668d6cffcedd9496682cda1ad564532f67f58f9" + - "0xb4a81f606555f57fa28b1a394acfc79a2c4b4a12cb406fc4efba434833732322" + - "0xdc07f92f1f0079b9724556f0e74b30b816b20beb9dd98629a5d85d7ff1ee7276" + - "0xface4c8dc79e2dad391b534b69530d4470eb551927548555854d2022fe2b22a0" + - "0x336488033fe5f3ef4ccc12af07b9370b92e553e35ecb4a337a1b1c0e4afe1e0e" + - "0xdb56114e00fdd4c1f85c892bf35ac9a89289aaecb1ebd0a96cde606a748b5d71" + - "0x60ba834cd8f04bb6edf3276fc70d9731148ee1c8e1efd6b7c685f82e721176ef" signingRoot: "0xaa2e0c465c1a45d7b6637fcce4ad6ceb71fc12064b548078d619a411f0de8adc" fork_info: fork: diff --git a/signing/schemas.yaml b/signing/schemas.yaml index b987b7e..9da34bb 100644 --- a/signing/schemas.yaml +++ b/signing/schemas.yaml @@ -1,5 +1,29 @@ components: schemas: + Verifying: + type: "object" + properties: + proofs: + type: "array" + nullable: true + items: + type: "object" + properties: + proof: + type: "array" + description: Merkle proof against the block body root included in the request + items: + $ref: "#/components/schemas/Proof" + index: + type: "string" + description: Generalized index of the field + example: "401" + required: + - proof + - index + Proof: + type: "string" + example: "0x779b271e405f605a48317e56cac7d45363866a55dd4e0895f4df104d09e7a192" Signing: type: "object" properties: @@ -472,6 +496,7 @@ components: type: string BeaconBlockSigning: allOf: + - $ref: '#/components/schemas/Verifying' - $ref: '#/components/schemas/Signing' - $ref: '#/components/schemas/BeaconBlockRequest' - type: object @@ -480,7 +505,6 @@ components: type: "string" description: Signing Request type example: 'BLOCK_V2' - BeaconBlockRequest: type: object properties: