.do

APIs.md

Markdown API - MDXLD instead of JSON

APIs.md

APIs.md is identical to APIs.do except it uses Markdown/MDXLD instead of JSON.

Overview

While APIs.do returns responses in JSON format following HATEOAS principles, APIs.md returns the exact same data as Markdown with MDXLD frontmatter.

Key Differences

FeatureAPIs.doAPIs.md
FormatJSONMarkdown (MDXLD)
Content-Typeapplication/jsontext/markdown
ResponseJSON objectsMarkdown with YAML frontmatter
Use CaseMachine consumptionHuman-readable, AI-friendly
Semantic FieldsJSON-LD ($id, $context, $type)MDXLD frontmatter ($id, $context, $type)

Quick Start

# Get API info as JSON
curl -H "Authorization: Bearer $API_KEY" \
  https://apis.do

# Get the same content as Markdown
curl -H "Authorization: Bearer $API_KEY" \
  https://apis.md

Response Format

All APIs.md responses use MDXLD format with semantic frontmatter:

---
$id: https://apis.do
$context: https://platform.do
$type: https://schema.org.ai/API
api:
  version: 1.0.0
  platform: platform.do
  endpoint: https://apis.do
  documentation: https://docs.platform.do/api
  status: https://status.platform.do
links:
  primitives:
    businesses: https://apis.do/businesses
    teams: https://apis.do/teams
    agents: https://apis.do/agents
    workflows: https://apis.do/workflows
    functions: https://apis.do/functions
    databases: https://apis.do/databases
    events: https://apis.do/events
    analytics: https://apis.do/analytics
  integrations:
    github: https://apis.do/github
    stripe: https://apis.do/stripe
    slack: https://apis.do/slack
    email: https://apis.do/email
    cloudflare: https://apis.do/cloudflare
    openai: https://apis.do/openai
  examples:
    github-issues: https://apis.do/github/repos/owner/repo/issues
    stripe-customers: https://apis.do/stripe/customers
    slack-messages: https://apis.do/slack/channels/general/messages
    business-workflows: https://apis.do/businesses/acme-inc/workflows
  docs:
    quickstart: https://docs.platform.do/api
    authentication: https://docs.platform.do/api/auth
    primitives: https://docs.platform.do/primitives
    integrations: https://docs.platform.do/integrations
data:
  name: APIs.do
  description: Unified API for Platform.do autonomous business operations
  platform: platform.do
  version: 1.0.0
  primitives:
    - businesses
    - teams
    - agents
    - workflows
    - functions
    - databases
    - events
    - analytics
  integrations: 9010
  rateLimit:
    free: 60
    pro: 600
    business: 6000
    enterprise: unlimited
user:
  $id: https://apis.do/users/john-doe
  name: John Doe
  email: [email protected]
  plan: pro
  permissions:
    - read
    - write
    - delete
meta:
  created: 2020-01-15T10:00:00Z
  updated: 2024-11-12T08:30:00Z
  version: 12
  etag: a1b2c3d4e5f6
---

# APIs.do - Platform API

Unified REST and RPC API for autonomous business operations.

Access core primitives (Businesses, Teams, Agents, Workflows, Functions,
Databases, Events, Analytics) and 9000+ integrations (GitHub, Stripe, Slack)
through a single semantic API with HATEOAS navigation.

Authenticate with API keys or OAuth 2.0 | Rate limits by plan | Real-time webhooks

## Primitives

- **Businesses**: Organization and company management
- **Teams**: Team collaboration and permissions
- **Agents**: AI agents for autonomous operations
- **Workflows**: Automated business processes
- **Functions**: Serverless function execution
- **Databases**: Data storage and queries
- **Events**: Event tracking and streaming
- **Analytics**: Business intelligence and reporting

## Integrations

Access 9000+ third-party services through a unified interface:

- **GitHub**: Repos, issues, PRs, actions
- **Stripe**: Payments, customers, subscriptions
- **Slack**: Channels, messages, notifications
- **Email**: Transactional and marketing emails
- **Cloudflare**: Workers, KV, R2, analytics
- **OpenAI**: GPT models, embeddings, assistants

## Examples

### Access Primitives

```bash
# List all businesses
curl https://apis.md/businesses

# Get a specific workflow
curl https://apis.md/workflows/onboarding-flow

# Create an agent
curl -X POST https://apis.md/agents \
  -d "name=Customer Support"

Access Integrations

# GitHub issues
curl https://apis.md/github/repos/owner/repo/issues

# Stripe customers
curl https://apis.md/stripe/customers

# Slack messages
curl -X POST https://apis.md/slack/channels/general/messages \
  -d "text=Hello from APIs.md!"

Why Markdown?

Markdown format provides several advantages:

  1. Human-Readable: Easy to read and understand
  2. AI-Friendly: LLMs can parse and generate MDXLD naturally
  3. Version Control: Diffs are readable in Git
  4. Documentation: Doubles as inline documentation
  5. Semantic: MDXLD frontmatter provides full JSON-LD capabilities
  6. Portable: Works with any Markdown parser

Content Negotiation

You can request either format using the Accept header:

# Get JSON response
curl -H "Accept: application/json" \
  https://apis.do/businesses

# Get Markdown response
curl -H "Accept: text/markdown" \
  https://apis.do/businesses

# Or use the .md domain
curl https://apis.md/businesses

Use Cases

APIs.do (JSON)

  • Machine-to-machine communication
  • Traditional REST API clients
  • SDKs and libraries
  • Production applications

APIs.md (Markdown)

  • Documentation generation
  • AI/LLM consumption
  • Human inspection and debugging
  • Version control and diffs
  • Content management systems

See Also