Cardiff University Rollover API

Year-on-year module rollover mapping. 2 operation(s), from Cardiff's own ModulesApi contract on the api.data.cardiff.ac.uk gateway (base path /modules/v1).

Operations 2

GET /map Returns a list of the modules held in the Blackboard map
GET /rollover/{year} Returns a list of rollover modules for the given year

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cardiff-rollover-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cardiff-rollover-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: The Module API provides a simple interface for applications that want to retrieve lists of modules or information relating to a specific module taught in Cardiff University. Using the Modules API, clients can filter modules by school, language, level and year.
  version: v1
  title: ModulesApi Rollover API
  termsOfService: http://www.cardiff.ac.uk/terms/
  contact:
    name: integration@cardiff.ac.uk
  x-operator: institution
  x-source-contract: openapi/_original/cardiff-modules.yaml
  x-rebased:
    date: '2026-08-30'
    rebase-method: derived
    source: openapi/_original/cardiff-modules.yaml
    note: >-
      Repaired by the API Evangelist university pipeline. The refine-openapis per-tag split
      had carried the CoursesApi title, description and base path onto this document; its
      paths come from cardiff-modules.yaml. Title, description and servers[] re-based from that parent.
      Was: title "CoursesApi Assessments Rollover API", servers[0] "https://api.data.cardiff.ac.uk/courses/v1".
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://api.data.cardiff.ac.uk/modules/v1
security:
- default: []
tags:
- name: Rollover
paths:
  /map:
    get:
      tags:
      - Rollover
      summary: Returns a list of the modules held in the Blackboard map
      description: This endpoint returns all the modules held in the blackboard map table within SIMS.
      parameters: []
      responses:
        '200':
          description: List all modules from blackboard map
          content:
            application/json:
              schema:
                required:
                - data
                - meta
                properties:
                  data:
                    type: object
                    properties:
                      modules:
                        type: array
                        items:
                          type: object
                          properties:
                            prog_inc:
                              type: string
                            upr:
                              type: string
                            prog_exc:
                              type: string
                            year_of_study:
                              type: string
                            module_exc:
                              type: string
                            in_use:
                              type: string
                            occurrence:
                              type: string
                            dept:
                              type: string
                            module_inc:
                              type: string
                          required:
                          - dept
                          - in_use
                          - module_exc
                          - module_inc
                          - occurrence
                          - prog_exc
                          - prog_inc
                          - upr
                          - year_of_study
                  meta:
                    $ref: '#/components/schemas/Meta'
      security:
      - default:
        - lc_rollover
      x-auth-type: Application & Application User
  /rollover/{year}:
    get:
      tags:
      - Rollover
      summary: Returns a list of rollover modules for the given year
      description: This endpoint returns the list of rollover modules for a given academic year. The user passes in 18 and this is translated into 2018/9.
      parameters:
      - name: year
        in: path
        description: The required academic year eg 18
        required: true
        schema:
          type: string
      responses:
        '200':
          description: List all rollover modules
          content:
            application/json:
              schema:
                required:
                - data
                - meta
                properties:
                  data:
                    type: object
                    properties:
                      modules:
                        type: array
                        items:
                          type: object
                          properties:
                            code:
                              type: string
                            year:
                              type: string
                            name:
                              type: string
                            source:
                              type: string
                            schoolCode:
                              type: string
                          required:
                          - code
                          - name
                          - schoolCode
                          - source
                          - year
                  meta:
                    $ref: '#/components/schemas/Meta'
      security:
      - default:
        - lc_rollover
      x-auth-type: Application & Application User
components:
  schemas:
    Meta:
      type: object
      required:
      - code
      - contentType
      - count
      - errorStatus
      properties:
        code:
          type: integer
          format: int32
        errorMessage:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
        count:
          type: integer
          format: int32
        errorStatus:
          type: boolean
        contentType:
          type: string
      title: meta
  securitySchemes:
    default:
      type: oauth2
      flows:
        implicit:
          scopes:
            clearing: Allows users to see clearing data.
          authorizationUrl: https://api.data.cardiff.ac.uk/authorize