ElKE API

API Endpoint

this document specifies the ElKE api.

API - Version 1.0

Change Log

General Concepts

Versioning

Versioning is handles as a combination of URI path and header parameter. The URI path includes larger disruptive vesions, while smaller updates to the API are handled with a header parameter

Major versions - URI path

Major versions with large changes of the query and response structures are handled as seperate URI path. Major versions provide structural stability of the API as a whole.

Version URI Description
1 /V1/ Initial version of standarized API structure

Minor versions - Header parameter

Minor versions are handled using a header parameter. If no header paramter is provided in a request, version 1 is returned.

The API uses the header parameter api-version.

Version api-version Description
1.0 1 Default Version. Released on December 13, 2018. (Archived version)
1.1 2 Proposed

Errors

The API uses conventional HTTP response codes to indicate the success or failure of an API request. In general codes in the 2xx range indicate sucesss, while codes in the 4xx range indicate a problem. Errors in the 5xx range indicate an error of the back-end servers.

Response Code Name Description
200 OK Everything worked as expected
204 No Content The server successfully executed the method but returns no response body or an empty array.
301 Moved Permanently In case an old mayor version of the API is not further supported
400 Bad Request The request was unacceptable.
401 Unauthorized Wrong or no authentication provided, e.g. no valid token provided
402 Request Failed The parameters were valid but the request failed.
403 Forbidden Authentication succeeded but user not authorized to access endpoint or resource, e.g. missing permissions.
404 Not Found The requested resource doesn’t exist.
429 Too Many Requests Too many requests hit the API too quickly.
5xx Server errors Something went wrong in the backend servers.

In some cases of 4xx errors it may be required to extent the API to return a complexer error object with further information on the error, allowing to programmatically handle the error. This is currently not in place for a lot of errors.

Error object

The error returned by the endpoint includes a message field and in some cases also a type. The problem details follow (RFC7807).

Content-Type: application/problem+json

{
"type" : "https://api.kamas.storyx.company/errors/something-bad-happened",
"title" : "Something bad happened :(",
"detail": "Description of the bad thing",
"status": 403
}
Property Type Description
type string A URI reference that identifies the problem type.
title string A short, human-readable summary of the problem type.
status number The HTTP status code generated by the origin server for this occurrence of the problem.
detail string A human-readable explanation specific to this occurrence of the problem.

List of Custom Errors

Status Code Type Endpoint Description
401 https://api.kamas.storyx.company/errors/errors/accessDenied all Authentication provided is invalid

Request Id

To allow tracking problems end-to-end, clinets may add a request-id to every request’s header. The request id will be logged and thus allow to identify selected requests across the different components.

Pagination

Request Query Parameters

Paramter Description
pageSize number of results per page (default: 10)
page number of the page requested

Response body

Paramter Description
paging Pagination metadata
paging.page Number of the page requested
paging.pageSize Number of results per page
paging.rowCount Total number of rows found
paging.pageCount Total number of pages based on pageSize and rowCount
items Collection of rows(result set)
{
    "paging": {
        "page": 1,
        "pageSize": 10,
        "rowCount": 16,
        "pageCount": 2
    },
    items: []
}

Sorting

For selected resources, it is possible to request the results to be presorted. The sorting is requested by adding the query parameter sortedBy and sortedDesc(boolean). If sorting is possible for a selected query is mentioned in the respective query section.

Ex: /api/v1/trainingSites?sortedBy=name&sortedDesc=true

Expandability

For selected resources, it is possible to request the inclusion of related resources in the response by adding the query parameter expand. Supported items are mentioned in every query section.

Language

Clients can ask for data to be retrieved in specific language by adding header attribute Accept-Language to the request. The request can only be satisifed, provided the backend systems offer support for multiple languages and data is maintained in the requested lanagauge. In all other cases, data is returned in the default languauge of the backend system.

Example: Accept-Language: de-DE

Common Data Types

The following conventions are applied to data types used in the API.

Default Values for Data types

If not otherwise mentioned in the schema or property definition of the single endpoints, the following default values are set by the APIs for the different data types.

Type Default Value
string null if optional
array [] (empty array)
number null
boolean default values has to be defined for every endpoint
enum default values has to be defined for every endpoint

Date and Time Format

Date and Time conform to the (ISO 8601) format e.g.: 2017-06-21T14:07:17Z (date time) or 2017-06-21 (date), in UTC (without time offsets).

Duration Format

Duration format conform to the (ISO 8601) standard e.g.: P3Y6M4DT12H30M5S (three years, six months, four days, twelve hours, thirty minutes, and five seconds).

Time Interval Format

Time Interval format conform to the (ISO 8601) standard e.g.: 2007-03-01T13:00:00Z/2008-05-11T15:30:00Z .

Language Code Format

Language codes conform to the (ISO 639) e.g.: en for English

Country Code Format

Country codes conform to the (ISO 3166-1 alpha-2) e.g.: DE for Germany.

Currency Format

Currency codes MUST conform to the (ISO 4217) e.g.: EUR for Euro

Authentication and User Context

Usage of the API requires an access token that has to be included in the header of every request. There are two types of token possible: Personalized or Client.

Token Type Grant Type Scope
personalized password User can access endpoints according to his role and data filters configured in the user management
client client_credentials Access to endpoints that are configured for the particular client or do not require login e.g. reset password, register user

User Context

The API uses OAuth v2 Bearer Token / Personal Access Token for its authentication. The token is bound to the data context of the user. The access_token field in the get access token response contains a bearer token, indicated by the token_type of Bearer. Include this bearer token in API requests in the Authorization header with the Bearer authentication scheme.

Access tokens have a finite lifetime. The expires_in field in the get access token response indicates the lifetime, in seconds, of the access token. For example, an expiry value of 3600 indicates that the access token expires in one hour from the time the response was generated. When a request is placed with an invalid or expired token, API endpoints will issue a HTTP status code 401 Unauthorized.

To accuire a personalized access token, clients shall use the oauth grant_type:password and provide username and password of the user when requesting the token.

Client Authentication

Selected endpoints can be accessed by authorized clients without a user context. E.g. those endpoints that do not require a user login like user registration and forgot password. These enpoints are marked. To accuire an annoymous access token, clients shall use the oauth grant_type:client_credentials. For this request, client_id and client_secret are sufficient.

Login

These request do not require an authentication user token and can be performed annoymously.

POST /auth/token
Requestspersonalized token successauthorization failure
Headers
Content-Type: application/json
api-version: 1
Body
{
  "username": "john.doe@nomail.com",
  "password": "Password123"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "username": {
      "type": "string",
      "description": "unique email of user"
    },
    "password": {
      "type": "string",
      "description": "password of the user"
    }
  },
  "required": [
    "username",
    "password"
  ]
}
Responses200
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSIsImtpZCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSJ9",
  "expires_in": 3600,
  "refresh_expires_in": 1800,
  "token_type": "Bearer",
  "refresh_token": "11c626246057b3ee7f6f313cf78b00c4",
  "not": "Hello, world!",
  "session_state": "708c568d-8726-4dc4-a129-8e997d6f6354",
  "scope": "profile email"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "access_token": {
      "type": "string",
      "description": "token used in headers of request to get access to data context"
    },
    "expires_in": {
      "type": "number",
      "description": "duration the token is valid"
    },
    "refresh_expires_in": {
      "type": "number"
    },
    "token_type": {
      "type": "string",
      "description": "type of token used"
    },
    "refresh_token": {
      "type": "string",
      "description": "token that can be used to refresh the access grant."
    },
    "not": {
      "type": "string",
      "description": "before-policy: 0  (required, number)"
    },
    "session_state": {
      "type": "string"
    },
    "scope": {
      "type": "string"
    }
  },
  "required": [
    "access_token",
    "expires_in",
    "refresh_expires_in",
    "token_type",
    "refresh_token",
    "session_state",
    "scope"
  ]
}
Headers
Content-Type: application/json
api-version: 1
Body
{
  "username": "no-user",
  "password": "ad"
}
Responses401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "type": "login-failure",
  "title": "Invalid_Grant",
  "detail": "Username or Password incorrect",
  "status": 401
}

Get access token
POST/auth/token


Refresh access token

These request do not require an authentication user token and can be performed annoymously.

POST /auth/refresh_token
Requestsaccess token successaccess token failure
Headers
Content-Type: application/x-www-form-urlencoded
api-version: 1
Body
{
  "refresh_token": "11c626246057b3ee7f6f313cf78b00c4"
}
Schema
{
  "type": "object",
  "properties": {
    "refresh_token": {
      "type": "string"
    }
  },
  "required": [
    "refresh_token"
  ],
  "$schema": "http://json-schema.org/draft-04/schema#"
}
Responses200
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSIsImtpZCI6ImEzck1VZ01Gdjl0UGNsTGE2eUYzekFrZnF1RSJ9",
  "expires_in": 3600,
  "refresh_expires_in": 1800,
  "token_type": "Bearer",
  "refresh_token": "11c626246057b3ee7f6f313cf78b00c4",
  "not": "Hello, world!",
  "session_state": "708c568d-8726-4dc4-a129-8e997d6f6354",
  "scope": "profile email"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "access_token": {
      "type": "string",
      "description": "token used in headers of request to get access to data context"
    },
    "expires_in": {
      "type": "number",
      "description": "duration the token is valid"
    },
    "refresh_expires_in": {
      "type": "number"
    },
    "token_type": {
      "type": "string",
      "description": "type of token used"
    },
    "refresh_token": {
      "type": "string",
      "description": "token that can be used to refresh the access grant."
    },
    "not": {
      "type": "string",
      "description": "before-policy: 0  (required, number)"
    },
    "session_state": {
      "type": "string"
    },
    "scope": {
      "type": "string"
    }
  },
  "required": [
    "access_token",
    "expires_in",
    "refresh_expires_in",
    "token_type",
    "refresh_token",
    "session_state",
    "scope"
  ]
}
Headers
Content-Type: application/x-www-form-urlencoded
api-version: 1
Body
{
  "refresh_token": "``"
}
Schema
{
  "type": "object",
  "properties": {
    "refresh_token": {
      "type": "string"
    }
  },
  "required": [
    "refresh_token"
  ],
  "$schema": "http://json-schema.org/draft-04/schema#"
}
Responses401
Headers
Content-Type: application/problem+json; charset=utf-8
Body
{
  "type": "https://api.kamas.storyx.company/errors/errors/refresh-failure",
  "title": "Invalid_Grant",
  "detail": "Refresh Token invalid",
  "status": 401
}

Refresh access token via refresh token
POST/auth/refresh_token


Request Reset Password

These request do not require an authentication user token and can be performed annoymously.

POST /auth/forgot-password
RequestsReset Password
Headers
Content-Type: application/x-www-form-urlencoded
api-version: 1
Body
{
  "email": "test_user@gmail.com"
}
Schema
{
  "type": "object",
  "properties": {
    "email": {
      "type": "string"
    }
  },
  "required": [
    "email"
  ],
  "$schema": "http://json-schema.org/draft-04/schema#"
}
Responses200500
Headers
Content-Type: application/problem+json; charset=utf-8
Body
{
  "detail": "success",
  "status": 200
}
Headers
Content-Type: application/problem+json; charset=utf-8
Body
{
  "detail": "failure",
  "status": 500
}

Request Reset Password
POST/auth/forgot-password


Validate Reset Password Token

These request do not require an authentication user token and can be performed annoymously. But needs reset password token in body.

POST /auth/validate-reset-password-token
Responses200500
Headers
Content-Type: application/problem+json; charset=utf-8
Body
{
  "detail": "success",
  "status": 200
}
Headers
Content-Type: application/problem+json; charset=utf-8
Body
{
  "detail": "failure",
  "status": 500
}

Validate Reset Password Token
POST/auth/validate-reset-password-token

  • Validate Reset Password Token (application/x-www-form-urlencoded)

    • Headers

      api-version: 1
    • Attributes

      • token: 60e0d2e03f859679e98b33d9875be0e2 (string, required)

Reset Password

These request do not require an authentication user token and can be performed annoymously. But needs reset password token in body.

POST /auth/reset-password
Responses200500
Headers
Content-Type: application/problem+json; charset=utf-8
Body
{
  "detail": "success",
  "status": 200
}
Headers
Content-Type: application/problem+json; charset=utf-8
Body
{
  "detail": "failure",
  "status": 500
}

