api-integration
Use when the user says 'API integration', 'connect APIs', 'sync data', 'API to API', 'integrate with', or needs to build a reliable connection between two…
Skill by jtucker9
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jtucker9-api-integration
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/api-integration
What's inside
- Skill name
api-integration- Description
- Use when the user says 'API integration', 'connect APIs', 'sync data', 'API to API', 'integrate with', or needs to build a reliable connection between two systems via their APIs.
- License
- MIT
- Instructions
- 332 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (1)
- SKILL.md
SKILL.md (first lines)
# 🔗 API Integration — System-to-System Connector
*Design reliable API integrations with authentication, rate limiting, data mapping, error recovery, and sync monitoring.*
## Activation
When this skill activates, output:
`🔗 API Integration — Designing your system integration...`
| Context | Status |
|---------|--------|
| **User says "API integration", "connect APIs", "sync data"** | ACTIVE |
| **User wants to move data between two systems** | ACTIVE |
| **User mentions OAuth, rate limits, or data mapping** | ACTIVE |
| **User wants a visual n8n workflow** | DORMANT — see n8n-workflow-builder |
| **User wants to receive webhooks (not build a full integration)** | DORMANT — see webhook-designer |
| **User wants a cron job (the integration is secondary)** | DORMANT — see cron-scheduler |
## Protocol
### Step 1: Gather Inputs
Ask the user for:
- **Source API**: What system provides the data? (name, docs URL)
- **Target system**: Where should data go? (database, another API, file)
- **Data to sync**: What specific data? (users, orders, products, events)
- **Sync frequency**: Real-time, near-real-time, hourly, daily, on-demand?
- **Volume**: How many records? How often do they change?
- **Direction**: One-way (source → target) or bidirectional?
### Step 2: Choose Integration Pattern
Evaluate which pattern fits:
| Pattern | Best For | Latency | Complexity | Cost |
|---------|----------|---------|------------|------|
| **Polling** | APIs without webhooks, batch sync | Minutes-hours | Low | Higher API calls |
| **Webhook** | Event-driven, real-time updates | Seconds | Medium | Low API calls |
| **Event-driven** | High-volume, microservice comms | Milliseconds | High | Infra cost (queue) |
| **Hybrid** | Webhook for real-time + polling for reconciliation | Seconds + batch | Medium-High | Balanced |
**Decision guide:**
- Source has webhooks? → Webhook-first, poll for reconciliation
- Source has no webhooks? → Poll at reasonable interval
- Need real-time? → Webhook or event stream
- Need guaranteed delivery? → Add queue (SQS, Redis, BullMQ)
- Bidirectional? → Be very careful about sync loops — use change tokens
Recommend the pattern with justification.
### Step 3: Authentication Setup
Provide setup for the source API's auth method:
**API Key:**
```javascript
const client = axios.create({
baseURL: 'https://api.service.com/v1',
headers: { 'Authorization': `Bearer ${process.env.SERVICE_API_KEY}` },
timeout: 10000,
});
```
**OAuth 2.0:**
```javascript
class OAuthClient {
constructor(clientId, clientSecret, tokenUrl) {
this.clientId = clientId;
this.clientSecret = clientSecret;
this.tokenUrl = tokenUrl;
this.accessToken = null;
this.expiresAt = 0;
}
async getToken() {
if (this.accessToken && Date.now() < this.expiresAt - 60000) {
return this.accessToken;
}
const response = await axios.post(this.tokenUrl, {
grant_type: 'client_credentials',
client_id: this.clientId,
client_secret: this.clientSecret,
});
this.accessToken = response.data.access_token;
this.expiresAt = Date.now() + (response.data.expires_in * 1000);
return this.accessToken;
}
async request(config) {
const token = await this.getToken();
return axios({ ...config, headers: { ...config.headers, Authorization: `Bearer ${token}` } });
}
}
```
**JWT:**
```javascript
const jwt = require('jsonwebtoken');
const token = jwt.sign({ sub: serviceId }, privateKey, {
algorithm: 'RS256',
expiresIn: '1h',
});
```
Store all credentials in environment variables. Document which scopes/permissions are needed.
### Step 4: Rate Limit Handling
Design rate limit respect:
```javascript
class RateLimitedClient {
constructor(client, maxPerSecond = 10) {
this.client = client;
this.queue = [];
this.interval = 1000 / maxPerSecond;From jtucker9/mystuff, MIT.
More from jtucker9/mystuff
- 0.409score
twitter-thread
jtucker9
Use when the user says 'twitter thread', 'tweet thread', 'X thread', 'write a thread', or wants to create a multi-tweet narrative for Twitter/X.
SkillDFreshness: DClaude Code +9 - 0.409score
client-onboarding
jtucker9
Use when the user says 'client onboarding', 'new client', 'onboard client', 'welcome client', 'kickoff', or wants to create a structured onboarding process…
SkillDFreshness: DClaude Code +9 - 0.409score
financial-model
jtucker9
Use when the user says 'financial model', 'projections', 'revenue forecast', 'unit economics', 'break-even', 'cash flow', or wants to build financial…
SkillDFreshness: DClaude Code +9 - 0.409score
invoice-generator
jtucker9
Use when the user says 'invoice', 'generate invoice', 'billing', 'send invoice', or wants to create a professional invoice with line items and payment…
SkillDFreshness: DClaude Code +9 - 0.409score
newsletter
jtucker9
Use when the user says 'newsletter', 'email newsletter', 'weekly digest', 'write a newsletter', or wants to create a complete newsletter edition with subject…
SkillDFreshness: DClaude Code +9 - 0.409score
product-description
jtucker9
Use when the user says 'product description', 'product listing', 'product copy', 'Amazon listing', 'Shopify description', or wants to write optimized product…
SkillDFreshness: DClaude Code +9 - 0.409score
tiktok-script
jtucker9
Use when the user says 'TikTok script', 'TikTok video', 'Reels script', 'Shorts script', 'short-form video', or wants to create a script for vertical…
SkillDFreshness: DClaude Code +9 - 0.409score
contract-template
jtucker9
Use when the user says 'contract', 'agreement', 'service agreement', 'NDA', 'freelance contract', or wants to generate a professional service contract with…
SkillDFreshness: DClaude Code +9 - 0.409score
content-pipeline
jtucker9
Use when the user says 'content pipeline', 'content automation', 'auto-publish', 'content workflow', 'repurpose content', 'blog to social', or wants to…
SkillDFreshness: DClaude Code +9 - 0.409score
cron-scheduler
jtucker9
Use when the user says 'cron job', 'scheduled task', 'cron', 'scheduler', 'run every', 'periodic task', or needs a recurring background job with monitoring…
SkillDFreshness: DClaude Code +9 - 0.409score
n8n-workflow-builder
jtucker9
Use when the user says 'n8n workflow', 'build a workflow', 'automation workflow', 'n8n', 'workflow builder', or wants to design an automated workflow with…
SkillDFreshness: DClaude Code +9 - 0.409score
webhook-designer
jtucker9
Use when the user says 'webhook', 'webhook handler', 'webhook endpoint', 'receive webhooks', 'webhook security', or needs to build a secure webhook receiver…
SkillDFreshness: DClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Mar 29, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/jtucker9/mystuff
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from jtucker9
- 0.409score
content-pipeline
jtucker9
Use when the user says 'content pipeline', 'content automation', 'auto-publish', 'content workflow', 'repurpose content', 'blog to social', or wants to…
SkillDFreshness: DClaude Code +9 - 0.409score
cron-scheduler
jtucker9
Use when the user says 'cron job', 'scheduled task', 'cron', 'scheduler', 'run every', 'periodic task', or needs a recurring background job with monitoring…
SkillDFreshness: DClaude Code +9 - 0.409score
n8n-workflow-builder
jtucker9
Use when the user says 'n8n workflow', 'build a workflow', 'automation workflow', 'n8n', 'workflow builder', or wants to design an automated workflow with…
SkillDFreshness: DClaude Code +9 - 0.409score
webhook-designer
jtucker9
Use when the user says 'webhook', 'webhook handler', 'webhook endpoint', 'receive webhooks', 'webhook security', or needs to build a secure webhook receiver…
SkillDFreshness: DClaude Code +9 - 0.409score
client-onboarding
jtucker9
Use when the user says 'client onboarding', 'new client', 'onboard client', 'welcome client', 'kickoff', or wants to create a structured onboarding process…
SkillDFreshness: DClaude Code +9 - 0.409score
contract-template
jtucker9
Use when the user says 'contract', 'agreement', 'service agreement', 'NDA', 'freelance contract', or wants to generate a professional service contract with…
SkillDFreshness: DClaude Code +9
Cite this page
api-integration skill. Agent Mart. https://agentmart.dev/skills/jtucker9-api-integration (last updated 2026-10-24)