Executes API smoke tests validating health endpoints, CRUD operations, auth, search, response times, and performance SLAs across staging/production during releases and deployments.
npx claudepluginhub fortiumpartners/ai-meshThis skill uses the workspace's default tool permissions.
**Quick Reference** - Load this first for fast context (~3KB)
Runs fast smoke tests validating critical paths like health checks, UI, auth, and APIs post-deployment using curl, Playwright, or Bash scripts.
Orchestrates sequential smoke tests for API health, database connectivity, external services, auth, and critical paths with early exit on failure. Aggregates results and tracks execution time for pre-deployment validation.
Guides API health checking operations and integration tasks including third-party APIs, webhooks, SDK generation, and OAuth. Generates production-ready code, configs, and best practices.
Share bugs, ideas, or general feedback.
Quick Reference - Load this first for fast context (~3KB)
Execute comprehensive API health smoke tests to validate service availability, response times, and critical endpoint functionality during release workflows.
Use this skill when:
skills:
- name: smoke-test-api
path: skills/smoke-test-api/SKILL.md
const { SmokeTestAPI } = require('./scripts/execute-health-checks.js');
const tester = new SmokeTestAPI({
baseUrl: 'https://staging.example.com',
timeout: 5000,
retries: 2
});
const result = await tester.executeHealthChecks({
environment: 'staging',
endpoints: [
{ path: '/health', method: 'GET', expectedStatus: 200 },
{ path: '/api/v1/users', method: 'GET', expectedStatus: 200 }
]
});
if (result.passed) {
console.log('✅ API health checks passed');
} else {
console.error('❌ API health checks failed');
}
environment: staging
baseUrl: https://staging.example.com
timeout: 5000
retries: 2
endpoints:
- name: health-check
path: /health
method: GET
expectedStatus: 200
sla: 100
- name: list-users
path: /api/v1/users
method: GET
expectedStatus: 200
sla: 500
/health, /ping, /status/health/db/health/cache/health/integrationsPOST /api/v1/resource (201 Created)GET /api/v1/resource/:id (200 OK)PUT /api/v1/resource/:id (200 OK)DELETE /api/v1/resource/:id (204 No Content)POST /api/v1/auth/login (200 OK + token)GET /api/v1/auth/me (200 OK with user)GET /api/v1/protected (401 without token, 200 with token)GET /api/v1/search?q=term (200 OK with results)GET /api/v1/resource?page=1&limit=10 (200 OK with paginated results)GET /api/v1/resource?status=active (200 OK with filtered results)GET /api/v1/nonexistent (404 Not Found)POST /api/v1/resource with invalid data (400 Bad Request)GET /api/v1/protected without token (401 Unauthorized)const SLA_TARGETS = {
health: 100, // Health endpoints: ≤100ms
read: 500, // Read operations: ≤500ms
write: 1000, // Write operations: ≤1000ms
search: 2000, // Search operations: ≤2000ms
timeout: 5000 // Global timeout: ≤5000ms
};
Pass: All smoke tests must pass
Fail: Any smoke test failure blocks deployment
API smoke tests are executed at these points in the release workflow:
const result = await tester.testEndpoint({
path: '/health',
method: 'GET',
expectedStatus: 200,
sla: 100
});
const result = await tester.testEndpoint({
path: '/api/v1/users',
method: 'GET',
expectedStatus: 200,
sla: 500,
headers: {
'Authorization': `Bearer ${token}`
}
});
const result = await tester.testEndpoint({
path: '/api/v1/users',
method: 'POST',
expectedStatus: 201,
sla: 1000,
body: {
name: 'Test User',
email: 'test@example.com'
}
});
{
passed: true,
details: {
totalEndpoints: 10,
passed: 10,
failed: 0,
executionTime: 1234
},
reason: 'API smoke tests passed: All 10 endpoints responding',
metrics: {
endpointsPassed: 10,
endpointsFailed: 0,
averageResponseTime: 123,
executionTime: 1234
},
results: [
{
endpoint: '/health',
method: 'GET',
status: 200,
responseTime: 45,
sla: 100,
passed: true
}
]
}
For comprehensive documentation including:
Load: skills/smoke-test-api/REFERENCE.md (~15KB)