pepp GraphQL API Reference

undefined

API Endpoints
https://pepp.mathphys.info/api

Queries

applications

Response

Returns [Application!]!

Arguments
Name Description
eventID - Int
studentMail - [String!]

Example

Query
query Applications(
  $eventID: Int,
  $studentMail: [String!]
) {
  applications(
    eventID: $eventID,
    studentMail: $studentMail
  ) {
    event {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    student {
      fn
      sn
      mail
      confirmed
      eventsRegistered {
        ...EventFragment
      }
      eventsAvailable {
        ...EventFragment
      }
      eventsAssigned {
        ...EventFragment
      }
      applications {
        ...ApplicationFragment
      }
    }
    score
    accepted
    form {
      eventID
      title
      description
      questions {
        ...QuestionFragment
      }
    }
    responses {
      question {
        ...QuestionFragment
      }
      answers {
        ...AnswerValuePairFragment
      }
    }
  }
}
Variables
{"eventID": 123, "studentMail": ["abc123"]}
Response
{
  "data": {
    "applications": [
      {
        "event": Event,
        "student": User,
        "score": 123,
        "accepted": false,
        "form": Form,
        "responses": [QuestionAnswersPair]
      }
    ]
  }
}

buildings

Response

Returns [Building!]!

Arguments
Name Description
id - [Int!]

Example

Query
query Buildings($id: [Int!]) {
  buildings(id: $id) {
    ID
    name
    street
    number
    city
    zip
    latitude
    longitude
    zoomLevel
    rooms {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
  }
}
Variables
{"id": [987]}
Response
{
  "data": {
    "buildings": [
      {
        "ID": 987,
        "name": "abc123",
        "street": "xyz789",
        "number": "xyz789",
        "city": "abc123",
        "zip": 123,
        "latitude": 987.65,
        "longitude": 123.45,
        "zoomLevel": 123,
        "rooms": [Room]
      }
    ]
  }
}

events

Response

Returns [Event!]!

Arguments
Name Description
id - [Int!]
umbrellaID - [Int!]
label - [String!]
needsTutors - Boolean
onlyFuture - Boolean
userMail - [String!]

Example

Query
query Events(
  $id: [Int!],
  $umbrellaID: [Int!],
  $label: [String!],
  $needsTutors: Boolean,
  $onlyFuture: Boolean,
  $userMail: [String!]
) {
  events(
    id: $id,
    umbrellaID: $umbrellaID,
    label: $label,
    needsTutors: $needsTutors,
    onlyFuture: $onlyFuture,
    userMail: $userMail
  ) {
    ID
    tutorsAssigned {
      tutors {
        ...UserFragment
      }
      room {
        ...RoomFragment
      }
      registrations
    }
    tutorsAvailable {
      fn
      sn
      mail
      confirmed
      eventsRegistered {
        ...EventFragment
      }
      eventsAvailable {
        ...EventFragment
      }
      eventsAssigned {
        ...EventFragment
      }
      applications {
        ...ApplicationFragment
      }
    }
    roomsAvailable {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
    umbrella {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    needsTutors
    title
    description
    topic {
      name
      color
    }
    type {
      name
      color
    }
    from
    to
  }
}
Variables
{
  "id": [987],
  "umbrellaID": [987],
  "label": ["xyz789"],
  "needsTutors": true,
  "onlyFuture": true,
  "userMail": ["xyz789"]
}
Response
{
  "data": {
    "events": [
      {
        "ID": 123,
        "tutorsAssigned": [EventTutorRoomPair],
        "tutorsAvailable": [User],
        "roomsAvailable": [Room],
        "umbrella": Event,
        "needsTutors": true,
        "title": "abc123",
        "description": "xyz789",
        "topic": Label,
        "type": Label,
        "from": timestamptz,
        "to": timestamptz
      }
    ]
  }
}

forms

Response

Returns [Form!]!

Arguments
Name Description
id - [Int!]

Example

Query
query Forms($id: [Int!]) {
  forms(id: $id) {
    eventID
    title
    description
    questions {
      ID
      title
      type
      required
      answers {
        ...AnswerFragment
      }
    }
  }
}
Variables
{"id": [123]}
Response
{
  "data": {
    "forms": [
      {
        "eventID": 987,
        "title": "xyz789",
        "description": "xyz789",
        "questions": [Question]
      }
    ]
  }
}

labels

Response

Returns [Label!]!

Arguments
Name Description
name - [String!]
kind - [LabelKind!]
umbrellaID - [Int!]

Example

Query
query Labels(
  $name: [String!],
  $kind: [LabelKind!],
  $umbrellaID: [Int!]
) {
  labels(
    name: $name,
    kind: $kind,
    umbrellaID: $umbrellaID
  ) {
    name
    color
  }
}
Variables
{
  "name": ["xyz789"],
  "kind": ["EVENT_TYPE"],
  "umbrellaID": [987]
}
Response
{
  "data": {
    "labels": [
      {
        "name": "abc123",
        "color": "#3fc0cb"
      }
    ]
  }
}

rooms

Response

Returns [Room!]!

Arguments
Name Description
number - [String!]
buildingID - Int!

Example

Query
query Rooms(
  $number: [String!],
  $buildingID: Int!
) {
  rooms(
    number: $number,
    buildingID: $buildingID
  ) {
    name
    number
    capacity
    floor
    building {
      ID
      name
      street
      number
      city
      zip
      latitude
      longitude
      zoomLevel
      rooms {
        ...RoomFragment
      }
    }
  }
}
Variables
{"number": ["xyz789"], "buildingID": 987}
Response
{
  "data": {
    "rooms": [
      {
        "name": "abc123",
        "number": "xyz789",
        "capacity": 123,
        "floor": 987,
        "building": Building
      }
    ]
  }
}

settings

Response

Returns [Setting!]!

Arguments
Name Description
key - [String!]
type - [ScalarType!]

Example

Query
query Settings(
  $key: [String!],
  $type: [ScalarType!]
) {
  settings(
    key: $key,
    type: $type
  ) {
    key
    value
    type
  }
}
Variables
{"key": ["abc123"], "type": ["STRING"]}
Response
{
  "data": {
    "settings": [
      {
        "key": "xyz789",
        "value": "xyz789",
        "type": "STRING"
      }
    ]
  }
}

umbrellas

Response

Returns [Event!]!

Arguments
Name Description
id - [Int!]
onlyFuture - Boolean

Example

Query
query Umbrellas(
  $id: [Int!],
  $onlyFuture: Boolean
) {
  umbrellas(
    id: $id,
    onlyFuture: $onlyFuture
  ) {
    ID
    tutorsAssigned {
      tutors {
        ...UserFragment
      }
      room {
        ...RoomFragment
      }
      registrations
    }
    tutorsAvailable {
      fn
      sn
      mail
      confirmed
      eventsRegistered {
        ...EventFragment
      }
      eventsAvailable {
        ...EventFragment
      }
      eventsAssigned {
        ...EventFragment
      }
      applications {
        ...ApplicationFragment
      }
    }
    roomsAvailable {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
    umbrella {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    needsTutors
    title
    description
    topic {
      name
      color
    }
    type {
      name
      color
    }
    from
    to
  }
}
Variables
{"id": [123], "onlyFuture": true}
Response
{
  "data": {
    "umbrellas": [
      {
        "ID": 123,
        "tutorsAssigned": [EventTutorRoomPair],
        "tutorsAvailable": [User],
        "roomsAvailable": [Room],
        "umbrella": Event,
        "needsTutors": false,
        "title": "xyz789",
        "description": "abc123",
        "topic": Label,
        "type": Label,
        "from": timestamptz,
        "to": timestamptz
      }
    ]
  }
}

users

Response

Returns [User!]!

Arguments
Name Description
mail - [String!]

Example

Query
query Users($mail: [String!]) {
  users(mail: $mail) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"mail": ["abc123"]}
Response
{
  "data": {
    "users": [
      {
        "fn": "xyz789",
        "sn": "xyz789",
        "mail": "xyz789",
        "confirmed": true,
        "eventsRegistered": [Event],
        "eventsAvailable": [Event],
        "eventsAssigned": [Event],
        "applications": [Application]
      }
    ]
  }
}

Mutations

addBuilding

Response

Returns a Building!

Arguments
Name Description
building - NewBuilding!

Example

Query
mutation AddBuilding($building: NewBuilding!) {
  addBuilding(building: $building) {
    ID
    name
    street
    number
    city
    zip
    latitude
    longitude
    zoomLevel
    rooms {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
  }
}
Variables
{"building": NewBuilding}
Response
{
  "data": {
    "addBuilding": {
      "ID": 123,
      "name": "abc123",
      "street": "abc123",
      "number": "abc123",
      "city": "xyz789",
      "zip": 987,
      "latitude": 987.65,
      "longitude": 987.65,
      "zoomLevel": 123,
      "rooms": [Room]
    }
  }
}

addEvent

Response

Returns an Event!

Arguments
Name Description
event - NewEvent!

Example

Query
mutation AddEvent($event: NewEvent!) {
  addEvent(event: $event) {
    ID
    tutorsAssigned {
      tutors {
        ...UserFragment
      }
      room {
        ...RoomFragment
      }
      registrations
    }
    tutorsAvailable {
      fn
      sn
      mail
      confirmed
      eventsRegistered {
        ...EventFragment
      }
      eventsAvailable {
        ...EventFragment
      }
      eventsAssigned {
        ...EventFragment
      }
      applications {
        ...ApplicationFragment
      }
    }
    roomsAvailable {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
    umbrella {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    needsTutors
    title
    description
    topic {
      name
      color
    }
    type {
      name
      color
    }
    from
    to
  }
}
Variables
{"event": NewEvent}
Response
{
  "data": {
    "addEvent": {
      "ID": 987,
      "tutorsAssigned": [EventTutorRoomPair],
      "tutorsAvailable": [User],
      "roomsAvailable": [Room],
      "umbrella": Event,
      "needsTutors": true,
      "title": "abc123",
      "description": "xyz789",
      "topic": Label,
      "type": Label,
      "from": timestamptz,
      "to": timestamptz
    }
  }
}

addEventAssignmentForTutor

Response

Returns an Event!

Arguments
Name Description
assignment - EventToUserAssignment!

Example

Query
mutation AddEventAssignmentForTutor($assignment: EventToUserAssignment!) {
  addEventAssignmentForTutor(assignment: $assignment) {
    ID
    tutorsAssigned {
      tutors {
        ...UserFragment
      }
      room {
        ...RoomFragment
      }
      registrations
    }
    tutorsAvailable {
      fn
      sn
      mail
      confirmed
      eventsRegistered {
        ...EventFragment
      }
      eventsAvailable {
        ...EventFragment
      }
      eventsAssigned {
        ...EventFragment
      }
      applications {
        ...ApplicationFragment
      }
    }
    roomsAvailable {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
    umbrella {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    needsTutors
    title
    description
    topic {
      name
      color
    }
    type {
      name
      color
    }
    from
    to
  }
}
Variables
{"assignment": EventToUserAssignment}
Response
{
  "data": {
    "addEventAssignmentForTutor": {
      "ID": 987,
      "tutorsAssigned": [EventTutorRoomPair],
      "tutorsAvailable": [User],
      "roomsAvailable": [Room],
      "umbrella": Event,
      "needsTutors": true,
      "title": "xyz789",
      "description": "abc123",
      "topic": Label,
      "type": Label,
      "from": timestamptz,
      "to": timestamptz
    }
  }
}

addForm

Response

Returns a Form!

Arguments
Name Description
form - NewForm!

Example

Query
mutation AddForm($form: NewForm!) {
  addForm(form: $form) {
    eventID
    title
    description
    questions {
      ID
      title
      type
      required
      answers {
        ...AnswerFragment
      }
    }
  }
}
Variables
{"form": NewForm}
Response
{
  "data": {
    "addForm": {
      "eventID": 987,
      "title": "abc123",
      "description": "abc123",
      "questions": [Question]
    }
  }
}

addLabel

Response

Returns a Label!

Arguments
Name Description
label - NewLabel!

Example

Query
mutation AddLabel($label: NewLabel!) {
  addLabel(label: $label) {
    name
    color
  }
}
Variables
{"label": NewLabel}
Response
{
  "data": {
    "addLabel": {
      "name": "xyz789",
      "color": "#3fc0cb"
    }
  }
}

addRoom

Response

Returns a Room!

Arguments
Name Description
room - NewRoom!

Example

Query
mutation AddRoom($room: NewRoom!) {
  addRoom(room: $room) {
    name
    number
    capacity
    floor
    building {
      ID
      name
      street
      number
      city
      zip
      latitude
      longitude
      zoomLevel
      rooms {
        ...RoomFragment
      }
    }
  }
}
Variables
{"room": NewRoom}
Response
{
  "data": {
    "addRoom": {
      "name": "xyz789",
      "number": "abc123",
      "capacity": 123,
      "floor": 123,
      "building": Building
    }
  }
}

addRoomAvailabilityForEvent

Response

Returns a Room!

Arguments
Name Description
availability - RoomToEventAvailability!

Example

Query
mutation AddRoomAvailabilityForEvent($availability: RoomToEventAvailability!) {
  addRoomAvailabilityForEvent(availability: $availability) {
    name
    number
    capacity
    floor
    building {
      ID
      name
      street
      number
      city
      zip
      latitude
      longitude
      zoomLevel
      rooms {
        ...RoomFragment
      }
    }
  }
}
Variables
{"availability": RoomToEventAvailability}
Response
{
  "data": {
    "addRoomAvailabilityForEvent": {
      "name": "abc123",
      "number": "xyz789",
      "capacity": 123,
      "floor": 123,
      "building": Building
    }
  }
}

addSetting

Response

Returns a Setting!

Arguments
Name Description
setting - NewSetting!

Example

Query
mutation AddSetting($setting: NewSetting!) {
  addSetting(setting: $setting) {
    key
    value
    type
  }
}
Variables
{"setting": NewSetting}
Response
{
  "data": {
    "addSetting": {
      "key": "abc123",
      "value": "xyz789",
      "type": "STRING"
    }
  }
}

addStudent

Response

Returns a User!

Arguments
Name Description
student - NewUser!
application - NewUserToEventApplication!

Example

Query
mutation AddStudent(
  $student: NewUser!,
  $application: NewUserToEventApplication!
) {
  addStudent(
    student: $student,
    application: $application
  ) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{
  "student": NewUser,
  "application": NewUserToEventApplication
}
Response
{
  "data": {
    "addStudent": {
      "fn": "xyz789",
      "sn": "xyz789",
      "mail": "xyz789",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

addStudentApplicationForEvent

Response

Returns a User!

Arguments
Name Description
application - NewUserToEventApplication!

Example

Query
mutation AddStudentApplicationForEvent($application: NewUserToEventApplication!) {
  addStudentApplicationForEvent(application: $application) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"application": NewUserToEventApplication}
Response
{
  "data": {
    "addStudentApplicationForEvent": {
      "fn": "abc123",
      "sn": "xyz789",
      "mail": "xyz789",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

addStudentRegistrationForEvent

Response

Returns a User!

Arguments
Name Description
registration - UserToEventRegistration!

Example

Query
mutation AddStudentRegistrationForEvent($registration: UserToEventRegistration!) {
  addStudentRegistrationForEvent(registration: $registration) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"registration": UserToEventRegistration}
Response
{
  "data": {
    "addStudentRegistrationForEvent": {
      "fn": "xyz789",
      "sn": "abc123",
      "mail": "xyz789",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

addTutor

Response

Returns a User!

Arguments
Name Description
tutor - NewUser!
availability - NewUserToEventAvailability!

Example

Query
mutation AddTutor(
  $tutor: NewUser!,
  $availability: NewUserToEventAvailability!
) {
  addTutor(
    tutor: $tutor,
    availability: $availability
  ) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{
  "tutor": NewUser,
  "availability": NewUserToEventAvailability
}
Response
{
  "data": {
    "addTutor": {
      "fn": "xyz789",
      "sn": "xyz789",
      "mail": "xyz789",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

addTutorAvailabilityForEvent

Response

Returns a User!

Arguments
Name Description
availability - NewUserToEventAvailability!

Example

Query
mutation AddTutorAvailabilityForEvent($availability: NewUserToEventAvailability!) {
  addTutorAvailabilityForEvent(availability: $availability) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"availability": NewUserToEventAvailability}
Response
{
  "data": {
    "addTutorAvailabilityForEvent": {
      "fn": "xyz789",
      "sn": "xyz789",
      "mail": "abc123",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

addUser

Response

Returns a User!

Arguments
Name Description
user - NewUser!

Example

Query
mutation AddUser($user: NewUser!) {
  addUser(user: $user) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"user": NewUser}
Response
{
  "data": {
    "addUser": {
      "fn": "xyz789",
      "sn": "abc123",
      "mail": "xyz789",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

deleteBuilding

Response

Returns an Int!

Arguments
Name Description
id - [Int!]!

Example

Query
mutation DeleteBuilding($id: [Int!]!) {
  deleteBuilding(id: $id)
}
Variables
{"id": [123]}
Response
{"data": {"deleteBuilding": 987}}

deleteEvent

Response

Returns an Int!

Arguments
Name Description
id - [Int!]!

Example

Query
mutation DeleteEvent($id: [Int!]!) {
  deleteEvent(id: $id)
}
Variables
{"id": [987]}
Response
{"data": {"deleteEvent": 987}}

deleteEventAssignmentForTutor

Response

Returns an Event!

Arguments
Name Description
assignment - EventToUserAssignment!

Example

Query
mutation DeleteEventAssignmentForTutor($assignment: EventToUserAssignment!) {
  deleteEventAssignmentForTutor(assignment: $assignment) {
    ID
    tutorsAssigned {
      tutors {
        ...UserFragment
      }
      room {
        ...RoomFragment
      }
      registrations
    }
    tutorsAvailable {
      fn
      sn
      mail
      confirmed
      eventsRegistered {
        ...EventFragment
      }
      eventsAvailable {
        ...EventFragment
      }
      eventsAssigned {
        ...EventFragment
      }
      applications {
        ...ApplicationFragment
      }
    }
    roomsAvailable {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
    umbrella {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    needsTutors
    title
    description
    topic {
      name
      color
    }
    type {
      name
      color
    }
    from
    to
  }
}
Variables
{"assignment": EventToUserAssignment}
Response
{
  "data": {
    "deleteEventAssignmentForTutor": {
      "ID": 987,
      "tutorsAssigned": [EventTutorRoomPair],
      "tutorsAvailable": [User],
      "roomsAvailable": [Room],
      "umbrella": Event,
      "needsTutors": false,
      "title": "xyz789",
      "description": "xyz789",
      "topic": Label,
      "type": Label,
      "from": timestamptz,
      "to": timestamptz
    }
  }
}

deleteForm

Response

Returns an Int!

Arguments
Name Description
id - [Int!]!

Example

Query
mutation DeleteForm($id: [Int!]!) {
  deleteForm(id: $id)
}
Variables
{"id": [123]}
Response
{"data": {"deleteForm": 987}}

deleteLabel

Response

Returns an Int!

Arguments
Name Description
name - [String!]!

Example

Query
mutation DeleteLabel($name: [String!]!) {
  deleteLabel(name: $name)
}
Variables
{"name": ["xyz789"]}
Response
{"data": {"deleteLabel": 123}}

deleteRoom

Response

Returns an Int!

Arguments
Name Description
number - [String!]!
buildingID - Int!

Example

Query
mutation DeleteRoom(
  $number: [String!]!,
  $buildingID: Int!
) {
  deleteRoom(
    number: $number,
    buildingID: $buildingID
  )
}
Variables
{"number": ["abc123"], "buildingID": 123}
Response
{"data": {"deleteRoom": 987}}

deleteRoomAvailabilityForEvent

Response

Returns a Room!

Arguments
Name Description
availability - RoomToEventAvailability!

Example

Query
mutation DeleteRoomAvailabilityForEvent($availability: RoomToEventAvailability!) {
  deleteRoomAvailabilityForEvent(availability: $availability) {
    name
    number
    capacity
    floor
    building {
      ID
      name
      street
      number
      city
      zip
      latitude
      longitude
      zoomLevel
      rooms {
        ...RoomFragment
      }
    }
  }
}
Variables
{"availability": RoomToEventAvailability}
Response
{
  "data": {
    "deleteRoomAvailabilityForEvent": {
      "name": "abc123",
      "number": "abc123",
      "capacity": 123,
      "floor": 123,
      "building": Building
    }
  }
}

deleteSetting

Response

Returns an Int!

Arguments
Name Description
key - [String!]!

Example

Query
mutation DeleteSetting($key: [String!]!) {
  deleteSetting(key: $key)
}
Variables
{"key": ["xyz789"]}
Response
{"data": {"deleteSetting": 987}}

deleteStudentApplicationForEvent

Response

Returns a User!

Arguments
Name Description
mail - String!
eventID - Int!

Example

Query
mutation DeleteStudentApplicationForEvent(
  $mail: String!,
  $eventID: Int!
) {
  deleteStudentApplicationForEvent(
    mail: $mail,
    eventID: $eventID
  ) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"mail": "abc123", "eventID": 123}
Response
{
  "data": {
    "deleteStudentApplicationForEvent": {
      "fn": "xyz789",
      "sn": "xyz789",
      "mail": "xyz789",
      "confirmed": false,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

deleteStudentRegistrationForEvent

Response

Returns a User!

Arguments
Name Description
registration - UserToEventRegistration!

Example

Query
mutation DeleteStudentRegistrationForEvent($registration: UserToEventRegistration!) {
  deleteStudentRegistrationForEvent(registration: $registration) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"registration": UserToEventRegistration}
Response
{
  "data": {
    "deleteStudentRegistrationForEvent": {
      "fn": "abc123",
      "sn": "xyz789",
      "mail": "abc123",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

deleteTutorAvailabilityForEvent

Response

Returns a User!

Arguments
Name Description
availability - NewUserToEventAvailability!

Example

Query
mutation DeleteTutorAvailabilityForEvent($availability: NewUserToEventAvailability!) {
  deleteTutorAvailabilityForEvent(availability: $availability) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"availability": NewUserToEventAvailability}
Response
{
  "data": {
    "deleteTutorAvailabilityForEvent": {
      "fn": "abc123",
      "sn": "abc123",
      "mail": "abc123",
      "confirmed": false,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

deleteUser

Response

Returns an Int!

Arguments
Name Description
mail - [String!]!

Example

Query
mutation DeleteUser($mail: [String!]!) {
  deleteUser(mail: $mail)
}
Variables
{"mail": ["abc123"]}
Response
{"data": {"deleteUser": 123}}

updateBuilding

Response

Returns a Building!

Arguments
Name Description
id - Int!
building - NewBuilding!

Example

Query
mutation UpdateBuilding(
  $id: Int!,
  $building: NewBuilding!
) {
  updateBuilding(
    id: $id,
    building: $building
  ) {
    ID
    name
    street
    number
    city
    zip
    latitude
    longitude
    zoomLevel
    rooms {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
  }
}
Variables
{"id": 987, "building": NewBuilding}
Response
{
  "data": {
    "updateBuilding": {
      "ID": 123,
      "name": "xyz789",
      "street": "abc123",
      "number": "xyz789",
      "city": "xyz789",
      "zip": 123,
      "latitude": 987.65,
      "longitude": 123.45,
      "zoomLevel": 123,
      "rooms": [Room]
    }
  }
}

updateEvent

Response

Returns an Event!

Arguments
Name Description
id - Int!
event - NewEvent!

Example

Query
mutation UpdateEvent(
  $id: Int!,
  $event: NewEvent!
) {
  updateEvent(
    id: $id,
    event: $event
  ) {
    ID
    tutorsAssigned {
      tutors {
        ...UserFragment
      }
      room {
        ...RoomFragment
      }
      registrations
    }
    tutorsAvailable {
      fn
      sn
      mail
      confirmed
      eventsRegistered {
        ...EventFragment
      }
      eventsAvailable {
        ...EventFragment
      }
      eventsAssigned {
        ...EventFragment
      }
      applications {
        ...ApplicationFragment
      }
    }
    roomsAvailable {
      name
      number
      capacity
      floor
      building {
        ...BuildingFragment
      }
    }
    umbrella {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    needsTutors
    title
    description
    topic {
      name
      color
    }
    type {
      name
      color
    }
    from
    to
  }
}
Variables
{"id": 987, "event": NewEvent}
Response
{
  "data": {
    "updateEvent": {
      "ID": 123,
      "tutorsAssigned": [EventTutorRoomPair],
      "tutorsAvailable": [User],
      "roomsAvailable": [Room],
      "umbrella": Event,
      "needsTutors": false,
      "title": "xyz789",
      "description": "abc123",
      "topic": Label,
      "type": Label,
      "from": timestamptz,
      "to": timestamptz
    }
  }
}

updateForm

Response

Returns a Form!

Arguments
Name Description
id - Int!
form - NewForm!

Example

Query
mutation UpdateForm(
  $id: Int!,
  $form: NewForm!
) {
  updateForm(
    id: $id,
    form: $form
  ) {
    eventID
    title
    description
    questions {
      ID
      title
      type
      required
      answers {
        ...AnswerFragment
      }
    }
  }
}
Variables
{"id": 987, "form": NewForm}
Response
{
  "data": {
    "updateForm": {
      "eventID": 123,
      "title": "abc123",
      "description": "xyz789",
      "questions": [Question]
    }
  }
}

updateLabel

Response

Returns a Label!

Arguments
Name Description
label - NewLabel!

Example

Query
mutation UpdateLabel($label: NewLabel!) {
  updateLabel(label: $label) {
    name
    color
  }
}
Variables
{"label": NewLabel}
Response
{
  "data": {
    "updateLabel": {
      "name": "xyz789",
      "color": "#3fc0cb"
    }
  }
}

updateRoom

Response

Returns a Room!

Arguments
Name Description
room - NewRoom!

Example

Query
mutation UpdateRoom($room: NewRoom!) {
  updateRoom(room: $room) {
    name
    number
    capacity
    floor
    building {
      ID
      name
      street
      number
      city
      zip
      latitude
      longitude
      zoomLevel
      rooms {
        ...RoomFragment
      }
    }
  }
}
Variables
{"room": NewRoom}
Response
{
  "data": {
    "updateRoom": {
      "name": "xyz789",
      "number": "xyz789",
      "capacity": 987,
      "floor": 123,
      "building": Building
    }
  }
}

updateSetting

Response

Returns a Setting!

Arguments
Name Description
setting - NewSetting!

Example

Query
mutation UpdateSetting($setting: NewSetting!) {
  updateSetting(setting: $setting) {
    key
    value
    type
  }
}
Variables
{"setting": NewSetting}
Response
{
  "data": {
    "updateSetting": {
      "key": "xyz789",
      "value": "xyz789",
      "type": "STRING"
    }
  }
}

updateUser

Response

Returns a User!

Arguments
Name Description
user - NewUser!

Example

Query
mutation UpdateUser($user: NewUser!) {
  updateUser(user: $user) {
    fn
    sn
    mail
    confirmed
    eventsRegistered {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAvailable {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    eventsAssigned {
      ID
      tutorsAssigned {
        ...EventTutorRoomPairFragment
      }
      tutorsAvailable {
        ...UserFragment
      }
      roomsAvailable {
        ...RoomFragment
      }
      umbrella {
        ...EventFragment
      }
      needsTutors
      title
      description
      topic {
        ...LabelFragment
      }
      type {
        ...LabelFragment
      }
      from
      to
    }
    applications {
      event {
        ...EventFragment
      }
      student {
        ...UserFragment
      }
      score
      accepted
      form {
        ...FormFragment
      }
      responses {
        ...QuestionAnswersPairFragment
      }
    }
  }
}
Variables
{"user": NewUser}
Response
{
  "data": {
    "updateUser": {
      "fn": "abc123",
      "sn": "xyz789",
      "mail": "xyz789",
      "confirmed": true,
      "eventsRegistered": [Event],
      "eventsAvailable": [Event],
      "eventsAssigned": [Event],
      "applications": [Application]
    }
  }
}

Types

Answer

Fields
Field Name Description
ID - Int!
title - String!
points - Int!
Example
{
  "ID": 987,
  "title": "abc123",
  "points": 987
}

AnswerValuePair

Fields
Field Name Description
answer - Answer
value - String
Example
{
  "answer": Answer,
  "value": "xyz789"
}

Application

Fields
Field Name Description
event - Event!
student - User!
score - Int!
accepted - Boolean
form - Form!
responses - [QuestionAnswersPair!]
Example
{
  "event": Event,
  "student": User,
  "score": 123,
  "accepted": false,
  "form": Form,
  "responses": [QuestionAnswersPair]
}

Boolean

Description

The Boolean scalar type represents true or false.

Building

Fields
Field Name Description
ID - Int!
name - String!
street - String!
number - String!
city - String!
zip - Int!
latitude - Float!
longitude - Float!
zoomLevel - Int!
rooms - [Room!]
Example
{
  "ID": 123,
  "name": "xyz789",
  "street": "xyz789",
  "number": "abc123",
  "city": "abc123",
  "zip": 987,
  "latitude": 123.45,
  "longitude": 123.45,
  "zoomLevel": 123,
  "rooms": [Room]
}

Event

Fields
Field Name Description
ID - Int!
tutorsAssigned - [EventTutorRoomPair!]
tutorsAvailable - [User!]
roomsAvailable - [Room!]
umbrella - Event
needsTutors - Boolean!
title - String!
description - String
topic - Label!
type - Label!
from - timestamptz!
to - timestamptz!
Example
{
  "ID": 987,
  "tutorsAssigned": [EventTutorRoomPair],
  "tutorsAvailable": [User],
  "roomsAvailable": [Room],
  "umbrella": Event,
  "needsTutors": false,
  "title": "xyz789",
  "description": "abc123",
  "topic": Label,
  "type": Label,
  "from": timestamptz,
  "to": timestamptz
}

EventToUserAssignment

Fields
Input Field Description
eventID - Int!
userMail - String!
roomNumber - String!
buildingID - Int!
Example
{
  "eventID": 123,
  "userMail": "xyz789",
  "roomNumber": "abc123",
  "buildingID": 987
}

EventTutorRoomPair

Fields
Field Name Description
tutors - [User!]
room - Room
registrations - Int
Example
{
  "tutors": [User],
  "room": Room,
  "registrations": 987
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
123.45

Form

Fields
Field Name Description
eventID - Int!
title - String!
description - String
questions - [Question!]!
Example
{
  "eventID": 987,
  "title": "xyz789",
  "description": "xyz789",
  "questions": [Question]
}

HexColorCode

Example
"#3fc0cb"

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

Label

Fields
Field Name Description
name - String!
color - HexColorCode
Example
{
  "name": "abc123",
  "color": "#3fc0cb"
}

LabelKind

Values
Enum Value Description

EVENT_TYPE

TOPIC

Example
"EVENT_TYPE"

NewAnswer

Fields
Input Field Description
title - String!
points - Int!
Example
{"title": "xyz789", "points": 987}

NewBuilding

Fields
Input Field Description
name - String
street - String!
number - String!
city - String!
zip - Int!
latitude - Float!
longitude - Float!
zoomLevel - Int
Example
{
  "name": "abc123",
  "street": "abc123",
  "number": "abc123",
  "city": "xyz789",
  "zip": 123,
  "latitude": 987.65,
  "longitude": 987.65,
  "zoomLevel": 123
}

NewEvent

Fields
Input Field Description
title - String!
description - String
topicName - String
typeName - String
needsTutors - Boolean!
from - timestamptz!
to - timestamptz!
umbrellaID - Int
Example
{
  "title": "xyz789",
  "description": "xyz789",
  "topicName": "xyz789",
  "typeName": "abc123",
  "needsTutors": false,
  "from": timestamptz,
  "to": timestamptz,
  "umbrellaID": 123
}

NewForm

Fields
Input Field Description
title - String!
description - String
questions - [NewQuestion!]!
Example
{
  "title": "xyz789",
  "description": "xyz789",
  "questions": [NewQuestion]
}

NewLabel

Fields
Input Field Description
name - String!
color - HexColorCode
kind - LabelKind!
Example
{
  "name": "abc123",
  "color": "#3fc0cb",
  "kind": "EVENT_TYPE"
}

NewQuestion

Fields
Input Field Description
title - String!
type - QuestionType!
answers - [NewAnswer!]!
required - Boolean!
Example
{
  "title": "xyz789",
  "type": "MULTIPLE_CHOICE",
  "answers": [NewAnswer],
  "required": true
}

NewQuestionResponsePair

Fields
Input Field Description
questionID - Int!
answerID - Int
value - String
Example
{
  "questionID": 987,
  "answerID": 123,
  "value": "xyz789"
}

NewRoom

Fields
Input Field Description
number - String!
name - String
capacity - Int
floor - Int
buildingID - Int!
Example
{
  "number": "abc123",
  "name": "abc123",
  "capacity": 987,
  "floor": 987,
  "buildingID": 987
}

NewSetting

Fields
Input Field Description
key - String!
value - String
type - ScalarType
Example
{
  "key": "xyz789",
  "value": "abc123",
  "type": "STRING"
}

NewUser

Fields
Input Field Description
fn - String!
sn - String
mail - String!
password - String
Example
{
  "fn": "abc123",
  "sn": "abc123",
  "mail": "abc123",
  "password": "xyz789"
}

NewUserToEventApplication

Fields
Input Field Description
userMail - String!
eventID - Int!
answers - [NewQuestionResponsePair!]
Example
{
  "userMail": "xyz789",
  "eventID": 987,
  "answers": [NewQuestionResponsePair]
}

NewUserToEventAvailability

Fields
Input Field Description
userMail - String!
eventID - [Int!]!
Example
{"userMail": "xyz789", "eventID": [123]}

Question

Fields
Field Name Description
ID - Int!
title - String!
type - QuestionType!
required - Boolean!
answers - [Answer!]!
Example
{
  "ID": 123,
  "title": "xyz789",
  "type": "MULTIPLE_CHOICE",
  "required": false,
  "answers": [Answer]
}

QuestionAnswersPair

Fields
Field Name Description
question - Question!
answers - [AnswerValuePair!]!
Example
{
  "question": Question,
  "answers": [AnswerValuePair]
}

QuestionType

Values
Enum Value Description

MULTIPLE_CHOICE

SINGLE_CHOICE

SCALE

TEXT

Example
"MULTIPLE_CHOICE"

Room

Fields
Field Name Description
name - String
number - String!
capacity - Int
floor - Int
building - Building!
Example
{
  "name": "xyz789",
  "number": "xyz789",
  "capacity": 987,
  "floor": 123,
  "building": Building
}

RoomToEventAvailability

Fields
Input Field Description
roomNumber - String!
buildingID - Int!
eventID - Int!
Example
{
  "roomNumber": "abc123",
  "buildingID": 123,
  "eventID": 987
}

ScalarType

Values
Enum Value Description

STRING

INT

FLOAT

BOOLEAN

COLOR

TIMESTAMP

Example
"STRING"

Setting

Fields
Field Name Description
key - String!
value - String!
type - ScalarType!
Example
{
  "key": "abc123",
  "value": "xyz789",
  "type": "STRING"
}

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"xyz789"

User

Fields
Field Name Description
fn - String!
sn - String!
mail - String!
confirmed - Boolean!
eventsRegistered - [Event!]
eventsAvailable - [Event!]
eventsAssigned - [Event!]
applications - [Application!]
Example
{
  "fn": "abc123",
  "sn": "xyz789",
  "mail": "xyz789",
  "confirmed": false,
  "eventsRegistered": [Event],
  "eventsAvailable": [Event],
  "eventsAssigned": [Event],
  "applications": [Application]
}

UserToEventRegistration

Fields
Input Field Description
eventID - Int!
userMail - String!
roomNumber - String!
buildingID - Int!
Example
{
  "eventID": 987,
  "userMail": "abc123",
  "roomNumber": "abc123",
  "buildingID": 123
}

timestamptz

Example
timestamptz