# Send PrepSPSC PYQ API to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "prepspsc-pyq",
    "name": "PrepSPSC PYQ API",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/himyeticapital/prepspsc-pyq",
    "canonicalUrl": "https://clawhub.ai/himyeticapital/prepspsc-pyq",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/prepspsc-pyq",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=prepspsc-pyq",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "prepspsc-pyq",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T09:57:54.746Z",
      "expiresAt": "2026-05-14T09:57:54.746Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=prepspsc-pyq",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=prepspsc-pyq",
        "contentDisposition": "attachment; filename=\"prepspsc-pyq-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "prepspsc-pyq"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/prepspsc-pyq"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/prepspsc-pyq",
    "downloadUrl": "https://openagent3.xyz/downloads/prepspsc-pyq",
    "agentUrl": "https://openagent3.xyz/skills/prepspsc-pyq/agent",
    "manifestUrl": "https://openagent3.xyz/skills/prepspsc-pyq/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/prepspsc-pyq/agent.md"
  }
}
```
## Documentation

### PrepSPSC PYQ API

Search 7,400+ real previous year questions from Sikkim PSC (SPSC) exams and generate mock tests across 64 exam patterns. Returns MCQ questions with options, correct answers, explanations, topics, cognitive levels, and difficulty metadata.

### Quick Reference

DetailValueBase URLhttps://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-apiAuthAuthorization: Bearer sk_live_YOUR_KEYQuestions7,442 across 27 subjectsExam Patterns64 (Civil Services, Police, Medical, Engineering, Education, IT, and more)Get API Keyprepspsc.com/developers

### Authentication

All requests require a Bearer token in the Authorization header. API keys start with sk_live_.

### Check Existing Setup First

Before guiding the user through setup, check if the API key is already available:

if [ -n "$PREPSPSC_API_KEY" ]; then
  echo "Configured"
else
  echo "No API key found. Get one at https://prepspsc.com/developers"
fi

If no key is found, direct the user to https://prepspsc.com/developers to generate a free API key.

### Making Requests

curl -X POST "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{"query": "fundamental rights", "subject": "Indian Polity", "limit": 5}'

### 1. List Available Subjects

GET /pyq-api — Returns all subjects with question counts. Call this first to see what's available.

curl "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY"

Response:

{
  "subjects": [
    { "subject": "Indian Polity", "count": 842 },
    { "subject": "History", "count": 756 },
    { "subject": "General Knowledge", "count": 698 }
  ],
  "total_questions": 7442
}

Available subjects: General English, General Knowledge, Indian Polity, History, Geography, Science, Environment, Indian Economy, Arithmetic and Logical Reasoning, Agriculture, Botany, Zoology, Nepali Literature, Current Affairs, and more (27 total).

### 2. Search Questions (Semantic Search)

POST /pyq-api — Search PYQs using natural language. Uses vector similarity + keyword hybrid matching.

curl -X POST "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "query": "Fundamental Rights Article 21",
    "subject": "Indian Polity",
    "limit": 5,
    "threshold": 0.3
  }'

FieldTypeRequiredDescriptionquerystringYesNatural language search (min 3 chars)subjectstringYesSubject to search withinlimitintegerNoMax results, 1-20 (default: 5)thresholdnumberNoMin similarity 0-1 (default: 0.3, lower = more results)year_minintegerNoExclude time-sensitive questions older than this yearexclude_idsstring[]NoQuestion UUIDs to exclude (for pagination)

Response:

{
  "questions": [
    {
      "id": "uuid",
      "question": "Which Article of the Indian Constitution guarantees the Right to Life?",
      "options": [
        { "id": "a", "text": "Article 14" },
        { "id": "b", "text": "Article 19" },
        { "id": "c", "text": "Article 21" },
        { "id": "d", "text": "Article 32" }
      ],
      "correct_option_id": "c",
      "explanation": "Article 21 states that no person shall be deprived of his life or personal liberty...",
      "subject": "Indian Polity",
      "topics": ["Fundamental Rights", "Article 21", "Right to Life"],
      "difficulty": "easy",
      "cognitive_level": "remember",
      "is_time_sensitive": false,
      "high_yield": true,
      "similarity": 0.89
    }
  ],
  "count": 5
}

### 3. Generate Mock Test

POST /pyq-api/mock-test — Generate a complete mock test following real SPSC exam patterns with difficulty balancing.

curl -X POST "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/mock-test" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "pattern": "undersecretary-prelims",
    "difficulty_mix": { "easy": 30, "medium": 50, "hard": 20 }
  }'

FieldTypeRequiredDescriptionpatternstringYesExam pattern ID (64 available, see below)difficulty_mixobjectNoCustom difficulty % (default: 30/50/20)year_minintegerNoExclude stale current affairsexclude_idsstring[]NoSkip questions from previous tests

Response includes: test metadata (name, total questions, duration, marking scheme) + sections with difficulty-balanced questions.

Available Exam Patterns (64 Total)

Core / General: undersecretary-prelims, general-prelims, spsc-mains-gs1, spsc-mains-gs2, quick-practice-30

Civil Services: sscs-prelims, combined-mains-gs3, combined-mains-english

Police / Law: si-police-prelims, si-police-mains, si-excise, sub-jailer

Fire Service: sub-fire-officer

Engineering: junior-engineer-prelims, assistant-engineer-civil, assistant-engineer-electrical, assistant-engineer-mechanical, assistant-engineer-agriculture

Medical / Health: gdmo, veterinary-officer, dental-surgeon, specialist-sr-grade, staff-nurse, paramedical, health-educator, mphw, drug-inspector, food-safety-officer, pharmacist-ayush, yoga-instructor-ayush, scientific-officer-ayush, tutor-clinical-instructor

Administrative: ldc-prelims, accounts-clerk, stenographer, cooperative-inspector, statistical-inspector, revenue-inspector, revenue-surveyor, commercial-tax-inspector

Forestry / Fisheries: forest-ranger-prelims, fisheries-officer, assistant-director-fisheries, livestock-assistant

Education: lecturer-diet, iti-instructor, principal-iti, assistant-professor-sheda

Other Specialized: assistant-town-planner, assistant-architect, assistant-geologist, digital-analyst, assistant-programmer, assistant-director-it, lab-assistant, field-assistant, ado-wdo-hdo, senior-information-assistant, sub-editor, inspector-legal-metrology, photographer, script-writer, feed-mill-operator, printing-stationery

Use GET /pyq-api/patterns to get full details with subject distribution, duration, and marking scheme for each pattern.

### 4. List Exam Patterns

GET /pyq-api/patterns — Returns all 64 exam patterns with subject distribution, question counts, duration, and marking scheme.

curl "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/patterns" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY"

### 5. Record Progress

POST /pyq-api/progress — Record a user's answer to a question.

curl -X POST "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/progress" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "external_user_id": "user123",
    "question_id": "uuid-here",
    "selected_option": "c",
    "is_correct": true,
    "time_spent_seconds": 45
  }'

### 6. Get User Progress

GET /pyq-api/progress?user_id=user123 — Retrieve a user's complete answer history.

curl "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/progress?user_id=user123" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY"

### 7. Performance Analytics

GET /pyq-api/analytics?user_id=user123 — Get accuracy by subject, difficulty breakdown, and recent activity.

curl "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/analytics?user_id=user123" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY"

### 8. Leaderboard

GET /pyq-api/leaderboard — Rankings by correct answers and accuracy.

curl "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/leaderboard?limit=20&time_range=all_time" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY"

ParameterTypeDefaultDescriptionlimitinteger20Max entries (1-100)time_rangestringall_timeweek, month, or all_time

### 9. Bookmarks

Add bookmark:

curl -X POST "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/bookmarks" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{"external_user_id": "user123", "question_id": "uuid-here", "note": "Review later"}'

List bookmarks:

curl "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/bookmarks?user_id=user123" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY"

Remove bookmark:

curl -X DELETE "https://qqqditxzghqzodvauxth.supabase.co/functions/v1/pyq-api/bookmarks" \\
  -H "Authorization: Bearer $PREPSPSC_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{"external_user_id": "user123", "question_id": "uuid-here"}'

### Quick Practice Session

GET /pyq-api — Check available subjects
POST /pyq-api/mock-test with "pattern": "quick-practice-30" — Get a 30-question test
Present questions to user one at a time
POST /pyq-api/progress — Record each answer
GET /pyq-api/analytics?user_id=xxx — Show performance summary

### Subject-Specific Study

POST /pyq-api — Search for questions on a specific topic (e.g., "query": "Fundamental Rights", "subject": "Indian Polity")
Present questions as flashcards or quiz
Track progress with POST /pyq-api/progress

### Full Mock Exam

GET /pyq-api/patterns — Show available exam patterns
User picks a pattern (e.g., undersecretary-prelims)
POST /pyq-api/mock-test — Generate the test
Time the user (duration from response metadata)
Record all answers via POST /pyq-api/progress
Show analytics via GET /pyq-api/analytics

### AI Question Generation Reference

POST /pyq-api — Fetch real PYQs as few-shot examples
Analyze returned topics, cognitive_level, difficulty
Use as reference to generate new questions matching real exam standards

### Error Handling

HTTP StatusError CodeMeaning400INVALID_QUERYQuery too short or missing required fields401INVALID_API_KEYAPI key missing, invalid, or revoked404INVALID_PATTERNUnknown exam pattern ID429RATE_LIMITEDToo many requests (free: 10/min, paid: 60/min)500INTERNAL_ERRORServer error

### Rate Limits

TierRequests/minRequests/monthFree101,000Paid6050,000Enterprise500Unlimited

Get your free API key at https://prepspsc.com/developers
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: himyeticapital
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-07T09:57:54.746Z
- Expires at: 2026-05-14T09:57:54.746Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/prepspsc-pyq)
- [Send to Agent page](https://openagent3.xyz/skills/prepspsc-pyq/agent)
- [JSON manifest](https://openagent3.xyz/skills/prepspsc-pyq/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/prepspsc-pyq/agent.md)
- [Download page](https://openagent3.xyz/downloads/prepspsc-pyq)