supabase
Handles the full Supabase workflow from schema changes to deployment, with built-in security guardrails that catch common traps like RLS...
acc-api-doc-template
Generates API documentation for PHP projects. Creates endpoint documentation with parameters, responses, and examples.
Full skill instructions
Generate comprehensive API documentation for REST endpoints.
# API Reference
## Overview
{API description and base URL}
## Authentication
{Auth methods}
## Endpoints
### {Resource}
- [GET /{resource}](#get-resource)
- [POST /{resource}](#post-resource)
- [GET /{resource}/{id}](#get-resource-id)
- [PUT /{resource}/{id}](#put-resource-id)
- [DELETE /{resource}/{id}](#delete-resource-id)
## Error Handling
{Error format and codes}
## Rate Limiting
{Rate limit info}
## Overview
**Base URL:** `https://api.example.com/v1`
**Content Type:** `application/json`
**API Version:** v1 (2025-01-15)
### Request Format
All requests should include:
- `Content-Type: application/json` header
- Authentication header (see Authentication section)
- Request body as JSON for POST/PUT requests
## Authentication
### Bearer Token
Include the token in the Authorization header:
```http
Authorization: Bearer {token}
Include the API key in the X-API-Key header:
X-API-Key: {api_key}
POST /auth/token
Content-Type: application/json
{
"email": "[email protected]",
"password": "secret"
}
Response:
{
"token": "eyJhbGciOiJIUzI1NiIs...",
"expires_at": "2025-01-16T12:00:00Z"
}
### Endpoint Template
```markdown
## {HTTP Method} /{path}
{Brief description of what this endpoint does}
### Request
**URL:** `{HTTP Method} /api/v1/{path}`
**Authentication:** Required / Optional
#### Path Parameters
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `{param}` | {type} | Yes/No | {description} |
#### Query Parameters
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `{param}` | {type} | {default} | {description} |
#### Request Body
| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `{field}` | {type} | Yes/No | {description} |
**Example Request:**
```http
{METHOD} /api/v1/{path}
Authorization: Bearer {token}
Content-Type: application/json
{
"field": "value"
}
Success Response: {status code} {status text}
| Field | Type | Description |
|---|---|---|
{field} | {type} | {description} |
Example Response:
{
"id": "123",
"field": "value",
"created_at": "2025-01-15T10:00:00Z"
}
| Status | Code | Description |
|---|---|---|
| 400 | VALIDATION_ERROR | Invalid request body |
| 401 | UNAUTHORIZED | Missing or invalid token |
| 404 | NOT_FOUND | Resource not found |
| 422 | UNPROCESSABLE | Business rule violation |
### Error Handling Section
```markdown
## Error Handling
### Error Response Format
All errors follow this format:
```json
{
"error": {
"code": "ERROR_CODE",
"message": "Human-readable error message",
"details": {
"field": ["Specific field error"]
}
}
}
| Status | Meaning |
|---|---|
| 200 | OK - Request succeeded |
| 201 | Created - Resource created |
| 204 | No Content - Successful deletion |
| 400 | Bad Request - Invalid syntax |
| 401 | Unauthorized - Invalid credentials |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Resource doesn't exist |
| 422 | Unprocessable Entity - Validation failed |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error - Server error |
| Code | Description |
|---|---|
VALIDATION_ERROR | Request validation failed |
UNAUTHORIZED | Authentication required |
FORBIDDEN | Insufficient permissions |
NOT_FOUND | Resource not found |
CONFLICT | Resource already exists |
RATE_LIMITED | Too many requests |
### Rate Limiting Section
```markdown
## Rate Limiting
API requests are rate limited per API key:
| Plan | Limit | Window |
|------|-------|--------|
| Free | 100 | per hour |
| Pro | 1000 | per hour |
| Enterprise | 10000 | per hour |
### Rate Limit Headers
| Header | Description |
|--------|-------------|
| `X-RateLimit-Limit` | Maximum requests allowed |
| `X-RateLimit-Remaining` | Requests remaining |
| `X-RateLimit-Reset` | Unix timestamp when limit resets |
### Rate Limit Response
When rate limited, you'll receive:
```http
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1705320000
{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 60 seconds."
}
}
## Complete Endpoint Example
```markdown
## POST /orders
Create a new order for the authenticated user.
### Request
**URL:** `POST /api/v1/orders`
**Authentication:** Required
#### Request Body
| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `items` | array | Yes | Order items |
| `items[].product_id` | string | Yes | Product UUID |
| `items[].quantity` | integer | Yes | Quantity (1-100) |
| `shipping_address` | object | Yes | Delivery address |
| `shipping_address.street` | string | Yes | Street address |
| `shipping_address.city` | string | Yes | City name |
| `shipping_address.postal_code` | string | Yes | Postal/ZIP code |
| `shipping_address.country` | string | Yes | ISO 3166-1 alpha-2 |
| `coupon_code` | string | No | Discount code |
**Example Request:**
```http
POST /api/v1/orders
Authorization: Bearer eyJhbGci...
Content-Type: application/json
{
"items": [
{
"product_id": "550e8400-e29b-41d4-a716-446655440000",
"quantity": 2
}
],
"shipping_address": {
"street": "123 Main St",
"city": "New York",
"postal_code": "10001",
"country": "US"
},
"coupon_code": "SAVE10"
}
Success Response: 201 Created
| Field | Type | Description |
|---|---|---|
id | string | Order UUID |
status | string | Order status |
items | array | Order items with prices |
subtotal | object | Subtotal amount |
discount | object | Discount amount |
total | object | Total amount |
created_at | string | ISO 8601 timestamp |
Example Response:
{
"id": "ord_123456",
"status": "pending",
"items": [
{
"product_id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Widget Pro",
"quantity": 2,
"unit_price": {"amount": 2999, "currency": "USD"},
"total": {"amount": 5998, "currency": "USD"}
}
],
"subtotal": {"amount": 5998, "currency": "USD"},
"discount": {"amount": 600, "currency": "USD"},
"total": {"amount": 5398, "currency": "USD"},
"shipping_address": {
"street": "123 Main St",
"city": "New York",
"postal_code": "10001",
"country": "US"
},
"created_at": "2025-01-15T10:30:00Z"
}
| Status | Code | Description |
|---|---|---|
| 400 | INVALID_PRODUCT | Product ID is malformed |
| 404 | PRODUCT_NOT_FOUND | Product doesn't exist |
| 422 | OUT_OF_STOCK | Insufficient inventory |
| 422 | INVALID_COUPON | Coupon code invalid or expired |
| 422 | MIN_ORDER_VALUE | Order below minimum value |
## Generation Instructions
When generating API documentation:
1. **Identify** all endpoints from routes or actions
2. **Document** request parameters (path, query, body)
3. **Document** response fields with types
4. **Provide** realistic example requests/responses
5. **List** all possible error responses
6. **Include** authentication requirements
7. **Group** endpoints by resource
Handles the full Supabase workflow from schema changes to deployment, with built-in security guardrails that catch common traps like RLS...
Comprehensive guides and best practices for Neon Serverless Postgres, covering setup, connection methods, authentication, and platform APIs.
Guide for setting up and using Firebase Authentication. Use this skill when the user's app requires user sign-in, user management, or secure data access using auth rules.
A skill to evaluate how secure Firestore security rules are. Use this when Firestore security rules are updated to ensure that the generated rules are extremely secure and robust.
Official skill for integrating Firebase AI Logic (Gemini API) into web applications. Covers setup, multimodal inference, structured output, and security.
Complete Better Auth server and client setup with database adapters, session management, plugins, and security configuration.
Deploy and manage projects on Vercel using token-based authentication. Use when working with Vercel CLI using access tokens rather than interactive login — e.g. "deploy to vercel", "set up vercel", "add environment variables to vercel".
Complete Cloudflare platform integration with decision trees for compute, storage, AI, networking, security, and infrastructure-as-code.
Run Azure compliance and security audits with azqr plus Key Vault expiration checks. Covers best-practice assessment, resource review, policy/compliance validation, and security posture checks. WHEN: compliance scan, security audit, BEFORE running azqr (compliance cli tool), Azure best practices, Key Vault expiration check, expired certificates, expiring secrets, orphaned resources, compliance assessment.
Send, read, and manage Gmail messages, drafts, labels, and account settings.
Comprehensive website auditing across 230+ rules in 21 categories including SEO, performance, security, and accessibility.
Shared authentication, CLI syntax, and output formatting patterns for gws Google Workspace commands.
Discover your celebrity doppelgänger with StarByFace!
GeoSpy: Pricing, Features, FAQs, and Alternatives for AI Teams
Detect AI-generated voices to protect against audio fraud.
Ensure Your Content's Originality with AI Plagiarism Checker
Upscale images by 400% without quality loss
Protect your social media from copyright disputes
Accurately Detect AI-Generated Content with TheChecker.AI
Chrome extension that detects and flags AI-generated content