UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

87 lines 4.28 kB
import { PingParamsSchema, PingResponseSchema } from '../schemas'; /** * Creates the ping resource methods * OpenAPI Path: /ping → ping.* * @description Ping endpoint for SmartyStreets connectivity verification */ export function createPingResource(executeRequest) { return { /** * Ping SmartyStreets service for connectivity verification * * @fullPath api.smartyStreets.ping.get * @service smarty-streets * @domain system-health * @dataMethod pingData.get * @discoverable true * @searchTerms ["ping", "connectivity", "response time", "pong", "test", "smartystreets ping", "service alive", "latency check"] * @relatedEndpoints ["api.smartyStreets.healthCheck.get", "api.smartyStreets.us.lookup.get", "api.customers.addresses.ping", "api.logistics.ping.get"] * @commonPatterns ["Ping test", "Connectivity check", "Response time test", "Service alive check", "Latency monitoring"] * @workflow ["system-monitoring", "connectivity-tests", "performance-monitoring", "service-diagnostics", "latency-measurement"] * @prerequisites ["Service is running", "Valid authentication token", "x-site-id header", "Network connectivity"] * @nextSteps ["Use for latency monitoring", "Verify consistent response times", "Include in system health dashboards"] * @businessRules ["Returns pong response", "Measures response time", "Requires standard authentication", "Simple connectivity test"] * @functionalArea "system-monitoring" * @caching "No caching - real-time ping test required" * @performance "Ultra-fast response, use for latency monitoring and connectivity verification" * * @param params Ping parameters with site ID * @returns Promise<PingResponse> Ping response with timing information * * @example * ```typescript * // Test service connectivity * const response = await client.ping.get({ 'x-site-id': 'SITE123' }); * console.log(response.data.message); // 'pong' * console.log(response.data.response_time_ms); // Response time * console.log(response.status); // HTTP status code * * // Get just the ping data * const pingData = await client.pingData.get({ 'x-site-id': 'SITE123' }); * console.log(pingData); // Ping data object * ``` */ get: async (params) => { return executeRequest({ method: 'GET', path: '/ping', paramsSchema: PingParamsSchema, responseSchema: PingResponseSchema, }, params); }, }; } /** * Creates the pingData resource methods (data-only versions) */ export function createPingDataResource(ping) { return { /** * Get SmartyStreets ping data without full response metadata * * @fullPath api.smartyStreets.ping.getData * @service smarty-streets * @domain system-health * @dataMethod ping.getData * @discoverable true * @searchTerms ["ping data", "connectivity test", "response time", "service latency"] * @relatedEndpoints ["api.smartyStreets.ping.get", "api.smartyStreets.healthCheck.get"] * @commonPatterns ["Get ping response", "Check connectivity", "Measure latency"] * @workflow ["system-monitoring", "connectivity-tests", "performance-monitoring"] * @prerequisites ["Valid authentication token", "x-site-id header"] * @nextSteps ["Use for latency monitoring", "Include in performance dashboards"] * @businessRules ["Returns only ping data object", "No response metadata included"] * @functionalArea "system-monitoring" * @caching "No caching - real-time ping test required" * @performance "Direct data access, optimal for latency monitoring" * * @param params Ping parameters with site ID * @returns Promise<PingData> Direct ping response data object */ get: async (params) => { const response = await ping.get(params); return response.data; }, }; } //# sourceMappingURL=ping.js.map