Назад към всички

sling-api-specs

// Build REST API specifications for Sling data extraction. Use when creating API specs, configuring authentication (OAuth, API key, Bearer token, HMAC), setting up pagination (cursor, offset, page), processing responses, handling rate limits, chaining endpoints with queues, or implementing incremental

$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namesling-api-specs
descriptionBuild REST API specifications for Sling data extraction. Use when creating API specs, configuring authentication (OAuth, API key, Bearer token, HMAC), setting up pagination (cursor, offset, page), processing responses, handling rate limits, chaining endpoints with queues, or implementing incremental sync.

API Specifications

API specs are YAML definitions for extracting data from REST APIs. They handle authentication, pagination, response processing, and incremental sync automatically.

When to Use

  • Extract data from REST APIs (GET endpoints only)
  • Build incremental sync workflows
  • Handle complex pagination patterns
  • Process nested JSON responses
  • Chain multiple API calls with queues

Basic Structure

name: "My API"
description: "Data extraction from My API"

authentication:
  type: "static"
  headers:
    Authorization: "Bearer {secrets.api_token}"

defaults:
  state:
    base_url: "https://api.example.com/v1"
  request:
    headers:
      Accept: "application/json"

endpoints:
  users:
    description: "Fetch users"
    request:
      url: "{state.base_url}/users"
    response:
      records:
        jmespath: "data[]"
        primary_key: ["id"]

MCP Operations

Parse a Spec

{
  "action": "parse",
  "input": {"file_path": "/path/to/spec.yaml"}
}

Test Endpoints

{
  "action": "test",
  "input": {
    "connection": "MY_API",
    "endpoints": ["users"],
    "debug": true,
    "limit": 10
  }
}

Topics Reference

This skill includes detailed documentation for each aspect of API specification building:

TopicDescription
AUTHENTICATION.mdAll 8 authentication types (static, basic, OAuth2, AWS, HMAC, sequence)
ENDPOINTS.mdEndpoint configuration, setup/teardown sequences
REQUEST.mdHTTP request configuration, rate limiting
PAGINATION.mdAll pagination patterns (cursor, offset, page, link header)
RESPONSE.mdRecord extraction, deduplication
PROCESSORS.mdData transformations, aggregations
VARIABLES.mdVariable scopes, expressions, rendering order
QUEUES.mdEndpoint chaining, iteration
INCREMENTAL.mdSync state, context variables
DYNAMIC.mdRuntime endpoint generation
FUNCTIONS.mdExpression functions reference
RULES.mdResponse rules, retries, error handling

Quick Reference

Authentication Types

TypeUse Case
staticAPI key, Bearer token
basicUsername/password
oauth2OAuth 2.0 flows (client_credentials, authorization_code, device_code)
aws-sigv4AWS services
hmacCrypto exchanges, custom signing
sequenceMulti-step custom auth

Pagination Patterns

PatternExample
Cursorstarting_after, page_token
Offsetoffset + limit
Pagepage number
Link headerGitHub-style rel="next"

Variable Scopes

ScopeDescription
secrets.*Credentials from connection
state.*Endpoint state variables
sync.*Persisted from previous run
response.*HTTP response data
record.*Current record in processor
queue.*Endpoint chaining

Full Documentation

See https://docs.slingdata.io/concepts/api-specs.md for complete reference.