TypeScript SDK Reference
Complete API reference for@sardis/sdk TypeScript/JavaScript package.
Installation
Client Class
SardisClient
apiKey(string, required): Your Sardis API keybaseUrl(string, optional): API base URL (default:https://api.sardis.sh)timeout(number, optional): Request timeout in ms (default: 30000)connectTimeout(number, optional): Connection timeout in ms (default: 10000)maxRetries(number, optional): Max retry attempts (default: 3)retryDelay(number, optional): Initial retry delay in ms (default: 1000)maxRetryDelay(number, optional): Max retry delay in ms (default: 30000)retryOn(number[], optional): HTTP status codes to retry (default: [408, 429, 500, 502, 503, 504])retryOnNetworkError(boolean, optional): Retry on network errors (default: true)tokenRefresh(TokenRefreshConfig, optional): Token refresh configuration
setApiKey(apiKey: string): void- Update API keygetApiKey(): string- Get current API keyaddRequestInterceptor(interceptor: RequestInterceptor): () => void- Add request interceptoraddResponseInterceptor(interceptor: ResponseInterceptor): () => void- Add response interceptorasync request<T>(method: string, path: string, options?: RequestOptions): Promise<T>- Make HTTP requestasync *paginate<T>(fetchPage, options?): AsyncIterableIterator<T>- Paginate through resultsasync paginateAll<T>(fetchPage, options?): Promise<T[]>- Fetch all pagesasync batch<T>(operations, options?): Promise<Array<{success: true; data: T} | {success: false; error: Error}>>- Batch operationsasync health(options?: RequestOptions): Promise<{status: string; version?: string}>- Check API health
Resource Classes
Agents Resource
client.agents.create()
Promise<Agent>
client.agents.get()
Promise<Agent>
client.agents.list()
Promise<Agent[]>
client.agents.update()
Promise<Agent>
Wallets Resource
client.wallets.create()
Promise<Wallet>
client.wallets.get()
Promise<Wallet>
client.wallets.list()
Promise<Wallet[]>
client.wallets.getBalance()
Promise<WalletBalance>
client.wallets.transfer()
Promise<WalletTransferResponse>
Payments Resource
client.payments.executeMandate()
Promise<ExecutePaymentResponse>
client.payments.executeAP2()
Promise<ExecuteAP2Response>
client.payments.get()
Promise<Payment>
client.payments.list()
Promise<Payment[]>
Holds Resource
client.holds.create()
Promise<Hold>
client.holds.capture()
Promise<CreateHoldResponse>
client.holds.void()
Promise<void>
client.holds.get()
Promise<Hold>
client.holds.list()
Promise<Hold[]>
Groups Resource
client.groups.create()
Promise<Group>
client.groups.get()
Promise<Group>
client.groups.addAgent()
Promise<void>
client.groups.removeAgent()
Promise<void>
client.groups.getSpending()
Promise<GroupSpending>
Policies Resource
client.policies.parseNL()
Promise<ParsedPolicy>
client.policies.check()
Promise<PolicyCheckResponse>
client.policies.preview()
Promise<PolicyPreviewResponse>
Cards Resource
client.cards.create()
Promise<Card>
client.cards.get()
Promise<Card>
client.cards.list()
Promise<Card[]>
Treasury Resource
client.treasury.getAccount()
Promise<FinancialAccount>
client.treasury.getBalance()
Promise<TreasuryBalance>
client.treasury.createPayment()
Promise<TreasuryPaymentResponse>
Webhooks Resource
client.webhooks.create()
Promise<Webhook>
client.webhooks.get()
Promise<Webhook>
client.webhooks.list()
Promise<Webhook[]>
Ledger Resource
client.ledger.list()
Promise<LedgerEntry[]>