REST APIs
The Linchpin Events app has a RESTful API to retrieve useful information for any kind of external usage.
All endpoints return their data as JSON strings (a standardized lightweight data-interchange format).
{
"openapi": "3.0.1",
"paths": {
"/categories": {
"get": {
"operationId": "getEventCategories",
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
},
"post": {
"operationId": "createEventCategory",
"requestBody": {
"content": {
"*/*": {
"schema": {
"type": "object",
"properties": {
"label": {
"type": "string"
}
}
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/categories/{id}": {
"get": {
"operationId": "getEventCategoryById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
},
"put": {
"operationId": "updateEventCategory",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"*/*": {
"schema": {
"type": "object",
"properties": {
"label": {
"type": "string"
}
}
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
},
"delete": {
"operationId": "deleteEventCategoryById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/participation/event/{uuid}": {
"get": {
"operationId": "getUsersByEvent",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "offset",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "limit",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
},
"post": {
"operationId": "addParticipantByName",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"*/*": {
"schema": {
"type": "string"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
},
"delete": {
"operationId": "selfSignOffByName",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/participation/timeslot/{id}": {
"post": {
"operationId": "addParticipantToTimeslotByName",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"requestBody": {
"content": {
"*/*": {
"schema": {
"type": "string"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/participation/timeslot/{timeslotId}": {
"get": {
"operationId": "getUsersByTimeslot",
"parameters": [
{
"name": "timeslotId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "offset",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "limit",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/participation/event/{uuid}/{participantId}": {
"delete": {
"operationId": "removeParticipantByParticipantId",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "participantId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/participation/event/{uuid}/search": {
"get": {
"operationId": "searchParticipants",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "query",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "offset",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "limit",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/events/{uuid}/participants": {
"get": {
"operationId": "getUsersByEvent_1",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
},
"deprecated": true
},
"post": {
"operationId": "addParticipantByName_1",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"*/*": {
"schema": {
"type": "string"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
},
"deprecated": true
}
},
"/events/{uuid}/selfsign": {
"post": {
"operationId": "addSelfSignInByName",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
},
"deprecated": true
},
"delete": {
"operationId": "addSelfSignOffByName",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
},
"deprecated": true
}
},
"/events/create": {
"post": {
"operationId": "createEvent",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClientEventDto"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/events/delete/{uuid}": {
"delete": {
"operationId": "deleteEvent",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/events/search": {
"get": {
"operationId": "getEventByUuid",
"parameters": [
{
"name": "uuid",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
},
"put": {
"operationId": "searchEvents",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SearchDto"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/events/i18n": {
"get": {
"operationId": "getI18nKeys",
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/events/{uuid}/participants/pagination": {
"get": {
"operationId": "getUsersByEvent_2",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "offset",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "limit",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
},
"deprecated": true
}
},
"/events/listEvents": {
"put": {
"operationId": "listEvents",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SearchDto"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/events/{uuid}/participants/{participantId}": {
"delete": {
"operationId": "removeParticipantByParticipantId_1",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "participantId",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
},
"deprecated": true
}
},
"/events/{uuid}/participants/search": {
"get": {
"operationId": "searchParticipants_1",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "query",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "offset",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "limit",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
},
"deprecated": true
}
},
"/image/{filename}": {
"get": {
"operationId": "getImage",
"parameters": [
{
"name": "filename",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/image/stockimages/configuration": {
"get": {
"operationId": "getStockImageConfiguration",
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
},
"post": {
"operationId": "updateStockImageConfiguration",
"requestBody": {
"content": {
"*/*": {
"schema": {
"type": "object",
"properties": {
"unsplashEnabled": {
"type": "boolean"
}
}
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/image/upload": {
"post": {
"operationId": "uploadImage",
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/FilePart"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/image/preview": {
"post": {
"operationId": "uploadPreview",
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/FilePart"
}
}
}
},
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/permission/{uuid}": {
"get": {
"operationId": "getPermissions",
"parameters": [
{
"name": "uuid",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"application/json": {}
}
}
}
}
},
"/spaces": {
"get": {
"operationId": "getSpacesBySpaceKeys",
"parameters": [
{
"name": "spaceKeys",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"*/*": {}
}
}
}
}
},
"/spaces/search": {
"get": {
"operationId": "searchEditableSpacesForUser",
"parameters": [
{
"name": "parameter",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "limit",
"in": "query",
"schema": {
"type": "integer",
"format": "int64"
}
}
],
"responses": {
"default": {
"description": "default response",
"content": {
"*/*": {}
}
}
}
}
}
},
"components": {
"schemas": {
"ClientEventDto": {
"type": "object",
"properties": {
"uuid": {
"type": "string"
},
"pageId": {
"type": "integer",
"format": "int64"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"location": {
"type": "string"
},
"maxParticipants": {
"type": "integer",
"format": "int32"
},
"hideParticipantCount": {
"type": "boolean"
},
"hideParticipantList": {
"type": "boolean"
},
"date": {
"type": "string"
},
"endDate": {
"type": "string"
},
"rawDate": {
"type": "string"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": "string"
},
"start": {
"type": "string",
"format": "date-time"
},
"end": {
"type": "string",
"format": "date-time"
},
"hasStartTime": {
"type": "boolean"
},
"hasEndTime": {
"type": "boolean"
},
"eventPageUrl": {
"type": "string"
},
"categoryIds": {
"type": "string"
},
"categories": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventCategoryDto"
}
},
"participants": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ParticipantDto"
}
},
"participantCount": {
"type": "integer",
"format": "int32"
},
"signUpAllowed": {
"type": "boolean"
},
"hideCreator": {
"type": "boolean"
},
"timezoneCreatedIn": {
"type": "string"
},
"signUpOption": {
"type": "string",
"enum": [
"UNDEFINED",
"NO_RESTRICTION",
"RESTRICTED_TO_SELF",
"RESTRICTED_TO_SPECIFIC"
]
},
"deleted": {
"type": "boolean"
},
"teaserImageName": {
"type": "string"
},
"teaserImageUrl": {
"type": "string"
},
"userKey": {
"type": "string"
},
"eventVersion": {
"type": "integer",
"format": "int32"
},
"eventSpaceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"userAndGroups": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserAndGroupDto"
}
},
"eventFormat": {
"type": "integer",
"format": "int32"
},
"remoteLink": {
"type": "string"
},
"fullBackground": {
"type": "boolean"
},
"timeslotsEnabled": {
"type": "boolean"
},
"timeslotDurationMinutes": {
"type": "integer",
"format": "int32"
},
"timeslotCount": {
"type": "integer",
"format": "int32"
},
"timeslots": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventTimeslotDto"
}
},
"myTimeslot": {
"$ref": "#/components/schemas/EventTimeslotDto"
},
"dayLong": {
"type": "boolean"
},
"currentUserParticipating": {
"type": "boolean"
},
"publicEvent": {
"type": "boolean"
},
"startTimestamp": {
"type": "string"
},
"durationInMinutes": {
"type": "integer",
"format": "int64"
},
"endTimestamp": {
"type": "string"
},
"fullTitle": {
"type": "string"
}
}
},
"EventCategoryDto": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"id": {
"type": "integer",
"format": "int32"
}
}
},
"EventDto": {
"type": "object",
"properties": {
"description": {
"type": "string"
},
"eventId": {
"type": "integer",
"format": "int64"
},
"title": {
"type": "string"
},
"endDate": {
"type": "string",
"format": "date-time"
},
"deleted": {
"type": "boolean"
},
"pageId": {
"type": "integer",
"format": "int64"
},
"hasEndTime": {
"type": "boolean"
},
"timeslotDuration": {
"type": "integer",
"format": "int32"
},
"hasStartTime": {
"type": "boolean"
},
"startDate": {
"type": "string",
"format": "date-time"
},
"maxParticipants": {
"type": "integer",
"format": "int32"
},
"eventFormat": {
"type": "integer",
"format": "int32"
},
"timeslotsEnabled": {
"type": "boolean"
},
"fullBackground": {
"type": "boolean"
},
"remoteLink": {
"type": "string"
},
"teaserImageUrl": {
"type": "string"
},
"teaserImageName": {
"type": "string"
},
"timezoneCreatedIn": {
"type": "string"
},
"categories": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventCategoryDto"
}
},
"location": {
"type": "string"
},
"version": {
"type": "integer",
"format": "int32"
},
"uuid": {
"type": "string"
},
"eventSpaceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"signUpOption": {
"type": "string",
"enum": [
"UNDEFINED",
"NO_RESTRICTION",
"RESTRICTED_TO_SELF",
"RESTRICTED_TO_SPECIFIC"
]
},
"creatorUserKey": {
"type": "string"
},
"hideParticipantList": {
"type": "boolean"
},
"hideParticipantCount": {
"type": "boolean"
},
"eventEditors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventEditorDto"
}
},
"creatorHidden": {
"type": "boolean"
},
"signUpAllowed": {
"type": "boolean"
}
}
},
"EventEditorDto": {
"type": "object",
"properties": {
"eventId": {
"type": "integer",
"format": "int64"
},
"userKey": {
"type": "string"
},
"groupName": {
"type": "string"
}
}
},
"EventTimeslotDto": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"event": {
"$ref": "#/components/schemas/EventDto"
},
"startDate": {
"type": "string",
"format": "date-time"
},
"endDate": {
"type": "string",
"format": "date-time"
},
"participantCount": {
"type": "integer",
"format": "int32"
},
"participants": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ParticipantDto"
}
}
}
},
"ParticipantDto": {
"type": "object",
"properties": {
"userName": {
"type": "string"
},
"userKey": {
"type": "string"
},
"participantId": {
"type": "integer",
"format": "int64"
},
"eventUuid": {
"type": "string",
"writeOnly": true
},
"fullName": {
"type": "string"
},
"avatarUrl": {
"type": "string"
},
"userAnonymised": {
"type": "boolean"
},
"external": {
"type": "boolean"
},
"timeslotId": {
"type": "integer",
"format": "int64"
},
"eventUUID": {
"type": "string"
}
}
},
"UserAndGroupDto": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"SearchDto": {
"type": "object",
"properties": {
"onlyMyEvents": {
"type": "boolean"
},
"title": {
"type": "string"
},
"startDate": {
"type": "string",
"format": "date-time"
},
"endDate": {
"type": "string",
"format": "date-time"
},
"deleted": {
"type": "boolean"
},
"categoryIds": {
"type": "array",
"items": {
"type": "string"
}
},
"location": {
"type": "string"
},
"limit": {
"type": "string"
},
"offset": {
"type": "string"
},
"spaces": {
"type": "array",
"items": {
"type": "string"
}
},
"categoryConjunctionAnd": {
"type": "boolean"
},
"timeOffset": {
"type": "string"
},
"onlyMyParticipations": {
"type": "boolean"
}
},
"xml": {
"name": "event"
}
},
"FilePart": {
"type": "object",
"properties": {
"formField": {
"type": "boolean"
},
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int64"
},
"inputStream": {
"type": "object"
},
"contentType": {
"type": "string"
}
}
}
}
}
}