Reset Password
POST/auth/reset-password

  • Validate Reset Password Token (application/x-www-form-urlencoded)

    • Headers

      api-version: 1
    • Attributes

      • token: 60e0d2e03f859679e98b33d9875be0e2 (string, required)
      • password: new_password (string, required)

Change Password

POST /auth/change-password
Requestschange password
Headers
Content-Type: application/x-www-form-urlencoded
api-version: 1
Body
{
  "oldPassword": "old_password",
  "newPassword": "new_password"
}
Schema
{
  "type": "object",
  "properties": {
    "oldPassword": {
      "type": "string"
    },
    "newPassword": {
      "type": "string"
    }
  },
  "required": [
    "oldPassword",
    "newPassword"
  ],
  "$schema": "http://json-schema.org/draft-04/schema#"
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
    message: "success"
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
    error: "error"
}

Change Password
POST/auth/change-password


User

All user

POST /user?orgId=5&email=john.die@foomail.com&name=john&city=stuttgart&sortedBy=city
Requestsadd user
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "email": "John.doe@gmx.de",
  "password": "P@sSW0rd",
  "firstName": "John",
  "lastName": "Doe",
  "title": "Dr.",
  "gender": "male",
  "phone": "+49746383643",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "birthDate": "2017-06-21",
  "dataProtectionConsent": true,
  "expirationDate": "2017-06-21"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string"
    },
    "password": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "enum": [
        "Dr."
      ]
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "phone": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "birthDate": {
      "type": "string"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "expirationDate": {
      "type": "string"
    }
  },
  "required": [
    "email",
    "password",
    "firstName",
    "lastName",
    "phone",
    "birthDate",
    "dataProtectionConsent"
  ]
}
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 74,
  "email": "John.doe@gmx.de",
  "firstName": "John",
  "lastName": "Doe",
  "title": "Dr.",
  "gender": "male",
  "phone": "+49746383643",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "birthDate": "2017-06-21",
  "dataProtectionConsent": true,
  "expirationDate": "2017-06-21",
  "lastLogin": "2019-10-10",
  "resetPasswordToken": "221",
  "resetPasswordTokenExpiry": "2019-12-04 16:28:22.548+00",
  "isDeactivated": false,
  "keycloakId": "cc83ac0c-7658-4f65-ac64-d402d2f2b7ba"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "email": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "enum": [
        "Dr."
      ]
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "birthDate": {
      "type": "string"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "expirationDate": {
      "type": "string"
    },
    "lastLogin": {
      "type": "string"
    },
    "resetPasswordToken": {
      "type": "string"
    },
    "resetPasswordTokenExpiry": {
      "type": "string"
    },
    "isDeactivated": {
      "type": "boolean"
    },
    "keycloakId": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "email",
    "firstName",
    "lastName",
    "phone",
    "birthDate",
    "dataProtectionConsent",
    "isDeactivated",
    "keycloakId"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

add new user
POST/user{?orgId,email,name,city,sortedBy}

add new user. NOTE: user needs to be assigned to an organization via a role record.

URI Parameters
HideShow
orgId
number (optional) Example: 5
email
string (optional) Example: john.die@foomail.com
name
string (optional) Example: john
city
string (optional) Example: stuttgart
sortedBy
string (optional) Example: city

GET /user?orgId=5&email=john.die@foomail.com&name=john&city=stuttgart&sortedBy=city
Requestsget user
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 74,
    "email": "John.doe@gmx.de",
    "firstName": "John",
    "lastName": "Doe",
    "title": "Dr.",
    "gender": "male",
    "phone": "+49746383643",
    "address": {
      "street": "Musterstrasse",
      "housenr": 5,
      "additional": "Zimmer 43",
      "postcode": 68229,
      "city": "Mannheim"
    },
    "birthDate": "2017-06-21",
    "dataProtectionConsent": true,
    "expirationDate": "2017-06-21",
    "lastLogin": "2019-10-10",
    "resetPasswordToken": "221ASSA2223",
    "resetPasswordTokenExpiry": "2019-12-04 16:28:22.548+00",
    "keycloakId": "cc83ac0c-7658-4f65-ac64-d402d2f2b7ba",
    "isDeactivated": false,
    "roles": [
      {
        "function": "function",
        "name": "trainer",
        "organization": {
          "id": 74,
          "name": "ARGE der Rollsport- und Inlineverbände Baden-Württemberg: Rollkunstlauf/ -tanz",
          "type": "Verband"
        }
      }
    ]
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get all user for an organization id
GET/user{?orgId,email,name,city,sortedBy}

all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively

Returns all user which are assigned to the given orgId via a role assignment.

URI Parameters
HideShow
orgId
number (optional) Example: 5
email
string (optional) Example: john.die@foomail.com
name
string (optional) Example: john
city
string (optional) Example: stuttgart
sortedBy
string (optional) Example: city

Specific user

GET /user/6
Requestsget specific userget specific user
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 74,
  "email": "John.doe@gmx.de",
  "firstName": "John",
  "lastName": "Doe",
  "title": "Dr.",
  "gender": "male",
  "phone": "+49746383643",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "birthDate": "2017-06-21",
  "dataProtectionConsent": true,
  "expirationDate": "2017-06-21",
  "lastLogin": "2019-10-10",
  "resetPasswordToken": "221",
  "resetPasswordTokenExpiry": "2019-12-04 16:28:22.548+00",
  "isDeactivated": false,
  "keycloakId": "cc83ac0c-7658-4f65-ac64-d402d2f2b7ba"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "email": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "enum": [
        "Dr."
      ]
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "birthDate": {
      "type": "string"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "expirationDate": {
      "type": "string"
    },
    "lastLogin": {
      "type": "string"
    },
    "resetPasswordToken": {
      "type": "string"
    },
    "resetPasswordTokenExpiry": {
      "type": "string"
    },
    "isDeactivated": {
      "type": "boolean"
    },
    "keycloakId": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "email",
    "firstName",
    "lastName",
    "phone",
    "birthDate",
    "dataProtectionConsent",
    "isDeactivated",
    "keycloakId"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get specific user
GET/user/{userId}

Get specific user records

URI Parameters
HideShow
userId
string (required) Example: 6

PUT /user/6
Requestschange specific userupdate specific user
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "email": "John.doe@gmx.de",
  "password": "P@sSW0rd",
  "firstName": "John",
  "lastName": "Doe",
  "title": "Dr.",
  "gender": "male",
  "phone": "+49746383643",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "birthDate": "2017-06-21",
  "dataProtectionConsent": true,
  "expirationDate": "2017-06-21",
  "isDeactivated": false
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "email": {
      "type": "string"
    },
    "password": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "enum": [
        "Dr."
      ]
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "phone": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "birthDate": {
      "type": "string"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "expirationDate": {
      "type": "string"
    },
    "isDeactivated": {
      "type": "boolean"
    }
  },
  "required": [
    "email",
    "password",
    "firstName",
    "lastName",
    "phone",
    "birthDate",
    "dataProtectionConsent"
  ]
}
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 74,
  "email": "John.doe@gmx.de",
  "firstName": "John",
  "lastName": "Doe",
  "title": "Dr.",
  "gender": "male",
  "phone": "+49746383643",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "birthDate": "2017-06-21",
  "dataProtectionConsent": true,
  "expirationDate": "2017-06-21",
  "lastLogin": "2019-10-10",
  "resetPasswordToken": "221",
  "resetPasswordTokenExpiry": "2019-12-04 16:28:22.548+00",
  "isDeactivated": false,
  "keycloakId": "cc83ac0c-7658-4f65-ac64-d402d2f2b7ba"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "email": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "enum": [
        "Dr."
      ]
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "birthDate": {
      "type": "string"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "expirationDate": {
      "type": "string"
    },
    "lastLogin": {
      "type": "string"
    },
    "resetPasswordToken": {
      "type": "string"
    },
    "resetPasswordTokenExpiry": {
      "type": "string"
    },
    "isDeactivated": {
      "type": "boolean"
    },
    "keycloakId": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "email",
    "firstName",
    "lastName",
    "phone",
    "birthDate",
    "dataProtectionConsent",
    "isDeactivated",
    "keycloakId"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Change specific user
PUT/user/{userId}

Update specific user records

URI Parameters
HideShow
userId
string (required) Example: 6

DELETE /user/6
Requestschange specific userdelete specific user
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 66
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    }
  }
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Delete specific user
DELETE/user/{userId}

Delete specific user records

URI Parameters
HideShow
userId
string (required) Example: 6

User profile

GET /user/me/profile
Requestscurrent user's profileget specific user
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 74,
  "email": "John.doe@gmx.de",
  "firstName": "John",
  "lastName": "Doe",
  "title": "Dr.",
  "gender": "male",
  "phone": "+49746383643",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "birthDate": "2017-06-21",
  "dataProtectionConsent": true,
  "expirationDate": "2017-06-21",
  "lastLogin": "2019-10-10",
  "resetPasswordToken": "221",
  "resetPasswordTokenExpiry": "2019-12-04 16:28:22.548+00",
  "isDeactivated": false,
  "keycloakId": "cc83ac0c-7658-4f65-ac64-d402d2f2b7ba"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "email": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "enum": [
        "Dr."
      ]
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "birthDate": {
      "type": "string"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "expirationDate": {
      "type": "string"
    },
    "lastLogin": {
      "type": "string"
    },
    "resetPasswordToken": {
      "type": "string"
    },
    "resetPasswordTokenExpiry": {
      "type": "string"
    },
    "isDeactivated": {
      "type": "boolean"
    },
    "keycloakId": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "email",
    "firstName",
    "lastName",
    "phone",
    "birthDate",
    "dataProtectionConsent",
    "isDeactivated",
    "keycloakId"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get profile of current user
GET/user/me/profile

this endpoint returns the profile of the current user.


User roles

GET /user/6/roles
Requestsget roles
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "admin",
    "function": 2,
    "organization": 5,
    "userId": 3
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get roles of a specific user
GET/user/{userId}/roles

Get all roles of a user. Caution: only show roles if related to an organization which is within the user context.

URI Parameters
HideShow
userId
string (required) Example: 6

POST /user/6/roles
Requestsget roles
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "admin",
  "function": 6,
  "organization": 5
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "enum": [
        "admin",
        "trainer",
        "superadmin"
      ]
    },
    "function": {
      "type": "number"
    },
    "organization": {
      "type": "number"
    }
  },
  "required": [
    "name",
    "organization"
  ]
}
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "admin",
  "function": 2,
  "organization": 5,
  "userId": 3
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string",
      "enum": [
        "admin",
        "trainer",
        "superadmin"
      ]
    },
    "function": {
      "type": "number"
    },
    "organization": {
      "type": "number"
    },
    "userId": {
      "type": "number"
    }
  },
  "required": [
    "id",
    "name",
    "userId"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add role
POST/user/{userId}/roles

Add specific role for user. Caution: a user can only add a role to a specific user if owning admin rights on the respective organization.

URI Parameters
HideShow
userId
string (required) Example: 6

User roles

GET /user/me/roles
Requestsget roles
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "admin",
    "function": 2,
    "organization": 5,
    "userId": 3
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get roles of current user
GET/user/me/roles

this endpoint is an identity endpoint and returns the roles for the current user.


Specific user role

DELETE /user/6/roles/76
Requestsget roles
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 66
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    }
  }
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Delete role
DELETE/user/{userId}/roles/{roleId}

Delete role for user. Caution: a user can only delete a role of a specific user if owning admin rights on the respective organization.

URI Parameters
HideShow
userId
string (required) Example: 6
roleId
string (required) Example: 76

Reset Password Request for User by Admin

GET /user/6/reset-password
RequestsReset Password
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "success"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Reset Password Request for User by Admin
GET/user/{userId}/reset-password

Reset Password Request for User by Admin

URI Parameters
HideShow
userId
string (required) Example: 6

Organizations

All organizations

