@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
78 lines • 3.99 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createHealthCheckResource = createHealthCheckResource;
exports.createHealthCheckDataResource = createHealthCheckDataResource;
const schemas_1 = require("../schemas");
/**
* Creates the healthCheck resource methods
* OpenAPI Path: /health-check → healthCheck.*
* @description Health check endpoint for Shipping service
*/
function createHealthCheckResource(executeRequest) {
return {
/**
* Check shipping service health and availability
*
* @fullPath api.shipping.healthCheck.get
* @service shipping
* @domain system-health
* @dataMethod healthCheckData.get
* @discoverable true
* @searchTerms ["health", "status", "availability", "ping", "check", "shipping service", "carriers", "rates"]
* @relatedEndpoints ["api.shipping.rates.create", "api.logistics.healthCheck.get", "api.commerce.healthCheck.get", "api.orders.healthCheck.get"]
* @commonPatterns ["Health check", "Service status", "Shipping service availability", "System monitoring", "Carrier connectivity"]
* @workflow ["system-monitoring", "health-checks", "service-discovery", "shipping-service-verification", "carrier-status-check"]
* @prerequisites ["Service is running", "Valid authentication token", "x-site-id header", "Carrier API connections"]
* @nextSteps ["Use shipping rate endpoints if healthy", "Verify carrier API connectivity", "Monitor shipping service metrics"]
* @businessRules ["Returns service and carrier status", "Requires standard authentication", "Standard health check format"]
* @functionalArea "system-monitoring"
* @caching "No caching - real-time status required"
* @performance "Fast response, minimal processing, use for shipping service monitoring"
*
* @param params Health check parameters with site ID
* @returns Promise<HealthCheckResponse> Service health status with carrier availability
*/
get: async (params) => {
return executeRequest({
method: 'GET',
path: '/health-check',
paramsSchema: schemas_1.HealthCheckParamsSchema,
responseSchema: schemas_1.HealthCheckResponseSchema,
}, params);
},
};
}
/**
* Creates the healthCheckData resource methods (data-only versions)
*/
function createHealthCheckDataResource(healthCheck) {
return {
/**
* Get shipping service health data without full response metadata
*
* @fullPath api.shipping.healthCheckData.get
* @service shipping
* @domain system-health
* @dataMethod healthCheckData
* @discoverable true
* @searchTerms ["health data", "service status", "shipping availability", "carrier status"]
* @relatedEndpoints ["api.shipping.healthCheck.get", "api.shipping.rates.create"]
* @commonPatterns ["Get health status", "Check carrier availability", "Service monitoring"]
* @workflow ["system-monitoring", "health-checks", "service-verification"]
* @prerequisites ["Valid authentication token", "x-site-id header"]
* @nextSteps ["Use shipping endpoints if healthy", "Monitor service metrics"]
* @businessRules ["Returns only health data object", "No response metadata included"]
* @functionalArea "system-monitoring"
* @caching "No caching - real-time status required"
* @performance "Direct data access, faster for simple health checks"
*
* @param params Health check parameters with site ID
* @returns Promise<HealthCheckData> Direct health status data object
*/
get: async (params) => {
const response = await healthCheck.get(params);
return response.data;
},
};
}
//# sourceMappingURL=health-check.js.map