pepp GraphQL API Reference
undefined
API Endpoints
https://pepp.mathphys.info/api
Queries
applications
Response
Returns [Application!]!
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!]!
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
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
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
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
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
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
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
addRoom
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
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
deleteEvent
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
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
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
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
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
updateRoom
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
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
AnswerValuePair
Application
Boolean
Description
The Boolean
scalar type represents true
or false
.
Building
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
EventTutorRoomPair
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 |
---|---|
|
|
|
Example
"EVENT_TYPE"
NewAnswer
NewBuilding
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
NewRoom
NewSetting
Fields
Input Field | Description |
---|---|
key - String!
|
|
value - String
|
|
type - ScalarType
|
Example
{
"key": "xyz789",
"value": "abc123",
"type": "STRING"
}
NewUser
NewUserToEventApplication
Fields
Input Field | Description |
---|---|
userMail - String!
|
|
eventID - Int!
|
|
answers - [NewQuestionResponsePair!]
|
Example
{
"userMail": "xyz789",
"eventID": 987,
"answers": [NewQuestionResponsePair]
}
NewUserToEventAvailability
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 |
---|---|
|
|
|
|
|
|
|
Example
"MULTIPLE_CHOICE"
Room
RoomToEventAvailability
ScalarType
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
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
Example
{
"fn": "abc123",
"sn": "xyz789",
"mail": "xyz789",
"confirmed": false,
"eventsRegistered": [Event],
"eventsAvailable": [Event],
"eventsAssigned": [Event],
"applications": [Application]
}
UserToEventRegistration
timestamptz
Example
timestamptz