POST /organizationsFC Wolpertswende&city&stuttgart&Albert
Requestsadd organizationfailed
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "FC Wolpertswende",
  "additionalName": "e.V.",
  "type": "Verband",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "phone": "+4918372638",
  "email": "fcwp@gmx.de",
  "website": "https://www.fcwp.de",
  "contactName": "John Doe",
  "contactPhone": "+49 177 46294723",
  "contactEmail": "john.doe@gmx.de",
  "headOrg": "LSV",
  "privateAdress": true,
  "associationType": "ARGE",
  "baseType": "Bundesstuetzpunkt",
  "association": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "additionalName": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "Verband",
        "Schule",
        "Stützpunkt",
        "OSP",
        "Untersuchungszentrum",
        "Landesleistungszentrum",
        "Ministerium"
      ]
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "contactName": {
      "type": "string"
    },
    "contactPhone": {
      "type": "string"
    },
    "contactEmail": {
      "type": "string"
    },
    "headOrg": {
      "type": "string"
    },
    "privateAdress": {
      "type": "boolean"
    },
    "associationType": {
      "type": "string",
      "enum": [
        "ARGE",
        "Sportart",
        "Verband"
      ]
    },
    "baseType": {
      "type": "string",
      "enum": [
        "Bundesstuetzpunkt",
        "Landesstuetzpunkt",
        "Talentstuetzpunkt"
      ]
    },
    "association": {
      "type": "number"
    }
  },
  "required": [
    "name",
    "type",
    "phone",
    "headOrg",
    "privateAdress",
    "associationType",
    "baseType",
    "association"
  ]
}
Responses200
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 5,
  "name": "FC Wolpertswende",
  "additionalName": "e.V.",
  "type": "Verband",
  "status": "active",
  "address": {
    "street": "Musterstrasse",
    "housenr": "5",
    "additional": "Zimmer 43",
    "postcode": "68229",
    "city": "Mannheim"
  },
  "phone": "+4918372638",
  "email": "fcwp@gmx.de",
  "website": "https://www.fcwp.de",
  "contactName": "John Doe",
  "contactPhone": "+49 177 46294723",
  "contactEmail": "john.doe@gmx.de",
  "headOrg": "LSV"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "additionalName": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "Verband",
        "Schule",
        "Stützpunkt",
        "OSP",
        "Untersuchungszentrum",
        "Landesleistungszentrum",
        "Ministerium"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "contactName": {
      "type": "string"
    },
    "contactPhone": {
      "type": "string"
    },
    "contactEmail": {
      "type": "string"
    },
    "headOrg": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "type",
    "status",
    "phone",
    "headOrg"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "no-field": "no-value"
}
Responses400
Headers
Content-Type: application/json; charset=utf-8

add new organization
POST/organizations{name,sortedBy,city,contactName}

create a new organization record. Valid types are

  • Verband

  • Schule

  • Stützpunkt

  • OSP

  • Untersuchungszentrum

  • Landesleistungszentrum

  • Ministerium

URI Parameters
HideShow
name
string (optional) Example: FC Wolpertswende
city
string (optional) Example: stuttgart
contactName
string (optional) Example: Albert
sortedBy
string (optional) Example: city

GET /organizationsFC Wolpertswende&city&stuttgart&Albert
Requestsget organizationsget organization failureget organization failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204

request was successful

Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 5,
    "name": "FC Wolpertswende",
    "additionalName": "e.V.",
    "type": "Verband",
    "status": "active",
    "address": {
      "street": "Musterstrasse",
      "housenr": "5",
      "additional": "Zimmer 43",
      "postcode": "68229",
      "city": "Mannheim"
    },
    "phone": "+4918372638",
    "email": "fcwp@gmx.de",
    "website": "https://www.fcwp.de",
    "contactName": "John Doe",
    "contactPhone": "+49 177 46294723",
    "contactEmail": "john.doe@gmx.de",
    "headOrg": "LSV"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
Responses400
Headers
Content-Type: application/json; charset=utf-8
Headers
Content-Type: application/json; charset=utf-8
Responses401
Headers
Content-Type: application/json; charset=utf-8

get all organizations
GET/organizations{name,sortedBy,city,contactName}

all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively

Returns all organizations which are accessible in the given user context

URI Parameters
HideShow
name
string (optional) Example: FC Wolpertswende
city
string (optional) Example: stuttgart
contactName
string (optional) Example: Albert
sortedBy
string (optional) Example: city

Specific organization

GET /organizations/5
Requestsget organization
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401

request was successful

Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 5,
  "name": "FC Wolpertswende",
  "additionalName": "e.V.",
  "type": "Verband",
  "status": "active",
  "address": {
    "street": "Musterstrasse",
    "housenr": "5",
    "additional": "Zimmer 43",
    "postcode": "68229",
    "city": "Mannheim"
  },
  "phone": "+4918372638",
  "email": "fcwp@gmx.de",
  "website": "https://www.fcwp.de",
  "contactName": "John Doe",
  "contactPhone": "+49 177 46294723",
  "contactEmail": "john.doe@gmx.de",
  "headOrg": "LSV",
  "privateAdress": true,
  "associationType": "ARGE",
  "baseType": "Bundesstuetzpunkt",
  "association": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "additionalName": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "Verband",
        "Schule",
        "Stützpunkt",
        "OSP",
        "Untersuchungszentrum",
        "Landesleistungszentrum",
        "Ministerium"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "contactName": {
      "type": "string"
    },
    "contactPhone": {
      "type": "string"
    },
    "contactEmail": {
      "type": "string"
    },
    "headOrg": {
      "type": "string"
    },
    "privateAdress": {
      "type": "boolean"
    },
    "associationType": {
      "type": "string",
      "enum": [
        "ARGE",
        "Sportart",
        "Verband"
      ]
    },
    "baseType": {
      "type": "string",
      "enum": [
        "Bundesstuetzpunkt",
        "Landesstuetzpunkt",
        "Talentstuetzpunkt"
      ]
    },
    "association": {
      "type": "number"
    }
  },
  "required": [
    "id",
    "name",
    "type",
    "status",
    "phone",
    "headOrg",
    "privateAdress",
    "associationType",
    "baseType",
    "association"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get organization
GET/organizations/{orgId}

Returns a specific organization record

URI Parameters
HideShow
orgId
string (required) Example: 5

PUT /organizations/5
Requestsget organizations
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "FC Wolpertswende",
  "additionalName": "e.V.",
  "type": "Verband",
  "status": "active",
  "address": {
    "street": "Musterstrasse",
    "housenr": 5,
    "additional": "Zimmer 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "phone": "+4918372638",
  "email": "fcwp@gmx.de",
  "website": "https://www.fcwp.de",
  "contactName": "John Doe",
  "contactPhone": "+49 177 46294723",
  "contactEmail": "john.doe@gmx.de",
  "headOrg": "LSV",
  "privateAdress": true,
  "associationType": "ARGE",
  "baseType": "Bundesstuetzpunkt",
  "association": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "additionalName": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "Verband",
        "Schule",
        "Stützpunkt",
        "OSP",
        "Untersuchungszentrum",
        "Landesleistungszentrum",
        "Ministerium"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "number"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "contactName": {
      "type": "string"
    },
    "contactPhone": {
      "type": "string"
    },
    "contactEmail": {
      "type": "string"
    },
    "headOrg": {
      "type": "string"
    },
    "privateAdress": {
      "type": "boolean"
    },
    "associationType": {
      "type": "string",
      "enum": [
        "ARGE",
        "Sportart",
        "Verband"
      ]
    },
    "baseType": {
      "type": "string",
      "enum": [
        "Bundesstuetzpunkt",
        "Landesstuetzpunkt",
        "Talentstuetzpunkt"
      ]
    },
    "association": {
      "type": "number"
    }
  },
  "required": [
    "name",
    "type",
    "status",
    "phone",
    "headOrg",
    "privateAdress",
    "associationType",
    "baseType",
    "association"
  ]
}
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 5,
  "name": "FC Wolpertswende",
  "additionalName": "e.V.",
  "type": "Verband",
  "status": "active",
  "address": {
    "street": "Musterstrasse",
    "housenr": "5",
    "additional": "Zimmer 43",
    "postcode": "68229",
    "city": "Mannheim"
  },
  "phone": "+4918372638",
  "email": "fcwp@gmx.de",
  "website": "https://www.fcwp.de",
  "contactName": "John Doe",
  "contactPhone": "+49 177 46294723",
  "contactEmail": "john.doe@gmx.de",
  "headOrg": "LSV"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "additionalName": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "Verband",
        "Schule",
        "Stützpunkt",
        "OSP",
        "Untersuchungszentrum",
        "Landesleistungszentrum",
        "Ministerium"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "inactive"
      ]
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "contactName": {
      "type": "string"
    },
    "contactPhone": {
      "type": "string"
    },
    "contactEmail": {
      "type": "string"
    },
    "headOrg": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "type",
    "status",
    "phone",
    "headOrg"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change organization
PUT/organizations/{orgId}

Change a specific organization record

URI Parameters
HideShow
orgId
string (required) Example: 5

DELETE /organizations/orgId
Requestsdelete organizationdelete organization auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 66
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    }
  }
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

delete organization
DELETE/organizations/{orgId}

Deletes a specific organization record

URI Parameters
HideShow
orgId
string (required) 

id of organization


All associations

GET /organizations?associations=Verband
Requestsget all associations
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200

request was successful

Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 5,
    "status": "active",
    "name": "Boxverband Baden-Württemberg e.V.",
    "additionalName": "LV",
    "organizationId": 1
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

get all associations
GET/organizations?associations=Verband

Returns all associations which are accessible in the given user context


Email Templates

