Syllabus Skills Extraction

Extract skills from course syllabi. Upload PDF files for analysis to identify skills students will develop. Supports asynchronous processing with webhook notifications.

Submit syllabus for skills extraction

post
/skills-extraction/syllabus

Submits a syllabus PDF for extraction. Upload the PDF file directly.

This is an asynchronous operation. The response includes a taskId that you can use to poll for status or configure a webhook for completion notification.

Processing Steps:

  1. Document parsing and text extraction

  2. Course metadata identification

  3. Skills identification using MSL taxonomy

  4. Proficiency level assignment

  5. Confidence scoring and validation

Typical processing time is 30-90 seconds depending on document length.

Supported File Types: PDF only (application/pdf) Maximum File Size: 25MB

Authorizations
X-API-KeystringRequired

Primary API key for authentication. Format: pk_live_xxx (production) or pk_test_xxx (testing).

Body
filestring · binaryRequired

The syllabus PDF file to process

webhookUrlstring · uriOptional

URL to receive webhook notification when extraction completes. The webhook will receive a POST request with the extraction results.

Example: https://yourapp.com/webhooks/mapademics
metadatastringOptional

JSON string containing optional metadata to attach to this extraction. Example: {"courseCode": "CS101", "term": "Fall 2025"}

Example: {"courseCode": "CS101", "term": "Fall 2025"}
Responses
post
/skills-extraction/syllabus

Check extraction task status

get
/skills-extraction/syllabus/tasks/{taskId}

Retrieves the current status of a syllabus extraction task. Poll this endpoint to track progress until status is completed or failed.

Status Values:

  • queued - Task is waiting to be processed

  • processing - Task is currently being processed

  • completed - Extraction finished successfully

  • failed - Extraction failed (see error for details)

Authorizations
X-API-KeystringRequired

Primary API key for authentication. Format: pk_live_xxx (production) or pk_test_xxx (testing).

Path parameters
taskIdstringRequired

The extraction task ID

Example: task_def456uvw
Responses
chevron-right
200

Task status retrieved

application/json
get
/skills-extraction/syllabus/tasks/{taskId}

Get extraction results

get
/skills-extraction/syllabus/{syllabusId}

Retrieves the extracted skills and metadata from a processed syllabus. Only available after the extraction task has completed successfully.

Authorizations
X-API-KeystringRequired

Primary API key for authentication. Format: pk_live_xxx (production) or pk_test_xxx (testing).

Path parameters
syllabusIdstringRequired

The syllabus ID

Example: syl_ghi789rst
Responses
chevron-right
200

Extraction results retrieved

application/json
get
/skills-extraction/syllabus/{syllabusId}

Last updated