Organization API specification (7117ad9ca1aa28814049ab3736fd91abe3c5046d)

Download OpenAPI specification:Download

The organization service implements a the organization logic in GroupAlarm.

organization

UpdateOrganization

Update an existing organization with passed organization payload

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json

organization payload

object (AvailableUsersCount)

AvailableUsersCount payload

object (AvailableUsersCount)

AvailableUsersCount payload

avatarURL
string

AvatarURL

creationDate
any

CreationDate of the organization

description
string

user defined description

enforcesTwoFactorAuth
boolean

2FA

hasChildren
boolean

defines if it's the parent of any other organization

id
integer <int64>

ID of this organization

language
string

IETF BCP 47 language tag for the organization (e.g. 'de' or 'en-GB')

object (OrganizationLocation)

OrganizationLocation describes the location payload

name
string

user defined name

ownerIDs
Array of integers <int64> [ items <int64 > ]

user id of the organization owner/creator

parentID
integer <int64>

optional: ID of the parent organization

state
string (OrganizationState)

OrganizationState represents the current state of an organization, like trial, active, inactive

tags
Array of strings

Tags are used for internal purposes only

timezone
string

Canonical name of the timezone in the IANA time zone database (e.g. 'Europe/Berlin')

trialEndDate
any

TrialEndDate contains the timestamp when the organization's trial period expires

Responses

Request samples

Content type
application/json
{
  • "availableUsers": {
    },
  • "availableUsersTotal": {
    },
  • "avatarURL": "string",
  • "creationDate": null,
  • "description": "string",
  • "enforcesTwoFactorAuth": true,
  • "hasChildren": true,
  • "id": 0,
  • "language": "string",
  • "location": {
    },
  • "name": "string",
  • "ownerIDs": [
    ],
  • "parentID": 0,
  • "state": "string",
  • "tags": [
    ],
  • "timezone": "string",
  • "trialEndDate": null
}

Response samples

Content type
application/json
{
  • "availableUsers": {
    },
  • "availableUsersTotal": {
    },
  • "avatarURL": "string",
  • "creationDate": null,
  • "description": "string",
  • "enforcesTwoFactorAuth": true,
  • "hasChildren": true,
  • "id": 0,
  • "language": "string",
  • "location": {
    },
  • "name": "string",
  • "ownerIDs": [
    ],
  • "parentID": 0,
  • "state": "string",
  • "tags": [
    ],
  • "timezone": "string",
  • "trialEndDate": null
}

CreateOrganization

Create an organization with passed organization payload

Authorizations:
API_TokenPersonal-Access-Token
Request Body schema: application/json

organization payload

object (AvailableUsersCount)

AvailableUsersCount payload

object (AvailableUsersCount)

AvailableUsersCount payload

avatarURL
string

AvatarURL

creationDate
any

CreationDate of the organization

description
string

user defined description

enforcesTwoFactorAuth
boolean

2FA

hasChildren
boolean

defines if it's the parent of any other organization

id
integer <int64>

ID of this organization

language
string

IETF BCP 47 language tag for the organization (e.g. 'de' or 'en-GB')

object (OrganizationLocation)

OrganizationLocation describes the location payload

name
string

user defined name

ownerIDs
Array of integers <int64> [ items <int64 > ]

user id of the organization owner/creator

parentID
integer <int64>

optional: ID of the parent organization

state
string (OrganizationState)

OrganizationState represents the current state of an organization, like trial, active, inactive

tags
Array of strings

Tags are used for internal purposes only

timezone
string

Canonical name of the timezone in the IANA time zone database (e.g. 'Europe/Berlin')

trialEndDate
any

TrialEndDate contains the timestamp when the organization's trial period expires

Responses

Request samples

Content type
application/json
{
  • "availableUsers": {
    },
  • "availableUsersTotal": {
    },
  • "avatarURL": "string",
  • "creationDate": null,
  • "description": "string",
  • "enforcesTwoFactorAuth": true,
  • "hasChildren": true,
  • "id": 0,
  • "language": "string",
  • "location": {
    },
  • "name": "string",
  • "ownerIDs": [
    ],
  • "parentID": 0,
  • "state": "string",
  • "tags": [
    ],
  • "timezone": "string",
  • "trialEndDate": null
}

Response samples

Content type
application/json
{
  • "availableUsers": {
    },
  • "availableUsersTotal": {
    },
  • "avatarURL": "string",
  • "creationDate": null,
  • "description": "string",
  • "enforcesTwoFactorAuth": true,
  • "hasChildren": true,
  • "id": 0,
  • "language": "string",
  • "location": {
    },
  • "name": "string",
  • "ownerIDs": [
    ],
  • "parentID": 0,
  • "state": "string",
  • "tags": [
    ],
  • "timezone": "string",
  • "trialEndDate": null
}