POST /organizations/orgId/emailTemplate
Requestscreate email template
Headers
Content-Type: multipart/form-data; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "subject": "this is a subject",
  "body": "this is a body",
  "file": "file (binary)",
  "attachment_name": "filename.pdf",
  "fileRemoved": false
}
Schema
{
  "type": "object",
  "properties": {
    "subject": {
      "type": "string"
    },
    "body": {
      "type": "string"
    },
    "file": {
      "type": "string"
    },
    "attachment_name": {
      "type": "string"
    },
    "fileRemoved": {
      "type": "boolean"
    }
  },
  "required": [
    "subject",
    "body"
  ],
  "$schema": "http://json-schema.org/draft-04/schema#"
}
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "subject": "this is a subject",
  "body": "this is a body",
  "attachment_path": "/files/templates/filename.pdf",
  "organization": 1,
  "attachment_name": "filename.pdf",
  "type": "email"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "subject": {
      "type": "string"
    },
    "body": {
      "type": "string"
    },
    "attachment_path": {
      "type": "string"
    },
    "organization": {
      "type": "number"
    },
    "attachment_name": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "email"
      ]
    }
  },
  "required": [
    "id",
    "organization",
    "type"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Create/Update Email Template
POST/organizations/{orgId}/emailTemplate

Create / Update existing email template for the organization, Currently 1 template is allowed.

Email Templates are persisted in table templates and linked to organization

URI Parameters
HideShow
orgId
string (required) 

GET /organizations/orgId/emailTemplate
Requestsget email template
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "subject": "this is a subject",
  "body": "this is a body",
  "attachment_path": "/files/templates/filename.pdf",
  "organization": 1,
  "attachment_name": "filename.pdf",
  "type": "email"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "subject": {
      "type": "string"
    },
    "body": {
      "type": "string"
    },
    "attachment_path": {
      "type": "string"
    },
    "organization": {
      "type": "number"
    },
    "attachment_name": {
      "type": "string"
    },
    "type": {
      "type": "string",
      "enum": [
        "email"
      ]
    }
  },
  "required": [
    "id",
    "organization",
    "type"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get Email Template
GET/organizations/{orgId}/emailTemplate

Returns Email Template of the logged in Organization

URI Parameters
HideShow
orgId
string (required) 

SMS Templates

GET /organizations/orgId/smsTemplates
Requestsget sms templates
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "sms_invitation": "sms content 1",
  "sms_appointment_cancel": "sms content 2",
  "sms_reminder_accept_reject": "sms content 3",
  "sms_appointment_reminder": "sms content 4"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "sms_invitation": {
      "type": "string"
    },
    "sms_appointment_cancel": {
      "type": "string"
    },
    "sms_reminder_accept_reject": {
      "type": "string"
    },
    "sms_appointment_reminder": {
      "type": "string"
    }
  },
  "required": [
    "sms_invitation",
    "sms_appointment_cancel",
    "sms_reminder_accept_reject",
    "sms_appointment_reminder"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get SMS Templates
GET/organizations/{orgId}/smsTemplates

Returns SMS Templates of the logged in Organization

URI Parameters
HideShow
orgId
string (required) 

PUT /organizations/orgId/smsTemplates
Requestsupdate sms templates
Headers
Content-Type: multipart/form-data; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "sms_invitation": "sms content 1",
  "sms_appointment_cancel": "sms content 2",
  "sms_reminder_accept_reject": "sms content 3",
  "sms_appointment_reminder": "sms content 4"
}
Schema
{
  "type": "object",
  "properties": {
    "sms_invitation": {
      "type": "string"
    },
    "sms_appointment_cancel": {
      "type": "string"
    },
    "sms_reminder_accept_reject": {
      "type": "string"
    },
    "sms_appointment_reminder": {
      "type": "string"
    }
  },
  "required": [
    "sms_invitation",
    "sms_appointment_cancel",
    "sms_reminder_accept_reject",
    "sms_appointment_reminder"
  ],
  "$schema": "http://json-schema.org/draft-04/schema#"
}
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 1,
    "body": "sms content 1",
    "organization": 1,
    "type": "sms_invitation"
  },
  {
    "id": 2,
    "body": "sms content 2",
    "organization": 1,
    "type": "sms_appointment_cancel"
  },
  {
    "id": 3,
    "body": "sms content 3",
    "organization": 1,
    "type": "sms_reminder_accept_reject"
  },
  {
    "id": 4,
    "body": "sms content 4",
    "organization": 1,
    "type": "sms_appointment_reminder"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8

authorization missing

Headers
Content-Type: application/json; charset=utf-8

Update SMS Templates
PUT/organizations/{orgId}/smsTemplates

Update existing sms templates for the organization, Currently 4 sms template types is allowed.

SMS Templates are persisted in table templates and linked to organization

URI Parameters
HideShow
orgId
string (required) 

Target Values

GET /organizations/targetValues
Requestsget all target values
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 1,
    "year": 2019,
    "squadTargetValue": 1,
    "examinationContingency": 1,
    "extendedContingency": 1,
    "associationId": 1
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get All Target Values
GET/organizations/targetValues

Returns all target values


Specific target value

PUT /organizations/targetValues/1
Requestsget a target value
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "squadTargetValue": 1,
  "examinationContingency": 1,
  "extendedContingency": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "squadTargetValue": {
      "type": "number"
    },
    "examinationContingency": {
      "type": "number"
    },
    "extendedContingency": {
      "type": "number"
    }
  },
  "required": [
    "squadTargetValue",
    "examinationContingency",
    "extendedContingency"
  ]
}
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "year": 2019,
  "squadTargetValue": 1,
  "examinationContingency": 1,
  "extendedContingency": 1,
  "associationId": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "year": {
      "type": "number"
    },
    "squadTargetValue": {
      "type": "number"
    },
    "examinationContingency": {
      "type": "number"
    },
    "extendedContingency": {
      "type": "number"
    },
    "associationId": {
      "type": "number"
    }
  },
  "required": [
    "id",
    "year",
    "squadTargetValue",
    "examinationContingency",
    "extendedContingency",
    "associationId"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Change a target value
PUT/organizations/targetValues/{targetValueId}

Change a specific target value record

URI Parameters
HideShow
targetValueId
number (required) Example: 1

Athletes

Athletes

POST /athletes?5&name&john&5&schwimmen
Requestsadd athletepost athletes auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "primaryAssociation": 5,
  "associations": [
    5,
    4,
    3
  ],
  "bases": [
    5,
    4,
    3
  ],
  "firstName": "John",
  "lastName": "Doe",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": "68229",
    "city": "Mannheim"
  },
  "title": "Dr.",
  "gender": "male",
  "phone": "+4914593483",
  "email": "john.doe@gmx.de",
  "birthDate": "1988-01-01T00:00:00+07:00",
  "school": [
    5,
    4,
    3
  ],
  "osp": 4,
  "osp2": 11,
  "clubs": 3,
  "dataProtectionConsent": true,
  "professional_status": 3,
  "heimtrainer": 63,
  "trainingSites": 13,
  "antiDoping": true,
  "disciplin": 23,
  "squadStatus": 30,
  "responsibleTrainer": 23,
  "profile": "/path/to/image",
  "user": 6,
  "isMinor": "false",
  "legalContactAddress": "demo@gmail.com"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "primaryAssociation": {
      "type": "number"
    },
    "associations": {
      "type": "array"
    },
    "bases": {
      "type": "array"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "title": {
      "type": "string"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "birthDate": {
      "type": "string"
    },
    "school": {
      "type": "array"
    },
    "osp": {
      "type": "number"
    },
    "osp2": {
      "type": "number"
    },
    "clubs": {
      "type": "number"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "professional_status": {
      "type": "number"
    },
    "heimtrainer": {
      "type": "number"
    },
    "trainingSites": {
      "type": "number"
    },
    "antiDoping": {
      "type": "boolean"
    },
    "disciplin": {
      "type": "number"
    },
    "squadStatus": {
      "type": "number"
    },
    "responsibleTrainer": {
      "type": "number"
    },
    "profile": {
      "type": "string"
    },
    "user": {
      "type": "number"
    },
    "isMinor": {
      "type": "string"
    },
    "legalContactAddress": {
      "type": "string"
    }
  },
  "required": [
    "primaryAssociation",
    "firstName",
    "lastName",
    "gender",
    "email",
    "birthDate",
    "dataProtectionConsent",
    "antiDoping",
    "disciplin"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "athleteId": "357",
  "athleteSquadState": "30"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "athleteId": {
      "type": "string",
      "description": "id of created record (Athlete)"
    },
    "athleteSquadState": {
      "type": "string",
      "description": "squadState of created record (AthleteSquad)"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new Athlete
POST/athletes?{orgId,sortedBy,name,associaton,discipline}

create a new athlete record.

  • associations is a 1-to-many relationship and is persisted in table athlete_association

  • disciplin is a 1-to-many relationship and is persisted in table athlete_disciplin

URI Parameters
HideShow
orgId
number (optional) Example: 5
name
string (optional) Example: john
associaton
string (optional) Example: 5
discipline
string (optional) Example: schwimmen
sortedBy
string (optional) Example: name

GET /athletes?5&name&john&5&schwimmen
Requestsget athletes in user contextget athletes auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 74,
    "primaryAssociation": {
      "id": 5,
      "name": "ARGE der Leichtathletikverbände in Baden-Württemberg"
    },
    "associations": [
      {
        "id": 6,
        "name": "Olympiastützpunkt Metropolregion Rhein-Neckar"
      },
      {
        "id": 4,
        "name": "Boxverband Baden-Württemberg e.V."
      }
    ],
    "firstName": "John",
    "lastName": "Doe",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additional": "room 43",
      "postcode": "68229",
      "city": "Mannheim"
    },
    "title": "Dr.",
    "gender": "male",
    "phone": "+4914593483",
    "email": "john.doe@gmx.de",
    "birthDate": "1988-01-01T00:00:00+07:00",
    "school": [
      {
        "id": 6,
        "name": "Wirtemberg-Gymnasium Stuttgart-Untertürkheim",
        "updateAt": "2019-10-28T10:40:33.038Z",
        "period": "20/21"
      },
      {
        "id": 4,
        "name": "Muster Gymnasium",
        "updateAt": "2019-10-28T10:40:33.038Z",
        "period": "20/21"
      }
    ],
    "osp": {
      "id": 2,
      "name": "Olympiastützpunkt Brandenburg"
    },
    "osp2": {
      "id": 5,
      "name": "Olympiastützpunkt Metropolregion Rhein-Neckar"
    },
    "clubs": {
      "id": 2,
      "name": "Neckarsulmer Sport-Union e.V."
    },
    "dataProtectionConsent": true,
    "antiDoping": true,
    "professional_status": 3,
    "trainingSites": {
      "id": 15,
      "name": "Freibad & Hallenbad SSV Ulm 1846 e.V."
    },
    "state": "tauglich",
    "lastExaminationTime": "2019-10-28T10:40:33.038Z",
    "discipline": {
      "id": 6,
      "name": "Mehrkampf"
    },
    "athleteSquad": {
      "id": 6,
      "name": "squad status name"
    },
    "responsibleTrainer": {
      "id": 4,
      "firstName": "Arthur",
      "lastName": "Abele",
      "user": 5
    },
    "heimtrainer": {
      "id": 3,
      "firstName": "Bernward",
      "lastName": "Kirstein",
      "user": 2
    },
    "profile": "/path/to/image",
    "user": {
      "id": 6,
      "firstName": "chung",
      "lastName": "dinh"
    },
    "isMinor": false,
    "legalContactAddress": "demo@gmail.com",
    "isDeleted": true,
    "deletion_by": 1,
    "deletion_date": "2020-01-12T17:00:00.000Z"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get Athletes
GET/athletes?{orgId,sortedBy,name,associaton,discipline}

all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively
URI Parameters
HideShow
orgId
number (optional) Example: 5
name
string (optional) Example: john
associaton
string (optional) Example: 5
discipline
string (optional) Example: schwimmen
sortedBy
string (optional) Example: name

Specific athlete

GET /athletes/5
Requestsget athleteget athlete auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 74,
  "primaryAssociation": {
    "id": 5,
    "name": "ARGE der Leichtathletikverbände in Baden-Württemberg"
  },
  "associations": [
    {
      "id": 6,
      "name": "Olympiastützpunkt Metropolregion Rhein-Neckar"
    },
    {
      "id": 4,
      "name": "Boxverband Baden-Württemberg e.V."
    }
  ],
  "firstName": "John",
  "lastName": "Doe",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": "68229",
    "city": "Mannheim"
  },
  "title": "Dr.",
  "gender": "male",
  "phone": "+4914593483",
  "email": "john.doe@gmx.de",
  "birthDate": "1988-01-01T00:00:00+07:00",
  "school": [
    {
      "id": 6,
      "name": "Wirtemberg-Gymnasium Stuttgart-Untertürkheim",
      "updateAt": "2019-10-28T10:40:33.038Z",
      "period": "20/21"
    },
    {
      "id": 4,
      "name": "Muster Gymnasium",
      "updateAt": "2019-10-28T10:40:33.038Z",
      "period": "20/21"
    }
  ],
  "osp": {
    "id": 2,
    "name": "Olympiastützpunkt Brandenburg"
  },
  "osp2": {
    "id": 5,
    "name": "Olympiastützpunkt Metropolregion Rhein-Neckar"
  },
  "clubs": {
    "id": 2,
    "name": "Neckarsulmer Sport-Union e.V."
  },
  "dataProtectionConsent": true,
  "antiDoping": true,
  "professional_status": 3,
  "trainingSites": {
    "id": 15,
    "name": "Freibad & Hallenbad SSV Ulm 1846 e.V."
  },
  "state": "tauglich",
  "lastExaminationTime": "2019-10-28T10:40:33.038Z",
  "discipline": {
    "id": 6,
    "name": "Mehrkampf"
  },
  "athleteSquad": {
    "id": 6,
    "name": "squad status name"
  },
  "responsibleTrainer": {
    "id": 4,
    "firstName": "Arthur",
    "lastName": "Abele",
    "user": 5
  },
  "heimtrainer": {
    "id": 3,
    "firstName": "Bernward",
    "lastName": "Kirstein",
    "user": 2
  },
  "profile": "/path/to/image",
  "user": {
    "id": 6,
    "firstName": "chung",
    "lastName": "dinh"
  },
  "isMinor": false,
  "legalContactAddress": "demo@gmail.com",
  "isDeleted": true,
  "deletion_by": 1,
  "deletion_date": "2020-01-12T17:00:00.000Z"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "primaryAssociation": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      },
      "required": [
        "id",
        "name"
      ]
    },
    "associations": {
      "type": "array"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "title": {
      "type": "string"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "birthDate": {
      "type": "string"
    },
    "school": {
      "type": "array"
    },
    "osp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "osp2": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "clubs": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "antiDoping": {
      "type": "boolean"
    },
    "professional_status": {
      "type": "number"
    },
    "trainingSites": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "state": {
      "type": "string"
    },
    "lastExaminationTime": {
      "type": "string"
    },
    "discipline": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "athleteSquad": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "responsibleTrainer": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        },
        "user": {
          "type": "number"
        }
      }
    },
    "heimtrainer": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        },
        "user": {
          "type": "number"
        }
      }
    },
    "profile": {
      "type": "string"
    },
    "user": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        }
      }
    },
    "isMinor": {
      "type": "boolean"
    },
    "legalContactAddress": {
      "type": "string"
    },
    "isDeleted": {
      "type": "boolean"
    },
    "deletion_by": {
      "type": "number"
    },
    "deletion_date": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "primaryAssociation",
    "firstName",
    "lastName",
    "gender",
    "email",
    "birthDate",
    "dataProtectionConsent",
    "antiDoping",
    "discipline",
    "isDeleted",
    "deletion_by",
    "deletion_date"
  ]
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get athlete
GET/athletes/{athleteId}

