Skip to content

SCS API v2

Info

  • OpenAPI: 3.1.0
  • Title: scs-api-2
  • Version: 0.1.0
  • Server URL: https://scs.it4i.cz/api/v2

Paths

/dedicated-time

GET

  • Summary: Get dedicated times
  • Description: Retrieves dedicated time entries, optionally filtered by cluster name or period preset
  • OperationId: dedicated_time_handler

Parameters:

  • cluster (query): Filter by cluster name; Available values: karolina, barbora, dgx (optional)
  • period (query): Filter by time period preset; Available values: planned, active (optional)

Responses:

  • 200: List of dedicated time entries
  • 400: Failed to deserialize query, Invalid cluster, Invalid period Example:

{
  "message": "Invalid cluster: el_gordo"
}
- 500: Failed to retrieve dedicated time due to a server error Example:
{
  "message": "Failed to retreive dedicated time"
}

/dedicated-time-calendar

GET

  • Summary: Get dedicated times
  • Description: Retrieves dedicated time entries and generates a VCalendar response.
  • OperationId: dedicated_time_calendar

Responses:

  • 200: Dedicated time VCalendar Example:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//SUTD Timetable Calendar//randName//EN
CALSCALE:GREGORIAN
BEGIN:VEVENT
UID:1234@example.com
DTSTAMP:20230101T000000Z
DTSTART:20230101T000000Z
DTEND:20230102T000000Z
SUMMARY:Sample Dedicated Time - Cluster Outage
DESCRIPTION:Sample Dedicated Time - Cluster Outage
END:VEVENT
END:VCALENDAR
  • 500: Failed to retrieve dedicated time calendar Example:
{
  "message": "Failed to retreive dedicated time calendar"
}

/motd

GET

  • Summary: Get messages of the day
  • Description: Retrieves messages of the day, optionally filtered by category
  • OperationId: motd

Parameters:

  • category (query): (optional)

Responses:

  • 200: List of motd entries
  • 400: Failed to deserialize query, Invalid motd category
  • 500: Failed to retrieve motd entries due to a server error Example:
{
  "message": "Failed to retrieve motd"
}

Components

Schemas

DedicatedTime

type: object
required:
  - updated_at
properties:
  cluster_type:
    type: [string, 'null']
  date_efficiency:
    type: [string, 'null']
    format: date-time
  date_expiration:
    type: [string, 'null']
    format: date-time
  updated_at:
    type: string
    format: date-time

Motd

type: object
required:
  - id
  - author
  - category
  - created_at
  - updated_at
  - date_modification
  - title
  - message_body
  - systems
properties:
  id:
    type: integer
    format: int32
    examples: [1]
  author:
    type: string
    examples: [Admin]
  category:
    type: string
    examples: [public-service-announcement]
  created_at:
    type: string
    format: date-time
  updated_at:
    type: string
    format: date-time
  date_modification:
    type: string
    format: date-time
  date_efficiency:
    type: [string, 'null']
    format: date-time
  date_expiration:
    type: [string, 'null']
    format: date-time
  date_outage_efficiency:
    type: [string, 'null']
    format: date-time
  date_outage_expiration:
    type: [string, 'null']
    format: date-time
  title:
    type: string
    examples: [Important Update]
  message_body:
    type: string
    examples: [We are experiencing some service disruptions.]
  systems:
    type: array
    items:
      type: string
      examples: [Karolina]

MsgResponse

type: object
description: |
  Common struct for DTO-less responses
  eg. ```200 {"message":"Operation succeeded"}```
required:
  - message
properties:
  message:
    type: string
    examples: [API response]