UCAS Course Access Skill
Overview
This skill provides access to UK university and college course information from UCAS (Universities and Colleges Admissions Service). It can fetch detailed course information including titles, providers, qualifications, entry requirements, fees, contact details, and course statistics.
Functions
get_course
Fetches comprehensive details for a specific course by its UCAS course ID.
Parameters:
course_id (required): UCAS course identifier in UUID format (e.g., "18f73fdf-0804-2e30-cf22-f66710164e4f")
course_slug (optional): URL-friendly course name for building complete URLs (e.g., "media-and-communication")
Returns:
- Course title and URL
- Provider/institution name
- Course summary and description
- Entry requirements
- Fees and funding information
- Sponsorship information
- Study options (qualifications, modes, durations)
- Campus locations
- Contact details (email, phone)
- Structured data from Algolia (subjects, start dates, locations, etc.)
- Unistats data (NSS scores, employment rates, salaries) when available
Example:
result = await execute({
"function": "get_course",
"course_id": "18f73fdf-0804-2e30-cf22-f66710164e4f",
"course_slug": "media-and-communication"
}, ctx)
search_courses
Searches for courses using keywords and filters via UCAS's Algolia-powered search.
Parameters:
query (optional): Search keywords (course title, subject, etc.)
provider (optional): University/college name filter
study_level (optional): Study level filter - "Undergraduate" or "Postgraduate"
max_results (optional, default=20): Maximum number of results to return (max 100)
Note: At least one of query or provider must be provided.
Returns:
- Total number of matching courses
- Array of course summaries with:
- Course ID and URL
- Title and qualification
- Provider/institution
- Study level and mode
- Duration and location
- Start date and subjects
Example:
result = await execute({
"function": "search_courses",
"query": "computer science",
"study_level": "Undergraduate",
"max_results": 10
}, ctx)
Data Sources
This skill uses:
- HTML page scraping for rich course descriptions, entry requirements, and contact details
- Algolia search API for structured course metadata and search functionality
- UCAS Unistats API for course statistics (satisfaction scores, employment data)
Notes
- Course IDs are UUIDs that can be discovered through search or from UCAS URLs
- The skill handles both plain HTML extraction and structured JSON data from APIs
- Postgraduate courses may have fewer statistics available in Unistats
- Some course details (like entry requirements) may be specific to course options rather than the overall course
1---2name: www-ucas-com3description: UCAS Course Access Skill4---5# UCAS Course Access Skill67## Overview89This skill provides access to UK university and college course information from UCAS (Universities and Colleges Admissions Service). It can fetch detailed course information including titles, providers, qualifications, entry requirements, fees, contact details, and course statistics.1011## Functions1213### get_course1415Fetches comprehensive details for a specific course by its UCAS course ID.1617**Parameters:**18- `course_id` (required): UCAS course identifier in UUID format (e.g., "18f73fdf-0804-2e30-cf22-f66710164e4f")19- `course_slug` (optional): URL-friendly course name for building complete URLs (e.g., "media-and-communication")2021**Returns:**22- Course title and URL23- Provider/institution name24- Course summary and description25- Entry requirements26- Fees and funding information27- Sponsorship information28- Study options (qualifications, modes, durations)29- Campus locations30- Contact details (email, phone)31- Structured data from Algolia (subjects, start dates, locations, etc.)32- Unistats data (NSS scores, employment rates, salaries) when available3334**Example:**35```python36result = await execute({37 "function": "get_course",38 "course_id": "18f73fdf-0804-2e30-cf22-f66710164e4f",39 "course_slug": "media-and-communication"40}, ctx)41```4243### search_courses4445Searches for courses using keywords and filters via UCAS's Algolia-powered search.4647**Parameters:**48- `query` (optional): Search keywords (course title, subject, etc.)49- `provider` (optional): University/college name filter50- `study_level` (optional): Study level filter - "Undergraduate" or "Postgraduate"51- `max_results` (optional, default=20): Maximum number of results to return (max 100)5253**Note:** At least one of `query` or `provider` must be provided.5455**Returns:**56- Total number of matching courses57- Array of course summaries with:58 - Course ID and URL59 - Title and qualification60 - Provider/institution61 - Study level and mode62 - Duration and location63 - Start date and subjects6465**Example:**66```python67result = await execute({68 "function": "search_courses",69 "query": "computer science",70 "study_level": "Undergraduate",71 "max_results": 1072}, ctx)73```7475## Data Sources7677This skill uses:781. **HTML page scraping** for rich course descriptions, entry requirements, and contact details792. **Algolia search API** for structured course metadata and search functionality803. **UCAS Unistats API** for course statistics (satisfaction scores, employment data)8182## Notes8384- Course IDs are UUIDs that can be discovered through search or from UCAS URLs85- The skill handles both plain HTML extraction and structured JSON data from APIs86- Postgraduate courses may have fewer statistics available in Unistats87- Some course details (like entry requirements) may be specific to course options rather than the overall course