Returns a specific athlete record

URI Parameters
HideShow
athleteId
number (optional) Example: 5

PUT /athletes/5
Requestschange athlete recordpost athletes auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "primaryAssociation": 5,
  "associations": [
    5,
    4,
    3
  ],
  "bases": [
    5,
    4,
    3
  ],
  "firstName": "John",
  "lastName": "Doe",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": "68229",
    "city": "Mannheim"
  },
  "title": "Dr.",
  "gender": "male",
  "phone": "+4914593483",
  "email": "john.doe@gmx.de",
  "birthDate": "1988-01-01T00:00:00+07:00",
  "school": [
    5,
    4,
    3
  ],
  "osp": 4,
  "osp2": 11,
  "clubs": 3,
  "dataProtectionConsent": true,
  "professional_status": 3,
  "heimtrainer": 63,
  "trainingSites": 13,
  "antiDoping": true,
  "disciplin": 23,
  "responsibleTrainer": 23,
  "profile": "/path/to/image",
  "user": 6,
  "isMinor": "false",
  "legalContactAddress": "demo@gmail.com"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "primaryAssociation": {
      "type": "number"
    },
    "associations": {
      "type": "array"
    },
    "bases": {
      "type": "array"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "title": {
      "type": "string"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "birthDate": {
      "type": "string"
    },
    "school": {
      "type": "array"
    },
    "osp": {
      "type": "number"
    },
    "osp2": {
      "type": "number"
    },
    "clubs": {
      "type": "number"
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "professional_status": {
      "type": "number"
    },
    "heimtrainer": {
      "type": "number"
    },
    "trainingSites": {
      "type": "number"
    },
    "antiDoping": {
      "type": "boolean"
    },
    "disciplin": {
      "type": "number"
    },
    "responsibleTrainer": {
      "type": "number"
    },
    "profile": {
      "type": "string"
    },
    "user": {
      "type": "number"
    },
    "isMinor": {
      "type": "string"
    },
    "legalContactAddress": {
      "type": "string"
    }
  },
  "required": [
    "primaryAssociation",
    "firstName",
    "lastName",
    "gender",
    "email",
    "birthDate",
    "dataProtectionConsent",
    "antiDoping",
    "disciplin"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": "1",
  "firstName": "Phan",
  "lastName": "Hai",
  "address_street": "musterstrasse",
  "address_housenr": "5",
  "address_postcode": "68229",
  "address_additionalAddress": "room 43",
  "address_city": "Mannheim",
  "primaryAssociation": "'Gandly'",
  "lastExaminationTime": "'2019"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "address_street": {
      "type": "string"
    },
    "address_housenr": {
      "type": "string"
    },
    "address_postcode": {
      "type": "string"
    },
    "address_additionalAddress": {
      "type": "string"
    },
    "address_city": {
      "type": "string"
    },
    "primaryAssociation": {
      "type": "string"
    },
    "lastExaminationTime": {
      "type": "string",
      "description": "10-28T10:40:33.038Z',"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change athlete
PUT/athletes/{athleteId}

Change a specific athlere record

URI Parameters
HideShow
athleteId
number (optional) Example: 5

DELETE /athletes/5
Requestsdelete athletedelete athlete auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 74,
  "primaryAssociation": {
    "id": 5,
    "name": "ARGE der Leichtathletikverbände in Baden-Württemberg"
  },
  "associations": [
    {
      "id": 6,
      "name": "Olympiastützpunkt Metropolregion Rhein-Neckar"
    },
    {
      "id": 4,
      "name": "Boxverband Baden-Württemberg e.V."
    }
  ],
  "firstName": "John",
  "lastName": "Doe",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": "68229",
    "city": "Mannheim"
  },
  "title": "Dr.",
  "gender": "male",
  "phone": "+4914593483",
  "email": "john.doe@gmx.de",
  "birthDate": "1988-01-01T00:00:00+07:00",
  "school": [
    {
      "id": 6,
      "name": "Wirtemberg-Gymnasium Stuttgart-Untertürkheim",
      "updateAt": "2019-10-28T10:40:33.038Z",
      "period": "20/21"
    },
    {
      "id": 4,
      "name": "Muster Gymnasium",
      "updateAt": "2019-10-28T10:40:33.038Z",
      "period": "20/21"
    }
  ],
  "osp": {
    "id": 2,
    "name": "Olympiastützpunkt Brandenburg"
  },
  "osp2": {
    "id": 5,
    "name": "Olympiastützpunkt Metropolregion Rhein-Neckar"
  },
  "clubs": {
    "id": 2,
    "name": "Neckarsulmer Sport-Union e.V."
  },
  "dataProtectionConsent": true,
  "antiDoping": true,
  "professional_status": 3,
  "trainingSites": {
    "id": 15,
    "name": "Freibad & Hallenbad SSV Ulm 1846 e.V."
  },
  "state": "tauglich",
  "lastExaminationTime": "2019-10-28T10:40:33.038Z",
  "discipline": {
    "id": 6,
    "name": "Mehrkampf"
  },
  "athleteSquad": {
    "id": 6,
    "name": "squad status name"
  },
  "responsibleTrainer": {
    "id": 4,
    "firstName": "Arthur",
    "lastName": "Abele",
    "user": 5
  },
  "heimtrainer": {
    "id": 3,
    "firstName": "Bernward",
    "lastName": "Kirstein",
    "user": 2
  },
  "profile": "/path/to/image",
  "user": {
    "id": 6,
    "firstName": "chung",
    "lastName": "dinh"
  },
  "isMinor": false,
  "legalContactAddress": "demo@gmail.com",
  "isDeleted": true,
  "deletion_by": 1,
  "deletion_date": "2020-01-12T17:00:00.000Z"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "primaryAssociation": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      },
      "required": [
        "id",
        "name"
      ]
    },
    "associations": {
      "type": "array"
    },
    "firstName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "string"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "postcode",
        "city"
      ]
    },
    "title": {
      "type": "string"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "phone": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "birthDate": {
      "type": "string"
    },
    "school": {
      "type": "array"
    },
    "osp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "osp2": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "clubs": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "dataProtectionConsent": {
      "type": "boolean"
    },
    "antiDoping": {
      "type": "boolean"
    },
    "professional_status": {
      "type": "number"
    },
    "trainingSites": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "state": {
      "type": "string"
    },
    "lastExaminationTime": {
      "type": "string"
    },
    "discipline": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "athleteSquad": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "responsibleTrainer": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        },
        "user": {
          "type": "number"
        }
      }
    },
    "heimtrainer": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        },
        "user": {
          "type": "number"
        }
      }
    },
    "profile": {
      "type": "string"
    },
    "user": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        }
      }
    },
    "isMinor": {
      "type": "boolean"
    },
    "legalContactAddress": {
      "type": "string"
    },
    "isDeleted": {
      "type": "boolean"
    },
    "deletion_by": {
      "type": "number"
    },
    "deletion_date": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "primaryAssociation",
    "firstName",
    "lastName",
    "gender",
    "email",
    "birthDate",
    "dataProtectionConsent",
    "antiDoping",
    "discipline",
    "isDeleted",
    "deletion_by",
    "deletion_date"
  ]
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

delete athlete
DELETE/athletes/{athleteId}

Deletes a specific athlete record

URI Parameters
HideShow
athleteId
number (optional) Example: 5

athlete import

POST /athletes/import
Requestsexample 1
Headers
Content-Type: multipart/form-data; boundary=MultipartBoundary
Body
--MultipartBoundary
Content-Disposition: form-data; name="csv";
Content-Type: application/csv

--MultipartBoundry
Content-Disposition: form-data; name="meta-information"
Content-Type: application/json

{
    "file":(binary)
}

--MultipartBoundary--
Responses200
Headers
Content-Type: application/json
Body
{
  "fileName": "test.csv",
  "fileData": [
    {
      "firstName": "John",
      "lastName": "Doe",
      "gender": "male"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "fileName": {
      "type": "string"
    },
    "fileData": {
      "type": "array"
    }
  }
}

athlete import
POST/athletes/import

upload a csv to import athletes


athlete export

GET /athletes/excelExport?fields=[responsibleTrainer,isMinor,bases,heimtrainer,club,osp2,osp,birthDate,email,phone,gender,title,disciplin,school,trainingSites,associations]
Requestsget attachment file
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200
Headers
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; binary
Content-Disposition: attachment; filename="excel-file.xlsx"

athlete export
GET/athletes/excelExport{?fields}

URI Parameters
HideShow
fields
string (optional) Example: [responsibleTrainer,isMinor,bases,heimtrainer,club,osp2,osp,birthDate,email,phone,gender,title,disciplin,school,trainingSites,associations]

Athlete Squad

POST /athletes/:id/athleteSquad
Requestsadd optionpost option auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "squadState": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "squadState": {
      "type": "number"
    }
  },
  "required": [
    "squadState"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "athlete": 1,
  "startDate": "2019-01-01T00:00:00+07:00",
  "expirationDate": "2019-01-01T00:00:00+07:00",
  "squadState": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "athlete": {
      "type": "number"
    },
    "startDate": {
      "type": "string"
    },
    "expirationDate": {
      "type": "string"
    },
    "squadState": {
      "type": "number"
    }
  },
  "required": [
    "id",
    "athlete",
    "startDate",
    "expirationDate",
    "squadState"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new athlete squad
POST/athletes/:id/athleteSquad

create new athlete squad.


TrainingSites

Training Sites

POST /trainingSites?postcode=68229&city=mannheim&name=Sportplatz Neudamm&street=musterstrasse&sortedBy=city
Requestsadd training sitepost training site auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "name"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "id",
    "name"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new training site
POST/trainingSites{?postcode,city,name,street,sortedBy}

create a new training site record.

training sites are only maintained by the superuser
    Traininsites are not restricted by user context.
URI Parameters
HideShow
postcode
string (required) Example: 68229
city
string (required) Example: mannheim
name
string (required) Example: Sportplatz Neudamm
street
string (required) Example: musterstrasse
sortedBy
string (optional) Example: city

GET /trainingSites?postcode=68229&city=mannheim&name=Sportplatz Neudamm&street=musterstrasse&sortedBy=city
Requestsget training sitesget training site auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "Sportplatz Neudamm",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additional": "room 43",
      "postcode": 68229,
      "city": "Mannheim"
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get training site
GET/trainingSites{?postcode,city,name,street,sortedBy}

all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively
URI Parameters
HideShow
postcode
string (required) Example: 68229
city
string (required) Example: mannheim
name
string (required) Example: Sportplatz Neudamm
street
string (required) Example: musterstrasse
sortedBy
string (optional) Example: city

Specific training site

GET /trainingSites/5
Requestsget training siteget training site auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "id",
    "name"
  ]
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get training site
GET/trainingSites/{siteId}

Returns a specific training site record

URI Parameters
HideShow
siteId
number (optional) Example: 5

PUT /trainingSites/5
Requestschange training recordpost training site auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "name"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "id",
    "name"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change training site
PUT/trainingSites/{siteId}

Change a specific training site record

URI Parameters
HideShow
siteId
number (optional) Example: 5

Clubs

clubs

POST /clubs?postcode=68229&city=mannheim&name=Sportplatz Neudamm&street=musterstrasse&sortedBy=name
Requestsadd clubspost clubs auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "isClub": "true",
  "clubId": "0A123DFSG"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    },
    "isClub": {
      "type": "string"
    },
    "clubId": {
      "type": "string"
    }
  },
  "required": [
    "name",
    "clubId"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "isClub": "true",
  "clubId": "0A123DFSG"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    },
    "isClub": {
      "type": "string"
    },
    "clubId": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "clubId"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new clubs
POST/clubs{?postcode,city,name,street,sortedBy}

create a new clubs record.

clubs are only maintained by the superuser
URI Parameters
HideShow
postcode
string (required) Example: 68229
city
string (required) Example: mannheim
name
string (required) Example: Sportplatz Neudamm
street
string (required) Example: musterstrasse
sortedBy
string (optional) Example: name

