steadfast-courier-sdk
Version:
A robust Node.js library for checking delivery status using Steadfast Courier API. Zero dependencies, enterprise-ready with retry logic and comprehensive error handling.
53 lines (46 loc) • 1.72 kB
TypeScript
/**
* Steadfast Courier API Library TypeScript Definitions
*/
export interface DeliveryStatusResponse {
status: number;
delivery_status: 'pending' | 'delivered' | 'delivered_approval_pending' | 'partial_delivered_approval_pending' | 'cancelled_approval_pending' | 'unknown_approval_pending' | 'partial_delivered' | 'cancelled' | 'hold' | 'in_review' | 'unknown';
}
export interface BalanceResponse {
status: number;
current_balance: number;
}
/**
* Steadfast Courier API Library
*/
export default class SteadfastCourier {
/**
* Creates an instance of SteadfastCourier
* @param apiKey Your Steadfast API key
* @param secretKey Your Steadfast secret key
* @param baseUrl Optional base URL (defaults to https://portal.packzy.com/api/v1)
*/
constructor(apiKey: string, secretKey: string, baseUrl?: string);
/**
* Check delivery status by Consignment ID
* @param consignmentId The consignment ID
* @returns Promise with delivery status response
*/
checkStatusByCID(consignmentId: string | number): Promise<DeliveryStatusResponse>;
/**
* Check delivery status by Invoice ID
* @param invoice The invoice ID
* @returns Promise with delivery status response
*/
checkStatusByInvoice(invoice: string): Promise<DeliveryStatusResponse>;
/**
* Check delivery status by Tracking Code
* @param trackingCode The tracking code
* @returns Promise with delivery status response
*/
checkStatusByTrackingCode(trackingCode: string): Promise<DeliveryStatusResponse>;
/**
* Check current account balance
* @returns Promise with balance response
*/
checkBalance(): Promise<BalanceResponse>;
}