Skip to main content
POST
/
v1
/
key_quorums
Create key quorum
curl --request POST \
  --url https://api.privy.io/v1/key_quorums \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --header 'privy-app-id: <privy-app-id>' \
  --data '
{
  "display_name": "Prod key quorum",
  "public_keys": [
    "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEx4aoeD72yykviK+f/ckqE2CItVIG\n1rCnvC3/XZ1HgpOcMEMialRmTrqIK4oZlYd1RfxU3za/C9yjhboIuoPD3g==",
    "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErzZtQr/bMIh3Y8f9ZqseB9i/AfjQ\nhu+agbNqXcJy/TfoNqvc/Y3Mh7gIZ8ZLXQEykycx4mYSpqrxp1lBKqsZDQ=="
  ],
  "authorization_threshold": 1
}
'
{
  "id": "tb54eps4z44ed0jepousxi4n",
  "display_name": "Prod key quorum",
  "authorization_threshold": 1,
  "authorization_keys": [
    {
      "public_key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEx4aoeD72yykviK+f/ckqE2CItVIG\n1rCnvC3/XZ1HgpOcMEMialRmTrqIK4oZlYd1RfxU3za/C9yjhboIuoPD3g==",
      "display_name": null
    },
    {
      "public_key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAErzZtQr/bMIh3Y8f9ZqseB9i/AfjQ\nhu+agbNqXcJy/TfoNqvc/Y3Mh7gIZ8ZLXQEykycx4mYSpqrxp1lBKqsZDQ==",
      "display_name": null
    }
  ]
}

SDK methods

Learn more about creating key quorums using our SDKs here.

Authorizations

Authorization
string
header
required

Basic Auth header with your app ID as the username and your app secret as the password.

Headers

privy-app-id
string
required

ID of your Privy app.

Body

application/json

Request input for creating or updating a key quorum.

public_keys
string[]

List of P-256 public keys of the keys that should be authorized to sign on the key quorum, in base64-encoded DER format.

authorization_threshold
number

The number of keys that must sign for an action to be valid. Must be less than or equal to total number of key quorum members.

Required range: x >= 1
display_name
string
Maximum string length: 50
user_ids
string[]

List of user IDs of the users that should be authorized to sign on the key quorum.

key_quorum_ids
string[]

List of key quorum IDs that should be members of this key quorum. Key quorums can only be nested 1 level deep.

Required array length: 1 - 5 elements

Response

200 - application/json

Newly created key quorum.

A key quorum for authorizing wallet operations.

id
string<cuid2>
required
authorization_keys
object[]
required
display_name
string
Maximum string length: 50
authorization_threshold
number
Required range: x >= 1
user_ids
string[]
key_quorum_ids
string[]

List of nested key quorum IDs that are members of this key quorum.

Required array length: 1 - 5 elements