GET /clubs?postcode=68229&city=mannheim&name=Sportplatz Neudamm&street=musterstrasse&sortedBy=name
Requestsget clubsget clubs auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "Sportplatz Neudamm",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additional": "room 43",
      "postcode": 68229,
      "city": "Mannheim"
    },
    "isClub": "true",
    "clubId": "0A123DFSG"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get clubs
GET/clubs{?postcode,city,name,street,sortedBy}

all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively
URI Parameters
HideShow
postcode
string (required) Example: 68229
city
string (required) Example: mannheim
name
string (required) Example: Sportplatz Neudamm
street
string (required) Example: musterstrasse
sortedBy
string (optional) Example: name

Specific club

GET /clubs/5
Requestsget clubsget clubs auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "isClub": "true",
  "clubId": "0A123DFSG"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    },
    "isClub": {
      "type": "string"
    },
    "clubId": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "clubId"
  ]
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get clubs
GET/clubs/{clubId}

Returns a specific clubs record

URI Parameters
HideShow
clubId
number (optional) Example: 5

PUT /clubs/5
Requestschange training recordpost clubs auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Sportplatzverein Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "isClub": "true",
  "clubId": "0A123DFSG"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    },
    "isClub": {
      "type": "string"
    },
    "clubId": {
      "type": "string"
    }
  },
  "required": [
    "name",
    "clubId"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Sportplatz Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "isClub": "true",
  "clubId": "0A123DFSG"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      }
    },
    "isClub": {
      "type": "string"
    },
    "clubId": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "clubId"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change clubs
PUT/clubs/{clubId}

Change a specific clubs record

URI Parameters
HideShow
clubId
number (optional) Example: 5

Sports

sports

POST /sports?name=Schwimmen&association=schwimmverband&sortedBy=name
Requestsadd sportpost sport auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Schwimmen",
  "association": "4"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "association": {
      "type": "string"
    }
  },
  "required": [
    "name",
    "association"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Schwimmen",
  "association": "5"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "association": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "association"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new sport
POST/sports{?name,association,sortedBy}

create a new sport record.

sports are only maintained by the superuser
URI Parameters
HideShow
name
string (required) Example: Schwimmen
association
string (required) Example: schwimmverband
sortedBy
string (optional) Example: name

GET /sports?name=Schwimmen&association=schwimmverband&sortedBy=name
Requestsget sportsget sport auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "Schwimmen",
    "association": "5"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get sports
GET/sports{?name,association,sortedBy}

- all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively
- sports are not restricted by user context.
URI Parameters
HideShow
name
string (required) Example: Schwimmen
association
string (required) Example: schwimmverband
sortedBy
string (optional) Example: name

Specific sport

GET /sports/5
Requestsget sportget sports auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Schwimmen",
  "association": "5"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "association": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "association"
  ]
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get sport
GET/sports/{sportId}

Returns a specific sport record

URI Parameters
HideShow
sportId
number (optional) Example: 5

DELETE /sports/5
Requestsdelete sportdelete sports auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

delete sport
DELETE/sports/{sportId}

Deletes a specific sport record

URI Parameters
HideShow
sportId
number (optional) Example: 5

Disciplin

disciplin

POST /disciplin?name=Kraul 50m&sport=Schwimmen&association=26,27&sortedBy=name
Requestsadd disciplinpost disciplin auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Schwimmen",
  "disciplinGroup": 4,
  "sport": 5,
  "gender": "male",
  "isHandicaped": false,
  "isOlympic": true,
  "isSummer": true,
  "isWinter": false
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "sport": {
      "type": "number"
    },
    "disciplinGroup": {
      "type": "number"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "isHandicaped": {
      "type": "boolean"
    },
    "isOlympic": {
      "type": "boolean"
    },
    "isSummer": {
      "type": "boolean"
    },
    "isWinter": {
      "type": "boolean"
    }
  },
  "required": [
    "name",
    "sport",
    "gender",
    "isHandicaped",
    "isOlympic"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Kraul 50m",
  "sport": 3,
  "disciplinGroup": 5,
  "gender": "male",
  "isHandicaped": false,
  "isOlympic": true,
  "isSummer": true,
  "isWinter": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "sport": {
      "type": "number"
    },
    "disciplinGroup": {
      "type": "number"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "isHandicaped": {
      "type": "boolean"
    },
    "isOlympic": {
      "type": "boolean"
    },
    "isSummer": {
      "type": "boolean"
    },
    "isWinter": {
      "type": "boolean"
    }
  },
  "required": [
    "id",
    "name",
    "sport",
    "gender",
    "isHandicaped",
    "isOlympic"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new disciplin
POST/disciplin{?name,sport,association,sortedBy}

create a new disciplin record.

disciplin is only maintained by the superuser
URI Parameters
HideShow
name
string (required) Example: Kraul 50m
association
string (required) Example: 26,27
sport
string (required) Example: Schwimmen
sortedBy
string (optional) Example: name

GET /disciplin?name=Kraul 50m&sport=Schwimmen&association=26,27&sortedBy=name
Requestsget disciplinget disciplin auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "Kraul 50m",
    "sport": 3,
    "disciplinGroup": 5,
    "gender": "male",
    "isHandicaped": false,
    "isOlympic": true,
    "isSummer": true,
    "isWinter": true
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get disciplin
GET/disciplin{?name,sport,association,sortedBy}

- all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively
- disciplin is not restricted by user context.
URI Parameters
HideShow
name
string (required) Example: Kraul 50m
association
string (required) Example: 26,27
sport
string (required) Example: Schwimmen
sortedBy
string (optional) Example: name

Specific disciplin

GET /disciplin/5
Requestsget disciplinget disciplin auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Kraul 50m",
  "sport": 3,
  "disciplinGroup": 5,
  "gender": "male",
  "isHandicaped": false,
  "isOlympic": true,
  "isSummer": true,
  "isWinter": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "sport": {
      "type": "number"
    },
    "disciplinGroup": {
      "type": "number"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "isHandicaped": {
      "type": "boolean"
    },
    "isOlympic": {
      "type": "boolean"
    },
    "isSummer": {
      "type": "boolean"
    },
    "isWinter": {
      "type": "boolean"
    }
  },
  "required": [
    "id",
    "name",
    "sport",
    "gender",
    "isHandicaped",
    "isOlympic"
  ]
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get disciplin
GET/disciplin/{disciplinId}

Returns a specific disciplin record

URI Parameters
HideShow
disciplinId
number (optional) Example: 5

DELETE /disciplin/5
Requestsdelete disciplindelete disciplin auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

delete disciplin
DELETE/disciplin/{disciplinId}

Deletes a specific disciplin record

URI Parameters
HideShow
disciplinId
number (optional) Example: 5

PUT /disciplin/5
Requestschange disciplinput disciplin auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Schwimmen",
  "disciplinGroup": 4,
  "sport": 5,
  "gender": "male",
  "isHandicaped": false,
  "isOlympic": true,
  "isSummer": true,
  "isWinter": false
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "sport": {
      "type": "number"
    },
    "disciplinGroup": {
      "type": "number"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "isHandicaped": {
      "type": "boolean"
    },
    "isOlympic": {
      "type": "boolean"
    },
    "isSummer": {
      "type": "boolean"
    },
    "isWinter": {
      "type": "boolean"
    }
  },
  "required": [
    "name",
    "sport",
    "gender",
    "isHandicaped",
    "isOlympic"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "Kraul 50m",
  "sport": 3,
  "disciplinGroup": 5,
  "gender": "male",
  "isHandicaped": false,
  "isOlympic": true,
  "isSummer": true,
  "isWinter": true
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "sport": {
      "type": "number"
    },
    "disciplinGroup": {
      "type": "number"
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female",
        "diverse"
      ]
    },
    "isHandicaped": {
      "type": "boolean"
    },
    "isOlympic": {
      "type": "boolean"
    },
    "isSummer": {
      "type": "boolean"
    },
    "isWinter": {
      "type": "boolean"
    }
  },
  "required": [
    "id",
    "name",
    "sport",
    "gender",
    "isHandicaped",
    "isOlympic"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change disciplin
PUT/disciplin/{disciplinId}

Change a specific disciplin record

URI Parameters
HideShow
disciplinId
number (optional) Example: 5

Bases

athlete bases

POST /bases?name=LS Neudamm&type=Bundesstuetzpunkt&postcode=67353&city=Stuttgart
Requestsadd base recordpost base auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Landesstuertzpunk Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "type": "Landesstuetzpunkt",
  "association": "5"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "housenr",
        "postcode",
        "city"
      ]
    },
    "type": {
      "type": "string"
    },
    "association": {
      "type": "string"
    }
  },
  "required": [
    "name",
    "type",
    "association"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "LandeStuetzpunkt Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "type": "Landesstuetzpunkt",
  "association": "5"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "housenr",
        "postcode",
        "city"
      ]
    },
    "type": {
      "type": "string"
    },
    "association": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "type",
    "association"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

add base
POST/bases{?name,type,postcode,city}

Add base

URI Parameters
HideShow
name
string (optional) Example: LS Neudamm
type
string (optional) Example: Bundesstuetzpunkt
postcode
string (optional) Example: 67353
city
string (optional) Example: Stuttgart

GET /bases?name=LS Neudamm&type=Bundesstuetzpunkt&postcode=67353&city=Stuttgart
Requestsget basesget base auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "LandeStuetzpunkt Neudamm",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additional": "room 43",
      "postcode": 68229,
      "city": "Mannheim"
    },
    "type": "Landesstuetzpunkt",
    "association": "5"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get bases
GET/bases{?name,type,postcode,city}

Returns a all bases

bases are persisted in table bases and linked to atlete via id (0:n)

URI Parameters
HideShow
name
string (optional) Example: LS Neudamm
type
string (optional) Example: Bundesstuetzpunkt
postcode
string (optional) Example: 67353
city
string (optional) Example: Stuttgart

get specific athlete base

GET /bases/45
Requestsget base recordget base auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "name": "LandeStuetzpunkt Neudamm",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additional": "room 43",
      "postcode": 68229,
      "city": "Mannheim"
    },
    "type": "Landesstuetzpunkt",
    "association": "5"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get specific base
GET/bases/{baseId}

Get specific base

URI Parameters
HideShow
baseId
number (required) Example: 45

PUT /bases/45
Requestschange base recordpost base auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "name": "Landesstuertzpunk Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "type": "Landesstuetzpunkt",
  "association": "5"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "housenr",
        "postcode",
        "city"
      ]
    },
    "type": {
      "type": "string"
    },
    "association": {
      "type": "string"
    }
  },
  "required": [
    "name",
    "type",
    "association"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "name": "LandeStuetzpunkt Neudamm",
  "address": {
    "street": "musterstrasse",
    "housenr": "5",
    "additional": "room 43",
    "postcode": 68229,
    "city": "Mannheim"
  },
  "type": "Landesstuetzpunkt",
  "association": "5"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "name": {
      "type": "string"
    },
    "address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "housenr": {
          "type": "string"
        },
        "additional": {
          "type": "string"
        },
        "postcode": {
          "type": "number"
        },
        "city": {
          "type": "string"
        }
      },
      "required": [
        "street",
        "housenr",
        "postcode",
        "city"
      ]
    },
    "type": {
      "type": "string"
    },
    "association": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "name",
    "type",
    "association"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change base
PUT/bases/{baseId}

Change base record

URI Parameters
HideShow
baseId
number (required) Example: 45

Examinations

Examinations

GET /Examinations?athlete=5&organization=Bundesstuetzpunkt
Requestsget examinationget examination auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 74,
    "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
    "organization": 64,
    "comment": "Athlet muss zum Augenarzt",
    "validUntil": "2019-06-05",
    "athleteStatus": "tauglich",
    "requestStatus": "angefragt",
    "athlete": 47,
    "invitationExpiredTime": "2019-12-05T23:52:59.655Z",
    "firstName": "John",
    "lastName": "Doe",
    "sportName": "sport1",
    "created_at": "2019-12-03T06:40:34.649Z",
    "updated_at": "2019-12-03T06:40:34.649Z",
    "sentReminderToReply": false,
    "sentReminderToRemember": false,
    "organizationName": "ARGE der Leichtathletikverbände in Baden-Württemberg",
    "verifyToken": "11c626246057b3tt7f6f313hj88b00c4",
    "cancelledBy": 1,
    "created_by": 1,
    "associationName": "ARGE der Leichtathletikverbände in Baden-Württemberg",
    "gender": "male",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additionalAddress": "room 43",
      "postcode": "68229",
      "city": "Mannheim"
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get examinations
GET/Examinations{?athlete,organization}

