Test and document API endpoints
API Tester - Test Any API Endpoint

Test and document API endpoints - validate responses, check status, generate examples
---
name: api-tester
description: Test and document API endpoints - validate responses, check status, generate examples
source: orthogonal
---
# API Tester - Test Any API Endpoint
## Setup
Read your credentials from ~/.gooseworks/credentials.json:
```bash
export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")
```
If ~/.gooseworks/credentials.json does not exist, tell the user to run: `npx gooseworks login`Overview
If ~/.gooseworks/credentials.json does not exist, tell the user to run: npx gooseworks login
Manual install (npx, ZIP)
npx skills add gooseworks-ai/goose-skills --skill api-tester -g -a claude-codemkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/gooseworks-ai/goose-skills/tar.gz/615c685f34f8 \
| tar -xz -C ~/.claude/skills --strip-components=4 goose-skills-615c685f34f8/skills/research-tools/capabilities/api-testerNew-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/6d89fd2883a9b8e11337/api-tester.zip" -OutFile "$env:TEMP\api-tester.zip"; Expand-Archive "$env:TEMP\api-tester.zip" -DestinationPath "$HOME\.claude\skills" -ForceConnects with Agent Alley MCP · agentalley.io/mcp
Files included
SKILL.md3.8 KBskill.meta.json275 B
Read the files here
gooseworks-ai/
Show the full text121 lines
API Tester - Test Any API Endpoint
Setup
Read your credentials from ~/.gooseworks/credentials.json:
export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")
If ~/.gooseworks/credentials.json does not exist, tell the user to run: npx gooseworks login
All endpoints use Bearer auth: -H "Authorization: Bearer $GOOSEWORKS_API_KEY"
Test API endpoints, validate responses, and generate documentation examples.
Workflow
Step 1: Test GET Endpoints
Make GET requests to test endpoints:
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"linkup","path":"/fetch","body":{"url":"https://api.example.com/health"}}'
Step 2: Test POST Endpoints
Test POST requests by fetching API docs:
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"scrapegraph","path":"/v1/smartscraper"}'
"website_url": "https://api.example.com/docs",
"user_prompt": "Extract all API endpoints, methods, parameters, and example responses"
}'
Step 3: Get API Documentation
Fetch and parse API docs:
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"scrapegraph","path":"/v1/markdownify","body":{"website_url":"https://api.example.com/docs"}}'
Step 4: Validate Response Schema
Check response structure:
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"riveter","path":"/v1/run"}'
"url": "https://api.example.com/endpoint",
"schema": {
"id": "string",
"name": "string",
"created_at": "string"
}
}'
Example Usage
# Extract API spec from docs
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"scrapegraph","path":"/v1/smartscraper"}'
"website_url": "https://stripe.com/docs/api",
"user_prompt": "Extract API authentication methods and example curl commands"
}'
# Fetch API page
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"linkup","path":"/fetch","body":{"url":"https://api.openai.com/v1/models"}}'
Tips
- Test both happy paths and error cases
- Verify response schemas match documentation
- Check rate limits and authentication
- Document any discrepancies found
Discover More
List all endpoints, or add a path for parameter details:
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"linkup API endpoints"}' api show riveter
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"scrapegraph API endpoints"}'
Example: `curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/details \
-H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api":"olostep","path":"/v1/scrapes`"}' for endpoint parameters.
| 1 | |
| 2 | name api-tester |
| 3 | description Test and document API endpoints - validate responses, check status, generate examples |
| 4 | source orthogonal |
| 5 | |
| 6 | |
| 7 | |
| 8 | # API Tester - Test Any API Endpoint |
| 9 | |
| 10 | ## Setup |
| 11 | |
| 12 | Read your credentials from ~/.gooseworks/credentials.json: |
| 13 | |
| 14 | export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])") |
| 15 | export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))") |
| 16 | |
| 17 | |
| 18 | If ~/.gooseworks/credentials.json does not exist, tell the user to run: `npx gooseworks login` |
| 19 | |
| 20 | All endpoints use Bearer auth: `-H "Authorization: Bearer $GOOSEWORKS_API_KEY"` |
| 21 | |
| 22 | |
| 23 | Test API endpoints, validate responses, and generate documentation examples. |
| 24 | |
| 25 | ## Workflow |
| 26 | |
| 27 | ### Step 1: Test GET Endpoints |
| 28 | Make GET requests to test endpoints: |
| 29 | |
| 30 | |
| 31 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \ |
| 32 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 33 | -H "Content-Type: application/json" \ |
| 34 | -d '{"api":"linkup","path":"/fetch","body":{"url":"https://api.example.com/health"}}' |
| 35 | |
| 36 | |
| 37 | ### Step 2: Test POST Endpoints |
| 38 | Test POST requests by fetching API docs: |
| 39 | |
| 40 | |
| 41 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \ |
| 42 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 43 | -H "Content-Type: application/json" \ |
| 44 | -d '{"api":"scrapegraph","path":"/v1/smartscraper"}' |
| 45 | "website_url": "https://api.example.com/docs", |
| 46 | "user_prompt": "Extract all API endpoints, methods, parameters, and example responses" |
| 47 | }' |
| 48 | |
| 49 | |
| 50 | ### Step 3: Get API Documentation |
| 51 | Fetch and parse API docs: |
| 52 | |
| 53 | |
| 54 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \ |
| 55 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 56 | -H "Content-Type: application/json" \ |
| 57 | -d '{"api":"scrapegraph","path":"/v1/markdownify","body":{"website_url":"https://api.example.com/docs"}}' |
| 58 | |
| 59 | |
| 60 | ### Step 4: Validate Response Schema |
| 61 | Check response structure: |
| 62 | |
| 63 | |
| 64 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \ |
| 65 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 66 | -H "Content-Type: application/json" \ |
| 67 | -d '{"api":"riveter","path":"/v1/run"}' |
| 68 | "url": "https://api.example.com/endpoint", |
| 69 | "schema": { |
| 70 | "id": "string", |
| 71 | "name": "string", |
| 72 | "created_at": "string" |
| 73 | } |
| 74 | }' |
| 75 | |
| 76 | |
| 77 | ## Example Usage |
| 78 | |
| 79 | |
| 80 | # Extract API spec from docs |
| 81 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \ |
| 82 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 83 | -H "Content-Type: application/json" \ |
| 84 | -d '{"api":"scrapegraph","path":"/v1/smartscraper"}' |
| 85 | "website_url": "https://stripe.com/docs/api", |
| 86 | "user_prompt": "Extract API authentication methods and example curl commands" |
| 87 | }' |
| 88 | |
| 89 | # Fetch API page |
| 90 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \ |
| 91 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 92 | -H "Content-Type: application/json" \ |
| 93 | -d '{"api":"linkup","path":"/fetch","body":{"url":"https://api.openai.com/v1/models"}}' |
| 94 | |
| 95 | |
| 96 | ## Tips |
| 97 | |
| 98 | Test both happy paths and error cases |
| 99 | Verify response schemas match documentation |
| 100 | Check rate limits and authentication |
| 101 | Document any discrepancies found |
| 102 | |
| 103 | ## Discover More |
| 104 | |
| 105 | List all endpoints, or add a path for parameter details: |
| 106 | |
| 107 | |
| 108 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \ |
| 109 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 110 | -H "Content-Type: application/json" \ |
| 111 | -d '{"prompt":"linkup API endpoints"}' api show riveter |
| 112 | curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \ |
| 113 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 114 | -H "Content-Type: application/json" \ |
| 115 | -d '{"prompt":"scrapegraph API endpoints"}' |
| 116 | |
| 117 | Example: `curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/details \ |
| 118 | -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \ |
| 119 | -H "Content-Type: application/json" \ |
| 120 | -d '{"api":"olostep","path":"/v1/scrapes`"}' for endpoint parameters. |
| 121 |
Details
- Updated
- Sep 21, 2026
- License
- MIT
- Stars on the repo
- ★ 1,220
- Checked
- Source
- gooseworks-ai/goose-skills ↗
- Creator
- gooseworks-ai · 206 listings
Made with api-tester

Similar skills
See all →
SkillGuides stable API and interface design
MCPPulls up-to-date, version-specific library docsContext7
SkillFetch up-to-date documentation and code examples for anyContext7 Documentation Lookup
SkillHow to use the Adaptyv Bio Foundry API and Python SDK
SkillMaster C/.NET backend development patterns for building
SkillGuides the usage of Gemini Interactions API on GeminiGemini Interactions API SkillMore from gooseworks-ai
SkillMine the highest-converting ad angles from customer reviewsAd angle miner
SkillAnalyze ad campaign performance data to identify what'sAd campaign analyzer
SkillFor paid lead-gen and participant-recruitment adsAd lead quality analyzer
SkillAnalyze the message match between your ads and landing pagesAd to landing page auditor
SkillCheck and improve your brand's visibility across AI searchAeo
SkillSearch Amazon products - find items, compare pricesAmazon Product Search