Get info about the API server
Media type: application/json
Type: object
PropertiesExample
v0.1Example
2018-02-12T15:41:42.799328781ZExample
coreGet all pending invitations
Example
Bearer $token
Media type: application/json
Type: array of Invitation
Items: Invitation
Example
[
  {
    "id": 1,
    "email": "flatmate@example.com"
  },
  {
    "id": 3,
    "email": "landlord@example.com"
  }
]
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Invite a person via email address. An email with invite code is sent to them
Example
Bearer $token
Media type: application/json
Type: object
Properties:Example
{
  "email": "flatmate@example.com"
}
Media type: application/json
Type: object
PropertiesMedia type: application/json
Type: object
PropertiesExample
bad_request:
{
  "error": {
    "code": "bad_json",
    "message": "The JSON request payload could not be parsed."
  }
}
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
invitation_email_exists:
{
  "error": {
    "code": "invitation_email_exists",
    "message": "An invitation with this email address already exists."
  }
}
Get information about a specific invitation
Example
Bearer $token
Media type: application/json
Type: object
PropertiesMedia type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Resend invitation email
Example
Bearer $token
Media type: application/json
Type: object
Example
{}Media type: application/json
Type: object
PropertiesMedia type: application/json
Type: object
PropertiesExample
bad_request:
{
  "error": {
    "code": "bad_json",
    "message": "The JSON request payload could not be parsed."
  }
}
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Delete/Invalidate this invitation
Example
Bearer $token
Invitation was successfully deleted
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
List all tasks
Example
Bearer $token
Media type: application/json
Type: array of Task
Items: Task
Items: Turn
Example
[
  {
    "id": 1,
    "title": "Doing the dishes",
    "description": "Use soap!",
    "frequency": 3,
    "completionTime": 5,
    "users": [
      1
    ],
    "currentTurn": {
      "userId": 1,
      "startDate": "2018-02-12T04:46:59.234975184Z"
    },
    "upcomingTurns": [
      {
        "userId" : 3,
        "startDate": "2018-02-15T07:00:23.233925184Z"
      }
    ]
  }
]
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Add a new task
Example
Bearer $token
Media type: application/json
Type: object
Properties:Example
{
  "title": "Doing the dishes",
  "description": "It ain't difficult.",
  "frequency": 3,
  "completionTime": 5,
  "users": [
    1
  ]
}
Media type: application/json
Type: object
PropertiesItems: Turn
Example
{
  "id": 1,
  "title": "Doing the dishes",
  "description": "Wow, another description here!",
  "frequency": 3,
  "completionTime": 5,
  "users": [
    1
  ],
  "currentTurn": {
    "userId": 1,
    "startDate": "2018-02-12T04:46:59.234975184Z"
  },
  "upcomingTurns": [
    {
      "userId" : 3,
      "startDate": "2018-02-15T07:00:23.233925184Z"
    }
  ]
}
Media type: application/json
Type: object
PropertiesExample
bad_request:
{
  "error": {
    "code": "bad_json",
    "message": "The JSON request payload could not be parsed."
  }
}
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Get detailed information about a task
Example
Bearer $token
Media type: application/json
Type: object
PropertiesItems: Turn
Example
{
  "id": 1,
  "title": "Doing the dishes",
  "description": "This should explain what to do...",
  "frequency": 3,
  "completionTime": 5,
  "users": [
    1
  ],
  "currentTurn": {
    "userId": 1,
    "startDate": "2018-02-12T04:46:59.234975184Z"
  },
  "upcomingTurns": [
    {
      "userId" : 3,
      "startDate": "2018-02-15T07:00:23.233925184Z"
    }
  ]
}
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Delete a task
Example
Bearer $token
Task was successfully deleted
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Replace a task and return the same one
Example
Bearer $token
Media type: application/json
Type: object
Properties:Example
{
  "title": "Doing the dishes",
  "description": "Pretty obvious what to do...",
  "frequency": 3,
  "completionTime": 5,
  "users": [
    1
  ]
}
Media type: application/json
Type: object
PropertiesItems: Turn
Example
{
  "id": 1,
  "title": "Doing the dishes",
  "description": "Pretty obvious what to do...",
  "frequency": 3,
  "completionTime": 5,
  "users": [
    1
  ],
  "currentTurn": null,
  "upcomingTurns": [
    {
      "userId" : 3,
      "startDate": "2018-02-15T07:00:23.233925184Z"
    }
  ]
}
Media type: application/json
Type: object
PropertiesExample
bad_request:
{
  "error": {
    "code": "bad_json",
    "message": "The JSON request payload could not be parsed."
  }
}
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Finish the currently active turn of this task
Example
Bearer $token
Task was successfully finished
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Authenticate yourself
Media type: application/json
Type: object
Properties:Example
{
  "email": "john.doe@example.org",
  "password": "pa$$w0rd"
}
Media type: application/json
Type: object
PropertiesExample
{
  "token": "header.payload.signature",
  "tokenId": "_tokenId000000000000",
  "validFor": 3600
}
Media type: application/json
Type: object
PropertiesExample
bad_request:
{
  "error": {
    "code": "bad_json",
    "message": "The JSON request payload could not be parsed."
  }
}
Media type: application/json
Type: object
PropertiesExamples
email_not_verified:
{
  "error": {
    "code": "email_not_verified",
    "message": "You have not verified your email address yet."
  }
}
credentials_wrong:
{
  "error": {
    "code": "credentials_wrong",
    "message": "User does not exist or password is wrong."
  }
}
user_disabled:
{
  "error": {
    "code": "user_disabled",
    "message": "This user is disabled and has to be enabled before being able to log in."
  }
}
Get all users
Example
Bearer $token
Media type: application/json
Type: array of User
Items: User
Example
[
  {
    "id": 1,
    "email": "ds@example.org",
    "firstName": "Daniel",
    "lastName": "Schäfer",
    "emailVerified": true,
    "disabled": false,
    "absent": false
  }
]
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Register a new user
Media type: application/json
Type: InvitationRegistration | EmailRegistration
Examples
with_invitation_code:
{
  "firstName": "Daniel",
  "lastName": "Schäfer",
  "password": "pa$$w0rd",
  "invitationCode": "9d0d1e5f8dbe5dc0",
  "absent": false
}
with_email:
{
  "firstName": "Daniel",
  "lastName": "Schäfer",
  "password": "pa$$w0rd",
  "email": "foo@example.org",
  "absent": false
}
Media type: application/json
Type: object
PropertiesMedia type: application/json
Type: object
PropertiesExample
bad_request:
{
  "error": {
    "code": "bad_json",
    "message": "The JSON request payload could not be parsed."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_invite:
{
  "error": {
    "code": "not_invited",
    "message": "Your email address is not invited."
  }
}
Media type: application/json
Type: object
PropertiesExample
invitation_code_invalid:
{
  "error": {
    "code": "invitation_code_invalid",
    "message": "This is not a valid invitation code."
  }
}
Media type: application/json
Type: object
PropertiesExample
email_exists:
{
  "error": {
    "code": "email_exists",
    "message": "A user with this email address already exists."
  }
}
Get the user with this Id
Example
Bearer $token
Media type: application/json
Type: object
PropertiesMedia type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Delete the user with this id
Example
Bearer $token
User was successfully deleted
Media type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}
Media type: application/json
Type: object
PropertiesExample
not_found:
{
  "error": {
    "code": "not_found",
    "message": "The resource you requested could not be found."
  }
}
Verify the email of a user by providing the code sent to him in an email.
Media type: application/json
Type: object
Properties:Media type: application/json
Type: object
PropertiesMedia type: application/json
Type: object
PropertiesExample
bad_request:
{
  "error": {
    "code": "bad_json",
    "message": "The JSON request payload could not be parsed."
  }
}
Media type: application/json
Type: object
PropertiesExample
verification_code_invalid:
{
  "error": {
    "code": "verification_code_invalid",
    "message": "Your email address could not be verified with this code."
  }
}
Get the currently logged in user
Example
Bearer $token
Media type: application/json
Type: object
PropertiesMedia type: application/json
Type: object
PropertiesExample
unauthorized:
{
  "error": {
    "code": "unauthorized",
    "message": "You are not authorized to access this resource."
  }
}