Returns a all examinations

Examinations are persisted in table Examinations and linked to athlete via athlete_examination

URI Parameters
HideShow
athlete
string (optional) Example: 5
organization
string (optional) Example: Bundesstuetzpunkt

get specific examination

GET /Examinations/45
Requestsget examination recordget examination auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 74,
    "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
    "organization": 64,
    "comment": "Athlet muss zum Augenarzt",
    "validUntil": "2019-06-05",
    "athleteStatus": "tauglich",
    "requestStatus": "angefragt",
    "athlete": 47,
    "invitationExpiredTime": "2019-12-05T23:52:59.655Z",
    "firstName": "John",
    "lastName": "Doe",
    "sportName": "sport1",
    "created_at": "2019-12-03T06:40:34.649Z",
    "updated_at": "2019-12-03T06:40:34.649Z",
    "sentReminderToReply": false,
    "sentReminderToRemember": false,
    "organizationName": "ARGE der Leichtathletikverbände in Baden-Württemberg",
    "verifyToken": "11c626246057b3tt7f6f313hj88b00c4",
    "cancelledBy": 1,
    "created_by": 1,
    "associationName": "ARGE der Leichtathletikverbände in Baden-Württemberg",
    "gender": "male",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additionalAddress": "room 43",
      "postcode": "68229",
      "city": "Mannheim"
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get specific examination
GET/Examinations/{examinationId}

Get specific examination

URI Parameters
HideShow
examinationId
number (required) Example: 45

POST /Examinations/45
Requestsadd examination recordpost examination auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
  "organization": 64,
  "athlete": 47,
  "requestStatus": "angefragt"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "examinationDateTime": {
      "type": "string"
    },
    "organization": {
      "type": "number"
    },
    "athlete": {
      "type": "number"
    },
    "requestStatus": {
      "type": "string"
    }
  },
  "required": [
    "examinationDateTime",
    "organization",
    "athlete",
    "requestStatus"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
  "id": 66,
  "organization": 64,
  "athlete": 47,
  "requestStatus": "angefragt",
  "created_at": "2019-12-03T06:40:34.649Z",
  "updated_at": "2019-12-03T06:40:34.649Z"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "examinationDateTime": {
      "type": "string"
    },
    "id": {
      "type": "number"
    },
    "organization": {
      "type": "number"
    },
    "athlete": {
      "type": "number"
    },
    "requestStatus": {
      "type": "string"
    },
    "created_at": {
      "type": "string"
    },
    "updated_at": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

add examination
POST/Examinations/{examinationId}

Add examination

URI Parameters
HideShow
examinationId
number (required) Example: 45

PUT /Examinations/45
Requestschange examination recordpost examination auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
  "comment": "Athlet muss zum Augenarzt",
  "athleteStatus": "tauglich",
  "requestStatus": "angefragt"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "examinationDateTime": {
      "type": "string"
    },
    "comment": {
      "type": "string"
    },
    "athleteStatus": {
      "type": "string"
    },
    "requestStatus": {
      "type": "string"
    }
  }
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
  "athlete": 47,
  "id": 66,
  "organization": 64,
  "comment": "Athlet muss zum Augenarzt",
  "validUntil": "2019-06-05",
  "athleteStatus": "tauglich",
  "requestStatus": "angefragt",
  "created_at": "2019-12-03T06:40:34.649Z",
  "updated_at": "2019-12-03T06:40:34.649Z",
  "verifyToken": "11c626246057b3tt7f6f313hj88b00c4",
  "invitationExpiredTime": "2019-03-11T15:30:00Z",
  "sentReminderToReply": false,
  "sentReminderToRemember": false,
  "cancelledBy": "athlete/Athlete Name"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "examinationDateTime": {
      "type": "string"
    },
    "athlete": {
      "type": "number"
    },
    "id": {
      "type": "number"
    },
    "organization": {
      "type": "number"
    },
    "comment": {
      "type": "string"
    },
    "validUntil": {
      "type": "string"
    },
    "athleteStatus": {
      "type": "string"
    },
    "requestStatus": {
      "type": "string"
    },
    "created_at": {
      "type": "string"
    },
    "updated_at": {
      "type": "string"
    },
    "verifyToken": {
      "type": "string"
    },
    "invitationExpiredTime": {
      "type": "string"
    },
    "sentReminderToReply": {
      "type": "boolean"
    },
    "sentReminderToRemember": {
      "type": "boolean"
    },
    "cancelledBy": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change examination
PUT/Examinations/{examinationId}

Change examination record

URI Parameters
HideShow
examinationId
number (required) Example: 45

Examination's statistic

GET /examinations/statistics
Requestsget examination's statisticget examination's statistic auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "requests": 1,
  "inProgressCount": 1,
  "doneCount": 1,
  "lastThreeInProgressExaminations": [
    {
      "id": 74,
      "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
      "organization": 64,
      "validUntil": "2019-06-05",
      "athleteStatus": "tauglich",
      "athlete": 47,
      "requestStatus": "angefragt",
      "firstName": "John",
      "lastName": "Doe",
      "gender": "male",
      "address": {
        "street": "musterstrasse",
        "housenr": "5",
        "additionalAddress": "room 43",
        "postcode": "68229",
        "city": "Mannheim"
      }
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "requests": {
      "type": "number"
    },
    "inProgressCount": {
      "type": "number"
    },
    "doneCount": {
      "type": "number"
    },
    "lastThreeInProgressExaminations": {
      "type": "array"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get examinations statistic
GET/examinations/statistics

Statistic for examinations


examination export

GET /examination/excelExport?fields=[athleteStatus,athlete,street,postcode,city,squadStateName,associationName,examinationDateTime,examinationStatus]
Requestsget attachment file
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200
Headers
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; binary
Content-Disposition: attachment; filename="excel-file.xlsx"

examination export
GET/examination/excelExport{?fields}

URI Parameters
HideShow
fields
string (optional) Example: [athleteStatus,athlete,street,postcode,city,squadStateName,associationName,examinationDateTime,examinationStatus]

examination attachment

POST /Examinations/45/attachments
Requestsexample 1
Headers
Content-Type: multipart/form-data; boundary=MultipartBoundary
Body
--MultipartBoundary
Content-Disposition: form-data; name="pdf";
Content-Type: application/pdf

rawimagecontentwhichlooksfunnyandgoesonforever.d.sf.d.f.sd.fsdkfjkslhfdkshfkjsdfdkfh
--MultipartBoundry
Content-Disposition: form-data; name="meta-information"
Content-Type: application/json

{
    "description":"some file",
}
--MultipartBoundary--
Responses200
Headers
Content-Type: application/json
Body
{
  "id": 3,
  "description": "some file",
  "path": "/files/examinations/{examiniationid}/filename.pdf"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "description": {
      "type": "string"
    },
    "path": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "description",
    "path"
  ]
}

add new attachment
POST/Examinations/{examinationId}/attachments

upload a pdf attached to an examination

URI Parameters
HideShow
examinationId
number (required) Example: 45

GET /Examinations/45/attachments
Requestsget examination recordget examination auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "description": "some file",
    "path": "/files/examinations/{examiniationid}/filename.pdf"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get attachments
GET/Examinations/{examinationId}/attachments

returns all attachments for the examination

URI Parameters
HideShow
examinationId
number (required) Example: 45

attachment

DELETE /Examinations/45/attachments/AAgGBgcGBQgHBwcJCQgK
Requestsexample 1
Headers
Content-Type: application/json
Responses201
This response has no content.

delete attachment
DELETE/Examinations/{examinationId}/attachments/{attachmentId}

delete a specific pdf

URI Parameters
HideShow
examinationId
number (required) Example: 45
attachmentId
number (required) Example: AAgGBgcGBQgHBwcJCQgK

attachment file

GET /Examinations/45/attachments/AAgGBgcGBQgHBwcJCQgK/file
Requestsget attachment file
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200
Headers
Content-Type: application/pdf; binary
Content-Disposition: attachment; filename="file_name.pdf"

get attachment file
GET/Examinations/{examinationId}/attachments/{attachmentId}/file

URI Parameters
HideShow
examinationId
number (required) Example: 45
attachmentId
number (required) Example: AAgGBgcGBQgHBwcJCQgK

change status examination

PUT /Examinations/3509cf151047461b25f7cdc6f95a9630/appointment
Requestschange status examination recordpost examination auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "requestStatus": "angefragt"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "requestStatus": {
      "type": "string"
    }
  },
  "required": [
    "requestStatus"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "examinationDateTime": "2019-12-02T10:01:55.185Z/2019-12-02T10:01:55.189Z",
  "athleteName": "John Nguyen",
  "organizationName": "niversitätsklinikum Tübingen",
  "organizationEmail": "sportmed@med.uni-tuebingen.de"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "examinationDateTime": {
      "type": "string"
    },
    "athleteName": {
      "type": "string"
    },
    "organizationName": {
      "type": "string"
    },
    "organizationEmail": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change status examination
PUT/Examinations/{token}/appointment

Change status examination record

URI Parameters
HideShow
token
string (required) Example: 3509cf151047461b25f7cdc6f95a9630

Options

Options

POST /options?name=Landestrainer&key=function
Requestsadd optionpost option auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "key": "function",
  "value": "{name:\"Vorsitzender\",orderId:\"2\"}"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  },
  "required": [
    "key",
    "value"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "key": "function",
  "value": "{name:\"Vorsitzender\",orderId:\"2\"}"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "key": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "key",
    "value"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new option
POST/options{?name,key}

create new option. Allowed keys are

  • squad_state

  • function

  • education

  • profession

orderId is used to define a display order within the options for user convenience. The value is a JSON object e.g. {name:“Landestrainer”,orderId:4} . This JSON object might contain further values e.g. for squad_state additional options are stored: {name:“Landeskader”,type:“general”,isOlympic:true,isTeamSport:true,orderId:4} or {name:“Landeskader”,type:“special”,orderId:4}, If type is special none of the other attributes apply.

options are stored in table options and referred to by a key.
URI Parameters
HideShow
name
string (required) Example: Landestrainer
key
string (required) Example: function

GET /options?name=Landestrainer&key=function
Requestsget optionget option auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 3,
    "key": "function",
    "value": "{name:\"Vorsitzender\",orderId:\"2\"}"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get options
GET/options{?name,key}

URI Parameters
HideShow
name
string (required) Example: Landestrainer
key
string (required) Example: function

Specific option

GET /options/5
Requestsget optionget option auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "key": "function",
  "value": "{name:\"Vorsitzender\",orderId:\"2\"}"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "key": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "key",
    "value"
  ]
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get option
GET/options/{optionId}

Returns a specific option record

URI Parameters
HideShow
optionId
number (optional) Example: 5

PUT /options/5
Requestschange optionget option auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "key": "function",
  "value": "{name:\"Vorsitzender\",orderId:\"2\"}"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  },
  "required": [
    "key",
    "value"
  ]
}
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 3,
  "key": "function",
  "value": "{name:\"Vorsitzender\",orderId:\"2\"}"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "key": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "key",
    "value"
  ]
}

query was successfull, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change option
PUT/options/{optionId}

Change specific option record

URI Parameters
HideShow
optionId
number (optional) Example: 5

DELETE /options/5
Requestsdelete optiondelete option auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

delete option
DELETE/options/{optionId}

Deletes a specific option

URI Parameters
HideShow
optionId
number (optional) Example: 5

ActivityLog

All Activity Log

GET /activityLog?key=examination_status&athleteName=Lukas Bader&sortedBy=key
Requestsget all activity log
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 1,
    "key": "examination_status",
    "description": "{athleteName:\"Lukas Bader\",email:\"test@mttjsc.com\",phone:\"+49123456789\",examination_status:\"angefragt\",details:\"Information body sent\"}",
    "userId": "1",
    "organizationId": "26",
    "created_at": "2020-01-01T00:00:00+07:00"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get All Activity Log
GET/activityLog{?key,athleteName,sortedBy}

all parameters except sortedBy are wildcard search parameters. 
'sortedBy' accept any column name of the model and returns the 
result ordered respectively

Returns all activity log

URI Parameters
HideShow
key
string (required) Example: examination_status
athleteName
string (required) Example: Lukas Bader
sortedBy
string (optional) Example: key

