More screenshots

    Works with the AI tools you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseDotsDots+22 more

    Full Stack API Integration & Security Suite

    2

    Automates type-safe SDK generation, OWASP sanitization, and unit tests from OpenAPI specs.

    $51

    Secure checkout via Stripe

    30-day refund guarantee

    Converts to your local currency at checkout

    Security scanned
    Full Stack API Integration & Security Suite

    Full Stack API Integration & Security Suite

    Example session with this skill installed

    Parse the OpenAPI spec located at ./openapi.json and generate a type-safe TypeScript SDK, a Zod runtime validation middleware layer, and a complete Jest unit test suite covering success and failure states.

    • Read your context and instructions
    • Compiled the full stack api

    [SUCCESS] OpenAPI spec parsed successfully. Normalized 12 endpoints from ./openapi.json to ./manifest.json.

    SUMMARY OF GENERATED ASSETS
    This execution produced a complete 3-part integration package: a type-safe Fetch client with exponential backoff retries, an OWASP-compliant Zod input sanitization middleware, and a mock-driven Jest unit test suite covering success and failure states.

    1. Type-Safe Client SDK (src/apiClient.ts)
      TypeScript
    import { ZodError } from 'zod';
    
    export class APIError extends Error {
      constructor(public status: number, message: string, public details?: unknown) {
        super(message);
        this.name = 'APIError';
      }
    }
    
    export interface FetchOptions extends RequestInit {
      timeoutMs?: number;
      retries?: number;
    }
    
    export async function fetchWithRetry<T>(url: string, options: FetchOptions = {}): Promise<T> {
      const { timeoutMs = 5000, retries = 3, ...fetchOpts } = options;
      let attempt = 0;
    
      while (attempt < retries) {
        try {
          const controller = new AbortController();
          const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
          const response = await fetch(url, { ...fetchOpts, signal: controller.signal });
          clearTimeout(timeoutId);
    
          if (!response.ok) {
            const errorBody = await response.json().catch(() => ({}));
            throw new APIError(response.status, response.statusText, errorBody);
          }
          return (await response.json()) as T;
        } catch (err) {
          attempt++;
          if (attempt >= retries) throw err;
          await new Promise((res) => setTimeout(res, Math.pow(2, attempt) * 250));
        }
      }
      throw new APIError(500, 'Max retries exceeded');
    }
    
    1. OWASP Input Validation Middleware (src/middleware/validate.ts)
      TypeScript
    import { Request, Response, NextFunction } from 'express';
    import { z, ZodSchema } from 'zod';
    
    export const UserRegistrationSchema = z.object({
      email: z.string().email().trim().toLowerCase(),
      password: z.string().min(12).max(128),
      username: z.string().min(3).max(30).regex(/^[a-zA-Z0-9_]+$/)
    });
    
    export const validateBody = (schema: ZodSchema) => {
      return (req: Request, res: Response, next: NextFunction) => {
        try {
          req.body = schema.parse(req.body);
          next();
        } catch (error) {
          if (error instanceof ZodError) {
            return res.status(400).json({
              type: 'https://tools.ietf.org/html/rfc7807',
              title: 'Invalid Request Body',
              status: 400,
              errors: error.errors
            });
          }
          next(error);
        }
      };
    };
    
    1. Jest Test Suite (src/tests/apiClient.test.ts)
      TypeScript
    import { fetchWithRetry, APIError } from '../apiClient';
    
    global.fetch = jest.fn();
    
    describe('fetchWithRetry Unit Tests', () => {
      afterEach(() => jest.clearAllMocks());
    
      it('should return parsed JSON data on 200 OK', async () => {
        (global.fetch as jest.Mock).mockResolvedValueOnce({
          ok: true,
          json: async () => ({ id: 'usr_123', name: 'AlphaZolo' })
        });
    
        const data = await fetchWithRetry<{ id: string; name: string }>('https://api.example.com/user');
        expect(data.id).toBe('usr_123');
      });
    
      it('should retry on network failure and succeed', async () => {
        (global.fetch as jest.Mock)
          .mockRejectedValueOnce(new Error('Network failure'))
          .mockResolvedValueOnce({
            ok: true,
            json: async () => ({ status: 'active' })
          });
    
        const data = await fetchWithRetry('https://api.example.com/status', { retries: 2 });
        expect(data).toEqual({ status: 'active' });
        expect(global.fetch).toHaveBeenCalledTimes(2);
      });
    });
    

    NEXT STEPS

    Import validateBody(UserRegistrationSchema) into your Express routing pipeline to enforce payload sanitization.

    Run npm test src/tests/apiClient.test.ts to execute automated test validation across all mock endpoints.

    Connects securely to your tools. The creator never sees your data.

    What you get

    Automate type-safe SDK generation from OpenAPI specsImplement OWASP-aligned request validation and sanitizationBuild resilient API clients with built-in circuit breakersGenerate comprehensive Jest/PyTest suites for API endpoints

    About this skill

    The Full-Stack API Integration & Security Suite accelerates backend engineering workflows by converting raw OpenAPI (Swagger) v3.0/v3.1 definitions into production-ready frontend and backend integration components.

    Key Features

    Deterministic Spec Normalization: Python-powered script dereferences recursive $ref pointers and flattens endpoints, query params, and payloads into clean JSON manifests.

    Type-Safe SDK Generation: Generates strongly typed TypeScript or Python client libraries featuring custom error classes (APIError, NetworkError) with zero any types.

    OWASP Hardened Middleware: Automatically injects runtime input validation schemas (Zod/Joi), Helmet security headers, rate-limiting rules, and payload limit guards.

    Resilient Execution Scaffolding: Equips API callers with exponential backoff retries, configurable request timeout signals, and circuit-breaker patterns.

    Automated Unit Testing: Auto-generates complete Jest or PyTest test files covering 200 OK, 400 validation failures, 401 unauthorized errors, and 503 service timeouts via Mock Service Worker (msw).

    How to install

    Works the same in every agent - Claude, Cursor, Codex, Copilot and 20+ more.

    ~30 seconds
    1. 1

      Download the ZIP

      Free skills download straight away. Paid skills unlock right after purchase.

    2. 2

      Unzip into your skills folder

      Every agent reads skills from one folder on your machine. Drop the unzipped folder in there.

    3. 3

      Ask your agent to use it

      Restart the agent if it was already running. It picks the skill up automatically - no config needed.

    Skills folder by agent

    Click the path to copy it. Create the folder if it does not exist yet.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    30-day refund

    Not a fit? Get your money back

    Trust & safety

    Security scanned

    Verified clean 26 days ago

    • Passed all security checks, Safe to install

    Listed26 days ago

    What's inside

    Frequently Asked Questions