API Documentation

Everything you need to integrate RC Gate into your workflow

Endpoints

Three endpoints. Simple REST API.

POST

/prd/validate

Validate PRD markdown with AI analysis

{ "prd_markdown": "..." }
POST

/gate/patches

Generate quality gate scripts

{ "repo_type": "node-pnpm-ts" }
POST

/audit/render

Generate audit reports from logs

{ "logs": { "lint": "..." } }

Try It

Test the API directly in your browser

PRD Validation

Code Examples

Quick start guides for popular languages

# Free tier (no auth required)
curl -X POST https://adspy-api.com/prd/validate \
  -H "Content-Type: application/json" \
  -d '{"prd_markdown": "## Summary\nYour PRD..."}'

# Pro/Ultra (with license key)
curl -X POST https://adspy-api.com/prd/validate \
  -H "Content-Type: application/json" \
  -H "X-License-Key: your-license-key" \
  -d '{"prd_markdown": "..."}'
const response = await fetch('https://adspy-api.com/prd/validate', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    // 'X-License-Key': 'your-key' // Pro/Ultra
  },
  body: JSON.stringify({ prd_markdown: yourPrd })
});

const { ok, score, errors, ai_feedback } = await response.json();

console.log('Score:', score);
if (ai_feedback) {
  console.log('AI Issues:', ai_feedback.issues);
  console.log('Suggestions:', ai_feedback.suggestions);
}
import requests

response = requests.post(
    'https://adspy-api.com/prd/validate',
    headers={
        # 'X-License-Key': 'your-key'  # Pro/Ultra
    },
    json={'prd_markdown': your_prd}
)

data = response.json()
print(f"Score: {data['score']}/100")

for error in data['errors']:
    print(f"[{error['severity']}] {error['message']}")

if 'ai_feedback' in data:
    print(f"AI: {data['ai_feedback']['issues']}")