POST /activityLog?key=examination_status&athleteName=Lukas Bader&sortedBy=key
Requestsadd activity logpost activity log auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "key": "examination_status",
  "description": "{athleteName:\"Lukas Bader\",email:\"test@mttjsc.com\",phone:\"+49123456789\",examination_status:\"angefragt\"}"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "key": {
      "type": "string"
    },
    "description": {
      "type": "string"
    }
  }
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "key": "examination_status",
  "description": "{athleteName:\"Lukas Bader\",email:\"test@mttjsc.com\",phone:\"+49123456789\",examination_status:\"angefragt\",details:\"Information body sent\"}",
  "userId": "1",
  "organizationId": "26",
  "created_at": "2020-01-01T00:00:00+07:00"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "key": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "userId": {
      "type": "string"
    },
    "organizationId": {
      "type": "string"
    },
    "created_at": {
      "type": "string"
    }
  },
  "required": [
    "id"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new activity log
POST/activityLog{?key,athleteName,sortedBy}

create new activity log. Allowed keys are

  • examination_status

  • email

  • sms

URI Parameters
HideShow
key
string (required) Example: examination_status
athleteName
string (required) Example: Lukas Bader
sortedBy
string (optional) Example: key

YearClosing

All Year Closing Entries

GET /yearClosing
Requestsget all Year Closing Entries
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 1,
    "creationDate": "2020-01-01T00:00:00+07:00",
    "processSate": 1,
    "plannedAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
    "plannedCorrectionDate": "2020-01-01T00:00:00+07:00",
    "plannedSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
    "plannedOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
    "plannedKMCompletionDate": "2020-01-01T00:00:00+07:00",
    "actualAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
    "actualCorrectionDate": "2020-01-01T00:00:00+07:00",
    "actualSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
    "actualOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
    "actualKMCompletionDate": "2020-01-01T00:00:00+07:00"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get All YearClosing
GET/yearClosing

Returns all Year Closing Entries


POST /yearClosing
Requestsadd activity logpost activity log auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "plannedAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
  "plannedCorrectionDate": "2020-01-01T00:00:00+07:00",
  "plannedSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
  "plannedOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
  "plannedKMCompletionDate": "2020-01-01T00:00:00+07:00"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "plannedAssociationFeedBackDate": {
      "type": "string"
    },
    "plannedCorrectionDate": {
      "type": "string"
    },
    "plannedSchoolOSPConfirmDate": {
      "type": "string"
    },
    "plannedOSPHoursAllocationDate": {
      "type": "string"
    },
    "plannedKMCompletionDate": {
      "type": "string"
    }
  }
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "creationDate": "2020-01-01T00:00:00+07:00",
  "processSate": 1,
  "plannedAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
  "plannedCorrectionDate": "2020-01-01T00:00:00+07:00",
  "plannedSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
  "plannedOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
  "plannedKMCompletionDate": "2020-01-01T00:00:00+07:00",
  "actualAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
  "actualCorrectionDate": "2020-01-01T00:00:00+07:00",
  "actualSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
  "actualOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
  "actualKMCompletionDate": "2020-01-01T00:00:00+07:00"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "creationDate": {
      "type": "string"
    },
    "processSate": {
      "type": "number"
    },
    "plannedAssociationFeedBackDate": {
      "type": "string"
    },
    "plannedCorrectionDate": {
      "type": "string"
    },
    "plannedSchoolOSPConfirmDate": {
      "type": "string"
    },
    "plannedOSPHoursAllocationDate": {
      "type": "string"
    },
    "plannedKMCompletionDate": {
      "type": "string"
    },
    "actualAssociationFeedBackDate": {
      "type": "string"
    },
    "actualCorrectionDate": {
      "type": "string"
    },
    "actualSchoolOSPConfirmDate": {
      "type": "string"
    },
    "actualOSPHoursAllocationDate": {
      "type": "string"
    },
    "actualKMCompletionDate": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "processSate"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new YearClosing
POST/yearClosing

create new Year Closing entry.


Specific YearClosing Entry

GET /yearClosing/45
Requestsget YearClosing recordget YearClosing auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 74,
    "examinationDateTime": "2019-03-11T13:00:00Z/2019-03-11T15:30:00Z",
    "organization": 64,
    "comment": "Athlet muss zum Augenarzt",
    "validUntil": "2019-06-05",
    "athleteStatus": "tauglich",
    "requestStatus": "angefragt",
    "athlete": 47,
    "invitationExpiredTime": "2019-12-05T23:52:59.655Z",
    "firstName": "John",
    "lastName": "Doe",
    "sportName": "sport1",
    "created_at": "2019-12-03T06:40:34.649Z",
    "updated_at": "2019-12-03T06:40:34.649Z",
    "sentReminderToReply": false,
    "sentReminderToRemember": false,
    "organizationName": "ARGE der Leichtathletikverbände in Baden-Württemberg",
    "verifyToken": "11c626246057b3tt7f6f313hj88b00c4",
    "cancelledBy": 1,
    "created_by": 1,
    "associationName": "ARGE der Leichtathletikverbände in Baden-Württemberg",
    "gender": "male",
    "address": {
      "street": "musterstrasse",
      "housenr": "5",
      "additionalAddress": "room 43",
      "postcode": "68229",
      "city": "Mannheim"
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

get specific YearClosing
GET/yearClosing/{yearClosingId}

Get specific YearClosing

URI Parameters
HideShow
yearClosingId
number (required) Example: 45

PUT /yearClosing/45
Requestschange specific YearClosingupdate specific YearClosing
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "creationDate": "2020-01-01T00:00:00+07:00",
  "processSate": 1,
  "plannedAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
  "plannedCorrectionDate": "2020-01-01T00:00:00+07:00",
  "plannedSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
  "plannedOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
  "plannedKMCompletionDate": "2020-01-01T00:00:00+07:00",
  "actualAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
  "actualCorrectionDate": "2020-01-01T00:00:00+07:00",
  "actualSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
  "actualOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
  "actualKMCompletionDate": "2020-01-01T00:00:00+07:00"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "creationDate": {
      "type": "string"
    },
    "processSate": {
      "type": "number"
    },
    "plannedAssociationFeedBackDate": {
      "type": "string"
    },
    "plannedCorrectionDate": {
      "type": "string"
    },
    "plannedSchoolOSPConfirmDate": {
      "type": "string"
    },
    "plannedOSPHoursAllocationDate": {
      "type": "string"
    },
    "plannedKMCompletionDate": {
      "type": "string"
    },
    "actualAssociationFeedBackDate": {
      "type": "string"
    },
    "actualCorrectionDate": {
      "type": "string"
    },
    "actualSchoolOSPConfirmDate": {
      "type": "string"
    },
    "actualOSPHoursAllocationDate": {
      "type": "string"
    },
    "actualKMCompletionDate": {
      "type": "string"
    }
  },
  "required": [
    "processSate"
  ]
}
Responses200204400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "creationDate": "2020-01-01T00:00:00+07:00",
  "processSate": 1,
  "plannedAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
  "plannedCorrectionDate": "2020-01-01T00:00:00+07:00",
  "plannedSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
  "plannedOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
  "plannedKMCompletionDate": "2020-01-01T00:00:00+07:00",
  "actualAssociationFeedBackDate": "2020-01-01T00:00:00+07:00",
  "actualCorrectionDate": "2020-01-01T00:00:00+07:00",
  "actualSchoolOSPConfirmDate": "2020-01-01T00:00:00+07:00",
  "actualOSPHoursAllocationDate": "2020-01-01T00:00:00+07:00",
  "actualKMCompletionDate": "2020-01-01T00:00:00+07:00"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "creationDate": {
      "type": "string"
    },
    "processSate": {
      "type": "number"
    },
    "plannedAssociationFeedBackDate": {
      "type": "string"
    },
    "plannedCorrectionDate": {
      "type": "string"
    },
    "plannedSchoolOSPConfirmDate": {
      "type": "string"
    },
    "plannedOSPHoursAllocationDate": {
      "type": "string"
    },
    "plannedKMCompletionDate": {
      "type": "string"
    },
    "actualAssociationFeedBackDate": {
      "type": "string"
    },
    "actualCorrectionDate": {
      "type": "string"
    },
    "actualSchoolOSPConfirmDate": {
      "type": "string"
    },
    "actualOSPHoursAllocationDate": {
      "type": "string"
    },
    "actualKMCompletionDate": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "processSate"
  ]
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

change specific YearClosing
PUT/yearClosing/{yearClosingId}

Update specific YearClosing record

URI Parameters
HideShow
yearClosingId
number (required) Example: 45

All Year Closing Task Entries

GET /yearClosing/45/tasks
Requestsget all Year Closing Entries
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200204400401
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 1,
    "creationDate": "2020-01-01T00:00:00+07:00",
    "author": 1,
    "organizationType": "Verband",
    "subject": "Neuen Athlet hinzufügen",
    "message": "Athlet Max Musstermann sollte OSP ...",
    "yearClosing": 5,
    "athlete": 1,
    "payload": "{newOSP: 1}",
    "assignee": "LSV",
    "status": "open",
    "association": {
      "id": 6,
      "name": "Boxverband"
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}

query was successful, but no records returned

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

the request was unacceptable

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get All YearClosing Task
GET/yearClosing/{yearClosingId}/tasks

Returns all Year Closing Tasks

URI Parameters
HideShow
yearClosingId
number (required) Example: 45

POST /yearClosing/45/tasks
Requestsadd activity logpost activity log auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Body
{
  "message": "Athlet Max Musstermann sollte OSP ...",
  "payload": "{newOSP: 1}",
  "athlete": 1
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "message": {
      "type": "string"
    },
    "payload": {
      "type": "string"
    },
    "athlete": {
      "type": "number"
    }
  },
  "required": [
    "payload",
    "athlete"
  ]
}
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "id": 1,
  "creationDate": "2020-01-01T00:00:00+07:00",
  "author": 1,
  "organizationType": "Verband",
  "subject": "Neuen Athlet hinzufügen",
  "message": "Athlet Max Musstermann sollte OSP ...",
  "yearClosing": 5,
  "athlete": 1,
  "payload": "{newOSP: 1}",
  "assignee": "LSV",
  "status": "open",
  "association": {
    "id": 6,
    "name": "Boxverband"
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "number"
    },
    "creationDate": {
      "type": "string"
    },
    "author": {
      "type": "number"
    },
    "organizationType": {
      "type": "string",
      "enum": [
        "Verband",
        "Schule",
        "Stützpunkt",
        "OSP",
        "Untersuchungszentrum",
        "Landesleistungszentrum",
        "Ministerium"
      ]
    },
    "subject": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "yearClosing": {
      "type": "number"
    },
    "athlete": {
      "type": "number"
    },
    "payload": {
      "type": "string"
    },
    "assignee": {
      "type": "string",
      "enum": [
        "LSV",
        "KM"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "open",
        "closed"
      ]
    },
    "association": {
      "type": "object",
      "properties": {
        "id": {
          "type": "number"
        },
        "name": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "id",
    "author",
    "yearClosing",
    "athlete",
    "payload",
    "assignee",
    "status"
  ]
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Add new YearClosingTask
POST/yearClosing/{yearClosingId}/tasks

create new Year Closing Task entry.

URI Parameters
HideShow
yearClosingId
number (required) Example: 45

Specific YearClosing Task

GET /yearClosing/45/tasks/4
Requestsget YearClosing recordget YearClosing auth failure
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Authorization: Bearer (token)
Responses200400
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "id": 1,
    "creationDate": "2020-01-01T00:00:00+07:00",
    "author": 1,
    "organizationType": "Verband",
    "subject": "Neuen Athlet hinzufügen",
    "message": "Athlet Max Musstermann sollte OSP ...",
    "yearClosing": 5,
    "athlete": 1,
    "payload": "{newOSP: 1}",
    "assignee": "LSV",
    "status": "open",
    "association": {
      "id": 6,
      "name": "Boxverband"
    }
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "Msg": "something went wrong during execution"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "Msg": {
      "type": "string"
    }
  }
}
Headers
Content-Type: application/json; charset=utf-8
api-version: 1
Responses401

authorization missing

Headers
Content-Type: application/json; charset=utf-8
Body
[]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object"
}

Get specific YearClosing Task
GET/yearClosing/{yearClosingId}/tasks/{taskId}

Get specific YearClosing

URI Parameters
HideShow
yearClosingId
number (required) Example: 45
taskId
number (required) Example: 4

Generated by aglio on 16 Nov 2021