v0.1.0npm install →

SDK

SDK Reference

@auron-solana/sdk — a fully typed client for Node.js, browsers, and AI agents.


Installation

bash
npm install @auron-solana/sdk
bash
yarn add @auron-solana/sdk
NOTE
The SDK ships full TypeScript definitions. No separate @types package needed.

AuronClient

The main entry point. Create one instance per application — safe to share across concurrent requests.

ts
import { AuronClient } from C8F135">"@auron-solana/sdk";

const auron = new AuronClient({
  apiKey:  C8F135">"ak_live_xxx",
  baseUrl: C8F135">"https:C8F135">">//auron-mocha.vercel.app",
});

Constructor options

apiKeystringREQUIRED

Your Auron API key. Use ak_test_xxx for development, ak_live_xxx for production. Never expose in client-side bundles.

baseUrlstringREQUIRED

Base URL of your Auron deployment. Hosted: https://auron-mocha.vercel.app

timeoutnumber

Request timeout in milliseconds. Default: 30000 (30 s).

getQuote(inrAmount)

Returns the USDC amount required for a given INR payment at the current live rate. Quotes are valid for 60 seconds.

ts
const quote = await auron.getQuote(999);

C8F135">"color:#3F3F46">// {
C8F135">"color:#3F3F46">//   inrAmount:   999,
C8F135">"color:#3F3F46">//   usdcAmount:  11.84,
C8F135">"color:#3F3F46">//   auronRate:   84.37,   // INR per USDC (after 0.5% spread)
C8F135">"color:#3F3F46">//   marketRate:  84.79,   // raw CoinGecko rate
C8F135">"color:#3F3F46">//   spread:      0.005,
C8F135">"color:#3F3F46">//   validUntil:  1718734800000
C8F135">"color:#3F3F46">// }

Return type

ts
interface QuoteResult {
  inrAmount:   F5A623">number;
  usdcAmount:  F5A623">number;
  auronRate:   F5A623">number;
  marketRate:  F5A623">number;
  spread:      F5A623">number;
  validUntil:  F5A623">number;  C8F135">"color:#3F3F46">// Unix ms
}

Error handling

ts
import { AuronClient, AuronError } from C8F135">"@auron-solana/sdk";

try {
  const quote = await auron.getQuote(999);
} catch (err) {
  if (err instanceof AuronError) {
    C8F135">"color:#3F3F46">// err.code    → C8F135">"RATE_UNAVAILABLE" | C8F135">"UNAUTHORIZED" | ...
    C8F135">"color:#3F3F46">// err.message → human-readable description
    C8F135">"color:#3F3F46">// err.status  → HTTP status code
  }
}

Error codes

RATE_UNAVAILABLECoinGecko unavailable and no cached rate exists
INVALID_AMOUNTinrAmount is zero, negative, or non-finite
UNAUTHORIZEDAPI key missing, invalid, or revoked
RATE_LIMIT_EXCEEDEDToo many requests from this IP or key
NETWORK_ERRORCould not reach the Auron API