---
title: "Create zkLogin ZKP"
method: POST
path: "/v1/zklogin/zkp"
---

# Create zkLogin ZKP

`POST /v1/zklogin/zkp`

## Request

- Base URL: `http://api.enoki.mystenlabs.com`
- URL: `http://api.enoki.mystenlabs.com/v1/zklogin/zkp`
- Auth: HTTP bearer

Creates a zero-knowledge proof, which is used to submit transactions to Sui.

## Headers

- `zklogin-jwt` string, required: The JWT of the user signed in with zkLogin.

## Request body

- ZKPRequest
  - `network` 'testnet' | 'mainnet' | 'devnet': The Sui network you wish to use. Defaults to `mainnet`.
  - `ephemeralPublicKey` string, required: The ephemeral public key created during the zkLogin process, encoded as a base64 string.
  - `maxEpoch` integer, required: The `maxEpoch` created during the zkLogin process.
  - `randomness` string, required: The `randomness` created during the zkLogin process.

## Response `200`

Successful response

- ZKPResponse
  - `data` object, required
    - `proofPoints` unknown
    - `issBase64Details` unknown
    - `headerBase64` unknown
    - `addressSeed` string, required

---

[API](https://skmtc.dev/mystenlabs/apis/enoki-api-specification.md) - [All operations](https://skmtc.dev/mystenlabs/apis/enoki-api-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/mystenlabs/apis/enoki-api-specification/revisions/2ac8d418823a?raw)
