swagger: "2.0"
info:
title: admin.proto
version: version not set
tags:
- name: Admin
- name: KeyManager
- name: Signer
consumes:
- application/json
produces:
- application/json
paths:
/admin.v1.Admin/GenerateNewApiKey:
post:
operationId: Admin_GenerateNewApiKey
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1GenerateNewApiKeyResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1GenerateNewApiKeyRequest'
tags:
- Admin
/admin.v1.Admin/ListAllKeys:
post:
operationId: Admin_ListAllKeys
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1ListAllKeysResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1ListAllKeysRequest'
tags:
- Admin
/admin.v1.Admin/LockKey:
post:
operationId: Admin_LockKey
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1LockKeyResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1LockKeyRequest'
tags:
- Admin
/admin.v1.Admin/UnlockKey:
post:
operationId: Admin_UnlockKey
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1UnlockKeyResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1UnlockKeyRequest'
tags:
- Admin
/keymanager.v1.KeyManager/GenerateKeyPair:
post:
operationId: KeyManager_GenerateKeyPair
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1GenerateKeyPairResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1GenerateKeyPairRequest'
tags:
- KeyManager
/keymanager.v1.KeyManager/GetKeyMetadata:
post:
operationId: KeyManager_GetKeyMetadata
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1GetKeyMetadataResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1GetKeyMetadataRequest'
tags:
- KeyManager
/keymanager.v1.KeyManager/ImportKey:
post:
operationId: KeyManager_ImportKey
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1ImportKeyResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1ImportKeyRequest'
tags:
- KeyManager
/keymanager.v1.KeyManager/ListKeys:
post:
operationId: KeyManager_ListKeys
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1ListKeysResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1ListKeysRequest'
tags:
- KeyManager
/signer.v1.Signer/SignG1:
post:
operationId: Signer_SignG1
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1SignG1Response'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1SignG1Request'
tags:
- Signer
/signer.v1.Signer/SignGeneric:
post:
operationId: Signer_SignGeneric
responses:
"200":
description: A successful response.
schema:
$ref: '#/definitions/v1SignGenericResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/rpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1SignGenericRequest'
tags:
- Signer
definitions:
protobufAny:
type: object
properties:
'@type':
type: string
additionalProperties: {}
rpcStatus:
type: object
properties:
code:
type: integer
format: int32
message:
type: string
details:
type: array
items:
type: object
$ref: '#/definitions/protobufAny'
v1GenerateKeyPairRequest:
type: object
properties:
password:
type: string
title: |-
Password to encrypt the private key
This will be only used if the keystore is local filesystem based
v1GenerateKeyPairResponse:
type: object
properties:
publicKeyG1:
type: string
title: G1 Public key hex of the generated keypair
privateKey:
type: string
title: Private key hex of the generated keypair
mnemonic:
type: string
title: Mnemonic of the generated keypair
publicKeyG2:
type: string
title: G2 Public key hex of the generated keypair
apiKey:
type: string
title: API key associated with the keypair
v1GenerateNewApiKeyRequest:
type: object
properties:
publicKeyG1:
type: string
v1GenerateNewApiKeyResponse:
type: object
properties:
publicKeyG1:
type: string
apiKey:
type: string
v1GetKeyMetadataRequest:
type: object
properties:
publicKeyG1:
type: string
title: Public key to get
v1GetKeyMetadataResponse:
type: object
properties:
publicKeyG1:
type: string
title: Public key G1
publicKeyG2:
type: string
title: Public key G2
createdAt:
type: string
format: int64
title: Unix timestamp of when the key was created
updatedAt:
type: string
format: int64
title: Unix timestamp of when the key was last updated
v1ImportKeyRequest:
type: object
properties:
privateKey:
type: string
title: Plaintext hex private key of the keypair or BigInteger
mnemonic:
type: string
title: Mnemonic of the keypair to import. One of private_key or mnemonic should be provided
password:
type: string
title: Password to encrypt the private key
v1ImportKeyResponse:
type: object
properties:
publicKeyG1:
type: string
title: G1 Public key hex of the imported keypair
publicKeyG2:
type: string
title: G2 Public key hex of the imported keypair
apiKey:
type: string
title: API key associated with the keypair
v1KeyMetadata:
type: object
properties:
publicKeyG1:
type: string
publicKeyG2:
type: string
locked:
type: boolean
createdAt:
type: string
updatedAt:
type: string
v1ListAllKeysRequest:
type: object
v1ListAllKeysResponse:
type: object
properties:
keys:
type: array
items:
type: object
$ref: '#/definitions/v1KeyMetadata'
v1ListKeysRequest:
type: object
v1ListKeysResponse:
type: object
properties:
publicKeys:
type: array
items:
type: object
$ref: '#/definitions/v1PublicKey'
title: List of public keys
v1LockKeyRequest:
type: object
properties:
publicKeyG1:
type: string
v1LockKeyResponse:
type: object
v1PublicKey:
type: object
properties:
publicKeyG1:
type: string
title: G1 Public key
publicKeyG2:
type: string
title: G2 Public key
v1SignG1Request:
type: object
properties:
publicKeyG1:
type: string
title: G1 public key of the keypair to sign with
data:
type: string
format: byte
title: |-
Serialized G1 point to sign
https://github.com/Layr-Labs/cerberus/blob/bd104cafcb8e96bb54aa532e4f210023a6743ab5/internal/crypto/bn254.go#L11
password:
type: string
title: Password to unlock the keypair if using local filesystem for keystore
v1SignG1Response:
type: object
properties:
signature:
type: string
format: byte
title: Signature of the data
v1SignGenericRequest:
type: object
properties:
publicKeyG1:
type: string
title: G1 public key of the keypair to sign with
data:
type: string
format: byte
title: Data to sign
password:
type: string
title: Password to unlock the keypair if using local filesystem for keystore
v1SignGenericResponse:
type: object
properties:
signature:
type: string
format: byte
title: Signature of the data
v1UnlockKeyRequest:
type: object
properties:
publicKeyG1:
type: string
v1UnlockKeyResponse:
type: object