GetOrganization

Get specific organization by its ID

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the requested organization

Responses

Response samples

Content type
application/json
{
  • "availableUsers": {
    },
  • "availableUsersTotal": {
    },
  • "avatarURL": "string",
  • "creationDate": null,
  • "description": "string",
  • "enforcesTwoFactorAuth": true,
  • "hasChildren": true,
  • "id": 0,
  • "language": "string",
  • "location": {
    },
  • "name": "string",
  • "ownerIDs": [
    ],
  • "parentID": 0,
  • "state": "string",
  • "tags": [
    ],
  • "timezone": "string",
  • "trialEndDate": null
}

availability

GetAvailableUsers

Get available users and aggregated available users of the given organization and its child organizations

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the requested organization

Responses

Response samples

Content type
application/json
{
  • "countInRoot": {
    },
  • "countTotal": {
    }
}

avatar

UploadAvatar

Uploads an Avatar for the Organization

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

Request Body schema: application/json

blob of the image

string

Responses

Request samples

Content type
application/json
"string"

children

GetChildren

Get paginated children of specific organization by its ID

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the requested organization

query Parameters
limit
integer

max. amount of entries in list

offset
integer

amount of entries to skip

Responses

Response samples

Content type
application/json
{
  • "childs": [
    ],
  • "path": [
    ],
  • "totalChilds": 0
}

availability-history

GetAvailabilityHistory

Get organization's availability history of the last 14 days

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the requested organization

query Parameters
limit
integer

max. amount of entries in list

offset
integer

amount of entries to skip

Responses

Response samples

Content type
application/json
{
  • "end_date": null,
  • "entries": [
    ],
  • "start_date": null
}

location

UpsertOrganizationLocation

Inserts or updates an organizations location

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

Request Body schema: application/json

location payload of the organization

address
string
latitude
number <double>
longitude
number <double>

Responses

Request samples

Content type
application/json
{
  • "address": "string",
  • "latitude": 0,
  • "longitude": 0
}

DeleteOrganizationLocation

Deletes an organizations location

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

Responses

owner

AddOwnerWithEmail

Update an existing organization by adding a new owner

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

Request Body schema: application/json

email address of the user

string

Responses

Request samples

Content type
application/json
"string"

GetOwnerInParentOrganization

Gets the topmost parent organization the given user is the owner of

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

userID
required
integer

id of the user

Responses

Response samples

Content type
application/json
{
  • "availableUsers": {
    },
  • "availableUsersTotal": {
    },
  • "avatarURL": "string",
  • "creationDate": null,
  • "description": "string",
  • "enforcesTwoFactorAuth": true,
  • "hasChildren": true,
  • "id": 0,
  • "language": "string",
  • "location": {
    },
  • "name": "string",
  • "ownerIDs": [
    ],
  • "parentID": 0,
  • "state": "string",
  • "tags": [
    ],
  • "timezone": "string",
  • "trialEndDate": null
}

AddOwner

Update an existing organization by adding a new owner

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

userID
required
integer

id of the user

Responses

RemoveOwner

Update an existing organization by removing an existing owner

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

userID
required
integer

id of the user

Responses

quick-actions

GetOrganizationQuickActions

Get all defined quick actions for this organization

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

Responses

Response samples

Content type
application/json
[
  • {
    }
]

SetOrganizationQuickActions

Replaces all defined organization quick actions with the passed ones

Authorizations:
API_TokenPersonal-Access-Token
path Parameters
organizationID
required
integer

id of the organization

Request Body schema: application/json

new quick-actions for this organization

Array
color
string
icon
string
id
integer <int64>
name
string
one_click
boolean
organization_id
integer <int64>
resource
string
resource_id
integer <int64>

Responses

Request samples

Content type
application/json
[
  • {
    }
]

organizationsByOwner

GetUsersOwnedOrganizations

Get all organizations for user in JWT token where the user is the owner of

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

organizations

GetPaginatedOrganizations

Get paginated organizations for user with the passed JWT token

Authorizations:
API_TokenPersonal-Access-Token
query Parameters
limit
integer

max. amount of entries in list

offset
integer

amount of entries to skip

Responses

Response samples

Content type
application/json
{
  • "organizations": [
    ],
  • "totalOrganizations": 0
}

trial

GetTrialStatus

Start a users' 14-day trial

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "start": null,
  • "userID": 0
}

StartTrial

Start a users' 14-day trial

Authorizations:
API_TokenPersonal-Access-Token

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "start": null,
  • "userID": 0
}