@reclaimprotocol/reclaim-client-sdk
v0.0.12
Published
Reclaim client SDK
Downloads
45
Readme
Reclaim Client SDK
Introduction
Reclaim Client SDK enables you to request proofs for data owned by your user in the web2 world. Under the hood, it uses Reclaim Protocol to generate the proofs. For more details on the working of Reclaim Protocol, visit https://docs.reclaimprotocol.org
Getting started
Install the SDK:
npm i @reclaimprotocol/reclaim-client-sdk
Import the SDK into your frontend code:
import ReclaimSDK from '@reclaimprotocol/reclaim-client-sdk'
Initialize the SDK with your Reclaim application ID:
const reclaimSDK = new ReclaimSDK(<YOUR_RECLAIM_APP_ID>)
Make sure to replace
<YOUR_RECLAIM_APP_ID>
with the actual application ID obtained from the Reclaim Developer Portal (https://dev.reclaimprotocol.org).Generate a session for a user to submit proofs:
const userId = '<USER_ID>' // Replace with the user's ID const session = await reclaimSDK.generateSession(userId)
The generateSession method returns an object with the following properties:
status
: The status of the session generation, either "success" or "failed".sessionId
: The ID of the generated session. Store this value for later use.link
: The submission link that can be displayed to the user as a QR code or a clickable link.onSubmission
: A promise that resolves when the user submits the proofs.
Handle the session and proof submission:
// Display the verification link to the user, e.g., as a QR code if (session.link) { // Display the link or QR code } // Check if proof has been submitted try { const submissionData = await session?.onSubmission if(submissionData?.isProofSubmitted) { // Handle successful proof submission } } catch(e) { // Handle submission timeout or error }
The
onSubmission
promise polls the session status until the proofs are submitted or a timeout occurs (default timeout is 5 minutes).Retrieve proofs submitted for a session:
const sessionId = '<SESSION_ID>'; // Replace with the session ID const proofs = await reclaimSDK.getProofs(sessionId);
The
getProofs
method returns an object with the following properties:status
: The status of the proof retrieval, either "success" or "failed".proofs
: An array of proof objects submitted for the session.