# Ucas — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search and explore UK university courses, apprenticeships, and scholarships all in one place, while discovering detailed information about education providers and their offerings. Find the perfect educational path by filtering courses and apprenticeships by your preferences and accessing comprehensive provider details to inform your decisions.

**Category:** Education | **Website:** [ucas.com/](https://ucas.com/) | **Docs:** [parse.bot/marketplace/3408223a-ef9d-4d16-bc34-7a3bb84cdb54/ucas-com-api](https://parse.bot/marketplace/3408223a-ef9d-4d16-bc34-7a3bb84cdb54/ucas-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_course_details

Retrieve full details for one course by its UUID, including provider info, entry requirements, fees, contacts, study options, and historic grade data. The course_id is obtained from search_courses results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `course_id` | string | Yes | Course UUID (e.g. 'f9631483-60d5-dbea-4593-4fb95ead77d5'). Obtained from search_courses hits[*].courseId. |
| `year_id` | string | No | Academic year ID (e.g. '2025', '2026'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/get_course_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"course_id":"<string>","year_id":"<string>"}'
```

### get_provider_details

Retrieve a detailed provider profile by UUID including course count, course listings, contact details, and open day events. The provider_id is obtained from search_providers results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `provider_id` | string | Yes | Provider UUID (e.g. '3a023828-8d77-ecfa-dc21-2708f721b788'). Obtained from search_providers hits[*].providerId. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/get_provider_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"provider_id":"<string>"}'
```

### get_scholarship_details

Retrieve full details for one scholarship by its UUID, including value, deadline, eligibility criteria, nationality requirements, and study level. The scholarship_id can be discovered via the UCAS scholarships Algolia index or browsing the site.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `scholarship_id` | string | Yes | Scholarship UUID (e.g. 'a891b5d3-a1b5-4e41-9918-42194074c320'). Discoverable via the scholarships search or UCAS scholarships page. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/get_scholarship_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"scholarship_id":"<string>"}'
```

### search_apprenticeships

Full-text search over UCAS apprenticeship listings. Returns paginated results with employer, location, salary, duration, level, and industry details.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Number of results per page. |
| `page` | integer | No | Page number (0-indexed). |
| `query` | string | No | Search keyword for apprenticeships (e.g. 'software', 'engineering'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/search_apprenticeships \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>"}'
```

### search_content

Full-text search over UCAS editorial content including articles, guides, and structured pages. Results can be filtered by content type. Returns paginated results with title, URL, summary, and author.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Number of results per page. |
| `page` | integer | No | Page number (0-indexed). |
| `query` | string | No | Search keyword for content (e.g. 'finance', 'scholarships'). |
| `type` | string | No | Content type filter. Accepted values: 'structure_content', 'article'. Omitting returns all types. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/search_content \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>","type":"<string>"}'
```

### search_courses

Full-text search over UCAS course listings filtered by academic year. Returns paginated results with course title, provider, location, study options, and subject metadata. Each hit includes a courseId suitable for drilling into full details via get_course_details.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Number of results per page. |
| `page` | integer | No | Page number (0-indexed). |
| `query` | string | No | Search keyword for courses (e.g. 'engineering', 'medicine'). |
| `year` | string | No | Academic year to filter by. Only years with published course data return results (currently '2025' and '2026'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/search_courses \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>","year":"<string>"}'
```

### search_providers

Full-text search across university and college provider names and addresses. Returns paginated results with provider identity, region, qualifications offered, and study modes.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Number of results per page. |
| `page` | integer | No | Page number (0-indexed). |
| `query` | string | No | Search keyword for providers (e.g. 'oxford', 'manchester'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ucas-com-api-3408223a/search_providers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>"}'
```
