@sip-protocol/sipher-client
v0.1.1
Published
Privacy-as-a-Skill TypeScript client — stealth addresses, shielded transfers, Pedersen commitments, viewing keys, and more
Maintainers
Readme
@sip-protocol/[email protected]
A TypeScript SDK client for the sipher.sip-protocol.org API.
Usage
First, install the SDK from npm.
npm install @sip-protocol/sipher-client --saveNext, try it out.
import {
Configuration,
AdminApi,
} from '@sip-protocol/sipher-client';
import type { CreateAdminKeyOperationRequest } from '@sip-protocol/sipher-client';
async function example() {
console.log("🚀 Testing @sip-protocol/sipher-client SDK...");
const config = new Configuration({
// To configure API key authorization: ApiKeyAuth
apiKey: "YOUR API KEY",
});
const api = new AdminApi(config);
const body = {
// CreateAdminKeyRequest
createAdminKeyRequest: ...,
} satisfies CreateAdminKeyOperationRequest;
try {
const data = await api.createAdminKey(body);
console.log(data);
} catch (error) {
console.error(error);
}
}
// Run the test
example().catch(console.error);Documentation
API Endpoints
All URIs are relative to https://sipher.sip-protocol.org
| Class | Method | HTTP request | Description | ----- | ------ | ------------ | ------------- AdminApi | createAdminKey | POST /v1/admin/keys | Create a new API key AdminApi | getAdminKey | GET /v1/admin/keys/{id} | Get API key details AdminApi | listAdminKeys | GET /v1/admin/keys | List all API keys AdminApi | listAdminTiers | GET /v1/admin/tiers | List available tiers and limits AdminApi | revokeAdminKey | DELETE /v1/admin/keys/{id} | Revoke an API key ArciumApi | decryptArciumResult | POST /v1/arcium/decrypt | Decrypt computation result ArciumApi | getArciumComputationStatus | GET /v1/arcium/compute/{id}/status | Get computation status ArciumApi | submitArciumComputation | POST /v1/arcium/compute | Submit MPC computation BackendsApi | backendsCompare | POST /v1/backends/compare | Compare privacy backends BackendsApi | backendsHealth | GET /v1/backends/{id}/health | Check backend health BackendsApi | backendsList | GET /v1/backends | List privacy backends BackendsApi | backendsSelect | POST /v1/backends/select | Select preferred backend BillingUsageApi | createBillingPortal | POST /v1/billing/portal | Generate customer portal URL BillingUsageApi | createBillingSubscription | POST /v1/billing/subscribe | Create or change subscription BillingUsageApi | getBillingSubscription | GET /v1/billing/subscription | Get current subscription BillingUsageApi | getBillingUsage | GET /v1/billing/usage | Get current period usage BillingUsageApi | handleBillingWebhook | POST /v1/billing/webhook | Stripe webhook receiver BillingUsageApi | listBillingInvoices | GET /v1/billing/invoices | List invoices CSPLApi | csplTransfer | POST /v1/cspl/transfer | Confidential token transfer CSPLApi | csplUnwrap | POST /v1/cspl/unwrap | Unwrap confidential tokens back to SPL CSPLApi | csplWrap | POST /v1/cspl/wrap | Wrap SPL tokens into confidential balance CommitmentApi | commitmentAdd | POST /v1/commitment/add | Add two commitments (homomorphic) CommitmentApi | commitmentCreate | POST /v1/commitment/create | Create Pedersen commitment CommitmentApi | commitmentCreateBatch | POST /v1/commitment/create/batch | Batch create Pedersen commitments CommitmentApi | commitmentSubtract | POST /v1/commitment/subtract | Subtract two commitments (homomorphic) CommitmentApi | commitmentVerify | POST /v1/commitment/verify | Verify Pedersen commitment ComplianceApi | complianceDisclose | POST /v1/compliance/disclose | Selective disclosure with scoped viewing key (enterprise) ComplianceApi | complianceReport | POST /v1/compliance/report | Generate encrypted audit report (enterprise) ComplianceApi | getComplianceReport | GET /v1/compliance/report/{id} | Retrieve generated compliance report (enterprise) GasAbstractionApi | getJitoBundleStatus | GET /v1/jito/bundle/{id} | Poll bundle status GasAbstractionApi | submitJitoBundle | POST /v1/jito/relay | Submit transaction(s) via Jito bundle GovernanceApi | encryptBallot | POST /v1/governance/ballot/encrypt | Encrypt a vote ballot GovernanceApi | getTally | GET /v1/governance/tally/{id} | Get tally result GovernanceApi | submitBallot | POST /v1/governance/ballot/submit | Submit encrypted ballot to a proposal GovernanceApi | tallyVotes | POST /v1/governance/tally | Tally votes for a proposal HealthApi | getErrors | GET /v1/errors | Error code catalog HealthApi | getHealth | GET /v1/health | Health check HealthApi | getReady | GET /v1/ready | Readiness probe IncoApi | computeIncoCiphertexts | POST /v1/inco/compute | Compute on encrypted data IncoApi | decryptIncoResult | POST /v1/inco/decrypt | Decrypt FHE computation result IncoApi | encryptIncoValue | POST /v1/inco/encrypt | Encrypt value with FHE PrivacyApi | privacyScore | POST /v1/privacy/score | Analyze wallet privacy score ProofsApi | proofsFulfillmentGenerate | POST /v1/proofs/fulfillment/generate | Generate fulfillment proof ProofsApi | proofsFulfillmentVerify | POST /v1/proofs/fulfillment/verify | Verify fulfillment proof ProofsApi | proofsFundingGenerate | POST /v1/proofs/funding/generate | Generate funding proof ProofsApi | proofsFundingVerify | POST /v1/proofs/funding/verify | Verify funding proof ProofsApi | proofsRangeGenerate | POST /v1/proofs/range/generate | Generate STARK range proof ProofsApi | proofsRangeVerify | POST /v1/proofs/range/verify | Verify STARK range proof ProofsApi | proofsValidityGenerate | POST /v1/proofs/validity/generate | Generate validity proof ProofsApi | proofsValidityVerify | POST /v1/proofs/validity/verify | Verify validity proof RPCApi | getRpcProviders | GET /v1/rpc/providers | List supported RPC providers and active configuration ScanApi | scanAssets | POST /v1/scan/assets | Scan stealth address assets via Helius DAS ScanApi | scanPayments | POST /v1/scan/payments | Scan for incoming shielded payments ScanApi | scanPaymentsBatch | POST /v1/scan/payments/batch | Batch scan for payments across multiple key pairs SessionsApi | createSession | POST /v1/sessions | Create agent session with default parameters (pro+) SessionsApi | deleteSession | DELETE /v1/sessions/{id} | Delete session (pro+) SessionsApi | getSession | GET /v1/sessions/{id} | Get session configuration (pro+) SessionsApi | updateSession | PATCH /v1/sessions/{id} | Update session defaults (pro+) StealthApi | stealthCheck | POST /v1/stealth/check | Check stealth address ownership StealthApi | stealthDerive | POST /v1/stealth/derive | Derive one-time stealth address StealthApi | stealthGenerate | POST /v1/stealth/generate | Generate stealth meta-address keypair StealthApi | stealthGenerateBatch | POST /v1/stealth/generate/batch | Batch generate stealth keypairs SwapApi | privateSwap | POST /v1/swap/private | Privacy-preserving token swap via Jupiter DEX TransferApi | transferClaim | POST /v1/transfer/claim | Claim stealth payment (signed) TransferApi | transferPrivate | POST /v1/transfer/private | Build unified private transfer (chain-agnostic) TransferApi | transferShield | POST /v1/transfer/shield | Build shielded transfer (unsigned) ViewingKeyApi | viewingKeyDecrypt | POST /v1/viewing-key/decrypt | Decrypt transaction with viewing key ViewingKeyApi | viewingKeyDerive | POST /v1/viewing-key/derive | Derive child viewing key (BIP32-style) ViewingKeyApi | viewingKeyDisclose | POST /v1/viewing-key/disclose | Encrypt transaction for disclosure ViewingKeyApi | viewingKeyGenerate | POST /v1/viewing-key/generate | Generate viewing key ViewingKeyApi | viewingKeyVerifyHierarchy | POST /v1/viewing-key/verify-hierarchy | Verify viewing key parent-child relationship
Models
- BackendsCompare200Response
- BackendsCompare200ResponseData
- BackendsCompare200ResponseDataComparisonsInner
- BackendsCompare200ResponseDataRecommendation
- BackendsCompareRequest
- BackendsHealth200Response
- BackendsHealth200ResponseData
- BackendsHealth200ResponseDataHealth
- BackendsHealth200ResponseDataMetrics
- BackendsList200Response
- BackendsList200ResponseData
- BackendsList200ResponseDataBackendsInner
- BackendsList200ResponseDataBackendsInnerCapabilities
- BackendsList200ResponseDataBackendsInnerHealth
- BackendsSelect200Response
- BackendsSelect200ResponseData
- BackendsSelectRequest
- CommitmentAdd200Response
- CommitmentAdd200ResponseData
- CommitmentAddRequest
- CommitmentCreate200Response
- CommitmentCreate200ResponseData
- CommitmentCreateBatch200Response
- CommitmentCreateBatch200ResponseData
- CommitmentCreateBatch200ResponseDataResultsInner
- CommitmentCreateBatchRequest
- CommitmentCreateBatchRequestItemsInner
- CommitmentCreateRequest
- CommitmentVerify200Response
- CommitmentVerify200ResponseData
- CommitmentVerifyRequest
- ComplianceDisclose200Response
- ComplianceDisclose200ResponseData
- ComplianceDiscloseRequest
- ComplianceDiscloseRequestAuditorVerification
- ComplianceDiscloseRequestScope
- ComplianceDiscloseRequestTransactionData
- ComplianceReport200Response
- ComplianceReport200ResponseData
- ComplianceReport200ResponseDataSummary
- ComplianceReportRequest
- ComputeIncoCiphertexts200Response
- ComputeIncoCiphertexts200ResponseData
- ComputeIncoCiphertextsRequest
- CreateAdminKey201Response
- CreateAdminKey201ResponseData
- CreateAdminKeyRequest
- CreateBillingPortal200Response
- CreateBillingPortal200ResponseData
- CreateBillingSubscription200Response
- CreateBillingSubscriptionRequest
- CreateSession201Response
- CreateSession201ResponseData
- CreateSessionRequest
- CreateSessionRequestDefaults
- CsplTransfer200Response
- CsplTransfer200ResponseData
- CsplTransferRequest
- CsplUnwrap200Response
- CsplUnwrap200ResponseData
- CsplUnwrapRequest
- CsplWrap200Response
- CsplWrap200ResponseData
- CsplWrapRequest
- DecryptArciumResult200Response
- DecryptArciumResult200ResponseData
- DecryptArciumResultRequest
- DecryptArciumResultRequestViewingKey
- DecryptIncoResult200Response
- DecryptIncoResult200ResponseData
- DecryptIncoResultRequest
- DeleteSession200Response
- DeleteSession200ResponseData
- EncryptBallot200Response
- EncryptBallot200ResponseData
- EncryptBallotRequest
- EncryptIncoValue200Response
- EncryptIncoValue200ResponseData
- EncryptIncoValueRequest
- EncryptIncoValueRequestPlaintext
- ErrorResponse
- EvmTransferData
- GetAdminKey200Response
- GetAdminKey200ResponseData
- GetArciumComputationStatus200Response
- GetArciumComputationStatus200ResponseData
- GetBillingSubscription200Response
- GetBillingSubscription200ResponseData
- GetBillingUsage200Response
- GetBillingUsage200ResponseData
- GetBillingUsage200ResponseDataCategoriesValue
- GetComplianceReport200Response
- GetComplianceReport200ResponseData
- GetErrors200Response
- GetErrors200ResponseData
- GetErrors200ResponseDataErrorsInner
- GetHealth200Response
- GetHealth200ResponseData
- GetHealth200ResponseDataMemory
- GetHealth200ResponseDataSolana
- GetHealth503Response
- GetHealth503ResponseError
- GetJitoBundleStatus200Response
- GetJitoBundleStatus200ResponseData
- GetReady200Response
- GetReady200ResponseData
- GetReady200ResponseDataChecks
- GetRpcProviders200Response
- GetRpcProviders200ResponseData
- GetRpcProviders200ResponseDataActive
- GetRpcProviders200ResponseDataSupportedInner
- GetSession200Response
- GetSession200ResponseData
- GetTally200Response
- GetTally200ResponseData
- HandleBillingWebhook200Response
- HandleBillingWebhook200ResponseData
- HandleBillingWebhookRequest
- ListAdminKeys200Response
- ListAdminKeys200ResponseData
- ListAdminTiers200Response
- ListAdminTiers200ResponseData
- ListAdminTiers200ResponseDataTiersInner
- ListBillingInvoices200Response
- ListBillingInvoices200ResponseData
- NearTransferData
- NearTransferDataActionsInner
- PrivacyScore200Response
- PrivacyScore200ResponseData
- PrivacyScore200ResponseDataFactors
- PrivacyScore200ResponseDataFactorsAddressReuse
- PrivacyScoreRequest
- PrivateSwap200Response
- PrivateSwap200ResponseData
- PrivateSwap200ResponseDataTransactionsInner
- PrivateSwapRequest
- PrivateSwapRequestRecipientMetaAddress
- ProofsFulfillmentGenerate200Response
- ProofsFulfillmentGenerate200ResponseData
- ProofsFulfillmentGenerate200ResponseDataProof
- ProofsFulfillmentGenerateRequest
- ProofsFulfillmentGenerateRequestOracleAttestation
- ProofsFulfillmentVerifyRequest
- ProofsFundingGenerate200Response
- ProofsFundingGenerate200ResponseData
- ProofsFundingGenerate200ResponseDataProof
- ProofsFundingGenerateRequest
- ProofsFundingVerifyRequest
- ProofsRangeGenerate200Response
- ProofsRangeGenerate200ResponseData
- ProofsRangeGenerate200ResponseDataMetadata
- ProofsRangeGenerate200ResponseDataProof
- ProofsRangeGenerateRequest
- ProofsRangeVerifyRequest
- ProofsValidityGenerate200Response
- ProofsValidityGenerate200ResponseData
- ProofsValidityGenerate200ResponseDataProof
- ProofsValidityGenerateRequest
- ProofsValidityVerifyRequest
- RevokeAdminKey200Response
- RevokeAdminKey200ResponseData
- ScanAssets200Response
- ScanAssets200ResponseData
- ScanAssets200ResponseDataAssetsInner
- ScanAssetsRequest
- ScanAssetsRequestDisplayOptions
- ScanPayments200Response
- ScanPayments200ResponseData
- ScanPayments200ResponseDataPaymentsInner
- ScanPaymentsBatch200Response
- ScanPaymentsBatch200ResponseData
- ScanPaymentsBatch200ResponseDataResultsInner
- ScanPaymentsBatch200ResponseDataResultsInnerData
- ScanPaymentsBatch200ResponseDataSummary
- ScanPaymentsBatchRequest
- ScanPaymentsBatchRequestKeyPairsInner
- ScanPaymentsRequest
- SolanaTransferData
- StealthAddress
- StealthCheck200Response
- StealthCheck200ResponseData
- StealthCheckRequest
- StealthDerive200Response
- StealthDerive200ResponseData
- StealthDeriveRequest
- StealthGenerate200Response
- StealthGenerate200ResponseData
- StealthGenerateBatch200Response
- StealthGenerateBatch200ResponseData
- StealthGenerateBatch200ResponseDataResultsInner
- StealthGenerateBatch200ResponseDataSummary
- StealthGenerateBatchRequest
- StealthGenerateRequest
- StealthMetaAddress
- SubmitArciumComputation200Response
- SubmitArciumComputation200ResponseData
- SubmitArciumComputationRequest
- SubmitArciumComputationRequestViewingKey
- SubmitBallot200Response
- SubmitBallot200ResponseData
- SubmitBallotRequest
- SubmitJitoBundle200Response
- SubmitJitoBundle200ResponseData
- SubmitJitoBundleRequest
- TallyVotes200Response
- TallyVotes200ResponseData
- TallyVotesRequest
- TransferClaim200Response
- TransferClaim200ResponseData
- TransferClaimRequest
- TransferPrivate200Response
- TransferPrivate200ResponseData
- TransferPrivate200ResponseDataChainData
- TransferPrivate422Response
- TransferPrivate422ResponseError
- TransferPrivateRequest
- TransferPrivateRequestRecipientMetaAddress
- TransferShield200Response
- TransferShield200ResponseData
- TransferShieldRequest
- UpdateSession200Response
- UpdateSession200ResponseData
- UpdateSessionRequest
- ViewingKey
- ViewingKeyDecrypt200Response
- ViewingKeyDecrypt200ResponseData
- ViewingKeyDecryptRequest
- ViewingKeyDecryptRequestEncrypted
- ViewingKeyDerive200Response
- ViewingKeyDerive200ResponseData
- ViewingKeyDerive200ResponseDataDerivedFrom
- ViewingKeyDeriveRequest
- ViewingKeyDisclose200Response
- ViewingKeyDisclose200ResponseData
- ViewingKeyDiscloseRequest
- ViewingKeyDiscloseRequestTransactionData
- ViewingKeyGenerate200Response
- ViewingKeyGenerateRequest
- ViewingKeyVerifyHierarchy200Response
- ViewingKeyVerifyHierarchy200ResponseData
- ViewingKeyVerifyHierarchyRequest
Authorization
Authentication schemes defined for the API:
ApiKeyAuth
- Type: API key
- API key parameter name:
X-API-Key - Location: HTTP header
About
This TypeScript SDK client supports the Fetch API and is automatically generated by the OpenAPI Generator project:
- API version:
0.1.0 - Package version:
0.1.0 - Generator version:
7.19.0 - Build package:
org.openapitools.codegen.languages.TypeScriptFetchClientCodegen
The generated npm module supports the following:
- Environments
- Node.js
- Webpack
- Browserify
- Language levels
- ES5 - you must have a Promises/A+ library installed
- ES6
- Module systems
- CommonJS
- ES6 module system
For more information, please visit https://sip-protocol.org
Development
Building
To build the TypeScript source code, you need to have Node.js and npm installed. After cloning the repository, navigate to the project directory and run:
npm install
npm run buildPublishing
Once you've built the package, you can publish it to npm:
npm publish