@devizovaburza/txs-sdk
v3.1.25
Published
This SDK provides TypeScript type definitions for integrating with the Devizova Burza TXS API Gateway. It enables external organizations to interact with the API in a type-safe manner.
Readme
Devizová Burza TXS SDK
This SDK provides TypeScript type definitions for integrating with the Devizova Burza TXS API Gateway. It enables external organizations to interact with the API in a type-safe manner.
Installation
npm install @devizovaburza/txs-sdk
# or
yarn add @devizovaburza/txs-sdkUsage
Import the types you need in your application:
import type {
SubmitDraftRequestBody,
CreateAuthTokenPairRequestBody,
GetOrdersResponse,
GetCurrenciesResponse
// other types...
} from '@devizovaburza/txs-sdk/v1';Available Types
The SDK includes type definitions for:
- Authentication - Creating and refreshing auth token pairs
- Oreders (Tickets) - Creating, updating and retrieving orders
- Users - User creation and management
- Codes & Configuration - Banks, currencies, providers, and corporate bank accounts
- Clients - Client management and details
- Traders - Trader management and details
- RBAC - Role-based access control for users
- **
- Observability - Health check endpoints
Examples
Authentication
import type { CreateAuthTokenPairRequestBody } from '@devizovaburza/txs-sdk/v1';
const authPayload: CreateAuthTokenPairRequestBody = {
email: '[email protected]',
password: 'secure-password',
// additional fields based on actual API requirements
};
// Use with your API client...Creating Orders
import type { SubmitDraftRequestBody } from '@devizovaburza/txs-sdk/v1';
const orderPayload: SubmitDraftRequestBody = {
// Order fields based on actual API requirements
};Getting Configuration Data
import type { GetCurrenciesResponse, GetBanksResponse } from '@devizovaburza/txs-sdk/v1';
// Type-safe responses for configuration endpoints
const currencies: GetCurrenciesResponse = await fetch('/api/v1/codes/currencies').then(r => r.json());
const banks: GetBanksResponse = await fetch('/api/v1/codes/banks').then(r => r.json());Cryptographic Helpers
Sign Payload
Signs a given string payload using a base64-encoded RSA private key.
import { signPayload } from '@devizovaburza/txs-sdk/v1';
const signature = await signPayload({
payload: JSON.stringify({ amount: 1000 }),
privateKey: 'BASE64_ENCODED_PRIVATE_KEY',
});Verify Payload Signature
Verifies the signature of a payload using a base64-encoded RSA public key.
import { verifyPayloadSignature } from '@devizovaburza/txs-sdk/v1';
const isValid = await verifyPayloadSignature({
payload: JSON.stringify({ amount: 1000 }),
signature: 'GENERATED_SIGNATURE',
publicKey: 'BASE64_ENCODED_PUBLIC_KEY',
});API Integration
This SDK is designed to work with any HTTP client. Here's an example using fetch:
import type { CreateAuthTokenPairRequestBody, CreateAuthTokenPairResponse } from '@devizovaburza/txs-sdk/v1';
async function authenticate(payload: CreateAuthTokenPairRequestBody): Promise<CreateAuthTokenPairResponse> {
const response = await fetch('/api/v1/tokens', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(payload),
});
return response.json();
}Development
This package is part of the DBU TXS monorepo. For development instructions, see the main project README.
License
ISC
