Beeple Data management APIs
This is a list of APIs that someone can use to interact with Beeple as an end user. This means that all APIs calls need to be executed as a special user.
Planning ¶
Projects ¶
Projects are the main entity of a customer’s planning. Beeple provides an API to list all projects and one to create a project
ListGET/api/v1/admin/projects
This will return a list of all (non-deleted) projects.
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"projects": [
{
"id": "7",
"name": "Example Project",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"customer": {
"id": "5",
"name": "Example client"
},
"department": {
"id": "5",
"name": "Example depertment"
},
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"color": "color1",
"color_code": "#AABBCC",
"published": true,
"subprojects_enabled": false,
"enrolment_document": "Default Callsheet",
"logo_url": "https://www.mysite.com/logo.png",
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created project"
},
"name": {
"type": "string",
"description": "The name of the project"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant"
},
"name": {
"type": "string",
"description": "The name of this customer (max 255 characters)"
}
},
"required": [
"id"
]
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project"
},
"name": {
"type": "string",
"description": "The name of this department (max 255 characters)"
}
},
"required": [
"id"
]
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"color_code": {
"type": "string",
"description": "The hexadecimal code of this color"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"subprojects_enabled": {
"type": "boolean",
"description": "Indication whether the project is subdivided in subprojects"
},
"enrolment_document": {
"type": "string",
"description": "Name of the enrolment document being used"
},
"logo_url": {
"type": "string",
"description": "A URL of the project logo"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the project"
},
"created_at": {
"type": "string",
"description": "Time of when project was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the project"
},
"updated_at": {
"type": "string",
"description": "Time of when project was updated in ISO 8601 format"
}
},
"required": [
"id",
"name",
"description",
"start_date",
"end_date",
"published",
"subprojects_enabled",
"created_at",
"updated_at"
]
},
"description": "List of all projects from today until the future who are not deleted"
}
}
}
CreatePOST/api/v1/admin/projects
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"project": {
"name": "Example Project",
"customer_id": "5",
"customer_contact_person_name": "John Doe",
"customer_contact_person_phone": "32498123456",
"department_id": "5",
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"single_callsheet_per_collaborator": false,
"color": "color1",
"published": true,
"enrolment_document_id": "7",
"display_on_availabilities_calendar": true,
"manager_id": "1582",
"practical_info": "Some practical info",
"default_function_id": "1582",
"logo": {
"file": "BCAAAQhAAAI+AQSLT4N9CEAAAhCAAAQySeD/AbfFFlz+mn2AAAAAAElFTkSuQmCC",
"filename": "a-picture.jpg"
},
"remove_logo": false,
"payroll_service_interim_id": "3",
"payroll_service_intern_id": "76",
"payroll_service_contractual_id": "666",
"payroll_service_freelancer_id": "1234",
"payroll_service_collaborator_id": "7685",
"default_minimum_age": 18,
"customer_experience_required": false,
"default_team_maximum_travel_distance": "1582",
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"default_shift": {
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
},
"responsible_planning_id": "1582",
"name_i18n_attributes": {
"language": "en",
"name": "Some name"
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"subprojects_enabled": true,
"work_location_id": "155",
"work_location_specification": "Second door",
"managers_attributes": [
{
"collaborator_id": "8"
}
],
"planning_custom_fields_attributes": [
{
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
],
"default_profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"project": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the project (max 255 characters)"
},
"customer_id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant. If Beeple is\n\nconfigured to not use customers this will be unnecessary information and ignored"
},
"customer_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"customer_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"department_id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project. If Beeple\n\nis configured to not use departments this will be unnecessary information and ignored"
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"single_callsheet_per_collaborator": {
"type": "boolean",
"description": "If no enrolment id is provided, this will decide which callsheet to use as default"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"enrolment_document_id": {
"type": "string",
"description": "The enrolment document ID. Can be omitted if there is only one active in the environment"
},
"display_on_availabilities_calendar": {
"type": "boolean",
"description": "Indication if should be shown on calendar. Required if tenant uses availabilities"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"practical_info": {
"type": "string",
"description": "Text to describe some practical info"
},
"default_function_id": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"logo": {
"type": "object",
"properties": {
"file": {
"type": "string",
"description": "the Base64-encoded contents of the file"
},
"filename": {
"type": "string",
"description": "the file name of the file"
}
},
"required": [
"file",
"filename"
],
"description": "project logo"
},
"remove_logo": {
"type": "boolean",
"description": "Whether to remove the logo or not"
},
"payroll_service_interim_id": {
"type": "string",
"description": "Payroll service ID for the interim"
},
"payroll_service_intern_id": {
"type": "string",
"description": "Payroll service ID for interns"
},
"payroll_service_contractual_id": {
"type": "string",
"description": "Payroll service ID for contractuals"
},
"payroll_service_freelancer_id": {
"type": "string",
"description": "Payroll service ID for freelancers"
},
"payroll_service_collaborator_id": {
"type": "string",
"description": "Payroll service ID for collaborators"
},
"default_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the project"
},
"customer_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"default_team_maximum_travel_distance": {
"type": "string",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this happening."
},
"default_shift": {
"type": "object",
"properties": {
"start_datetime": {
"type": "string",
"description": "Datetime of the shift start according RFC 3339."
},
"end_datetime": {
"type": "string",
"description": "Datetime of the shift end according RFC 3339. Can not be more than 24 hours after start"
},
"break_duration": {
"type": "string",
"description": "Time duration (HH:MM) of break"
}
},
"required": [
"start_datetime",
"end_datetime",
"break_duration"
],
"description": "The default start/end times and duration for Shifts. The date part is ignored and only the time portion is relevant."
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
],
"description": "the name of the project"
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"subprojects_enabled": {
"type": "boolean",
"description": "This allows the project to have subprojects"
},
"work_location_id": {
"type": "string",
"description": "The ID of the default work location address ID"
},
"work_location_specification": {
"type": "string",
"description": "Small description giving extra details about how to reach the destination"
},
"managers_attributes": {
"type": "array",
"description": "A list of extra admins with access. Only changes (additions or removals) need to passed"
},
"planning_custom_fields_attributes": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"default_profile_property_requirements_attributes": {
"type": "array",
"description": "A list of default profile property requirements. Only changes (additions or removals) need to passed"
}
},
"required": [
"name",
"description",
"start_date",
"end_date",
"color",
"published",
"display_on_availabilities_calendar",
"description_i18n_attributes",
"work_location_specification_i18n_attributes",
"subprojects_enabled"
],
"description": "Project info"
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"name": "Example Project",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"customer": {
"id": "5",
"name": "Example client"
},
"department": {
"id": "5",
"name": "Example depertment"
},
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"color": "color1",
"color_code": "#AABBCC",
"published": true,
"enrolment_document": "Default Callsheet",
"logo_url": "https://www.mysite.com/logo.png",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"manager_id": "1582",
"practical_info": "Some practical info",
"remove_logo": false,
"payroll_service_interim_id": "3",
"payroll_service_intern_id": "76",
"payroll_service_contractual_id": "666",
"payroll_service_freelancer_id": "1234",
"payroll_service_collaborator_id": "7685",
"default_minimum_age": 18,
"customer_experience_required": false,
"default_team_maximum_travel_distance": "1582",
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"responsible_planning_id": "1582",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"subprojects_enabled": true,
"work_location_id": "155",
"work_location_specification": "Second door",
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created project"
},
"name": {
"type": "string",
"description": "The name of the project"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant"
},
"name": {
"type": "string",
"description": "The name of this customer (max 255 characters)"
}
},
"required": [
"id"
]
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project"
},
"name": {
"type": "string",
"description": "The name of this department (max 255 characters)"
}
},
"required": [
"id"
]
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"color_code": {
"type": "string",
"description": "The hexadecimal code of this color"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"enrolment_document": {
"type": "string",
"description": "Name of the enrolment document being used"
},
"logo_url": {
"type": "string",
"description": "A URL of the project logo"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"practical_info": {
"type": "string",
"description": "Text to describe some practical info"
},
"default_function_id `1582`": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"logo": {
"type": "string",
"description": "hash of the desired logo"
},
"remove_logo": {
"type": "boolean",
"description": "Whether to remove the logo or not"
},
"payroll_service_interim_id": {
"type": "string",
"description": "Payroll service ID for the interim"
},
"payroll_service_intern_id": {
"type": "string",
"description": "Payroll service ID for interns"
},
"payroll_service_contractual_id": {
"type": "string",
"description": "Payroll service ID for contractuals"
},
"payroll_service_freelancer_id": {
"type": "string",
"description": "Payroll service ID for freelancers"
},
"payroll_service_collaborator_id": {
"type": "string",
"description": "Payroll service ID for collaborators"
},
"default_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the project"
},
"customer_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"default_team_maximum_travel_distance": {
"type": "string",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this happening."
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
],
"description": "the name of the group"
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"subprojects_enabled": {
"type": "boolean",
"description": "This allows the project to have subprojects"
},
"work_location_id": {
"type": "string",
"description": "The ID of the default work location address ID"
},
"work_location_specification": {
"type": "string",
"description": "Small description giving extra details about how to reach the destination"
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the project"
},
"created_at": {
"type": "string",
"description": "Time of when project was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the project"
},
"updated_at": {
"type": "string",
"description": "Time of when project was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe project. The keys refer to the name of the field (eg. start_date) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"description",
"start_date",
"end_date",
"published",
"subprojects_enabled",
"description_i18n_attributes",
"work_location_specification_i18n_attributes",
"subprojects_enabled",
"created_at",
"updated_at"
]
}
DetailsGET/api/v1/admin/projects/{project_id}
Example URI
- project_id
string
(required) Example: 7The project ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"name": "Example Project",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"customer": {
"id": "5",
"name": "Example client"
},
"department": {
"id": "5",
"name": "Example depertment"
},
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"color": "color1",
"color_code": "#AABBCC",
"published": true,
"enrolment_document": "Default Callsheet",
"logo_url": "https://www.mysite.com/logo.png",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"manager_id": "1582",
"practical_info": "Some practical info",
"remove_logo": false,
"payroll_service_interim_id": "3",
"payroll_service_intern_id": "76",
"payroll_service_contractual_id": "666",
"payroll_service_freelancer_id": "1234",
"payroll_service_collaborator_id": "7685",
"default_minimum_age": 18,
"customer_experience_required": false,
"default_team_maximum_travel_distance": "1582",
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"responsible_planning_id": "1582",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"subprojects_enabled": true,
"work_location_id": "155",
"work_location_specification": "Second door",
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created project"
},
"name": {
"type": "string",
"description": "The name of the project"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant"
},
"name": {
"type": "string",
"description": "The name of this customer (max 255 characters)"
}
},
"required": [
"id"
]
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project"
},
"name": {
"type": "string",
"description": "The name of this department (max 255 characters)"
}
},
"required": [
"id"
]
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"color_code": {
"type": "string",
"description": "The hexadecimal code of this color"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"enrolment_document": {
"type": "string",
"description": "Name of the enrolment document being used"
},
"logo_url": {
"type": "string",
"description": "A URL of the project logo"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"practical_info": {
"type": "string",
"description": "Text to describe some practical info"
},
"default_function_id `1582`": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"logo": {
"type": "string",
"description": "hash of the desired logo"
},
"remove_logo": {
"type": "boolean",
"description": "Whether to remove the logo or not"
},
"payroll_service_interim_id": {
"type": "string",
"description": "Payroll service ID for the interim"
},
"payroll_service_intern_id": {
"type": "string",
"description": "Payroll service ID for interns"
},
"payroll_service_contractual_id": {
"type": "string",
"description": "Payroll service ID for contractuals"
},
"payroll_service_freelancer_id": {
"type": "string",
"description": "Payroll service ID for freelancers"
},
"payroll_service_collaborator_id": {
"type": "string",
"description": "Payroll service ID for collaborators"
},
"default_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the project"
},
"customer_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"default_team_maximum_travel_distance": {
"type": "string",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this happening."
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
],
"description": "the name of the group"
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"subprojects_enabled": {
"type": "boolean",
"description": "This allows the project to have subprojects"
},
"work_location_id": {
"type": "string",
"description": "The ID of the default work location address ID"
},
"work_location_specification": {
"type": "string",
"description": "Small description giving extra details about how to reach the destination"
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the project"
},
"created_at": {
"type": "string",
"description": "Time of when project was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the project"
},
"updated_at": {
"type": "string",
"description": "Time of when project was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe project. The keys refer to the name of the field (eg. start_date) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"description",
"start_date",
"end_date",
"published",
"subprojects_enabled",
"description_i18n_attributes",
"work_location_specification_i18n_attributes",
"subprojects_enabled",
"created_at",
"updated_at"
]
}
Enable SubprojectPOST/api/v1/admin/projects/{project_id}/enable_subprojects
Example URI
- project_id
string
(required) Example: 7The project ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"name": "Example Project",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"customer": {
"id": "5",
"name": "Example client"
},
"department": {
"id": "5",
"name": "Example depertment"
},
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"color": "color1",
"color_code": "#AABBCC",
"published": true,
"enrolment_document": "Default Callsheet",
"logo_url": "https://www.mysite.com/logo.png",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"manager_id": "1582",
"practical_info": "Some practical info",
"remove_logo": false,
"payroll_service_interim_id": "3",
"payroll_service_intern_id": "76",
"payroll_service_contractual_id": "666",
"payroll_service_freelancer_id": "1234",
"payroll_service_collaborator_id": "7685",
"default_minimum_age": 18,
"customer_experience_required": false,
"default_team_maximum_travel_distance": "1582",
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"responsible_planning_id": "1582",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"subprojects_enabled": true,
"work_location_id": "155",
"work_location_specification": "Second door",
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created project"
},
"name": {
"type": "string",
"description": "The name of the project"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant"
},
"name": {
"type": "string",
"description": "The name of this customer (max 255 characters)"
}
},
"required": [
"id"
]
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project"
},
"name": {
"type": "string",
"description": "The name of this department (max 255 characters)"
}
},
"required": [
"id"
]
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"color_code": {
"type": "string",
"description": "The hexadecimal code of this color"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"enrolment_document": {
"type": "string",
"description": "Name of the enrolment document being used"
},
"logo_url": {
"type": "string",
"description": "A URL of the project logo"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"practical_info": {
"type": "string",
"description": "Text to describe some practical info"
},
"default_function_id `1582`": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"logo": {
"type": "string",
"description": "hash of the desired logo"
},
"remove_logo": {
"type": "boolean",
"description": "Whether to remove the logo or not"
},
"payroll_service_interim_id": {
"type": "string",
"description": "Payroll service ID for the interim"
},
"payroll_service_intern_id": {
"type": "string",
"description": "Payroll service ID for interns"
},
"payroll_service_contractual_id": {
"type": "string",
"description": "Payroll service ID for contractuals"
},
"payroll_service_freelancer_id": {
"type": "string",
"description": "Payroll service ID for freelancers"
},
"payroll_service_collaborator_id": {
"type": "string",
"description": "Payroll service ID for collaborators"
},
"default_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the project"
},
"customer_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"default_team_maximum_travel_distance": {
"type": "string",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this happening."
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
],
"description": "the name of the group"
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"subprojects_enabled": {
"type": "boolean",
"description": "This allows the project to have subprojects"
},
"work_location_id": {
"type": "string",
"description": "The ID of the default work location address ID"
},
"work_location_specification": {
"type": "string",
"description": "Small description giving extra details about how to reach the destination"
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the project"
},
"created_at": {
"type": "string",
"description": "Time of when project was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the project"
},
"updated_at": {
"type": "string",
"description": "Time of when project was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe project. The keys refer to the name of the field (eg. start_date) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"description",
"start_date",
"end_date",
"published",
"subprojects_enabled",
"description_i18n_attributes",
"work_location_specification_i18n_attributes",
"subprojects_enabled",
"created_at",
"updated_at"
]
}
UpdatePATCH/api/v1/admin/projects/{project_id}
Example URI
- project_id
string
(required) Example: 7The project ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"project": {
"name": "Example Project",
"customer_id": "5",
"customer_contact_person_name": "John Doe",
"customer_contact_person_phone": "32498123456",
"department_id": "5",
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"single_callsheet_per_collaborator": false,
"color": "color1",
"published": true,
"enrolment_document_id": "7",
"display_on_availabilities_calendar": true,
"manager_id": "1582",
"practical_info": "Some practical info",
"default_function_id": "1582",
"logo": {
"file": "BCAAAQhAAAI+AQSLT4N9CEAAAhCAAAQySeD/AbfFFlz+mn2AAAAAAElFTkSuQmCC",
"filename": "a-picture.jpg"
},
"remove_logo": false,
"payroll_service_interim_id": "3",
"payroll_service_intern_id": "76",
"payroll_service_contractual_id": "666",
"payroll_service_freelancer_id": "1234",
"payroll_service_collaborator_id": "7685",
"default_minimum_age": 18,
"customer_experience_required": false,
"default_team_maximum_travel_distance": "1582",
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"default_shift": {
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
},
"responsible_planning_id": "1582",
"name_i18n_attributes": {
"language": "en",
"name": "Some name"
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"subprojects_enabled": true,
"work_location_id": "155",
"work_location_specification": "Second door",
"managers_attributes": [
{
"collaborator_id": "8"
}
],
"planning_custom_fields_attributes": [
{
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
],
"default_profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"project": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the project (max 255 characters)"
},
"customer_id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant. If Beeple is\n\nconfigured to not use customers this will be unnecessary information and ignored"
},
"customer_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"customer_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"department_id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project. If Beeple\n\nis configured to not use departments this will be unnecessary information and ignored"
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"single_callsheet_per_collaborator": {
"type": "boolean",
"description": "If no enrolment id is provided, this will decide which callsheet to use as default"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"enrolment_document_id": {
"type": "string",
"description": "The enrolment document ID. Can be omitted if there is only one active in the environment"
},
"display_on_availabilities_calendar": {
"type": "boolean",
"description": "Indication if should be shown on calendar. Required if tenant uses availabilities"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"practical_info": {
"type": "string",
"description": "Text to describe some practical info"
},
"default_function_id": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"logo": {
"type": "object",
"properties": {
"file": {
"type": "string",
"description": "the Base64-encoded contents of the file"
},
"filename": {
"type": "string",
"description": "the file name of the file"
}
},
"required": [
"file",
"filename"
],
"description": "project logo"
},
"remove_logo": {
"type": "boolean",
"description": "Whether to remove the logo or not"
},
"payroll_service_interim_id": {
"type": "string",
"description": "Payroll service ID for the interim"
},
"payroll_service_intern_id": {
"type": "string",
"description": "Payroll service ID for interns"
},
"payroll_service_contractual_id": {
"type": "string",
"description": "Payroll service ID for contractuals"
},
"payroll_service_freelancer_id": {
"type": "string",
"description": "Payroll service ID for freelancers"
},
"payroll_service_collaborator_id": {
"type": "string",
"description": "Payroll service ID for collaborators"
},
"default_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the project"
},
"customer_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"default_team_maximum_travel_distance": {
"type": "string",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this happening."
},
"default_shift": {
"type": "object",
"properties": {
"start_datetime": {
"type": "string",
"description": "Datetime of the shift start according RFC 3339."
},
"end_datetime": {
"type": "string",
"description": "Datetime of the shift end according RFC 3339. Can not be more than 24 hours after start"
},
"break_duration": {
"type": "string",
"description": "Time duration (HH:MM) of break"
}
},
"required": [
"start_datetime",
"end_datetime",
"break_duration"
],
"description": "The default start/end times and duration for Shifts. The date part is ignored and only the time portion is relevant."
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
],
"description": "the name of the project"
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"subprojects_enabled": {
"type": "boolean",
"description": "This allows the project to have subprojects"
},
"work_location_id": {
"type": "string",
"description": "The ID of the default work location address ID"
},
"work_location_specification": {
"type": "string",
"description": "Small description giving extra details about how to reach the destination"
},
"managers_attributes": {
"type": "array",
"description": "A list of extra admins with access. Only changes (additions or removals) need to passed"
},
"planning_custom_fields_attributes": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"default_profile_property_requirements_attributes": {
"type": "array",
"description": "A list of default profile property requirements. Only changes (additions or removals) need to passed"
}
},
"required": [
"name",
"description",
"start_date",
"end_date",
"color",
"published",
"display_on_availabilities_calendar",
"description_i18n_attributes",
"work_location_specification_i18n_attributes",
"subprojects_enabled"
],
"description": "Project info"
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"name": "Example Project",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"customer": {
"id": "5",
"name": "Example client"
},
"department": {
"id": "5",
"name": "Example depertment"
},
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"color": "color1",
"color_code": "#AABBCC",
"published": true,
"enrolment_document": "Default Callsheet",
"logo_url": "https://www.mysite.com/logo.png",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"manager_id": "1582",
"practical_info": "Some practical info",
"remove_logo": false,
"payroll_service_interim_id": "3",
"payroll_service_intern_id": "76",
"payroll_service_contractual_id": "666",
"payroll_service_freelancer_id": "1234",
"payroll_service_collaborator_id": "7685",
"default_minimum_age": 18,
"customer_experience_required": false,
"default_team_maximum_travel_distance": "1582",
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"responsible_planning_id": "1582",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"subprojects_enabled": true,
"work_location_id": "155",
"work_location_specification": "Second door",
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created project"
},
"name": {
"type": "string",
"description": "The name of the project"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant"
},
"name": {
"type": "string",
"description": "The name of this customer (max 255 characters)"
}
},
"required": [
"id"
]
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project"
},
"name": {
"type": "string",
"description": "The name of this department (max 255 characters)"
}
},
"required": [
"id"
]
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"color_code": {
"type": "string",
"description": "The hexadecimal code of this color"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"enrolment_document": {
"type": "string",
"description": "Name of the enrolment document being used"
},
"logo_url": {
"type": "string",
"description": "A URL of the project logo"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"practical_info": {
"type": "string",
"description": "Text to describe some practical info"
},
"default_function_id `1582`": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"logo": {
"type": "string",
"description": "hash of the desired logo"
},
"remove_logo": {
"type": "boolean",
"description": "Whether to remove the logo or not"
},
"payroll_service_interim_id": {
"type": "string",
"description": "Payroll service ID for the interim"
},
"payroll_service_intern_id": {
"type": "string",
"description": "Payroll service ID for interns"
},
"payroll_service_contractual_id": {
"type": "string",
"description": "Payroll service ID for contractuals"
},
"payroll_service_freelancer_id": {
"type": "string",
"description": "Payroll service ID for freelancers"
},
"payroll_service_collaborator_id": {
"type": "string",
"description": "Payroll service ID for collaborators"
},
"default_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the project"
},
"customer_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"default_team_maximum_travel_distance": {
"type": "string",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this happening."
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
],
"description": "the name of the group"
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"subprojects_enabled": {
"type": "boolean",
"description": "This allows the project to have subprojects"
},
"work_location_id": {
"type": "string",
"description": "The ID of the default work location address ID"
},
"work_location_specification": {
"type": "string",
"description": "Small description giving extra details about how to reach the destination"
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the project"
},
"created_at": {
"type": "string",
"description": "Time of when project was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the project"
},
"updated_at": {
"type": "string",
"description": "Time of when project was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe project. The keys refer to the name of the field (eg. start_date) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"description",
"start_date",
"end_date",
"published",
"subprojects_enabled",
"description_i18n_attributes",
"work_location_specification_i18n_attributes",
"subprojects_enabled",
"created_at",
"updated_at"
]
}
Delete projectDELETE/api/v1/admin/projects/{project_id}
Example URI
- project_id
string
(required) Example: 7The project ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"name": "Example Project",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"customer": {
"id": "5",
"name": "Example client"
},
"department": {
"id": "5",
"name": "Example depertment"
},
"description": "Description of example project",
"start_date": "2017-08-15",
"end_date": "2017-09-15",
"color": "color1",
"color_code": "#AABBCC",
"published": true,
"enrolment_document": "Default Callsheet",
"logo_url": "https://www.mysite.com/logo.png",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"manager_id": "1582",
"practical_info": "Some practical info",
"remove_logo": false,
"payroll_service_interim_id": "3",
"payroll_service_intern_id": "76",
"payroll_service_contractual_id": "666",
"payroll_service_freelancer_id": "1234",
"payroll_service_collaborator_id": "7685",
"default_minimum_age": 18,
"customer_experience_required": false,
"default_team_maximum_travel_distance": "1582",
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"responsible_planning_id": "1582",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"subprojects_enabled": true,
"work_location_id": "155",
"work_location_specification": "Second door",
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created project"
},
"name": {
"type": "string",
"description": "The name of the project"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"customer": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the customer of the Beeple tenant"
},
"name": {
"type": "string",
"description": "The name of this customer (max 255 characters)"
}
},
"required": [
"id"
]
},
"department": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department of the Beeple tenant that executes the project"
},
"name": {
"type": "string",
"description": "The name of this department (max 255 characters)"
}
},
"required": [
"id"
]
},
"description": {
"type": "string",
"description": "A description of the project"
},
"start_date": {
"type": "string",
"description": "Start date of the project in YYYY-MM-DD"
},
"end_date": {
"type": "string",
"description": "End date of the project in YYYY-MM-DD"
},
"color": {
"type": "string",
"description": "Color used to present the project in calendars. The number refers to the presentation of the colors left to right when creating a project on screen in the Beeple application"
},
"color_code": {
"type": "string",
"description": "The hexadecimal code of this color"
},
"published": {
"type": "boolean",
"description": "Indication whether the project is published"
},
"enrolment_document": {
"type": "string",
"description": "Name of the enrolment document being used"
},
"logo_url": {
"type": "string",
"description": "A URL of the project logo"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"practical_info": {
"type": "string",
"description": "Text to describe some practical info"
},
"default_function_id `1582`": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"logo": {
"type": "string",
"description": "hash of the desired logo"
},
"remove_logo": {
"type": "boolean",
"description": "Whether to remove the logo or not"
},
"payroll_service_interim_id": {
"type": "string",
"description": "Payroll service ID for the interim"
},
"payroll_service_intern_id": {
"type": "string",
"description": "Payroll service ID for interns"
},
"payroll_service_contractual_id": {
"type": "string",
"description": "Payroll service ID for contractuals"
},
"payroll_service_freelancer_id": {
"type": "string",
"description": "Payroll service ID for freelancers"
},
"payroll_service_collaborator_id": {
"type": "string",
"description": "Payroll service ID for collaborators"
},
"default_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the project"
},
"customer_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"default_team_maximum_travel_distance": {
"type": "string",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this happening."
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
],
"description": "the name of the group"
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"subprojects_enabled": {
"type": "boolean",
"description": "This allows the project to have subprojects"
},
"work_location_id": {
"type": "string",
"description": "The ID of the default work location address ID"
},
"work_location_specification": {
"type": "string",
"description": "Small description giving extra details about how to reach the destination"
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the project"
},
"created_at": {
"type": "string",
"description": "Time of when project was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the project"
},
"updated_at": {
"type": "string",
"description": "Time of when project was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe project. The keys refer to the name of the field (eg. start_date) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"description",
"start_date",
"end_date",
"published",
"subprojects_enabled",
"description_i18n_attributes",
"work_location_specification_i18n_attributes",
"subprojects_enabled",
"created_at",
"updated_at"
]
}
Subprojects ¶
Subprojects are the more detailed level of customer’s planning. A subproject is always part of exactly one project. Beeple provides an API to list all subprojects of a project and one to create a subproject within a project
Get list of subprojectsGET/api/v1/admin/projects/{project_id}/subprojects{?page}
Example URI
- project_id
string
(required) Example: 87643The Beeple ID of the project that you want to manage subprojects of
- page
number
(optional) Example: 2The paginated page number.
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"filter": {
"period_start_at": "Hello, world!",
"period_end_at": "Hello, world!"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"filter": {
"type": "object",
"properties": {
"period_start_at": {
"type": "string"
},
"period_end_at": {
"type": "string"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"subprojects": [
{
"id": "17",
"name": "Example Subproject",
"client_contact_person_name": "John Doe",
"client_contact_person_phone": "32498123456",
"manager_id": "1582",
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"project_id": "7",
"project_name": "My project",
"start_date": "2019-09-11",
"end_date": "2019-09-15",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"work_location_id": "120",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"subprojects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created subproject"
},
"name": {
"type": "string",
"description": "The name of the subproject"
},
"client_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"client_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this cluster."
},
"project_id": {
"type": "string",
"description": "The ID of the project to which the subproject belongs"
},
"project_name": {
"type": "string",
"description": "The name of the project to which the subproject belongs"
},
"start_date": {
"type": "string",
"description": "The start date of the subproject"
},
"end_date": {
"type": "string",
"description": "The end date of the subproject"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the subproject"
},
"created_at": {
"type": "string",
"description": "Time of when subproject was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the subproject"
},
"updated_at": {
"type": "string",
"description": "Time of when subproject was updated in ISO 8601 format"
}
},
"required": [
"id",
"name",
"project_id",
"project_name",
"start_date",
"end_date",
"work_location_id",
"created_at",
"updated_at"
]
},
"description": "List of all subprojects"
},
"next": {
"type": "string",
"description": "URL for the next set of results"
},
"prev": {
"type": "string",
"description": "URL for the previous set of results"
}
}
}
CreatePOST/api/v1/admin/projects/{project_id}/subprojects
Example URI
- project_id
string
(required) Example: 87643The Beeple ID of the project that you want to manage subprojects of
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"subproject": {
"name": "Example Subproject",
"customer_contact_person_name": "John Doe",
"customer_contact_person_phone": "32498123456",
"manager_id": "1582",
"responsible_planning_id": "1582",
"default_function_id": "1582",
"default_team_minimum_age": 18,
"default_team_customer_experience_required": false,
"default_team_maximum_travel_distance": 152,
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"default_shift": {
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
},
"name_i18n_attributes": {
"language": "en",
"name": "Some name"
},
"start_date": "2019-09-11",
"end_date": "2019-09-15",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"managers_attributes": [
{
"collaborator_id": "8"
}
],
"planning_custom_fields_attributes": [
{
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
],
"default_profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"subproject": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the subproject"
},
"customer_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"customer_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"default_function_id": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"default_team_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the subproject"
},
"default_team_customer_experience_required": {
"type": "boolean",
"description": "Whether or not the team should have customer experience."
},
"default_team_maximum_travel_distance": {
"type": "number",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this cluster."
},
"default_shift": {
"type": "object",
"properties": {
"start_datetime": {
"type": "string",
"description": "Datetime of the shift start according RFC 3339."
},
"end_datetime": {
"type": "string",
"description": "Datetime of the shift end according RFC 3339. Can not be more than 24 hours after start"
},
"break_duration": {
"type": "string",
"description": "Time duration (HH:MM) of break"
}
},
"required": [
"start_datetime",
"end_datetime",
"break_duration"
],
"description": "The default start/end times and duration for Shifts. The date part is ignored and only the time portion is relevant."
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
],
"description": "the name of the group"
},
"start_date": {
"type": "string",
"description": "The start date of the subproject"
},
"end_date": {
"type": "string",
"description": "The end date of the subproject"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"managers_attributes": {
"type": "array",
"description": "A list of extra admins with access. Only changes (additions or removals) need to passed"
},
"planning_custom_fields_attributes": {
"type": "array",
"description": "- A list of extra custom planning fields."
},
"default_profile_property_requirements_attributes": {
"type": "array",
"description": "A list of default profile property requirements. Only changes (additions or removals) need to passed"
}
},
"required": [
"name",
"start_date",
"end_date",
"work_location_specification_i18n_attributes"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "17",
"name": "Example Subproject",
"client_contact_person_name": "John Doe",
"client_contact_person_phone": "32498123456",
"manager_id": "1582",
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"project_id": "7",
"project_name": "My project",
"start_date": "2019-09-11",
"end_date": "2019-09-15",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"work_location_id": "120",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created subproject"
},
"name": {
"type": "string",
"description": "The name of the subproject"
},
"client_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"client_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this cluster."
},
"project_id": {
"type": "string",
"description": "The ID of the project to which the subproject belongs"
},
"project_name": {
"type": "string",
"description": "The name of the project to which the subproject belongs"
},
"start_date": {
"type": "string",
"description": "The start date of the subproject"
},
"end_date": {
"type": "string",
"description": "The end date of the subproject"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the subproject"
},
"created_at": {
"type": "string",
"description": "Time of when subproject was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the subproject"
},
"updated_at": {
"type": "string",
"description": "Time of when subproject was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe subproject. The keys refer to the name of the field (eg. manager_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"project_id",
"project_name",
"start_date",
"end_date",
"work_location_id",
"created_at",
"updated_at"
]
}
DetailsGET/api/v1/admin/projects/{project_id}/subprojects/{sub_project_id}
Example URI
- project_id
string
(required) Example: 7The project ID
- sub_project_id
string
(required) Example: 1The sub-project ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "17",
"name": "Example Subproject",
"client_contact_person_name": "John Doe",
"client_contact_person_phone": "32498123456",
"manager_id": "1582",
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"project_id": "7",
"project_name": "My project",
"start_date": "2019-09-11",
"end_date": "2019-09-15",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"work_location_id": "120",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created subproject"
},
"name": {
"type": "string",
"description": "The name of the subproject"
},
"client_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"client_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this cluster."
},
"project_id": {
"type": "string",
"description": "The ID of the project to which the subproject belongs"
},
"project_name": {
"type": "string",
"description": "The name of the project to which the subproject belongs"
},
"start_date": {
"type": "string",
"description": "The start date of the subproject"
},
"end_date": {
"type": "string",
"description": "The end date of the subproject"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the subproject"
},
"created_at": {
"type": "string",
"description": "Time of when subproject was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the subproject"
},
"updated_at": {
"type": "string",
"description": "Time of when subproject was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe subproject. The keys refer to the name of the field (eg. manager_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"project_id",
"project_name",
"start_date",
"end_date",
"work_location_id",
"created_at",
"updated_at"
]
}
UpdatePATCH/api/v1/admin/projects/{project_id}/subprojects/{sub_project_id}
Example URI
- project_id
string
(required) Example: 87643The Beeple ID of the project that you want to manage subprojects of
- sub_project_id
string
(required) Example: 7896The Beeple ID of the subproject
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"subproject": {
"name": "Example Subproject",
"customer_contact_person_name": "John Doe",
"customer_contact_person_phone": "32498123456",
"manager_id": "1582",
"responsible_planning_id": "1582",
"default_function_id": "1582",
"default_team_minimum_age": 18,
"default_team_customer_experience_required": false,
"default_team_maximum_travel_distance": 152,
"default_registration_type": "direct_registration",
"default_team_open_for_reservations": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"default_shift": {
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
},
"name_i18n_attributes": {
"language": "en",
"name": "Some name"
},
"start_date": "2019-09-11",
"end_date": "2019-09-15",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"managers_attributes": [
{
"collaborator_id": "8"
}
],
"planning_custom_fields_attributes": [
{
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
],
"default_profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"subproject": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the subproject"
},
"customer_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"customer_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"responsible_planning_id": {
"type": "string",
"description": "ID of the collaborator responsible for the planning"
},
"default_function_id": {
"type": "string",
"description": "The ID of the default function of collaborators"
},
"default_team_minimum_age": {
"type": "number",
"description": "The minimum age required to be employed to the subproject"
},
"default_team_customer_experience_required": {
"type": "boolean",
"description": "Whether or not the team should have customer experience."
},
"default_team_maximum_travel_distance": {
"type": "number",
"description": "The maximum travel distance a collaborator should have to travel"
},
"default_registration_type": {
"type": "string",
"enum": [
"application",
"direct_registration"
],
"description": "Decides whether the default registrations is a candidacy or an immediate enrolment"
},
"default_team_open_for_reservations": {
"type": "boolean",
"description": "This decides if the project is open for reservations by default."
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this cluster."
},
"default_shift": {
"type": "object",
"properties": {
"start_datetime": {
"type": "string",
"description": "Datetime of the shift start according RFC 3339."
},
"end_datetime": {
"type": "string",
"description": "Datetime of the shift end according RFC 3339. Can not be more than 24 hours after start"
},
"break_duration": {
"type": "string",
"description": "Time duration (HH:MM) of break"
}
},
"required": [
"start_datetime",
"end_datetime",
"break_duration"
],
"description": "The default start/end times and duration for Shifts. The date part is ignored and only the time portion is relevant."
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
],
"description": "the name of the group"
},
"start_date": {
"type": "string",
"description": "The start date of the subproject"
},
"end_date": {
"type": "string",
"description": "The end date of the subproject"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"managers_attributes": {
"type": "array",
"description": "A list of extra admins with access. Only changes (additions or removals) need to passed"
},
"planning_custom_fields_attributes": {
"type": "array",
"description": "- A list of extra custom planning fields."
},
"default_profile_property_requirements_attributes": {
"type": "array",
"description": "A list of default profile property requirements. Only changes (additions or removals) need to passed"
}
},
"required": [
"name",
"start_date",
"end_date",
"work_location_specification_i18n_attributes"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "17",
"name": "Example Subproject",
"client_contact_person_name": "John Doe",
"client_contact_person_phone": "32498123456",
"manager_id": "1582",
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"project_id": "7",
"project_name": "My project",
"start_date": "2019-09-11",
"end_date": "2019-09-15",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"work_location_id": "120",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created subproject"
},
"name": {
"type": "string",
"description": "The name of the subproject"
},
"client_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"client_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this cluster."
},
"project_id": {
"type": "string",
"description": "The ID of the project to which the subproject belongs"
},
"project_name": {
"type": "string",
"description": "The name of the project to which the subproject belongs"
},
"start_date": {
"type": "string",
"description": "The start date of the subproject"
},
"end_date": {
"type": "string",
"description": "The end date of the subproject"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the subproject"
},
"created_at": {
"type": "string",
"description": "Time of when subproject was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the subproject"
},
"updated_at": {
"type": "string",
"description": "Time of when subproject was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe subproject. The keys refer to the name of the field (eg. manager_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"project_id",
"project_name",
"start_date",
"end_date",
"work_location_id",
"created_at",
"updated_at"
]
}
DeleteDELETE/api/v1/admin/projects/{project_id}/subprojects/{sub_project_id}
Example URI
- project_id
string
(required) Example: 87643The Beeple ID of the project that you want to manage subprojects of
- sub_project_id
string
(required) Example: 7896The Beeple ID of the subproject
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "17",
"name": "Example Subproject",
"client_contact_person_name": "John Doe",
"client_contact_person_phone": "32498123456",
"manager_id": "1582",
"teams_are_published_by_default": true,
"default_number_of_collaborators": 5,
"project_id": "7",
"project_name": "My project",
"start_date": "2019-09-11",
"end_date": "2019-09-15",
"registrations_count": 3,
"unconfirmed_registrations_count": 3,
"volunteers_needed": 5,
"work_location_id": "120",
"planning_custom_fields": [
{
"group_name": "Group name",
"planning_custom_field": {
"id": "5",
"planning_custom_field_id": "9",
"list_single_verified": "option 1",
"list_multi_verified": [
"option 1"
],
"list_multi_array_verified": [
"option 1",
"option 2"
],
"boolean_verified": true,
"numeric_verified": 5,
"upload_verified": "Very long URL",
"upload_verified_file_name": "example.png",
"upload_verified_file_size": 525,
"upload_verified_content_type": "another very long token",
"freetext_verified": "example text",
"freetext_multiline_verified": "example admin text",
"datetime_verified": "2024-01-01T05:00",
"date_verified": "2023-05-06",
"time_verified": "15:00",
"value": "some value here",
"display_value": "display value here"
},
"plannings_custom_property": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"sort_order": 2
}
}
],
"default_profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": true,
"weight": 50,
"list_multi_options": [
"option 1",
"option 2"
],
"list_multi_or": true,
"list_single_options": [
"option 1"
],
"numeric_min": 25,
"numeric_max": 125,
"date_min": "1970-01-01",
"date_max": "2036-05-05",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:00",
"time_max": "12:00"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created subproject"
},
"name": {
"type": "string",
"description": "The name of the subproject"
},
"client_contact_person_name": {
"type": "string",
"description": "The customer's contact person name"
},
"client_contact_person_phone": {
"type": "string",
"description": "The customer's contact person phone number"
},
"manager_id": {
"type": "string",
"description": "The ID of the supervisor of the subproject"
},
"teams_are_published_by_default": {
"type": "boolean",
"description": "This decides if the teams should be published by default."
},
"default_number_of_collaborators": {
"type": "number",
"description": "This is used as the default number of collaborators when creating teams for this cluster."
},
"project_id": {
"type": "string",
"description": "The ID of the project to which the subproject belongs"
},
"project_name": {
"type": "string",
"description": "The name of the project to which the subproject belongs"
},
"start_date": {
"type": "string",
"description": "The start date of the subproject"
},
"end_date": {
"type": "string",
"description": "The end date of the subproject"
},
"registrations_count": {
"type": "number",
"description": "Number of enrolments."
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"volunteers_needed": {
"type": "number",
"description": "Number of collaborators needed."
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"default_shift": {
"type": "string",
"description": "The default start/end times and duration for Shifts."
},
"planning_custom_fields": {
"type": "array",
"description": "A list of extra custom planning fields."
},
"default_profile_property_requirements": {
"type": "array",
"description": "A list of default profile property requirements."
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the subproject"
},
"created_at": {
"type": "string",
"description": "Time of when subproject was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the subproject"
},
"updated_at": {
"type": "string",
"description": "Time of when subproject was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe subproject. The keys refer to the name of the field (eg. manager_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"name",
"project_id",
"project_name",
"start_date",
"end_date",
"work_location_id",
"created_at",
"updated_at"
]
}
Teams ¶
Teams are the most detailed planning level in Beeple. A team is always part of exactly one subproject and one project. Beeple provides an API to list all teams of a subproject and one to create a team within a subproject
List in projectGET/api/v1/admin/projects/{project_id}/teams
Example URI
- project_id
string
(required) Example: 87643The Beeple ID of the subproject that you want to manage teams of
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"teams": [
{
"id": "27",
"name": "Example Team",
"subproject": "Subproject name",
"subproject_id": "75",
"project": "Project name",
"project_id": "12",
"work_location_id": "120",
"function": {
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"shifts": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"teams": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"subproject": {
"type": "string",
"description": "The subproject name."
},
"subproject_id": {
"type": "string",
"description": "The subproject ID."
},
"project": {
"type": "string",
"description": "The project name."
},
"project_id": {
"type": "string",
"description": "The project ID"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"function": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"shifts": {
"type": "array",
"description": "A list of shifts"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"profile_property_requirements": {
"type": "array",
"description": "A list of planning custom fields"
}
},
"required": [
"id",
"work_location_id",
"shifts"
]
},
"description": "List of all subprojects"
}
}
}
List in subprojectGET/api/v1/admin/subprojects/{subproject_id}/teams{?page}
Example URI
- subproject_id
string
(required) Example: 87643The Beeple ID of the subproject that you want to manage teams of
- page
number
(optional) Example: 2The paginated page number.
200
Headers
Content-Type: application/json
Body
{
"teams": [
{
"id": "27",
"name": "Example Team",
"subproject": "Subproject name",
"subproject_id": "75",
"project": "Project name",
"project_id": "12",
"work_location_id": "120",
"function": {
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"shifts": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"teams": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"subproject": {
"type": "string",
"description": "The subproject name."
},
"subproject_id": {
"type": "string",
"description": "The subproject ID."
},
"project": {
"type": "string",
"description": "The project name."
},
"project_id": {
"type": "string",
"description": "The project ID"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"function": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"shifts": {
"type": "array",
"description": "A list of shifts"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"profile_property_requirements": {
"type": "array",
"description": "A list of planning custom fields"
}
},
"required": [
"id",
"work_location_id",
"shifts"
]
},
"description": "List of all subprojects"
},
"next": {
"type": "string",
"description": "URL for the next set of results"
},
"prev": {
"type": "string",
"description": "URL for the previous set of results"
}
}
}
Create in projectPOST/projects/{project_id}/teams
Example URI
- project_id
string
(required) Example: 87643The Beeple ID of the subproject that you want to manage teams of
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"team": {
"automatic_name": false,
"name": "Example Team",
"function_id": "9",
"replace_required_profile_for_function": true,
"remove_required_profile_for_function": true,
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "interim",
"be_collar_type": "blue_collar_worker",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"enrolment_property_requests": [
{
"enrolment_property_id": "7",
"collaborator_required": false
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
],
"managers_attributes": [
{
"collaborator_id": "8"
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"team": {
"type": "object",
"properties": {
"automatic_name": {
"type": "boolean",
"description": "Flag to indicate the use of automatic team name generation"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function_id": {
"type": "string",
"description": "The ID of the function"
},
"replace_required_profile_for_function": {
"type": "boolean",
"description": "When updating a team's function, set to true to have Beeple replace the required profile properties of the team with those of the new function"
},
"remove_required_profile_for_function": {
"type": "boolean",
"description": "When updating a team's function, set to true to have Beeple remove the required profile properties of the team if the new function does not demand a required profile"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"enrolment_property_requests": {
"type": "array",
"description": "A list of team enrolment properties"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"profile_property_requirements_attributes": {
"type": "array",
"description": "A list of profile properties. Only changes (additions or removals) need to passed"
},
"managers_attributes": {
"type": "array",
"description": "A list of extra admins with access. Only changes (additions or removals) need to passed"
}
},
"required": [
"automatic_name",
"function_id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
]
}
Create in subprojectPOST/subprojects/{sub_project_id}/teams
Example URI
- sub_project_id
string
(required) Example: 87643The Beeple ID of the subproject that you want to manage teams of
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"team": {
"automatic_name": false,
"name": "Example Team",
"function_id": "9",
"replace_required_profile_for_function": true,
"remove_required_profile_for_function": true,
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "interim",
"be_collar_type": "blue_collar_worker",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"enrolment_property_requests": [
{
"enrolment_property_id": "7",
"collaborator_required": false
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
],
"managers_attributes": [
{
"collaborator_id": "8"
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"team": {
"type": "object",
"properties": {
"automatic_name": {
"type": "boolean",
"description": "Flag to indicate the use of automatic team name generation"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function_id": {
"type": "string",
"description": "The ID of the function"
},
"replace_required_profile_for_function": {
"type": "boolean",
"description": "When updating a team's function, set to true to have Beeple replace the required profile properties of the team with those of the new function"
},
"remove_required_profile_for_function": {
"type": "boolean",
"description": "When updating a team's function, set to true to have Beeple remove the required profile properties of the team if the new function does not demand a required profile"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"enrolment_property_requests": {
"type": "array",
"description": "A list of team enrolment properties"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"profile_property_requirements_attributes": {
"type": "array",
"description": "A list of profile properties. Only changes (additions or removals) need to passed"
},
"managers_attributes": {
"type": "array",
"description": "A list of extra admins with access. Only changes (additions or removals) need to passed"
}
},
"required": [
"automatic_name",
"function_id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
]
}
DetailsGET/api/v1/admin/teams/{team_id}
Example URI
- team_id
string
(required) Example: 78102The Beeple ID of the team
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"name": "Example Team",
"subproject": "Subproject name",
"subproject_id": "75",
"project": "Project name",
"project_id": "12",
"work_location_id": "120",
"function": {
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"shifts": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"profile_property_requirements": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"subproject": {
"type": "string",
"description": "The subproject name."
},
"subproject_id": {
"type": "string",
"description": "The subproject ID."
},
"project": {
"type": "string",
"description": "The project name."
},
"project_id": {
"type": "string",
"description": "The project ID"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"function": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"shifts": {
"type": "array",
"description": "A list of shifts"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"profile_property_requirements": {
"type": "array",
"description": "A list of planning custom fields"
}
},
"required": [
"id",
"work_location_id",
"shifts"
]
}
UpdatePATCH/api/v1/admin/teams/{team_id}
Example URI
- team_id
string
(required) Example: 78102The Beeple ID of the team
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"team": {
"automatic_name": false,
"name": "Example Team",
"function_id": "9",
"replace_required_profile_for_function": true,
"remove_required_profile_for_function": true,
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "interim",
"be_collar_type": "blue_collar_worker",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"enrolment_property_requests": [
{
"enrolment_property_id": "7",
"collaborator_required": false
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
],
"managers_attributes": [
{
"collaborator_id": "8"
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"team": {
"type": "object",
"properties": {
"automatic_name": {
"type": "boolean",
"description": "Flag to indicate the use of automatic team name generation"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function_id": {
"type": "string",
"description": "The ID of the function"
},
"replace_required_profile_for_function": {
"type": "boolean",
"description": "When updating a team's function, set to true to have Beeple replace the required profile properties of the team with those of the new function"
},
"remove_required_profile_for_function": {
"type": "boolean",
"description": "When updating a team's function, set to true to have Beeple remove the required profile properties of the team if the new function does not demand a required profile"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"enrolment_property_requests": {
"type": "array",
"description": "A list of team enrolment properties"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"profile_property_requirements_attributes": {
"type": "array",
"description": "A list of profile properties. Only changes (additions or removals) need to passed"
},
"managers_attributes": {
"type": "array",
"description": "A list of extra admins with access. Only changes (additions or removals) need to passed"
}
},
"required": [
"automatic_name",
"function_id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
]
}
DeleteDELETE/api/v1/admin/teams/{team_id}
Example URI
- team_id
string
(required) Example: 78102The Beeple ID of the team
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
]
}
Collaborators ¶
Collaborators ¶
ListGET/api/v1/admin/collaborators{?page,page_items,q,email}
Example URI
- page
number
(optional) Example: 2page number
- page_items
number
(optional) Example: 25items per page
- q
string
(optional) Example: Johnquery to search collaborators by name
string
(optional) Example: johndoe@example.orgquery to search collaborators by exact email
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"collaborators": [
{
"id": "7",
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_country_name": "Belgium",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "employee",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"gender": "employee",
"language": "nl",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile": "32498000000",
"phone": "32232840000",
"nationality": "NL",
"default_contract_type": "contractual",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"iban": "BE1223445544",
"bic": "GEBABEBB",
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "",
"administrative_area_level_2": "",
"administrative_area_level_3": "",
"administrative_area_level_4": "",
"administrative_area_level_5": "",
"country": "BE",
"country_anme": "Belgium"
},
"departments": [
{
"id": "7845",
"name": "Example Department"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"email_confirmed": true,
"profile_application_accepted": true,
"blocked": false,
"blocked_at": "2017-04-01T10:00:00.000+02:00",
"blocked_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"unblocked_at": "2017-04-01T10:00:00.000+02:00",
"archived": false,
"profile_properties": "``",
"profile_property_groups": [
{
"name": "Example Info group",
"profile_properties": [
{}
]
}
],
"errors": []
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"collaborators": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator. Will be empty if the collaborator could not be saved"
},
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_country_name": {
"type": "string",
"description": "Birth country"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile": {
"type": "string",
"description": "The mobile phone number"
},
"phone": {
"type": "string",
"description": "The secondary phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"iban": {
"type": "string",
"description": "The IBAN of the bank account"
},
"bic": {
"type": "string",
"description": "The BIC of the bank account"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"country_anme": {
"type": "string",
"description": "Country name"
}
},
"description": "The current address of the collaborator"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The Name of the department"
}
},
"required": [
"id",
"name"
]
},
"description": "List of Departments"
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"email_confirmed": {
"type": "boolean",
"description": "If the collaborator confirmed their account"
},
"profile_application_accepted": {
"type": "boolean",
"description": "If the collaborator was accepted by an admin after registration. Only applicable when setting registration = sollication is true"
},
"blocked": {
"type": "boolean",
"description": "If the user was blocked"
},
"blocked_at": {
"type": "string",
"description": "If the user was blocked show at what time was blocked"
},
"blocked_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who unblocked the collaboraotr"
},
"unblocked_at": {
"type": "string",
"description": "If the user was unblocked show at what time was unblocked"
},
"archived": {
"type": "boolean",
"description": "If the user got archived"
},
"profile_properties": {
"type": "string",
"description": "Deprecated"
},
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the group"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {}
},
"description": "A list of profile property values under this group"
}
},
"required": [
"name"
]
}
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\n the project. The keys refer to the name of the field (eg. start_date) but\n can also be “base” for generic errors. The value is a list of human\n readable errors for that specific field."
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
}
}
}
CreatePOST/api/v1/admin/collaborators
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"collaborator": {
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "career_pause",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"receive_facebook_campaigns": false,
"gender": "male",
"language": "nl",
"color": "#e63333",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile_phone_number": "+32 498 00 00 00",
"nationality": "NL",
"default_contract_type": "freelancer",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"private_remark": "12246",
"profile_picture": {
"filename": "'Hello_world.png'",
"file": "'SGVsbG8gd29ybGQ='"
},
"remove_profile_picture": false,
"contacts_attributes": [
{
"id": "Hello, world!",
"name": "Hello, world!",
"mobile": "Hello, world!",
"relationship": "Hello, world!"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"bank_account": {
"iban": "BE12345678901",
"bic": "GEBABEBB"
},
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE"
},
"profile_properties": [
{
"profile_property_id,": "Hello, world!",
"freetext_verified,": "Hello, world!",
"numeric_verified,": "Hello, world!",
"boolean_verified,": "Hello, world!",
"list_single_verified,": "Hello, world!",
"datetime_verified,": "Hello, world!",
"date_verified,": "Hello, world!",
"time_verified,": "Hello, world!",
"upload_verified,": "Hello, world!",
"comment_verified,": "Hello, world!",
"documented_proof_verified,": "Hello, world!",
"remove_documented_proof_verified,": "Hello, world!",
"expiration_date_verified,": "Hello, world!",
"freetext_multiline_verified,": "Hello, world!",
"list_multi_verified": [
{
"slug": "Hello, world!",
"selected": "Hello, world!"
}
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"collaborator": {
"type": "object",
"properties": {
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"receive_facebook_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive facebook campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"color": {
"type": "string",
"description": "HEX code representing the desired color for the collaborator."
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile_phone_number": {
"type": "string",
"description": "The mobile phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"private_remark": {
"type": "string",
"description": "This is a remark that only admins can see about the collaborators"
},
"profile_picture": {
"type": "object",
"properties": {
"filename": {
"type": "string",
"description": "The name of the file you wish to upload"
},
"file": {
"type": "string",
"description": "base64 string of the image you want to upload"
}
},
"required": [
"filename",
"file"
],
"description": "The hash representing the profile picture"
},
"remove_profile_picture": {
"type": "boolean",
"description": "Whether or not the profile picture should be removed."
},
"contacts_attributes": {
"type": "array",
"description": "Contact information."
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"bank_account": {
"type": "object",
"properties": {
"iban": {
"type": "string",
"description": "The IBAN number"
},
"bic": {
"type": "string",
"description": "The BIC number"
}
},
"required": [
"iban",
"bic"
],
"description": "The current bank account of the collaborator"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
}
},
"description": "The current address of the collaborator"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"profile_property_id,": {
"type": "string"
},
"freetext_verified,": {
"type": "string"
},
"numeric_verified,": {
"type": "string"
},
"boolean_verified,": {
"type": "string"
},
"list_single_verified,": {
"type": "string"
},
"datetime_verified,": {
"type": "string"
},
"date_verified,": {
"type": "string"
},
"time_verified,": {
"type": "string"
},
"upload_verified,": {
"type": "string"
},
"comment_verified,": {
"type": "string"
},
"documented_proof_verified,": {
"type": "string"
},
"remove_documented_proof_verified,": {
"type": "string"
},
"expiration_date_verified,": {
"type": "string"
},
"freetext_multiline_verified,": {
"type": "string"
},
"list_multi_verified": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"selected": {
"type": "string"
}
}
}
}
}
},
"description": "A list of profile properties for the collaboator"
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
},
"required": [
"collaborator"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_country_name": "Belgium",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "employee",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"gender": "employee",
"language": "nl",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile": "32498000000",
"phone": "32232840000",
"nationality": "NL",
"default_contract_type": "contractual",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"iban": "BE1223445544",
"bic": "GEBABEBB",
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "",
"administrative_area_level_2": "",
"administrative_area_level_3": "",
"administrative_area_level_4": "",
"administrative_area_level_5": "",
"country": "BE",
"country_anme": "Belgium"
},
"departments": [
{
"id": "7845",
"name": "Example Department"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"email_confirmed": true,
"profile_application_accepted": true,
"blocked": false,
"blocked_at": "2017-04-01T10:00:00.000+02:00",
"blocked_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"unblocked_at": "2017-04-01T10:00:00.000+02:00",
"archived": false,
"profile_properties": "``",
"profile_property_groups": [
{
"name": "Example Info group",
"profile_properties": [
{}
]
}
],
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator. Will be empty if the collaborator could not be saved"
},
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_country_name": {
"type": "string",
"description": "Birth country"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile": {
"type": "string",
"description": "The mobile phone number"
},
"phone": {
"type": "string",
"description": "The secondary phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"iban": {
"type": "string",
"description": "The IBAN of the bank account"
},
"bic": {
"type": "string",
"description": "The BIC of the bank account"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"country_anme": {
"type": "string",
"description": "Country name"
}
},
"description": "The current address of the collaborator"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The Name of the department"
}
},
"required": [
"id",
"name"
]
},
"description": "List of Departments"
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"email_confirmed": {
"type": "boolean",
"description": "If the collaborator confirmed their account"
},
"profile_application_accepted": {
"type": "boolean",
"description": "If the collaborator was accepted by an admin after registration. Only applicable when setting registration = sollication is true"
},
"blocked": {
"type": "boolean",
"description": "If the user was blocked"
},
"blocked_at": {
"type": "string",
"description": "If the user was blocked show at what time was blocked"
},
"blocked_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who unblocked the collaboraotr"
},
"unblocked_at": {
"type": "string",
"description": "If the user was unblocked show at what time was unblocked"
},
"archived": {
"type": "boolean",
"description": "If the user got archived"
},
"profile_properties": {
"type": "string",
"description": "Deprecated"
},
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the group"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {}
},
"description": "A list of profile property values under this group"
}
},
"required": [
"name"
]
}
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\n the project. The keys refer to the name of the field (eg. start_date) but\n can also be “base” for generic errors. The value is a list of human\n readable errors for that specific field."
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
UpdatePATCH/api/v1/admin/collaborators/{id}
Example URI
- id
string
(required) Example: 7The collaborator ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"collaborator": {
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "career_pause",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"receive_facebook_campaigns": false,
"gender": "male",
"language": "nl",
"color": "#e63333",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile_phone_number": "+32 498 00 00 00",
"nationality": "NL",
"default_contract_type": "freelancer",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"private_remark": "12246",
"profile_picture": {
"filename": "'Hello_world.png'",
"file": "'SGVsbG8gd29ybGQ='"
},
"remove_profile_picture": false,
"contacts_attributes": [
{
"id": "Hello, world!",
"name": "Hello, world!",
"mobile": "Hello, world!",
"relationship": "Hello, world!"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"bank_account": {
"iban": "BE12345678901",
"bic": "GEBABEBB"
},
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE"
},
"profile_properties": [
{
"profile_property_id,": "Hello, world!",
"freetext_verified,": "Hello, world!",
"numeric_verified,": "Hello, world!",
"boolean_verified,": "Hello, world!",
"list_single_verified,": "Hello, world!",
"datetime_verified,": "Hello, world!",
"date_verified,": "Hello, world!",
"time_verified,": "Hello, world!",
"upload_verified,": "Hello, world!",
"comment_verified,": "Hello, world!",
"documented_proof_verified,": "Hello, world!",
"remove_documented_proof_verified,": "Hello, world!",
"expiration_date_verified,": "Hello, world!",
"freetext_multiline_verified,": "Hello, world!",
"list_multi_verified": [
{
"slug": "Hello, world!",
"selected": "Hello, world!"
}
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"collaborator": {
"type": "object",
"properties": {
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"receive_facebook_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive facebook campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"color": {
"type": "string",
"description": "HEX code representing the desired color for the collaborator."
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile_phone_number": {
"type": "string",
"description": "The mobile phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"private_remark": {
"type": "string",
"description": "This is a remark that only admins can see about the collaborators"
},
"profile_picture": {
"type": "object",
"properties": {
"filename": {
"type": "string",
"description": "The name of the file you wish to upload"
},
"file": {
"type": "string",
"description": "base64 string of the image you want to upload"
}
},
"required": [
"filename",
"file"
],
"description": "The hash representing the profile picture"
},
"remove_profile_picture": {
"type": "boolean",
"description": "Whether or not the profile picture should be removed."
},
"contacts_attributes": {
"type": "array",
"description": "Contact information."
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"bank_account": {
"type": "object",
"properties": {
"iban": {
"type": "string",
"description": "The IBAN number"
},
"bic": {
"type": "string",
"description": "The BIC number"
}
},
"required": [
"iban",
"bic"
],
"description": "The current bank account of the collaborator"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
}
},
"description": "The current address of the collaborator"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"profile_property_id,": {
"type": "string"
},
"freetext_verified,": {
"type": "string"
},
"numeric_verified,": {
"type": "string"
},
"boolean_verified,": {
"type": "string"
},
"list_single_verified,": {
"type": "string"
},
"datetime_verified,": {
"type": "string"
},
"date_verified,": {
"type": "string"
},
"time_verified,": {
"type": "string"
},
"upload_verified,": {
"type": "string"
},
"comment_verified,": {
"type": "string"
},
"documented_proof_verified,": {
"type": "string"
},
"remove_documented_proof_verified,": {
"type": "string"
},
"expiration_date_verified,": {
"type": "string"
},
"freetext_multiline_verified,": {
"type": "string"
},
"list_multi_verified": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"selected": {
"type": "string"
}
}
}
}
}
},
"description": "A list of profile properties for the collaboator"
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
},
"required": [
"collaborator"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_country_name": "Belgium",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "employee",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"gender": "employee",
"language": "nl",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile": "32498000000",
"phone": "32232840000",
"nationality": "NL",
"default_contract_type": "contractual",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"iban": "BE1223445544",
"bic": "GEBABEBB",
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "",
"administrative_area_level_2": "",
"administrative_area_level_3": "",
"administrative_area_level_4": "",
"administrative_area_level_5": "",
"country": "BE",
"country_anme": "Belgium"
},
"departments": [
{
"id": "7845",
"name": "Example Department"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"email_confirmed": true,
"profile_application_accepted": true,
"blocked": false,
"blocked_at": "2017-04-01T10:00:00.000+02:00",
"blocked_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"unblocked_at": "2017-04-01T10:00:00.000+02:00",
"archived": false,
"profile_properties": "``",
"profile_property_groups": [
{
"name": "Example Info group",
"profile_properties": [
{}
]
}
],
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator. Will be empty if the collaborator could not be saved"
},
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_country_name": {
"type": "string",
"description": "Birth country"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile": {
"type": "string",
"description": "The mobile phone number"
},
"phone": {
"type": "string",
"description": "The secondary phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"iban": {
"type": "string",
"description": "The IBAN of the bank account"
},
"bic": {
"type": "string",
"description": "The BIC of the bank account"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"country_anme": {
"type": "string",
"description": "Country name"
}
},
"description": "The current address of the collaborator"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The Name of the department"
}
},
"required": [
"id",
"name"
]
},
"description": "List of Departments"
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"email_confirmed": {
"type": "boolean",
"description": "If the collaborator confirmed their account"
},
"profile_application_accepted": {
"type": "boolean",
"description": "If the collaborator was accepted by an admin after registration. Only applicable when setting registration = sollication is true"
},
"blocked": {
"type": "boolean",
"description": "If the user was blocked"
},
"blocked_at": {
"type": "string",
"description": "If the user was blocked show at what time was blocked"
},
"blocked_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who unblocked the collaboraotr"
},
"unblocked_at": {
"type": "string",
"description": "If the user was unblocked show at what time was unblocked"
},
"archived": {
"type": "boolean",
"description": "If the user got archived"
},
"profile_properties": {
"type": "string",
"description": "Deprecated"
},
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the group"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {}
},
"description": "A list of profile property values under this group"
}
},
"required": [
"name"
]
}
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\n the project. The keys refer to the name of the field (eg. start_date) but\n can also be “base” for generic errors. The value is a list of human\n readable errors for that specific field."
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
DetailsGET/api/v1/admin/collaborators/{id}
Example URI
- id
string
(required) Example: 7The collaborator ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_country_name": "Belgium",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "employee",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"gender": "employee",
"language": "nl",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile": "32498000000",
"phone": "32232840000",
"nationality": "NL",
"default_contract_type": "contractual",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"iban": "BE1223445544",
"bic": "GEBABEBB",
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "",
"administrative_area_level_2": "",
"administrative_area_level_3": "",
"administrative_area_level_4": "",
"administrative_area_level_5": "",
"country": "BE",
"country_anme": "Belgium"
},
"departments": [
{
"id": "7845",
"name": "Example Department"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"email_confirmed": true,
"profile_application_accepted": true,
"blocked": false,
"blocked_at": "2017-04-01T10:00:00.000+02:00",
"blocked_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"unblocked_at": "2017-04-01T10:00:00.000+02:00",
"archived": false,
"profile_properties": "``",
"profile_property_groups": [
{
"name": "Example Info group",
"profile_properties": [
{}
]
}
],
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator. Will be empty if the collaborator could not be saved"
},
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_country_name": {
"type": "string",
"description": "Birth country"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile": {
"type": "string",
"description": "The mobile phone number"
},
"phone": {
"type": "string",
"description": "The secondary phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"iban": {
"type": "string",
"description": "The IBAN of the bank account"
},
"bic": {
"type": "string",
"description": "The BIC of the bank account"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"country_anme": {
"type": "string",
"description": "Country name"
}
},
"description": "The current address of the collaborator"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The Name of the department"
}
},
"required": [
"id",
"name"
]
},
"description": "List of Departments"
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"email_confirmed": {
"type": "boolean",
"description": "If the collaborator confirmed their account"
},
"profile_application_accepted": {
"type": "boolean",
"description": "If the collaborator was accepted by an admin after registration. Only applicable when setting registration = sollication is true"
},
"blocked": {
"type": "boolean",
"description": "If the user was blocked"
},
"blocked_at": {
"type": "string",
"description": "If the user was blocked show at what time was blocked"
},
"blocked_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who unblocked the collaboraotr"
},
"unblocked_at": {
"type": "string",
"description": "If the user was unblocked show at what time was unblocked"
},
"archived": {
"type": "boolean",
"description": "If the user got archived"
},
"profile_properties": {
"type": "string",
"description": "Deprecated"
},
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the group"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {}
},
"description": "A list of profile property values under this group"
}
},
"required": [
"name"
]
}
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\n the project. The keys refer to the name of the field (eg. start_date) but\n can also be “base” for generic errors. The value is a list of human\n readable errors for that specific field."
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
Enrolments per collaboratorGET/api/v1/admin/collaborators/{id}/enrolments{?page,page_items}
Example URI
- id
string
(required) Example: 7The collaborator ID
- filter[period_start_at]
string
(optional) Example: 2020-09-28enrolment start date
- filter[period_end_at]
string
(optional) Example: 2020-09-29enrolment end date
- filter[statuses]
array
(optional) Example: ['confirmed', 'expired']status
- filter[functions]
array
(optional) Example: [7, 2]function ids
- page_items
number
(optional) Example: 25items per page
- page
number
(optional) Example: 2page number
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"enrolments": [
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
],
"count": 1,
"previous ``": "Hello, world!",
"next `http://127.0.0.1/api/v1/en/admin/collaborators/311206967/enrolments?filter%5Bfunctions%5D%5B%5D=461245875&filter%5Bperiod_end_at%5D=2020-09-30&filter%5Bperiod_start_at%5D=2020-09-27+13%3A53%3A34+UTC&filter%5Bstatuses%5D%5B%5D=confirmed&filter%5Bstatuses%5D%5B%5D=expired&page=2&page_items=1`": "Hello, world!"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator."
},
"enrolments": {
"type": "array",
"description": "filtered enrolments for given collaborator"
},
"count": {
"type": "number",
"description": "filtered enrolments count"
},
"previous ``": {
"type": "string",
"description": "url for previous page of results"
},
"next `http://127.0.0.1/api/v1/en/admin/collaborators/311206967/enrolments?filter%5Bfunctions%5D%5B%5D=461245875&filter%5Bperiod_end_at%5D=2020-09-30&filter%5Bperiod_start_at%5D=2020-09-27+13%3A53%3A34+UTC&filter%5Bstatuses%5D%5B%5D=confirmed&filter%5Bstatuses%5D%5B%5D=expired&page=2&page_items=1`": {
"type": "string",
"description": "url for next page of results"
}
},
"required": [
"count"
]
}
BlockPATCH/api/v1/admin/collaborators/{id}/block
Example URI
- id
string
(required) Example: 7The collaborator ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"block_release_reason": "Comment why the collaborator is blocked",
"predefined_block_release_reason_id": "2",
"block_release_remark": "Some longer text describing the reason for blocking the collaborator"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"block_release_reason": {
"type": "string",
"description": "Provides a reason why the collaborator is blocked. This can also be sent as `comment`."
},
"predefined_block_release_reason_id": {
"type": "string",
"description": "The ID of one of the entries in the predefined list of reasons in Settings > Collaborators > Blocking and releasing reasons. The list is only available if setting \"Blocking and releasing reasons\" include \"Limited list\""
},
"block_release_remark": {
"type": "string",
"description": "A text description of the reason for blocking the collaborator"
}
},
"required": [
"block_release_reason",
"predefined_block_release_reason_id",
"block_release_remark"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_country_name": "Belgium",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "employee",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"gender": "employee",
"language": "nl",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile": "32498000000",
"phone": "32232840000",
"nationality": "NL",
"default_contract_type": "contractual",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"iban": "BE1223445544",
"bic": "GEBABEBB",
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "",
"administrative_area_level_2": "",
"administrative_area_level_3": "",
"administrative_area_level_4": "",
"administrative_area_level_5": "",
"country": "BE",
"country_anme": "Belgium"
},
"departments": [
{
"id": "7845",
"name": "Example Department"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"email_confirmed": true,
"profile_application_accepted": true,
"blocked": false,
"blocked_at": "2017-04-01T10:00:00.000+02:00",
"blocked_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"unblocked_at": "2017-04-01T10:00:00.000+02:00",
"archived": false,
"profile_properties": "``",
"profile_property_groups": [
{
"name": "Example Info group",
"profile_properties": [
{}
]
}
],
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator. Will be empty if the collaborator could not be saved"
},
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_country_name": {
"type": "string",
"description": "Birth country"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile": {
"type": "string",
"description": "The mobile phone number"
},
"phone": {
"type": "string",
"description": "The secondary phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"iban": {
"type": "string",
"description": "The IBAN of the bank account"
},
"bic": {
"type": "string",
"description": "The BIC of the bank account"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"country_anme": {
"type": "string",
"description": "Country name"
}
},
"description": "The current address of the collaborator"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The Name of the department"
}
},
"required": [
"id",
"name"
]
},
"description": "List of Departments"
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"email_confirmed": {
"type": "boolean",
"description": "If the collaborator confirmed their account"
},
"profile_application_accepted": {
"type": "boolean",
"description": "If the collaborator was accepted by an admin after registration. Only applicable when setting registration = sollication is true"
},
"blocked": {
"type": "boolean",
"description": "If the user was blocked"
},
"blocked_at": {
"type": "string",
"description": "If the user was blocked show at what time was blocked"
},
"blocked_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who unblocked the collaboraotr"
},
"unblocked_at": {
"type": "string",
"description": "If the user was unblocked show at what time was unblocked"
},
"archived": {
"type": "boolean",
"description": "If the user got archived"
},
"profile_properties": {
"type": "string",
"description": "Deprecated"
},
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the group"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {}
},
"description": "A list of profile property values under this group"
}
},
"required": [
"name"
]
}
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\n the project. The keys refer to the name of the field (eg. start_date) but\n can also be “base” for generic errors. The value is a list of human\n readable errors for that specific field."
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
ArchivePATCH/api/v1/admin/collaborators/{id}/archive
Please be aware that this action cannot be reversed.
Example URI
- id
string
(required) Example: 7The collaborator ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"collaboator": {},
"name": "Jonh Smith",
"anonymize": false
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"collaboator": {
"type": "object",
"properties": {}
},
"name": {
"type": "string",
"description": "Collaborator's name to confirm archivation."
},
"anonymize": {
"type": "boolean",
"description": "Trigger anonymization alongside archiving."
}
},
"required": [
"name"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_country_name": "Belgium",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "employee",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"gender": "employee",
"language": "nl",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile": "32498000000",
"phone": "32232840000",
"nationality": "NL",
"default_contract_type": "contractual",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"iban": "BE1223445544",
"bic": "GEBABEBB",
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "",
"administrative_area_level_2": "",
"administrative_area_level_3": "",
"administrative_area_level_4": "",
"administrative_area_level_5": "",
"country": "BE",
"country_anme": "Belgium"
},
"departments": [
{
"id": "7845",
"name": "Example Department"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"email_confirmed": true,
"profile_application_accepted": true,
"blocked": false,
"blocked_at": "2017-04-01T10:00:00.000+02:00",
"blocked_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"unblocked_at": "2017-04-01T10:00:00.000+02:00",
"archived": false,
"profile_properties": "``",
"profile_property_groups": [
{
"name": "Example Info group",
"profile_properties": [
{}
]
}
],
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator. Will be empty if the collaborator could not be saved"
},
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_country_name": {
"type": "string",
"description": "Birth country"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile": {
"type": "string",
"description": "The mobile phone number"
},
"phone": {
"type": "string",
"description": "The secondary phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"iban": {
"type": "string",
"description": "The IBAN of the bank account"
},
"bic": {
"type": "string",
"description": "The BIC of the bank account"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"country_anme": {
"type": "string",
"description": "Country name"
}
},
"description": "The current address of the collaborator"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The Name of the department"
}
},
"required": [
"id",
"name"
]
},
"description": "List of Departments"
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"email_confirmed": {
"type": "boolean",
"description": "If the collaborator confirmed their account"
},
"profile_application_accepted": {
"type": "boolean",
"description": "If the collaborator was accepted by an admin after registration. Only applicable when setting registration = sollication is true"
},
"blocked": {
"type": "boolean",
"description": "If the user was blocked"
},
"blocked_at": {
"type": "string",
"description": "If the user was blocked show at what time was blocked"
},
"blocked_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who unblocked the collaboraotr"
},
"unblocked_at": {
"type": "string",
"description": "If the user was unblocked show at what time was unblocked"
},
"archived": {
"type": "boolean",
"description": "If the user got archived"
},
"profile_properties": {
"type": "string",
"description": "Deprecated"
},
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the group"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {}
},
"description": "A list of profile property values under this group"
}
},
"required": [
"name"
]
}
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\n the project. The keys refer to the name of the field (eg. start_date) but\n can also be “base” for generic errors. The value is a list of human\n readable errors for that specific field."
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
UnblockPATCH/api/v1/admin/collaborators/{id}/unblock
Example URI
- id
string
(required) Example: 7The collaborator ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"block_release_reason": "Comment why the collaborator is unblocked",
"predefined_block_release_reason_id": "2",
"block_release_remark": "Some longer text describing the reason for releasing the collaborator"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"block_release_reason": {
"type": "string",
"description": "Provides a reason why the collaborator is unblocked. This can also be sent as `‘comment`."
},
"predefined_block_release_reason_id": {
"type": "string",
"description": "The ID of one of the entries in the predefined list defined in Settings > Collaborators > Blocking and releasing reasons. The list is only available if setting \"Blocking and releasing reasons\" include \"Limited list\""
},
"block_release_remark": {
"type": "string",
"description": "A text description of the reason for releasing the collaborator"
}
},
"required": [
"block_release_reason",
"predefined_block_release_reason_id",
"block_release_remark"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "7",
"other_names": "Jane",
"family_name": "Doe",
"prefix": "De",
"email": "example@example.org",
"birth_country": "BE",
"birth_country_name": "Belgium",
"birth_place": "Brussels",
"birth_date": "01/01/2000",
"social_statute": "employee",
"receive_email_campaigns": false,
"receive_sms_campaigns": false,
"gender": "employee",
"language": "nl",
"national_identification_be": "01.01.00-000.12",
"national_identification_nl": "123456",
"national_identification_de": "123456",
"national_identification_fr": "123456",
"national_identification_es": "123456",
"national_identification_es_foreign": "123456",
"national_identification_cl": "123456",
"mobile": "32498000000",
"phone": "32232840000",
"nationality": "NL",
"default_contract_type": "contractual",
"payroll_identification_code": "12246",
"contract_types": [
"freelancer",
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"iban": "BE1223445544",
"bic": "GEBABEBB",
"primary_address": {
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "",
"administrative_area_level_2": "",
"administrative_area_level_3": "",
"administrative_area_level_4": "",
"administrative_area_level_5": "",
"country": "BE",
"country_anme": "Belgium"
},
"departments": [
{
"id": "7845",
"name": "Example Department"
}
],
"department_ids": [
7487,
5646
],
"primary_department_id": 7487,
"manager_ids": [
1722,
2423
],
"email_confirmed": true,
"profile_application_accepted": true,
"blocked": false,
"blocked_at": "2017-04-01T10:00:00.000+02:00",
"blocked_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"unblocked_at": "2017-04-01T10:00:00.000+02:00",
"archived": false,
"profile_properties": "``",
"profile_property_groups": [
{
"name": "Example Info group",
"profile_properties": [
{}
]
}
],
"errors": []
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the collaborator. Will be empty if the collaborator could not be saved"
},
"other_names": {
"type": "string",
"description": "The first name(s) of the collaborator"
},
"family_name": {
"type": "string",
"description": "The last name of the collaborator"
},
"prefix": {
"type": "string",
"description": "Last name prefix, this is what appears on the screen of the web application as \"infix\"; for example Jane De Doe"
},
"email": {
"type": "string",
"description": "The emailaddress of the collaborator. Should be unique for the site"
},
"birth_country": {
"type": "string",
"description": "Birth country (2 letter code) of the collaborator"
},
"birth_country_name": {
"type": "string",
"description": "Birth country"
},
"birth_place": {
"type": "string",
"description": "Birth city of the collaborator"
},
"birth_date": {
"type": "string",
"description": "Birth date of the collaborator. ISO DD/MM/YYYY format."
},
"social_statute": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"receive_email_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive email campaigns"
},
"receive_sms_campaigns": {
"type": "boolean",
"description": "If the collaboraotr wants to receive SMS campaigns"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "The gender"
},
"language": {
"type": "string",
"description": "The language the collaborator prefers"
},
"national_identification_be": {
"type": "string",
"description": "The Belgiam National Identity number (Rijkregister number)"
},
"national_identification_nl": {
"type": "string",
"description": "The Dutch National Identity number (Sociaal zekerheids nummer)"
},
"national_identification_de": {
"type": "string",
"description": "The German National Identity number"
},
"national_identification_fr": {
"type": "string",
"description": "The French National Identity number"
},
"national_identification_es": {
"type": "string",
"description": "The Spanish National Identity number"
},
"national_identification_es_foreign": {
"type": "string",
"description": "The Spanish National Identity number for foreigners"
},
"national_identification_cl": {
"type": "string",
"description": "The Chile's National Identity number"
},
"mobile": {
"type": "string",
"description": "The mobile phone number"
},
"phone": {
"type": "string",
"description": "The secondary phone number"
},
"nationality": {
"type": "string",
"description": "The nationality (2 letter country code)"
},
"default_contract_type": {
"type": "string",
"enum": [
"freelancer",
"volunteer",
"interim",
"contractual",
"intern"
],
"description": "The default contract type of the collaborator"
},
"payroll_identification_code": {
"type": "string",
"description": "The payroll code. Only applicable if there is only 1 payroll service for this site"
},
"contract_types": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The allowed contract types"
},
"iban": {
"type": "string",
"description": "The IBAN of the bank account"
},
"bic": {
"type": "string",
"description": "The BIC of the bank account"
},
"primary_address": {
"type": "object",
"properties": {
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"country_anme": {
"type": "string",
"description": "Country name"
}
},
"description": "The current address of the collaborator"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The Name of the department"
}
},
"required": [
"id",
"name"
]
},
"description": "List of Departments"
},
"department_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "List of department IDS"
},
"primary_department_id": {
"type": "number",
"description": "The ID of the collaborator's primary department. Must be one of the ids included in department_ids"
},
"manager_ids": {
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "number"
}
],
"description": "Manager IDS. They must be admin collaborators with access rights to approve availabilities."
},
"email_confirmed": {
"type": "boolean",
"description": "If the collaborator confirmed their account"
},
"profile_application_accepted": {
"type": "boolean",
"description": "If the collaborator was accepted by an admin after registration. Only applicable when setting registration = sollication is true"
},
"blocked": {
"type": "boolean",
"description": "If the user was blocked"
},
"blocked_at": {
"type": "string",
"description": "If the user was blocked show at what time was blocked"
},
"blocked_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who unblocked the collaboraotr"
},
"unblocked_at": {
"type": "string",
"description": "If the user was unblocked show at what time was unblocked"
},
"archived": {
"type": "boolean",
"description": "If the user got archived"
},
"profile_properties": {
"type": "string",
"description": "Deprecated"
},
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the group"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {}
},
"description": "A list of profile property values under this group"
}
},
"required": [
"name"
]
}
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\n the project. The keys refer to the name of the field (eg. start_date) but\n can also be “base” for generic errors. The value is a list of human\n readable errors for that specific field."
}
},
"required": [
"other_names",
"family_name",
"prefix",
"email",
"primary_department_id"
]
}
Link to payrollPOST/api/v1/admin/collaborators/{id}/link_to_payroll
Example URI
- id
string
(required) Example: 7The collaborator ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"collaborator_payroll_identification": {
"payroll_service_id": "3",
"code": "ABC123",
"payroll_type: `admin` (enum[string], required) - either `admin` or `payroll_only`": {
"admin": "Hello, world!",
"payroll_only": "Hello, world!"
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"collaborator_payroll_identification": {
"type": "object",
"properties": {
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration"
},
"code": {
"type": "string",
"description": "The code of the collaborator in the payroll integration"
},
"payroll_type: `admin` (enum[string], required) - either `admin` or `payroll_only`": {
"type": "object",
"properties": {
"admin": {
"type": "string"
},
"payroll_only": {
"type": "string"
}
}
}
},
"required": [
"payroll_service_id",
"code"
]
}
},
"required": [
"collaborator_payroll_identification"
]
}
201
Headers
Content-Type: application/json
Unlink from payrollDELETE/api/v1/admin/collaborators/{id}/link_to_payroll/{payroll_service_id}
Example URI
- id
string
(required) Example: 7The collaborator ID
- payroll_service_id
string
(required) Example: 11The payroll service ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
DeleteDELETE/api/v1/admin/collaborators/{id}
Example URI
- id
string
(required) Example: 7The collaborator ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
400
Headers
Content-Type: application/json
Availabilities ¶
Availabilities determine the days or periods of time where a collaborator is available or unavailable for work. The availability start and end is handled as follows: when creating or updating an availability, you must provide:
-
starts_at
(date) -
ends_at
(date) -
start_time
(hour HH:MM) -
end_time
(hour HH:MM)
ends_at
and end_time
can be omitted if the request specifies a day_part_id
or whole_day: true
. whole_day
availabilities run from 00:00 on starts_at
day until 00:00 on ends_at
day effectively counting 24 hours.
Based on those parameters, Beeple calculates a start_datetime
and end_datetime
that you will receive in the responses
where an availability detail is included such as list, create, details and update. start_datetime
and end_datetime
are expressed in UTC time. This allows you to specify an availability from 2019-06-01
to 2019-06-11
from 08:00
to 12:00
and thus have a continuous period of 10 days where the collaborator is (un)available from 8am to noon. Beeple internally
handles the time periods, although the start_datetime will result in 2019-06-01T08:00:00.000+00:00
and end_datetime
in 2019-06-11T12:00:00.000+00:00
.
If you want an availability to go over midnight, say from 22:00 to 06:00 the next day, use this in the request:
-
starts_at
2019-06-01
-
start_time
22:00
-
end_time
06:00
This will be handled by Beeple as two periods 2019-06-01
from 22:00
to 23:59
and 2019-06-02
from 00:00
to 06:00
ListGET/api/v1/admin/collaborators/{collaborator_id}/availabilities2?start={start}&end={end}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availabilities you want to manage
- start
date
(required) Example: 2019-01-01YYYY-MM-DD formatted date of start of availabilities
- end
date
(required) Example: 2019-01-31YYYY-MM-DD formatted date of end of availabilities
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"availabilities": [
{
"id": 1,
"availability_type_id": 1,
"starts_at": "2017-04-01",
"ends_at": "2017-04-01",
"whole_day": true,
"start_time": "06:00",
"end_time": "23:59",
"period": "single_date",
"payroll_code_id": 1,
"duration_in_hours": 8,
"day_part_id": 1,
"remark_by_collaborator": "Cannot be present on the 20th at 8am",
"is_approved": true,
"approved_by_id": 5,
"admin_reject_reason": "Did not attach evidence",
"payroll_approval_status": "not_required",
"payroll_reject_reason": "An example",
"payroll_approved": true,
"payroll_approved_by": "Some name",
"payroll_approved_at": "2019-04-01T06:00:00.000+00:00",
"is_locked": true,
"locked_by_id": 5,
"permissions": {
"can_update": true,
"can_destroy": true,
"can_approve": true
},
"approvers": [
"John Bossman",
"Mary Highness"
],
"start_datetime": "2019-04-01T06:00:00.000+00:00",
"end_datetime": "2019-04-01T00:23:59.000+00:00",
"other_availabilities_in_same_repetition": [
1,
1
],
"pieces_of_evidence": [
{
"id": "546",
"filename": "Maternity_leave.pdf",
"url": "https://my.beeple.eu/evidences/87234",
"uploaded_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"uploaded_at": "2020-04-01T19:05:00.000+02:00"
}
]
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"availabilities": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The ID of the collaborator availability"
},
"availability_type_id": {
"type": "number",
"description": "The id of the Availability Type associated with this collaborator availability"
},
"starts_at": {
"type": "string",
"description": "Period starts according RFC 3339."
},
"ends_at": {
"type": "string",
"description": "Period ends according RFC 3339."
},
"whole_day": {
"type": "boolean",
"description": "when true, the availability will run from starts at 00:00 to ends at 00:00 (midnight to midnight)"
},
"start_time": {
"type": "string",
"description": "Time of availability start in HH:MM 24 hour format"
},
"end_time": {
"type": "string",
"description": "Time of availability end in HH:MM 24 hour format"
},
"period": {
"type": "string",
"enum": [
"single_date",
"repeat_daily",
"repeat_weekly",
"repeat_monthly"
],
"description": "a single date, a daily, weekly or monthly recurring availability."
},
"payroll_code_id": {
"type": "number",
"description": "The id of an Availability Type Payroll Code"
},
"duration_in_hours": {
"type": "number",
"description": "The number of hours associated with this availability"
},
"day_part_id": {
"type": "number",
"description": "The id of a Day Part"
},
"remark_by_collaborator": {
"type": "string",
"description": "The remark provided with the availability"
},
"is_approved": {
"type": "boolean",
"description": "set to true when the availability is approved. False when rejected."
},
"approved_by_id": {
"type": "number",
"description": "The ID of the admin that approved the availability"
},
"admin_reject_reason": {
"type": "string",
"description": "an optional remark that describes the reason for rejection"
},
"payroll_approval_status": {
"type": "string",
"enum": [
"not_required",
"unknown",
"accepted",
"rejected"
],
"description": "The status according to the payroll. Should ideally only be set to accepted or rejected by the API"
},
"payroll_reject_reason": {
"type": "string",
"description": "Reason why the payroll rejected the request. Only applicable if payroll_approval_status is rejected"
},
"payroll_approved": {
"type": "boolean",
"description": "true if payroll service approves the availability; false if payroll service rejects the availability"
},
"payroll_approved_by": {
"type": "string",
"description": "A name or identification received from the payroll indicating who approved or rejected the availability"
},
"payroll_approved_at": {
"type": "string",
"description": "Timestamp according RFC 3339 of when availability was approved or rejected."
},
"is_locked": {
"type": "boolean",
"description": "whether the availability is locked or not (only useful when setting Enable availability locking is set to Yes)"
},
"locked_by_id": {
"type": "number",
"description": "The ID of the admin or collaborator that locked the availability"
},
"permissions": {
"type": "object",
"properties": {
"can_update": {
"type": "boolean",
"description": "When true, the calling user can update the availability record"
},
"can_destroy": {
"type": "boolean",
"description": "When true, the calling user can delete the availability record"
},
"can_approve": {
"type": "boolean",
"description": "When true, the calling user can approve the availability record (only valid if the AV type requires approval)"
}
},
"description": "A detail of actions that can be performed on the availability record by the calling user"
},
"approvers": {
"type": "array",
"description": "a list of names of users that can approve the availability"
},
"start_datetime": {
"type": "string",
"description": "Date and time of availability start in UTC time zone"
},
"end_datetime": {
"type": "string",
"description": "Date and time of availability end in UTC time zone"
},
"other_availabilities_in_same_repetition": {
"type": "array",
"description": "Only when the availability is part of a repetition list of IDs of other availability records tied to this one in the same repetition"
},
"pieces_of_evidence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the evidence file"
},
"filename": {
"type": "string",
"description": "The name of the file"
},
"url": {
"type": "string",
"description": "an url where an API client my download a copy of the file. Note that this URL is only temporary valid"
},
"uploaded_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the piece of evidence"
},
"uploaded_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
}
},
"required": [
"uploaded_at"
]
}
}
},
"required": [
"id",
"starts_at",
"start_time",
"period",
"is_approved",
"is_locked",
"permissions",
"start_datetime"
]
}
}
}
}
CreatePOST/api/v1/admin/collaborators/{collaborator_id}/availabilities2
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availabilities you want to manage
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"availability": {
"id": 1,
"availability_type_id": 1,
"starts_at": "2017-04-01",
"ends_at": "2017-04-01",
"whole_day": true,
"start_time": "06:00",
"end_time": "23:59",
"period": "single_date",
"payroll_code_id": 1,
"duration_in_hours": 8,
"day_part_id": 1,
"remark_by_collaborator": "Cannot be present on the 20th at 8am",
"is_approved": true,
"approved_by_id": 5,
"admin_reject_reason": "Did not attach evidence",
"payroll_approval_status": "not_required",
"payroll_reject_reason": "An example",
"payroll_approved": true,
"payroll_approved_by": "Some name",
"payroll_approved_at": "2019-04-01T06:00:00.000+00:00",
"is_locked": true,
"locked_by_id": 5,
"permissions": {
"can_update": true,
"can_destroy": true,
"can_approve": true
},
"approvers": [
"John Bossman",
"Mary Highness"
],
"repetition_schedule_attributes": {
"repeat_until: `a_date`": "a_date",
"repeats_every": 1,
"end_date: `2017-04-01` (string, required) - A final date when the repetition ends according RFC 3339. (only if `repeat_until` is `a_date`)": "Hello, world!",
"occurrences": 3,
"monthly_repeat_system": "day_of_month",
"weekly_repeats_on": [
1
]
},
"pieces_of_evidence_attributes": [
{
"id": "1234",
"file": "BCAAAQhAAAI+AQSLT4N9CEAAAhCAAAQySeD/AbfFFlz+mn2AAAAAAElFTkSuQmCC",
"filename": "a-picture.jpg",
"_destroy": false
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"availability": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The ID of the collaborator availability"
},
"availability_type_id": {
"type": "number",
"description": "The id of the Availability Type associated with this collaborator availability"
},
"starts_at": {
"type": "string",
"description": "Period starts according RFC 3339."
},
"ends_at": {
"type": "string",
"description": "Period ends according RFC 3339."
},
"whole_day": {
"type": "boolean",
"description": "when true, the availability will run from starts at 00:00 to ends at 00:00 (midnight to midnight)"
},
"start_time": {
"type": "string",
"description": "Time of availability start in HH:MM 24 hour format"
},
"end_time": {
"type": "string",
"description": "Time of availability end in HH:MM 24 hour format"
},
"period": {
"type": "string",
"enum": [
"single_date",
"repeat_daily",
"repeat_weekly",
"repeat_monthly"
],
"description": "a single date, a daily, weekly or monthly recurring availability."
},
"payroll_code_id": {
"type": "number",
"description": "The id of an Availability Type Payroll Code"
},
"duration_in_hours": {
"type": "number",
"description": "The number of hours associated with this availability"
},
"day_part_id": {
"type": "number",
"description": "The id of a Day Part"
},
"remark_by_collaborator": {
"type": "string",
"description": "The remark provided with the availability"
},
"is_approved": {
"type": "boolean",
"description": "set to true when the availability is approved. False when rejected."
},
"approved_by_id": {
"type": "number",
"description": "The ID of the admin that approved the availability"
},
"admin_reject_reason": {
"type": "string",
"description": "an optional remark that describes the reason for rejection"
},
"payroll_approval_status": {
"type": "string",
"enum": [
"not_required",
"unknown",
"accepted",
"rejected"
],
"description": "The status according to the payroll. Should ideally only be set to accepted or rejected by the API"
},
"payroll_reject_reason": {
"type": "string",
"description": "Reason why the payroll rejected the request. Only applicable if payroll_approval_status is rejected"
},
"payroll_approved": {
"type": "boolean",
"description": "true if payroll service approves the availability; false if payroll service rejects the availability"
},
"payroll_approved_by": {
"type": "string",
"description": "A name or identification received from the payroll indicating who approved or rejected the availability"
},
"payroll_approved_at": {
"type": "string",
"description": "Timestamp according RFC 3339 of when availability was approved or rejected."
},
"is_locked": {
"type": "boolean",
"description": "whether the availability is locked or not (only useful when setting Enable availability locking is set to Yes)"
},
"locked_by_id": {
"type": "number",
"description": "The ID of the admin or collaborator that locked the availability"
},
"permissions": {
"type": "object",
"properties": {
"can_update": {
"type": "boolean",
"description": "When true, the calling user can update the availability record"
},
"can_destroy": {
"type": "boolean",
"description": "When true, the calling user can delete the availability record"
},
"can_approve": {
"type": "boolean",
"description": "When true, the calling user can approve the availability record (only valid if the AV type requires approval)"
}
},
"description": "A detail of actions that can be performed on the availability record by the calling user"
},
"approvers": {
"type": "array",
"description": "a list of names of users that can approve the availability"
},
"repetition_schedule_attributes": {
"type": "object",
"properties": {
"repeat_until: `a_date`": {
"type": "string",
"enum": [
"a_date",
"number_of_repetitions"
],
"description": "How to determine the end date of the repetition"
},
"repeats_every": {
"type": "number",
"description": "the interval at which the repetition occurs: every N days, weeks or months"
},
"end_date: `2017-04-01` (string, required) - A final date when the repetition ends according RFC 3339. (only if `repeat_until` is `a_date`)": {
"type": "string"
},
"occurrences": {
"type": "number"
},
"monthly_repeat_system": {
"type": "string",
"enum": [
"day_of_month",
"week_of_month"
],
"description": "When does the repetition occur: `day_of_month` (Monthly, on the 25) `week_of_month` (Monthly, on the fourth Thursday)"
},
"weekly_repeats_on": {
"type": "array"
}
},
"required": [
"repeats_every"
],
"description": "The definition of how the availability will repeat (only if `period` is `repeat_weekly` or `repeat_monthly`)"
},
"pieces_of_evidence_attributes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "the ID of the evidence file to attach"
},
"file": {
"type": "string",
"description": "the Base64-encoded contents of the file"
},
"filename": {
"type": "string",
"description": "the file name of the evidence"
},
"_destroy": {
"type": "boolean",
"description": "when set to true, the evidence with the provided ID will be removed"
}
},
"required": [
"file",
"filename"
]
},
"description": "Optional evidence files attached to the availability"
}
},
"required": [
"id",
"starts_at",
"start_time",
"period",
"is_approved",
"is_locked",
"permissions"
]
}
},
"required": [
"availability"
]
}
201
Headers
Content-Type: application/json
Body
{
"id": 1,
"availability_type_id": 1,
"starts_at": "2017-04-01",
"ends_at": "2017-04-01",
"whole_day": true,
"start_time": "06:00",
"end_time": "23:59",
"period": "single_date",
"payroll_code_id": 1,
"duration_in_hours": 8,
"day_part_id": 1,
"remark_by_collaborator": "Cannot be present on the 20th at 8am",
"is_approved": true,
"approved_by_id": 5,
"admin_reject_reason": "Did not attach evidence",
"payroll_approval_status": "not_required",
"payroll_reject_reason": "An example",
"payroll_approved": true,
"payroll_approved_by": "Some name",
"payroll_approved_at": "2019-04-01T06:00:00.000+00:00",
"is_locked": true,
"locked_by_id": 5,
"permissions": {
"can_update": true,
"can_destroy": true,
"can_approve": true
},
"approvers": [
"John Bossman",
"Mary Highness"
],
"start_datetime": "2019-04-01T06:00:00.000+00:00",
"end_datetime": "2019-04-01T00:23:59.000+00:00",
"other_availabilities_in_same_repetition": [
1,
1
],
"pieces_of_evidence": [
{
"id": "546",
"filename": "Maternity_leave.pdf",
"url": "https://my.beeple.eu/evidences/87234",
"uploaded_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"uploaded_at": "2020-04-01T19:05:00.000+02:00"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The ID of the collaborator availability"
},
"availability_type_id": {
"type": "number",
"description": "The id of the Availability Type associated with this collaborator availability"
},
"starts_at": {
"type": "string",
"description": "Period starts according RFC 3339."
},
"ends_at": {
"type": "string",
"description": "Period ends according RFC 3339."
},
"whole_day": {
"type": "boolean",
"description": "when true, the availability will run from starts at 00:00 to ends at 00:00 (midnight to midnight)"
},
"start_time": {
"type": "string",
"description": "Time of availability start in HH:MM 24 hour format"
},
"end_time": {
"type": "string",
"description": "Time of availability end in HH:MM 24 hour format"
},
"period": {
"type": "string",
"enum": [
"single_date",
"repeat_daily",
"repeat_weekly",
"repeat_monthly"
],
"description": "a single date, a daily, weekly or monthly recurring availability."
},
"payroll_code_id": {
"type": "number",
"description": "The id of an Availability Type Payroll Code"
},
"duration_in_hours": {
"type": "number",
"description": "The number of hours associated with this availability"
},
"day_part_id": {
"type": "number",
"description": "The id of a Day Part"
},
"remark_by_collaborator": {
"type": "string",
"description": "The remark provided with the availability"
},
"is_approved": {
"type": "boolean",
"description": "set to true when the availability is approved. False when rejected."
},
"approved_by_id": {
"type": "number",
"description": "The ID of the admin that approved the availability"
},
"admin_reject_reason": {
"type": "string",
"description": "an optional remark that describes the reason for rejection"
},
"payroll_approval_status": {
"type": "string",
"enum": [
"not_required",
"unknown",
"accepted",
"rejected"
],
"description": "The status according to the payroll. Should ideally only be set to accepted or rejected by the API"
},
"payroll_reject_reason": {
"type": "string",
"description": "Reason why the payroll rejected the request. Only applicable if payroll_approval_status is rejected"
},
"payroll_approved": {
"type": "boolean",
"description": "true if payroll service approves the availability; false if payroll service rejects the availability"
},
"payroll_approved_by": {
"type": "string",
"description": "A name or identification received from the payroll indicating who approved or rejected the availability"
},
"payroll_approved_at": {
"type": "string",
"description": "Timestamp according RFC 3339 of when availability was approved or rejected."
},
"is_locked": {
"type": "boolean",
"description": "whether the availability is locked or not (only useful when setting Enable availability locking is set to Yes)"
},
"locked_by_id": {
"type": "number",
"description": "The ID of the admin or collaborator that locked the availability"
},
"permissions": {
"type": "object",
"properties": {
"can_update": {
"type": "boolean",
"description": "When true, the calling user can update the availability record"
},
"can_destroy": {
"type": "boolean",
"description": "When true, the calling user can delete the availability record"
},
"can_approve": {
"type": "boolean",
"description": "When true, the calling user can approve the availability record (only valid if the AV type requires approval)"
}
},
"description": "A detail of actions that can be performed on the availability record by the calling user"
},
"approvers": {
"type": "array",
"description": "a list of names of users that can approve the availability"
},
"start_datetime": {
"type": "string",
"description": "Date and time of availability start in UTC time zone"
},
"end_datetime": {
"type": "string",
"description": "Date and time of availability end in UTC time zone"
},
"other_availabilities_in_same_repetition": {
"type": "array",
"description": "Only when the availability is part of a repetition list of IDs of other availability records tied to this one in the same repetition"
},
"pieces_of_evidence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the evidence file"
},
"filename": {
"type": "string",
"description": "The name of the file"
},
"url": {
"type": "string",
"description": "an url where an API client my download a copy of the file. Note that this URL is only temporary valid"
},
"uploaded_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the piece of evidence"
},
"uploaded_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
}
},
"required": [
"uploaded_at"
]
}
}
},
"required": [
"id",
"starts_at",
"start_time",
"period",
"is_approved",
"is_locked",
"permissions",
"start_datetime"
]
}
DetailsGET/api/v1/admin/collaborators/{collaborator_id}/availabilities2/{id}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availability you want to manage
- id
integer
(required) Example: 1ID of the Availability
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": 1,
"availability_type_id": 1,
"starts_at": "2017-04-01",
"ends_at": "2017-04-01",
"whole_day": true,
"start_time": "06:00",
"end_time": "23:59",
"period": "single_date",
"payroll_code_id": 1,
"duration_in_hours": 8,
"day_part_id": 1,
"remark_by_collaborator": "Cannot be present on the 20th at 8am",
"is_approved": true,
"approved_by_id": 5,
"admin_reject_reason": "Did not attach evidence",
"payroll_approval_status": "not_required",
"payroll_reject_reason": "An example",
"payroll_approved": true,
"payroll_approved_by": "Some name",
"payroll_approved_at": "2019-04-01T06:00:00.000+00:00",
"is_locked": true,
"locked_by_id": 5,
"permissions": {
"can_update": true,
"can_destroy": true,
"can_approve": true
},
"approvers": [
"John Bossman",
"Mary Highness"
],
"start_datetime": "2019-04-01T06:00:00.000+00:00",
"end_datetime": "2019-04-01T00:23:59.000+00:00",
"other_availabilities_in_same_repetition": [
1,
1
],
"pieces_of_evidence": [
{
"id": "546",
"filename": "Maternity_leave.pdf",
"url": "https://my.beeple.eu/evidences/87234",
"uploaded_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"uploaded_at": "2020-04-01T19:05:00.000+02:00"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The ID of the collaborator availability"
},
"availability_type_id": {
"type": "number",
"description": "The id of the Availability Type associated with this collaborator availability"
},
"starts_at": {
"type": "string",
"description": "Period starts according RFC 3339."
},
"ends_at": {
"type": "string",
"description": "Period ends according RFC 3339."
},
"whole_day": {
"type": "boolean",
"description": "when true, the availability will run from starts at 00:00 to ends at 00:00 (midnight to midnight)"
},
"start_time": {
"type": "string",
"description": "Time of availability start in HH:MM 24 hour format"
},
"end_time": {
"type": "string",
"description": "Time of availability end in HH:MM 24 hour format"
},
"period": {
"type": "string",
"enum": [
"single_date",
"repeat_daily",
"repeat_weekly",
"repeat_monthly"
],
"description": "a single date, a daily, weekly or monthly recurring availability."
},
"payroll_code_id": {
"type": "number",
"description": "The id of an Availability Type Payroll Code"
},
"duration_in_hours": {
"type": "number",
"description": "The number of hours associated with this availability"
},
"day_part_id": {
"type": "number",
"description": "The id of a Day Part"
},
"remark_by_collaborator": {
"type": "string",
"description": "The remark provided with the availability"
},
"is_approved": {
"type": "boolean",
"description": "set to true when the availability is approved. False when rejected."
},
"approved_by_id": {
"type": "number",
"description": "The ID of the admin that approved the availability"
},
"admin_reject_reason": {
"type": "string",
"description": "an optional remark that describes the reason for rejection"
},
"payroll_approval_status": {
"type": "string",
"enum": [
"not_required",
"unknown",
"accepted",
"rejected"
],
"description": "The status according to the payroll. Should ideally only be set to accepted or rejected by the API"
},
"payroll_reject_reason": {
"type": "string",
"description": "Reason why the payroll rejected the request. Only applicable if payroll_approval_status is rejected"
},
"payroll_approved": {
"type": "boolean",
"description": "true if payroll service approves the availability; false if payroll service rejects the availability"
},
"payroll_approved_by": {
"type": "string",
"description": "A name or identification received from the payroll indicating who approved or rejected the availability"
},
"payroll_approved_at": {
"type": "string",
"description": "Timestamp according RFC 3339 of when availability was approved or rejected."
},
"is_locked": {
"type": "boolean",
"description": "whether the availability is locked or not (only useful when setting Enable availability locking is set to Yes)"
},
"locked_by_id": {
"type": "number",
"description": "The ID of the admin or collaborator that locked the availability"
},
"permissions": {
"type": "object",
"properties": {
"can_update": {
"type": "boolean",
"description": "When true, the calling user can update the availability record"
},
"can_destroy": {
"type": "boolean",
"description": "When true, the calling user can delete the availability record"
},
"can_approve": {
"type": "boolean",
"description": "When true, the calling user can approve the availability record (only valid if the AV type requires approval)"
}
},
"description": "A detail of actions that can be performed on the availability record by the calling user"
},
"approvers": {
"type": "array",
"description": "a list of names of users that can approve the availability"
},
"start_datetime": {
"type": "string",
"description": "Date and time of availability start in UTC time zone"
},
"end_datetime": {
"type": "string",
"description": "Date and time of availability end in UTC time zone"
},
"other_availabilities_in_same_repetition": {
"type": "array",
"description": "Only when the availability is part of a repetition list of IDs of other availability records tied to this one in the same repetition"
},
"pieces_of_evidence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the evidence file"
},
"filename": {
"type": "string",
"description": "The name of the file"
},
"url": {
"type": "string",
"description": "an url where an API client my download a copy of the file. Note that this URL is only temporary valid"
},
"uploaded_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the piece of evidence"
},
"uploaded_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
}
},
"required": [
"uploaded_at"
]
}
}
},
"required": [
"id",
"starts_at",
"start_time",
"period",
"is_approved",
"is_locked",
"permissions",
"start_datetime"
]
}
Update/modifyPATCH/api/v1/admin/collaborators/{collaborator_id}/availabilities2/{id}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availabilities you want to manage
- id
integer
(required) Example: 1ID of the Availability
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"availability": {
"id": 1,
"availability_type_id": 1,
"starts_at": "2017-04-01",
"ends_at": "2017-04-01",
"whole_day": true,
"start_time": "06:00",
"end_time": "23:59",
"period": "single_date",
"payroll_code_id": 1,
"duration_in_hours": 8,
"day_part_id": 1,
"remark_by_collaborator": "Cannot be present on the 20th at 8am",
"is_approved": true,
"approved_by_id": 5,
"admin_reject_reason": "Did not attach evidence",
"payroll_approval_status": "not_required",
"payroll_reject_reason": "An example",
"payroll_approved": true,
"payroll_approved_by": "Some name",
"payroll_approved_at": "2019-04-01T06:00:00.000+00:00",
"is_locked": true,
"locked_by_id": 5,
"permissions": {
"can_update": true,
"can_destroy": true,
"can_approve": true
},
"approvers": [
"John Bossman",
"Mary Highness"
],
"split_and_keep_old_entry": true,
"split_and_keep_overlaps: `true` (boolean, optional) - when true, if the availability overlaps with existing availability/ies the system will try to modify the existing one(s) to make the change fit (similar to what split_and_keep_old_entry does) and if it cannot change them, it will remove them and save the one being updated.": "Hello, world!",
"repetition_change_which_ids: `only_on_this_instance`": "only_on_this_instance",
"n_following_instances": "3"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"availability": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The ID of the collaborator availability"
},
"availability_type_id": {
"type": "number",
"description": "The id of the Availability Type associated with this collaborator availability"
},
"starts_at": {
"type": "string",
"description": "Period starts according RFC 3339."
},
"ends_at": {
"type": "string",
"description": "Period ends according RFC 3339."
},
"whole_day": {
"type": "boolean",
"description": "when true, the availability will run from starts at 00:00 to ends at 00:00 (midnight to midnight)"
},
"start_time": {
"type": "string",
"description": "Time of availability start in HH:MM 24 hour format"
},
"end_time": {
"type": "string",
"description": "Time of availability end in HH:MM 24 hour format"
},
"period": {
"type": "string",
"enum": [
"single_date",
"repeat_daily",
"repeat_weekly",
"repeat_monthly"
],
"description": "a single date, a daily, weekly or monthly recurring availability."
},
"payroll_code_id": {
"type": "number",
"description": "The id of an Availability Type Payroll Code"
},
"duration_in_hours": {
"type": "number",
"description": "The number of hours associated with this availability"
},
"day_part_id": {
"type": "number",
"description": "The id of a Day Part"
},
"remark_by_collaborator": {
"type": "string",
"description": "The remark provided with the availability"
},
"is_approved": {
"type": "boolean",
"description": "set to true when the availability is approved. False when rejected."
},
"approved_by_id": {
"type": "number",
"description": "The ID of the admin that approved the availability"
},
"admin_reject_reason": {
"type": "string",
"description": "an optional remark that describes the reason for rejection"
},
"payroll_approval_status": {
"type": "string",
"enum": [
"not_required",
"unknown",
"accepted",
"rejected"
],
"description": "The status according to the payroll. Should ideally only be set to accepted or rejected by the API"
},
"payroll_reject_reason": {
"type": "string",
"description": "Reason why the payroll rejected the request. Only applicable if payroll_approval_status is rejected"
},
"payroll_approved": {
"type": "boolean",
"description": "true if payroll service approves the availability; false if payroll service rejects the availability"
},
"payroll_approved_by": {
"type": "string",
"description": "A name or identification received from the payroll indicating who approved or rejected the availability"
},
"payroll_approved_at": {
"type": "string",
"description": "Timestamp according RFC 3339 of when availability was approved or rejected."
},
"is_locked": {
"type": "boolean",
"description": "whether the availability is locked or not (only useful when setting Enable availability locking is set to Yes)"
},
"locked_by_id": {
"type": "number",
"description": "The ID of the admin or collaborator that locked the availability"
},
"permissions": {
"type": "object",
"properties": {
"can_update": {
"type": "boolean",
"description": "When true, the calling user can update the availability record"
},
"can_destroy": {
"type": "boolean",
"description": "When true, the calling user can delete the availability record"
},
"can_approve": {
"type": "boolean",
"description": "When true, the calling user can approve the availability record (only valid if the AV type requires approval)"
}
},
"description": "A detail of actions that can be performed on the availability record by the calling user"
},
"approvers": {
"type": "array",
"description": "a list of names of users that can approve the availability"
},
"split_and_keep_old_entry": {
"type": "boolean",
"description": "when true, if the same request is changing the availability_type_id and one or both starts_at, ends_at to a shorter period, then whatever portion can be kept from the existing availability will be kept as a new availability. For example, if you have an availability type \"Training\" days 1 to 7 and then change it in the same request to type \"Sick\" days 3 to 5, you end up with the requested \"Sick\" 3 to 5 and two portions of \"Training\" 1 to 2 and \"Training\" 6 to 7."
},
"split_and_keep_overlaps: `true` (boolean, optional) - when true, if the availability overlaps with existing availability/ies the system will try to modify the existing one(s) to make the change fit (similar to what split_and_keep_old_entry does) and if it cannot change them, it will remove them and save the one being updated.": {
"type": "string"
},
"repetition_change_which_ids: `only_on_this_instance`": {
"type": "string",
"enum": [
"only_on_this_instance",
"in_this_and_the_following",
"in_all_instances",
"this_and_next_n"
],
"description": "when changing an repetitive availability, this will determine what repetitive instances will be affected by the change."
},
"n_following_instances": {
"type": "string",
"description": "When you set repetition_change_which_ids to this_and_next_n, you should pass here the number of instances to affect"
}
},
"required": [
"id",
"starts_at",
"start_time",
"period",
"is_approved",
"is_locked",
"permissions",
"repetition_change_which_ids: `only_on_this_instance`"
]
}
},
"required": [
"availability"
]
}
201
Headers
Content-Type: application/json
Body
{
"id": 1,
"availability_type_id": 1,
"starts_at": "2017-04-01",
"ends_at": "2017-04-01",
"whole_day": true,
"start_time": "06:00",
"end_time": "23:59",
"period": "single_date",
"payroll_code_id": 1,
"duration_in_hours": 8,
"day_part_id": 1,
"remark_by_collaborator": "Cannot be present on the 20th at 8am",
"is_approved": true,
"approved_by_id": 5,
"admin_reject_reason": "Did not attach evidence",
"payroll_approval_status": "not_required",
"payroll_reject_reason": "An example",
"payroll_approved": true,
"payroll_approved_by": "Some name",
"payroll_approved_at": "2019-04-01T06:00:00.000+00:00",
"is_locked": true,
"locked_by_id": 5,
"permissions": {
"can_update": true,
"can_destroy": true,
"can_approve": true
},
"approvers": [
"John Bossman",
"Mary Highness"
],
"start_datetime": "2019-04-01T06:00:00.000+00:00",
"end_datetime": "2019-04-01T00:23:59.000+00:00",
"other_availabilities_in_same_repetition": [
1,
1
],
"pieces_of_evidence": [
{
"id": "546",
"filename": "Maternity_leave.pdf",
"url": "https://my.beeple.eu/evidences/87234",
"uploaded_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"uploaded_at": "2020-04-01T19:05:00.000+02:00"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The ID of the collaborator availability"
},
"availability_type_id": {
"type": "number",
"description": "The id of the Availability Type associated with this collaborator availability"
},
"starts_at": {
"type": "string",
"description": "Period starts according RFC 3339."
},
"ends_at": {
"type": "string",
"description": "Period ends according RFC 3339."
},
"whole_day": {
"type": "boolean",
"description": "when true, the availability will run from starts at 00:00 to ends at 00:00 (midnight to midnight)"
},
"start_time": {
"type": "string",
"description": "Time of availability start in HH:MM 24 hour format"
},
"end_time": {
"type": "string",
"description": "Time of availability end in HH:MM 24 hour format"
},
"period": {
"type": "string",
"enum": [
"single_date",
"repeat_daily",
"repeat_weekly",
"repeat_monthly"
],
"description": "a single date, a daily, weekly or monthly recurring availability."
},
"payroll_code_id": {
"type": "number",
"description": "The id of an Availability Type Payroll Code"
},
"duration_in_hours": {
"type": "number",
"description": "The number of hours associated with this availability"
},
"day_part_id": {
"type": "number",
"description": "The id of a Day Part"
},
"remark_by_collaborator": {
"type": "string",
"description": "The remark provided with the availability"
},
"is_approved": {
"type": "boolean",
"description": "set to true when the availability is approved. False when rejected."
},
"approved_by_id": {
"type": "number",
"description": "The ID of the admin that approved the availability"
},
"admin_reject_reason": {
"type": "string",
"description": "an optional remark that describes the reason for rejection"
},
"payroll_approval_status": {
"type": "string",
"enum": [
"not_required",
"unknown",
"accepted",
"rejected"
],
"description": "The status according to the payroll. Should ideally only be set to accepted or rejected by the API"
},
"payroll_reject_reason": {
"type": "string",
"description": "Reason why the payroll rejected the request. Only applicable if payroll_approval_status is rejected"
},
"payroll_approved": {
"type": "boolean",
"description": "true if payroll service approves the availability; false if payroll service rejects the availability"
},
"payroll_approved_by": {
"type": "string",
"description": "A name or identification received from the payroll indicating who approved or rejected the availability"
},
"payroll_approved_at": {
"type": "string",
"description": "Timestamp according RFC 3339 of when availability was approved or rejected."
},
"is_locked": {
"type": "boolean",
"description": "whether the availability is locked or not (only useful when setting Enable availability locking is set to Yes)"
},
"locked_by_id": {
"type": "number",
"description": "The ID of the admin or collaborator that locked the availability"
},
"permissions": {
"type": "object",
"properties": {
"can_update": {
"type": "boolean",
"description": "When true, the calling user can update the availability record"
},
"can_destroy": {
"type": "boolean",
"description": "When true, the calling user can delete the availability record"
},
"can_approve": {
"type": "boolean",
"description": "When true, the calling user can approve the availability record (only valid if the AV type requires approval)"
}
},
"description": "A detail of actions that can be performed on the availability record by the calling user"
},
"approvers": {
"type": "array",
"description": "a list of names of users that can approve the availability"
},
"start_datetime": {
"type": "string",
"description": "Date and time of availability start in UTC time zone"
},
"end_datetime": {
"type": "string",
"description": "Date and time of availability end in UTC time zone"
},
"other_availabilities_in_same_repetition": {
"type": "array",
"description": "Only when the availability is part of a repetition list of IDs of other availability records tied to this one in the same repetition"
},
"pieces_of_evidence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the evidence file"
},
"filename": {
"type": "string",
"description": "The name of the file"
},
"url": {
"type": "string",
"description": "an url where an API client my download a copy of the file. Note that this URL is only temporary valid"
},
"uploaded_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the piece of evidence"
},
"uploaded_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
}
},
"required": [
"uploaded_at"
]
}
}
},
"required": [
"id",
"starts_at",
"start_time",
"period",
"is_approved",
"is_locked",
"permissions",
"start_datetime"
]
}
RemoveDELETE/api/v1/admin/collaborators/{collaborator_id}/availabilities2/{id}/{?repetition_change_which_ids,n_following_instances}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availabilities you want to manage
- id
integer
(required) Example: 1ID of the Availability
- repetition_change_which_ids
string
(optional)Which instances to remove
-
only_on_this_instance - only the one with {id}
-
in_this_and_the_following - this and next (chronological) instances
-
in_all_instances all repetition instances
-
this_and_next_n - this and N following based on parameter n_following_instances
-
- n_following_instances
string
(optional) Example: 3When you set repetition_change_which_ids to this_and_next_n, you should pass here the number of instances to affect
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
204
Headers
Content-Type: application/json
Counters ¶
Counters allow the definition of several events to be counted including hours, teams, shifts and unique days worked as well as
approved (un)counters and other events. The definition of the counters and their rules must be done in the web
application. The APIs exposed will work depending on that definition.
ListGET/api/v1/admin/collaborators/{collaborator_id}/counters
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose counters you want to manage
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7845",
"name": "Hours worked in mornings",
"is_reward": true,
"manual_value": 15,
"automatic_value": 20,
"target_value": 100,
"total_vs_current_value": "35.0/100.0",
"events": [
{
"id": "747",
"created_at": "2020-04-01T19:05:00.000+02:00",
"counter_type: `length_worked`": [
"Hello, world!",
"length_worked",
"duration_worked",
"shifts_worked",
"teams_worked",
"unique_days_worked",
"friend_invites_accepted",
"approved_availability_type"
],
"creation_type": "manual",
"total_value": 1,
"triggering_record_class": "Availability",
"triggering_record_id": "324",
"triggering_record_url": "https://my.beeple.eu/availabilities/324"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"name": {
"type": "string",
"description": "The Name of the counter"
},
"is_reward": {
"type": "boolean",
"description": "When true, the counter is shown under \"Rewards\" in the web application"
},
"manual_value": {
"type": "number",
"description": "A numeric value manually added or substracted from the total counter value"
},
"automatic_value": {
"type": "number",
"description": "A numeric value automatically calculated by Beeple affecting the total counter value"
},
"target_value": {
"type": "number",
"description": "A numeric target value for the counter set by the administrator"
},
"total_vs_current_value": {
"type": "string",
"description": "A string representation of current value of the counter / (over) the target value expected"
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter event"
},
"created_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
},
"counter_type: `length_worked`": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "Oee of the existing countable event types"
},
"creation_type": {
"type": "string",
"description": "Either manual for admin adjusted values or automatic for system calculated values."
},
"total_value": {
"type": "number",
"description": "The numeric value of this event"
},
"triggering_record_class": {
"type": "string",
"description": "a string representation of the record that triggered this counter event"
},
"triggering_record_id": {
"type": "string",
"description": "the Beeple id of the record that triggered this counter event"
},
"triggering_record_url": {
"type": "string",
"description": "an url where a web client can see the detail of the record causing the counter event."
}
},
"required": [
"id",
"created_at",
"creation_type",
"total_value",
"triggering_record_class",
"triggering_record_id"
]
},
"description": "A list of counter events under this counter"
}
},
"required": [
"id",
"name",
"is_reward",
"manual_value",
"automatic_value",
"target_value",
"total_vs_current_value"
]
}
Create Counter EventPOST/api/v1/admin/collaborators/{collaborator_id}/counters/{id}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose counters you want to manage
- id
string
(required) Example: 15The Beeple ID of the counter to be affected by the new Manual Event
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"volunteers_counter_event": {
"total_value": 1,
"remark": "Adjusting for end of month",
"calc_delta: `false` (boolean, required) - when true, the logic will calculate a delta needed to set the counter's total_value to this event's total": "Hello, world!"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"volunteers_counter_event": {
"type": "object",
"properties": {
"total_value": {
"type": "number",
"description": "The numeric value of this event"
},
"remark": {
"type": "string",
"description": "a string explaining this manual change of the counter total"
},
"calc_delta: `false` (boolean, required) - when true, the logic will calculate a delta needed to set the counter's total_value to this event's total": {
"type": "string"
}
},
"required": [
"total_value"
]
}
},
"required": [
"volunteers_counter_event"
]
}
201
Headers
Content-Type: application/json
Body
{
"id": "7845",
"name": "Hours worked in mornings",
"is_reward": true,
"manual_value": 15,
"automatic_value": 20,
"target_value": 100,
"total_vs_current_value": "35.0/100.0",
"events": [
{
"id": "747",
"created_at": "2020-04-01T19:05:00.000+02:00",
"counter_type: `length_worked`": [
"Hello, world!",
"length_worked",
"duration_worked",
"shifts_worked",
"teams_worked",
"unique_days_worked",
"friend_invites_accepted",
"approved_availability_type"
],
"creation_type": "manual",
"total_value": 1,
"triggering_record_class": "Availability",
"triggering_record_id": "324",
"triggering_record_url": "https://my.beeple.eu/availabilities/324"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"name": {
"type": "string",
"description": "The Name of the counter"
},
"is_reward": {
"type": "boolean",
"description": "When true, the counter is shown under \"Rewards\" in the web application"
},
"manual_value": {
"type": "number",
"description": "A numeric value manually added or substracted from the total counter value"
},
"automatic_value": {
"type": "number",
"description": "A numeric value automatically calculated by Beeple affecting the total counter value"
},
"target_value": {
"type": "number",
"description": "A numeric target value for the counter set by the administrator"
},
"total_vs_current_value": {
"type": "string",
"description": "A string representation of current value of the counter / (over) the target value expected"
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter event"
},
"created_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
},
"counter_type: `length_worked`": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "Oee of the existing countable event types"
},
"creation_type": {
"type": "string",
"description": "Either manual for admin adjusted values or automatic for system calculated values."
},
"total_value": {
"type": "number",
"description": "The numeric value of this event"
},
"triggering_record_class": {
"type": "string",
"description": "a string representation of the record that triggered this counter event"
},
"triggering_record_id": {
"type": "string",
"description": "the Beeple id of the record that triggered this counter event"
},
"triggering_record_url": {
"type": "string",
"description": "an url where a web client can see the detail of the record causing the counter event."
}
},
"required": [
"id",
"created_at",
"creation_type",
"total_value",
"triggering_record_class",
"triggering_record_id"
]
},
"description": "A list of counter events under this counter"
}
},
"required": [
"id",
"name",
"is_reward",
"manual_value",
"automatic_value",
"target_value",
"total_vs_current_value"
]
}
DetailsGET/api/v1/admin/collaborators/{collaborator_id}/counters/{id}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availability you want to manage
- id
integer
(required) Example: 1ID of the counter
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7845",
"name": "Hours worked in mornings",
"is_reward": true,
"manual_value": 15,
"automatic_value": 20,
"target_value": 100,
"total_vs_current_value": "35.0/100.0",
"events": [
{
"id": "747",
"created_at": "2020-04-01T19:05:00.000+02:00",
"counter_type: `length_worked`": [
"Hello, world!",
"length_worked",
"duration_worked",
"shifts_worked",
"teams_worked",
"unique_days_worked",
"friend_invites_accepted",
"approved_availability_type"
],
"creation_type": "manual",
"total_value": 1,
"triggering_record_class": "Availability",
"triggering_record_id": "324",
"triggering_record_url": "https://my.beeple.eu/availabilities/324"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"name": {
"type": "string",
"description": "The Name of the counter"
},
"is_reward": {
"type": "boolean",
"description": "When true, the counter is shown under \"Rewards\" in the web application"
},
"manual_value": {
"type": "number",
"description": "A numeric value manually added or substracted from the total counter value"
},
"automatic_value": {
"type": "number",
"description": "A numeric value automatically calculated by Beeple affecting the total counter value"
},
"target_value": {
"type": "number",
"description": "A numeric target value for the counter set by the administrator"
},
"total_vs_current_value": {
"type": "string",
"description": "A string representation of current value of the counter / (over) the target value expected"
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter event"
},
"created_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
},
"counter_type: `length_worked`": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "Oee of the existing countable event types"
},
"creation_type": {
"type": "string",
"description": "Either manual for admin adjusted values or automatic for system calculated values."
},
"total_value": {
"type": "number",
"description": "The numeric value of this event"
},
"triggering_record_class": {
"type": "string",
"description": "a string representation of the record that triggered this counter event"
},
"triggering_record_id": {
"type": "string",
"description": "the Beeple id of the record that triggered this counter event"
},
"triggering_record_url": {
"type": "string",
"description": "an url where a web client can see the detail of the record causing the counter event."
}
},
"required": [
"id",
"created_at",
"creation_type",
"total_value",
"triggering_record_class",
"triggering_record_id"
]
},
"description": "A list of counter events under this counter"
}
},
"required": [
"id",
"name",
"is_reward",
"manual_value",
"automatic_value",
"target_value",
"total_vs_current_value"
]
}
UpdatePATCH/api/v1/admin/collaborators/{collaborator_id}/counters/{id}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose counter you want to manage
- id
integer
(required) Example: 1ID of the counter
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"counter": {
"target_value": "45"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"counter": {
"type": "object",
"properties": {
"target_value": {
"type": "string",
"description": "A new target value for a counter"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "7845",
"name": "Hours worked in mornings",
"is_reward": true,
"manual_value": 15,
"automatic_value": 20,
"target_value": 100,
"total_vs_current_value": "35.0/100.0",
"events": [
{
"id": "747",
"created_at": "2020-04-01T19:05:00.000+02:00",
"counter_type: `length_worked`": [
"Hello, world!",
"length_worked",
"duration_worked",
"shifts_worked",
"teams_worked",
"unique_days_worked",
"friend_invites_accepted",
"approved_availability_type"
],
"creation_type": "manual",
"total_value": 1,
"triggering_record_class": "Availability",
"triggering_record_id": "324",
"triggering_record_url": "https://my.beeple.eu/availabilities/324"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"name": {
"type": "string",
"description": "The Name of the counter"
},
"is_reward": {
"type": "boolean",
"description": "When true, the counter is shown under \"Rewards\" in the web application"
},
"manual_value": {
"type": "number",
"description": "A numeric value manually added or substracted from the total counter value"
},
"automatic_value": {
"type": "number",
"description": "A numeric value automatically calculated by Beeple affecting the total counter value"
},
"target_value": {
"type": "number",
"description": "A numeric target value for the counter set by the administrator"
},
"total_vs_current_value": {
"type": "string",
"description": "A string representation of current value of the counter / (over) the target value expected"
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter event"
},
"created_at": {
"type": "string",
"description": "the time stamp when the counter event was recorded according RFC 3339."
},
"counter_type: `length_worked`": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
},
{
"type": "string"
}
],
"description": "Oee of the existing countable event types"
},
"creation_type": {
"type": "string",
"description": "Either manual for admin adjusted values or automatic for system calculated values."
},
"total_value": {
"type": "number",
"description": "The numeric value of this event"
},
"triggering_record_class": {
"type": "string",
"description": "a string representation of the record that triggered this counter event"
},
"triggering_record_id": {
"type": "string",
"description": "the Beeple id of the record that triggered this counter event"
},
"triggering_record_url": {
"type": "string",
"description": "an url where a web client can see the detail of the record causing the counter event."
}
},
"required": [
"id",
"created_at",
"creation_type",
"total_value",
"triggering_record_class",
"triggering_record_id"
]
},
"description": "A list of counter events under this counter"
}
},
"required": [
"id",
"name",
"is_reward",
"manual_value",
"automatic_value",
"target_value",
"total_vs_current_value"
]
}
Contracts ¶
ListGET/api/v1/admin/collaborators/{collaborator_id}/contracts{?page,page_items}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose contracts to get
- page
number
(optional) Default: 1 Example: 2The paginated page number.
- page_items
number
(optional) Default: 100 Example: 25Items per page
- order[field]
string
(optional) Example: ascOrder returned contracts by specified field and direction
Choices:
asc
desc
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"contracts": [
{
"id": "7845",
"start_date": "2020-04-01",
"end_date": "2020-04-01",
"status": "undecided",
"decided_at": "2020-04-01",
"download_url": "https://aws.amazon.com/contract.pdf"
}
],
"count": 5,
"previous": "https://tenant.be/api/v1/admin/collaborators/1/contracts?page=1&page_items=5",
"next": "https://tenant.be/api/v1/admin/collaborators/1/contracts?page=3&page_items=5"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"contracts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"start_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to start"
},
"end_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to end"
},
"status": {
"type": "string",
"enum": [
"undecided",
"accepted",
"rejected"
],
"description": "status of the contract"
},
"decided_at": {
"type": "string",
"description": "date time when contract was accepted or rejected."
},
"download_url": {
"type": "string",
"description": "URL to download generated permanent contract."
}
},
"required": [
"id",
"start_date",
"end_date",
"status"
]
}
},
"count": {
"type": "number",
"description": "A numeric value of collaborator contracts count"
},
"previous": {
"type": "string",
"description": "Previous page URL"
},
"next": {
"type": "string",
"description": "Next page URL"
}
},
"required": [
"count"
]
}
CreatePOST/api/v1/admin/collaborators/{collaborator_id}/contracts
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose contracts you want to manage
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"volunteers_contract": {
"start_date": "2020-04-01",
"end_date": "2020-04-01"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"volunteers_contract": {
"type": "object",
"properties": {
"start_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to start"
},
"end_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to end"
}
},
"required": [
"start_date",
"end_date"
]
}
},
"required": [
"volunteers_contract"
]
}
201
Headers
Content-Type: application/json
Body
{
"id": "7845",
"start_date": "2020-04-01",
"end_date": "2020-04-01",
"status": "undecided",
"decided_at": "2020-04-01",
"download_url": "https://aws.amazon.com/contract.pdf"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"start_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to start"
},
"end_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to end"
},
"status": {
"type": "string",
"enum": [
"undecided",
"accepted",
"rejected"
],
"description": "status of the contract"
},
"decided_at": {
"type": "string",
"description": "date time when contract was accepted or rejected."
},
"download_url": {
"type": "string",
"description": "URL to download generated permanent contract."
}
},
"required": [
"id",
"start_date",
"end_date",
"status"
]
}
UpdatePATCH/api/v1/admin/collaborators/{collaborator_id}/contracts/{id}
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availability you want to manage
- id
integer
(required) Example: 1ID of the contract
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"volunteers_contract": {
"start_date": "2020-04-01",
"end_date": "2020-04-01",
"status": "accepted"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"volunteers_contract": {
"type": "object",
"properties": {
"start_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to start"
},
"end_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to end"
},
"status": {
"type": "string",
"description": "new status of the contract ('accepted' or 'rejected')"
}
},
"required": [
"start_date",
"end_date",
"status"
]
}
},
"required": [
"volunteers_contract"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "7845",
"start_date": "2020-04-01",
"end_date": "2020-04-01",
"status": "undecided",
"decided_at": "2020-04-01",
"download_url": "https://aws.amazon.com/contract.pdf"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"start_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to start"
},
"end_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to end"
},
"status": {
"type": "string",
"enum": [
"undecided",
"accepted",
"rejected"
],
"description": "status of the contract"
},
"decided_at": {
"type": "string",
"description": "date time when contract was accepted or rejected."
},
"download_url": {
"type": "string",
"description": "URL to download generated permanent contract."
}
},
"required": [
"id",
"start_date",
"end_date",
"status"
]
}
AcceptPOST/api/v1/admin/collaborators/{collaborator_id}/contracts/{id}/accept
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availability you want to manage
- id
integer
(required) Example: 1ID of the contract
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7845",
"start_date": "2020-04-01",
"end_date": "2020-04-01",
"status": "undecided",
"decided_at": "2020-04-01",
"download_url": "https://aws.amazon.com/contract.pdf"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"start_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to start"
},
"end_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to end"
},
"status": {
"type": "string",
"enum": [
"undecided",
"accepted",
"rejected"
],
"description": "status of the contract"
},
"decided_at": {
"type": "string",
"description": "date time when contract was accepted or rejected."
},
"download_url": {
"type": "string",
"description": "URL to download generated permanent contract."
}
},
"required": [
"id",
"start_date",
"end_date",
"status"
]
}
RejectPOST/api/v1/admin/collaborators/{collaborator_id}/contracts/{id}/reject
Example URI
- collaborator_id
string
(required) Example: 5The Beeple ID of the collaborator whose availability you want to manage
- id
integer
(required) Example: 1ID of the contract
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "7845",
"start_date": "2020-04-01",
"end_date": "2020-04-01",
"status": "undecided",
"decided_at": "2020-04-01",
"download_url": "https://aws.amazon.com/contract.pdf"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the counter"
},
"start_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to start"
},
"end_date": {
"type": "string",
"description": "the ISO8601 date when contracts is expected to end"
},
"status": {
"type": "string",
"enum": [
"undecided",
"accepted",
"rejected"
],
"description": "status of the contract"
},
"decided_at": {
"type": "string",
"description": "date time when contract was accepted or rejected."
},
"download_url": {
"type": "string",
"description": "URL to download generated permanent contract."
}
},
"required": [
"id",
"start_date",
"end_date",
"status"
]
}
Enrolments ¶
Enrolments ¶
CreatePOST/api/v1/admin/collaborators/enrolments
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"team_registration": {
"collaborator_id": "188",
"team_id": "200",
"reservation_id": "166",
"special_compensation_hour_id": "122",
"special_compensation_day_id": "88",
"special_compensation_team_id": "44",
"contract_type": "volunteer",
"payroll_service_branch_id": "24",
"position": "Stage 2",
"enrolment_property_values_attributes": [
{
"property_request_id": "2323",
"boolean_collaborator": true,
"numeric_collaborator": 42,
"list_single_collaborator": "slug",
"upload_collaborator": "abcd",
"freetext_collaborator": "a text value",
"freetext_multiline_collaborator": "a text value",
"date_collaborator": "2017-08-15",
"datetime_collaborator": "2017-04-01T09:00:00.000+02:00",
"time_collaborator": "18:30",
"comment_collaborator": "A text value",
"list_multi_array_collaborator": [
"slug1",
"slug2"
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"team_registration": {
"type": "object",
"properties": {
"collaborator_id": {
"type": "string",
"description": "The ID of the collaborator you want to enrol"
},
"team_id": {
"type": "string",
"description": "The ID of the team you want the enrolment for"
},
"reservation_id": {
"type": "string",
"description": "The ID of the reservation. only required if for a specific organisation"
},
"special_compensation_hour_id": {
"type": "string",
"description": "The ID of a special hour compensation. Only required if wanting to override default compensations"
},
"special_compensation_day_id": {
"type": "string",
"description": "The ID of a special day compensation. Only required if wanting to override default compensations"
},
"special_compensation_team_id": {
"type": "string",
"description": "The ID of a special team compensation. Only required if wanting to override default compensations"
},
"contract_type": {
"type": "string",
"enum": [
"volunteer",
"interim",
"freelancer",
"contractual",
"intern"
],
"description": "The contract type for the enrolment"
},
"payroll_service_branch_id": {
"type": "string",
"description": "An Integer for the branch ID, only applicable if working with payrolls."
},
"position": {
"type": "string",
"description": "A specific position for this collaborator"
},
"enrolment_property_values_attributes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"property_request_id": {
"type": "string",
"description": "The ID of the property"
},
"boolean_collaborator": {
"type": "boolean",
"description": "The value, required if property is of type boolean"
},
"numeric_collaborator": {
"type": "number",
"description": "The value, required if property is of type numeric"
},
"list_single_collaborator": {
"type": "string",
"description": "The slug value of the chosen option, required if property is of type singe option"
},
"upload_collaborator": {
"type": "string",
"description": "The base64 encoded value of the uploaded file, required if property is of type upload"
},
"freetext_collaborator": {
"type": "string",
"description": "The text value, required if property of type freetext"
},
"freetext_multiline_collaborator": {
"type": "string",
"description": "The text value, required if property of type text block"
},
"date_collaborator": {
"type": "string",
"description": "Date value in YYYY-MM-DD - Required if property is of type date"
},
"datetime_collaborator": {
"type": "string",
"description": "Datetime of the value according RFC 3339 - required if the property is of type datetime"
},
"time_collaborator": {
"type": "string",
"description": "Time of the value in format HH:MM, required if property of type time"
},
"comment_collaborator": {
"type": "string",
"description": "Value of the comment of the collaborator."
},
"list_multi_array_collaborator": {
"type": "array",
"items": [
{
"type": "string"
},
{
"type": "string"
}
],
"description": "The slug values of the selected options, required if property is of type multi select"
}
},
"required": [
"property_request_id"
]
}
}
},
"required": [
"collaborator_id",
"team_id",
"contract_type"
]
}
},
"required": [
"team_registration"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the enrolment"
},
"uuid": {
"type": "string",
"description": "A UUID for the enrolment. Used in QR codes"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"collaborator": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "The collaborator"
},
"cancelled": {
"type": "boolean",
"description": "Indicate if enrolment is cancelled"
},
"blip_management": {
"type": "boolean",
"description": "Indicate if the user has rights to start/stop checkin"
},
"blip": {
"type": "object",
"properties": {
"in_at": {
"type": "string",
"description": "The time user was checkde in"
},
"in_by": {
"type": "string",
"description": "The name of the person who checked in"
},
"out_at": {
"type": "string",
"description": "The time user was checked out"
},
"out_by": {
"type": "string",
"description": "The name of the person who checked out"
}
},
"description": "Checkin/Checkout info"
},
"worked_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"shift_id": {
"type": "string"
},
"other_absent": {
"type": "boolean"
},
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": {
"type": "string"
},
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": {
"type": "string"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 version of other_starts_at"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 version of other_ends_at"
},
"other_break_duration": {
"type": "string",
"description": "duration of break"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 version of starts_at"
},
"confirmed_starts_at": {
"type": "string"
},
"confirmed_ends_at": {
"type": "string"
},
"confirmed_break_duration": {
"type": "string"
},
"confirmed_absent": {
"type": "string"
},
"confirmed_absence_reason": {
"type": "string"
},
"choice_made": {
"type": "string"
},
"collaborator_starts_at": {
"type": "string"
},
"collaborator_ends_at": {
"type": "string"
},
"collaborator_break_duration": {
"type": "string"
},
"collaborator_absent": {
"type": "string"
},
"enrolment": {
"type": "string"
},
"shift": {
"type": "object",
"properties": {
"shift_id": {
"type": "string"
},
"start_datetime": {
"type": "string"
},
"end_datetime": {
"type": "string"
},
"break_duration": {
"type": "string"
}
}
}
},
"required": [
"id"
]
},
"description": "List of worked hours"
},
"enrolment_property_values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the property value"
},
"name": {
"type": "string",
"description": "Name of the property"
},
"description": {
"type": "string",
"description": "Description of the property"
},
"required": {
"type": "boolean",
"description": "If entering a value is required"
},
"type": {
"type": "string",
"description": "The type of the property"
},
"remark": {
"type": "string",
"description": "Remark entered by the collaborator"
},
"value": {
"type": "string",
"description": "Value of the entered property. Type depends on the type of the property. Can be boolean, string, or number, date in YYYY-MM-DD format, or datetime in RFC format."
},
"extras": {
"type": "string",
"description": "Depending on the type might contain the options possible (list_single_option or list_multi_option).\n\n In case of property type upload it will contain the filename.\n In case of date / datetime / time ranges contains the max or minimum values possible."
}
},
"required": [
"id",
"name",
"description",
"required",
"type"
]
},
"description": "List of enrolment properties"
}
},
"required": [
"id",
"uuid",
"contract_type"
]
}
DetailsGET/api/v1/admin/collaborators/enrolments/{id}
Example URI
- id
string
(required) Example: 544The enrolment ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the enrolment"
},
"uuid": {
"type": "string",
"description": "A UUID for the enrolment. Used in QR codes"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"collaborator": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "The collaborator"
},
"cancelled": {
"type": "boolean",
"description": "Indicate if enrolment is cancelled"
},
"blip_management": {
"type": "boolean",
"description": "Indicate if the user has rights to start/stop checkin"
},
"blip": {
"type": "object",
"properties": {
"in_at": {
"type": "string",
"description": "The time user was checkde in"
},
"in_by": {
"type": "string",
"description": "The name of the person who checked in"
},
"out_at": {
"type": "string",
"description": "The time user was checked out"
},
"out_by": {
"type": "string",
"description": "The name of the person who checked out"
}
},
"description": "Checkin/Checkout info"
},
"worked_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"shift_id": {
"type": "string"
},
"other_absent": {
"type": "boolean"
},
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": {
"type": "string"
},
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": {
"type": "string"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 version of other_starts_at"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 version of other_ends_at"
},
"other_break_duration": {
"type": "string",
"description": "duration of break"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 version of starts_at"
},
"confirmed_starts_at": {
"type": "string"
},
"confirmed_ends_at": {
"type": "string"
},
"confirmed_break_duration": {
"type": "string"
},
"confirmed_absent": {
"type": "string"
},
"confirmed_absence_reason": {
"type": "string"
},
"choice_made": {
"type": "string"
},
"collaborator_starts_at": {
"type": "string"
},
"collaborator_ends_at": {
"type": "string"
},
"collaborator_break_duration": {
"type": "string"
},
"collaborator_absent": {
"type": "string"
},
"enrolment": {
"type": "string"
},
"shift": {
"type": "object",
"properties": {
"shift_id": {
"type": "string"
},
"start_datetime": {
"type": "string"
},
"end_datetime": {
"type": "string"
},
"break_duration": {
"type": "string"
}
}
}
},
"required": [
"id"
]
},
"description": "List of worked hours"
},
"enrolment_property_values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the property value"
},
"name": {
"type": "string",
"description": "Name of the property"
},
"description": {
"type": "string",
"description": "Description of the property"
},
"required": {
"type": "boolean",
"description": "If entering a value is required"
},
"type": {
"type": "string",
"description": "The type of the property"
},
"remark": {
"type": "string",
"description": "Remark entered by the collaborator"
},
"value": {
"type": "string",
"description": "Value of the entered property. Type depends on the type of the property. Can be boolean, string, or number, date in YYYY-MM-DD format, or datetime in RFC format."
},
"extras": {
"type": "string",
"description": "Depending on the type might contain the options possible (list_single_option or list_multi_option).\n\n In case of property type upload it will contain the filename.\n In case of date / datetime / time ranges contains the max or minimum values possible."
}
},
"required": [
"id",
"name",
"description",
"required",
"type"
]
},
"description": "List of enrolment properties"
}
},
"required": [
"id",
"uuid",
"contract_type"
]
}
DeleteDELETE/api/v1/admin/collaborators/enrolments/{id}
Example URI
- id
string
(required) Example: 544The enrolment ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {}
}
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the enrolment"
},
"uuid": {
"type": "string",
"description": "A UUID for the enrolment. Used in QR codes"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"collaborator": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "The collaborator"
},
"cancelled": {
"type": "boolean",
"description": "Indicate if enrolment is cancelled"
},
"blip_management": {
"type": "boolean",
"description": "Indicate if the user has rights to start/stop checkin"
},
"blip": {
"type": "object",
"properties": {
"in_at": {
"type": "string",
"description": "The time user was checkde in"
},
"in_by": {
"type": "string",
"description": "The name of the person who checked in"
},
"out_at": {
"type": "string",
"description": "The time user was checked out"
},
"out_by": {
"type": "string",
"description": "The name of the person who checked out"
}
},
"description": "Checkin/Checkout info"
},
"worked_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"shift_id": {
"type": "string"
},
"other_absent": {
"type": "boolean"
},
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": {
"type": "string"
},
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": {
"type": "string"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 version of other_starts_at"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 version of other_ends_at"
},
"other_break_duration": {
"type": "string",
"description": "duration of break"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 version of starts_at"
},
"confirmed_starts_at": {
"type": "string"
},
"confirmed_ends_at": {
"type": "string"
},
"confirmed_break_duration": {
"type": "string"
},
"confirmed_absent": {
"type": "string"
},
"confirmed_absence_reason": {
"type": "string"
},
"choice_made": {
"type": "string"
},
"collaborator_starts_at": {
"type": "string"
},
"collaborator_ends_at": {
"type": "string"
},
"collaborator_break_duration": {
"type": "string"
},
"collaborator_absent": {
"type": "string"
},
"enrolment": {
"type": "string"
},
"shift": {
"type": "object",
"properties": {
"shift_id": {
"type": "string"
},
"start_datetime": {
"type": "string"
},
"end_datetime": {
"type": "string"
},
"break_duration": {
"type": "string"
}
}
}
},
"required": [
"id"
]
},
"description": "List of worked hours"
},
"enrolment_property_values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the property value"
},
"name": {
"type": "string",
"description": "Name of the property"
},
"description": {
"type": "string",
"description": "Description of the property"
},
"required": {
"type": "boolean",
"description": "If entering a value is required"
},
"type": {
"type": "string",
"description": "The type of the property"
},
"remark": {
"type": "string",
"description": "Remark entered by the collaborator"
},
"value": {
"type": "string",
"description": "Value of the entered property. Type depends on the type of the property. Can be boolean, string, or number, date in YYYY-MM-DD format, or datetime in RFC format."
},
"extras": {
"type": "string",
"description": "Depending on the type might contain the options possible (list_single_option or list_multi_option).\n\n In case of property type upload it will contain the filename.\n In case of date / datetime / time ranges contains the max or minimum values possible."
}
},
"required": [
"id",
"name",
"description",
"required",
"type"
]
},
"description": "List of enrolment properties"
}
},
"required": [
"id",
"uuid",
"contract_type"
]
}
List for teamGET/api/v1/admin/teams/{team_id}/enrolments{?page}
Returns a list of enrolments of the team by team_id
.
Supports filtering enrolements by filter[statuses]
parameter and multiple statuses could be passed at once:
GET /api/v1/admin/teams/123/enrolments?filter[statuses][]=confirmed,unconfirmed
Or:
GET /api/v1/admin/teams/123/enrolments?filter[statuses][]=confirmed&filter[statuses][]=unconfirmed
When no statuses passed, then the enpoint just returns confirmed
enrolments.
Example URI
- team_id
string
(required) Example: 123The ID of the team
- page
number
(optional) Example: 2page number
- filter[statuses]
array
(optional) Example: ['confirmed', 'expired']Enrolment’s status to filter
-
confirmed
-
unconfirmed
-
expired
-
refused
-
cancelled
-
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"enrolments": [
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
],
"previous": "``",
"next": "``"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"enrolments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the enrolment"
},
"uuid": {
"type": "string",
"description": "A UUID for the enrolment. Used in QR codes"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"collaborator": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "The collaborator"
},
"cancelled": {
"type": "boolean",
"description": "Indicate if enrolment is cancelled"
},
"blip_management": {
"type": "boolean",
"description": "Indicate if the user has rights to start/stop checkin"
},
"blip": {
"type": "object",
"properties": {
"in_at": {
"type": "string",
"description": "The time user was checkde in"
},
"in_by": {
"type": "string",
"description": "The name of the person who checked in"
},
"out_at": {
"type": "string",
"description": "The time user was checked out"
},
"out_by": {
"type": "string",
"description": "The name of the person who checked out"
}
},
"description": "Checkin/Checkout info"
},
"worked_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"shift_id": {
"type": "string"
},
"other_absent": {
"type": "boolean"
},
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": {
"type": "string"
},
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": {
"type": "string"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 version of other_starts_at"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 version of other_ends_at"
},
"other_break_duration": {
"type": "string",
"description": "duration of break"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 version of starts_at"
},
"confirmed_starts_at": {
"type": "string"
},
"confirmed_ends_at": {
"type": "string"
},
"confirmed_break_duration": {
"type": "string"
},
"confirmed_absent": {
"type": "string"
},
"confirmed_absence_reason": {
"type": "string"
},
"choice_made": {
"type": "string"
},
"collaborator_starts_at": {
"type": "string"
},
"collaborator_ends_at": {
"type": "string"
},
"collaborator_break_duration": {
"type": "string"
},
"collaborator_absent": {
"type": "string"
},
"enrolment": {
"type": "string"
},
"shift": {
"type": "object",
"properties": {
"shift_id": {
"type": "string"
},
"start_datetime": {
"type": "string"
},
"end_datetime": {
"type": "string"
},
"break_duration": {
"type": "string"
}
}
}
},
"required": [
"id"
]
},
"description": "List of worked hours"
},
"enrolment_property_values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the property value"
},
"name": {
"type": "string",
"description": "Name of the property"
},
"description": {
"type": "string",
"description": "Description of the property"
},
"required": {
"type": "boolean",
"description": "If entering a value is required"
},
"type": {
"type": "string",
"description": "The type of the property"
},
"remark": {
"type": "string",
"description": "Remark entered by the collaborator"
},
"value": {
"type": "string",
"description": "Value of the entered property. Type depends on the type of the property. Can be boolean, string, or number, date in YYYY-MM-DD format, or datetime in RFC format."
},
"extras": {
"type": "string",
"description": "Depending on the type might contain the options possible (list_single_option or list_multi_option).\n\n In case of property type upload it will contain the filename.\n In case of date / datetime / time ranges contains the max or minimum values possible."
}
},
"required": [
"id",
"name",
"description",
"required",
"type"
]
},
"description": "List of enrolment properties"
}
},
"required": [
"id",
"uuid",
"contract_type"
]
},
"description": "List of all enrolments"
},
"previous": {
"type": "string",
"description": "Page of the next part of enrolments"
},
"next": {
"type": "string",
"description": "Page of the next part of enrolments"
}
}
}
CheckinPOST/api/v1/admin/collaborators/enrolments/{id}/checkin
Example URI
- id
string
(required) Example: 123The ID of the enrolment
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the enrolment"
},
"uuid": {
"type": "string",
"description": "A UUID for the enrolment. Used in QR codes"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"collaborator": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "The collaborator"
},
"cancelled": {
"type": "boolean",
"description": "Indicate if enrolment is cancelled"
},
"blip_management": {
"type": "boolean",
"description": "Indicate if the user has rights to start/stop checkin"
},
"blip": {
"type": "object",
"properties": {
"in_at": {
"type": "string",
"description": "The time user was checkde in"
},
"in_by": {
"type": "string",
"description": "The name of the person who checked in"
},
"out_at": {
"type": "string",
"description": "The time user was checked out"
},
"out_by": {
"type": "string",
"description": "The name of the person who checked out"
}
},
"description": "Checkin/Checkout info"
},
"worked_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"shift_id": {
"type": "string"
},
"other_absent": {
"type": "boolean"
},
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": {
"type": "string"
},
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": {
"type": "string"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 version of other_starts_at"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 version of other_ends_at"
},
"other_break_duration": {
"type": "string",
"description": "duration of break"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 version of starts_at"
},
"confirmed_starts_at": {
"type": "string"
},
"confirmed_ends_at": {
"type": "string"
},
"confirmed_break_duration": {
"type": "string"
},
"confirmed_absent": {
"type": "string"
},
"confirmed_absence_reason": {
"type": "string"
},
"choice_made": {
"type": "string"
},
"collaborator_starts_at": {
"type": "string"
},
"collaborator_ends_at": {
"type": "string"
},
"collaborator_break_duration": {
"type": "string"
},
"collaborator_absent": {
"type": "string"
},
"enrolment": {
"type": "string"
},
"shift": {
"type": "object",
"properties": {
"shift_id": {
"type": "string"
},
"start_datetime": {
"type": "string"
},
"end_datetime": {
"type": "string"
},
"break_duration": {
"type": "string"
}
}
}
},
"required": [
"id"
]
},
"description": "List of worked hours"
},
"enrolment_property_values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the property value"
},
"name": {
"type": "string",
"description": "Name of the property"
},
"description": {
"type": "string",
"description": "Description of the property"
},
"required": {
"type": "boolean",
"description": "If entering a value is required"
},
"type": {
"type": "string",
"description": "The type of the property"
},
"remark": {
"type": "string",
"description": "Remark entered by the collaborator"
},
"value": {
"type": "string",
"description": "Value of the entered property. Type depends on the type of the property. Can be boolean, string, or number, date in YYYY-MM-DD format, or datetime in RFC format."
},
"extras": {
"type": "string",
"description": "Depending on the type might contain the options possible (list_single_option or list_multi_option).\n\n In case of property type upload it will contain the filename.\n In case of date / datetime / time ranges contains the max or minimum values possible."
}
},
"required": [
"id",
"name",
"description",
"required",
"type"
]
},
"description": "List of enrolment properties"
}
},
"required": [
"id",
"uuid",
"contract_type"
]
}
CheckoutPATCH/api/v1/admin/collaborators/enrolments/{id}/checkout
Example URI
- id
string
(required) Example: 123The ID of the enrolment
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the enrolment"
},
"uuid": {
"type": "string",
"description": "A UUID for the enrolment. Used in QR codes"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"collaborator": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "The collaborator"
},
"cancelled": {
"type": "boolean",
"description": "Indicate if enrolment is cancelled"
},
"blip_management": {
"type": "boolean",
"description": "Indicate if the user has rights to start/stop checkin"
},
"blip": {
"type": "object",
"properties": {
"in_at": {
"type": "string",
"description": "The time user was checkde in"
},
"in_by": {
"type": "string",
"description": "The name of the person who checked in"
},
"out_at": {
"type": "string",
"description": "The time user was checked out"
},
"out_by": {
"type": "string",
"description": "The name of the person who checked out"
}
},
"description": "Checkin/Checkout info"
},
"worked_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"shift_id": {
"type": "string"
},
"other_absent": {
"type": "boolean"
},
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": {
"type": "string"
},
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": {
"type": "string"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 version of other_starts_at"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 version of other_ends_at"
},
"other_break_duration": {
"type": "string",
"description": "duration of break"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 version of starts_at"
},
"confirmed_starts_at": {
"type": "string"
},
"confirmed_ends_at": {
"type": "string"
},
"confirmed_break_duration": {
"type": "string"
},
"confirmed_absent": {
"type": "string"
},
"confirmed_absence_reason": {
"type": "string"
},
"choice_made": {
"type": "string"
},
"collaborator_starts_at": {
"type": "string"
},
"collaborator_ends_at": {
"type": "string"
},
"collaborator_break_duration": {
"type": "string"
},
"collaborator_absent": {
"type": "string"
},
"enrolment": {
"type": "string"
},
"shift": {
"type": "object",
"properties": {
"shift_id": {
"type": "string"
},
"start_datetime": {
"type": "string"
},
"end_datetime": {
"type": "string"
},
"break_duration": {
"type": "string"
}
}
}
},
"required": [
"id"
]
},
"description": "List of worked hours"
},
"enrolment_property_values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the property value"
},
"name": {
"type": "string",
"description": "Name of the property"
},
"description": {
"type": "string",
"description": "Description of the property"
},
"required": {
"type": "boolean",
"description": "If entering a value is required"
},
"type": {
"type": "string",
"description": "The type of the property"
},
"remark": {
"type": "string",
"description": "Remark entered by the collaborator"
},
"value": {
"type": "string",
"description": "Value of the entered property. Type depends on the type of the property. Can be boolean, string, or number, date in YYYY-MM-DD format, or datetime in RFC format."
},
"extras": {
"type": "string",
"description": "Depending on the type might contain the options possible (list_single_option or list_multi_option).\n\n In case of property type upload it will contain the filename.\n In case of date / datetime / time ranges contains the max or minimum values possible."
}
},
"required": [
"id",
"name",
"description",
"required",
"type"
]
},
"description": "List of enrolment properties"
}
},
"required": [
"id",
"uuid",
"contract_type"
]
}
Worked Hours ¶
Worked hours ¶
List worked hoursGET/api/v1/admin/collaborators/worked_hours{?page,page_items}
Example URI
- page
number
(optional) Example: 2page number
- page_items
number
(optional) Example: 25items per page
- filter[checked_in]
boolean
(optional) Example: trueWorked hours checked in to filter
- filter[contains_evidence_entries]
boolean
(optional) Example: trueWorked hours contains evidence entries to filter
- filter[team_registration_cancelled]
boolean
(optional) Example: trueWorked hours team registration cancelled to filter
- filter[volunteer_name]
string
(optional) Example: JonhWorked hours volunteers name to filter
- filter[status]
array
(optional) Example: ['report_now']Worked hours status to filter
-
reported
-
report_now
-
report_later
-
late
-
expected
-
present
-
at_work
-
in_break
-
work_ended
-
left
-
absent
-
- filter[period]
array
(optional) Example: ['last_month']Worked hours status to filter
-
last_month
-
last_week
-
yesterday
-
today
-
this_week
-
this_month
-
next_week
-
next_month
-
other
-
- filter[period_start_at]
string
(optional) Example: 2020-09-28worked hour start date
- filter[period_end_at]
string
(optional) Example: 2020-09-29worked hour enrolment end date
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
[
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Update a worked hourPATCH/api/v1/admin/collaborators/worked_hours/{id}
Example URI
- id
string
(required) Example: 7The ID of the worked hour
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"state_change: `start_work`": "absent",
"worked_hour_attributes": {
"choice_made": "other",
"confirmed": true,
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "1:00",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"other_absence_reason_id": "12",
"other_absent": false,
"collaborator_absent": false,
"collaborator_starts_at": "2017-04-01T09:00:00.000+02:00",
"collaborator_ends_at": "2017-04-01T09:00:00.000+02:00",
"collaborator_break_duration": "1:00",
"absence_reason_id": "12",
"collaborator_remark": "remark",
"collaborator_confirmed": true,
"worked_hours_via_kiosk": true,
"evidence_entries_attributes": {
"id": "12",
"file": "file",
"file_data": "c3RyaW5n",
"file_name": "proof.jpg",
"_destroy": "false"
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"state_change: `start_work`": {
"type": "string",
"enum": [
"absent",
"start_work",
"start_break",
"stop_break",
"end_work"
],
"description": "State change"
},
"worked_hour_attributes": {
"type": "object",
"properties": {
"choice_made": {
"type": "string",
"enum": [
"other",
"planned",
"collaborator"
],
"description": "Choice made"
},
"confirmed": {
"type": "boolean"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 Start of work shift"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 End of work shift"
},
"other_break_duration": {
"type": "string",
"description": "Duration of a break in a work shift"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 Start of break"
},
"other_absence_reason_id": {
"type": "string",
"description": "The id of the absence reason"
},
"other_absent": {
"type": "boolean",
"description": "Indicates absent of a collaborator"
},
"collaborator_absent": {
"type": "boolean",
"description": "Indicates absent of a collaborator"
},
"collaborator_starts_at": {
"type": "string",
"description": "RFC 3339 Start of work shift"
},
"collaborator_ends_at": {
"type": "string",
"description": "RFC 3339 End of work shift"
},
"collaborator_break_duration": {
"type": "string",
"description": "Duration of a break in a work shift"
},
"absence_reason_id": {
"type": "string",
"description": "The id of the absence reason"
},
"collaborator_remark": {
"type": "string",
"description": "The remark for the hour registration"
},
"collaborator_confirmed": {
"type": "boolean"
},
"worked_hours_via_kiosk": {
"type": "boolean"
},
"evidence_entries_attributes": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the uploaded file"
},
"file": {
"type": "string",
"description": "The file"
},
"file_data": {
"type": "string",
"description": "The base64 encoded image"
},
"file_name": {
"type": "string",
"description": "Name of the file"
},
"_destroy": {
"type": "string",
"description": "flag that allows to destroy uploaded file"
}
}
}
}
}
},
"required": [
"state_change: `start_work`"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "123",
"errors": [
"['duration can not be longer than 24 hours']"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"errors": {
"type": "array",
"description": "A list of any errors encountered while updating"
}
}
}
Candidacies ¶
Candidacies ¶
DetailsGET/api/v1/admin/collaborators/candidacies/{id}
Example URI
- id
string
(required) Example: 544The candidacy ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"status": "waiting",
"comment": "Test comment",
"contract_type": "interim",
"fee": 127.4,
"remark_motivation": "Hello, world!",
"remark_private": "Hello, world!",
"remark_reply": "Hello, world!",
"reject_reason": "Test reason",
"reject_remark": "Test remark",
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"volunteer": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the candidacy"
},
"status": {
"type": "string",
"enum": [
"waiting",
"standby",
"accepted",
"rejected",
"cancelled"
],
"description": "The type of the current status"
},
"comment": {
"type": "string",
"description": "The comment subbmited by volunteer with the candidacy"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"remark_motivation": {
"type": "string"
},
"remark_private": {
"type": "string"
},
"remark_reply": {
"type": "string"
},
"reject_reason": {
"type": "string",
"description": "If candidacy is rejected, then field contains a reason from admin why it was rejected"
},
"reject_remark": {
"type": "string",
"description": "If candidacy is rejected, then field contains admin remark submitted during rejection"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"volunteer": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "Volunteer info"
}
},
"required": [
"id",
"status"
]
}
AcceptPATCH/api/v1/admin/collaborators/candidacies/{id}/accept
Example URI
- id
string
(required) Example: 544The candidacy ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"uuid": "187a5d1a-f54c-4b09-a4e6-e6644e223b2c",
"fee": 127.4,
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"contract_type": "interim",
"collaborator": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
},
"cancelled": true,
"blip_management": true,
"blip": {
"in_at": "2017-04-28T13:05:00",
"in_by": "John Doe",
"out_at": "2017-04-28T13:05:00",
"out_by": "John Doe"
},
"worked_hours": [
{
"id": "1",
"shift_id": "Hello, world!",
"other_absent": true,
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": "Hello, world!",
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": "Hello, world!",
"other_starts_at": "2017-04-01T09:00:00.000+02:00",
"other_ends_at": "2017-04-01T09:00:00.000+02:00",
"other_break_duration": "Hello, world!",
"other_current_break_started_at": "2017-04-01T09:00:00.000+02:00",
"confirmed_starts_at": "Hello, world!",
"confirmed_ends_at": "Hello, world!",
"confirmed_break_duration": "Hello, world!",
"confirmed_absent": "Hello, world!",
"confirmed_absence_reason": "Hello, world!",
"choice_made": "Hello, world!",
"collaborator_starts_at": "Hello, world!",
"collaborator_ends_at": "Hello, world!",
"collaborator_break_duration": "Hello, world!",
"collaborator_absent": "Hello, world!",
"enrolment": "Hello, world!",
"shift": {
"shift_id": "Hello, world!",
"start_datetime": "Hello, world!",
"end_datetime": "Hello, world!",
"break_duration": "Hello, world!"
}
}
],
"enrolment_property_values": [
{
"id": "545",
"name": "Food",
"description": "What kind of food do you want",
"required": true,
"type": "boolean",
"remark": "Some remark",
"value": "true",
"extras": "Hello, world!"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the enrolment"
},
"uuid": {
"type": "string",
"description": "A UUID for the enrolment. Used in QR codes"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"collaborator": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "The collaborator"
},
"cancelled": {
"type": "boolean",
"description": "Indicate if enrolment is cancelled"
},
"blip_management": {
"type": "boolean",
"description": "Indicate if the user has rights to start/stop checkin"
},
"blip": {
"type": "object",
"properties": {
"in_at": {
"type": "string",
"description": "The time user was checkde in"
},
"in_by": {
"type": "string",
"description": "The name of the person who checked in"
},
"out_at": {
"type": "string",
"description": "The time user was checked out"
},
"out_by": {
"type": "string",
"description": "The name of the person who checked out"
}
},
"description": "Checkin/Checkout info"
},
"worked_hours": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the worked hour"
},
"shift_id": {
"type": "string"
},
"other_absent": {
"type": "boolean"
},
"starts_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of starts_at": {
"type": "string"
},
"ends_at: `2017-04-01T09:00:00.000+02:00` (string, required) - RFC 3339 version of ends_at": {
"type": "string"
},
"other_starts_at": {
"type": "string",
"description": "RFC 3339 version of other_starts_at"
},
"other_ends_at": {
"type": "string",
"description": "RFC 3339 version of other_ends_at"
},
"other_break_duration": {
"type": "string",
"description": "duration of break"
},
"other_current_break_started_at": {
"type": "string",
"description": "RFC 3339 version of starts_at"
},
"confirmed_starts_at": {
"type": "string"
},
"confirmed_ends_at": {
"type": "string"
},
"confirmed_break_duration": {
"type": "string"
},
"confirmed_absent": {
"type": "string"
},
"confirmed_absence_reason": {
"type": "string"
},
"choice_made": {
"type": "string"
},
"collaborator_starts_at": {
"type": "string"
},
"collaborator_ends_at": {
"type": "string"
},
"collaborator_break_duration": {
"type": "string"
},
"collaborator_absent": {
"type": "string"
},
"enrolment": {
"type": "string"
},
"shift": {
"type": "object",
"properties": {
"shift_id": {
"type": "string"
},
"start_datetime": {
"type": "string"
},
"end_datetime": {
"type": "string"
},
"break_duration": {
"type": "string"
}
}
}
},
"required": [
"id"
]
},
"description": "List of worked hours"
},
"enrolment_property_values": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the property value"
},
"name": {
"type": "string",
"description": "Name of the property"
},
"description": {
"type": "string",
"description": "Description of the property"
},
"required": {
"type": "boolean",
"description": "If entering a value is required"
},
"type": {
"type": "string",
"description": "The type of the property"
},
"remark": {
"type": "string",
"description": "Remark entered by the collaborator"
},
"value": {
"type": "string",
"description": "Value of the entered property. Type depends on the type of the property. Can be boolean, string, or number, date in YYYY-MM-DD format, or datetime in RFC format."
},
"extras": {
"type": "string",
"description": "Depending on the type might contain the options possible (list_single_option or list_multi_option).\n\n In case of property type upload it will contain the filename.\n In case of date / datetime / time ranges contains the max or minimum values possible."
}
},
"required": [
"id",
"name",
"description",
"required",
"type"
]
},
"description": "List of enrolment properties"
}
},
"required": [
"id",
"uuid",
"contract_type"
]
}
RejectDELETE/api/v1/admin/collaborators/candidacies/{id}/reject
Example URI
- id
string
(required) Example: 544The candidacy ID
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"candidacy": {
"reject_reason": "Not suitable",
"reject_remark": "Comment"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"candidacy": {
"type": "object",
"properties": {
"reject_reason": {
"type": "string",
"description": "A reason why this candidacy was rejected"
},
"reject_remark": {
"type": "string",
"description": "A remark for candidacy reject"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "27",
"status": "waiting",
"comment": "Test comment",
"contract_type": "interim",
"fee": 127.4,
"remark_motivation": "Hello, world!",
"remark_private": "Hello, world!",
"remark_reply": "Hello, world!",
"reject_reason": "Test reason",
"reject_remark": "Test remark",
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"volunteer": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the candidacy"
},
"status": {
"type": "string",
"enum": [
"waiting",
"standby",
"accepted",
"rejected",
"cancelled"
],
"description": "The type of the current status"
},
"comment": {
"type": "string",
"description": "The comment subbmited by volunteer with the candidacy"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"remark_motivation": {
"type": "string"
},
"remark_private": {
"type": "string"
},
"remark_reply": {
"type": "string"
},
"reject_reason": {
"type": "string",
"description": "If candidacy is rejected, then field contains a reason from admin why it was rejected"
},
"reject_remark": {
"type": "string",
"description": "If candidacy is rejected, then field contains admin remark submitted during rejection"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"volunteer": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "Volunteer info"
}
},
"required": [
"id",
"status"
]
}
List for a projectGET/api/v1/admin/projects/{project_id}/candidacies{?page,page_items}
Example URI
- project_id
string
(required) Example: 123The ID of the project to return candidacies from
- filter[statuses]
string
(optional) Example: waitingArray of statuses to filter candidacies by
Choices:
waiting
accepted
rejected
standby
cancelled
- filter[teams]
string
(optional) Example: 444Array of team IDs to filter candidacies by
- filter[subprojects]
string
(optional) Example: 555Array of Subproject IDs to filter candidacies by
- order[field]
string
(optional) Example: ascOrder returned candidacies by specified field and direction
Choices:
asc
desc
- page
number
(optional) Default: 1 Example: 2The paginated page number.
- page_items
number
(optional) Default: 100 Example: 25Items per page
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"candidacies": [
{
"id": "27",
"status": "waiting",
"comment": "Test comment",
"contract_type": "interim",
"fee": 127.4,
"remark_motivation": "Hello, world!",
"remark_private": "Hello, world!",
"remark_reply": "Hello, world!",
"reject_reason": "Test reason",
"reject_remark": "Test remark",
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"volunteer": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
}
}
],
"previous": "``",
"next": "``"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"candidacies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the candidacy"
},
"status": {
"type": "string",
"enum": [
"waiting",
"standby",
"accepted",
"rejected",
"cancelled"
],
"description": "The type of the current status"
},
"comment": {
"type": "string",
"description": "The comment subbmited by volunteer with the candidacy"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"remark_motivation": {
"type": "string"
},
"remark_private": {
"type": "string"
},
"remark_reply": {
"type": "string"
},
"reject_reason": {
"type": "string",
"description": "If candidacy is rejected, then field contains a reason from admin why it was rejected"
},
"reject_remark": {
"type": "string",
"description": "If candidacy is rejected, then field contains admin remark submitted during rejection"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"volunteer": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "Volunteer info"
}
},
"required": [
"id",
"status"
]
},
"description": "List of all candidacies"
},
"previous": {
"type": "string",
"description": "Page of the next part of candidacies"
},
"next": {
"type": "string",
"description": "Page of the next part of candidacies"
}
}
}
List for a teamGET/api/v1/admin/teams/{team_id}/candidacies{?status,page,page_items}
Example URI
- team_id
string
(required) Example: 123The ID of the team
- status
string
(optional) Example: waitingFilter candidacies with given status
- page
number
(optional) Default: 1 Example: 2The paginated page number.
- page_items
number
(optional) Default: 100 Example: 25Items per page
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"candidacies": [
{
"id": "27",
"status": "waiting",
"comment": "Test comment",
"contract_type": "interim",
"fee": 127.4,
"remark_motivation": "Hello, world!",
"remark_private": "Hello, world!",
"remark_reply": "Hello, world!",
"reject_reason": "Test reason",
"reject_remark": "Test remark",
"team": {
"id": "27",
"name": "Example Team",
"function": {
"id": "7",
"name": "A Name",
"description": "A longer description"
},
"extra_practical_info": "Some practical info",
"volunteers_needed": 5,
"unconfirmed_registrations_count": 3,
"minimal_age": 18,
"client_experience_required": false,
"work_location_id": "120",
"work_location_specification": "At the entrance",
"work_location_specification_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"registrations_via_application": true,
"published": true,
"relative_checkin_start": "00:30",
"relative_checkin_duration": "00:15",
"checkin_appointment_id": "157",
"maximum_travel_distance": 20,
"shifts_attributes": [
{
"start_datetime": "2017-04-01T09:00:00.000+02:00",
"end_datetime": "2017-04-01T18:00:00.000+02:00",
"break_duration": "00:30"
}
],
"contract_details_attributes": [
{
"contract_type": "volunteer",
"be_collar_type": "arbeider",
"local_legal_entity_id": "4",
"compensation_hour_id": "3",
"compensation_day_id": "1",
"compensation_team_id": "2"
}
],
"planning_custom_fields": [
{
"planning_custom_field_id": "123",
"value": "Some text"
}
],
"created_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"created_at": "2022-06-21T13:59:27Z",
"updated_by": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"updated_at": "2022-06-21T13:59:27Z",
"errors": [
"Hello, world!"
]
},
"volunteer": {
"name": "John Doe",
"id": 2403,
"email": "john.doe@example.org",
"mobile": "+32498525251",
"gender": "male",
"nationality": "BE",
"social_statute_code": "career_pause",
"national_registration_numbers": [
{
"country": "BE",
"number": "YY.MM.DD-997.47"
}
],
"language": "en",
"birth_date": "1995-05-07",
"birth_place": "Antwerpen",
"birth_country": "BE",
"contact_person": {
"email": "john.doe@example.org",
"mobile": "+32498525251"
},
"iban": "BE68539007547034",
"bic": "HBKABE22",
"primary_address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
}
}
],
"previous": "``",
"next": "``"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"candidacies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the candidacy"
},
"status": {
"type": "string",
"enum": [
"waiting",
"standby",
"accepted",
"rejected",
"cancelled"
],
"description": "The type of the current status"
},
"comment": {
"type": "string",
"description": "The comment subbmited by volunteer with the candidacy"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The type of contract"
},
"fee": {
"type": "number",
"description": "The total fee the collaborator will receive"
},
"remark_motivation": {
"type": "string"
},
"remark_private": {
"type": "string"
},
"remark_reply": {
"type": "string"
},
"reject_reason": {
"type": "string",
"description": "If candidacy is rejected, then field contains a reason from admin why it was rejected"
},
"reject_remark": {
"type": "string",
"description": "If candidacy is rejected, then field contains admin remark submitted during rejection"
},
"team": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the created team"
},
"name": {
"type": "string",
"description": "The team name. Does not need to be passed, if automatic_name is true"
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The longer description"
}
},
"description": "The function of the team"
},
"extra_practical_info": {
"type": "string",
"description": "Text to describe some extra info"
},
"volunteers_needed": {
"type": "number",
"description": "The number of collaborators needed"
},
"unconfirmed_registrations_count": {
"type": "number",
"description": "Number of unconfirmed enrolments."
},
"minimal_age": {
"type": "number",
"description": "The minimal age for collaborators to be enrolled in this team"
},
"client_experience_required": {
"type": "boolean",
"description": "Whether customer experience is required for collaborators to be enrolled in this team. Only applicable, if the project to which the team belongs has a linked customer"
},
"work_location_id": {
"type": "string",
"description": "The ID of the address of the work station"
},
"work_location_specification": {
"type": "string",
"description": "An addition to the work station"
},
"work_location_specification_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
],
"description": "Translatable fields for work location"
},
"registrations_via_application": {
"type": "boolean",
"description": "Indicating whether the team is planned with candicacies (true) or direct registrations (false)"
},
"published": {
"type": "boolean",
"description": "Indication whether the team is published"
},
"relative_checkin_start": {
"type": "string",
"description": "A time (HH:MM) to indicate when checkin starts before the first shift"
},
"relative_checkin_duration": {
"type": "string",
"description": "A time (HH:MM) to indicate how long the checkin lasts"
},
"checkin_appointment_id": {
"type": "string",
"description": "The ID of checkin appointment. Either this or 2 relative checkin fields need to be passed"
},
"maximum_travel_distance": {
"type": "number",
"description": "The maximum distance collaborators are allowed to travel to work for this team in kilometers"
},
"shifts_attributes": {
"type": "array",
"description": "A list of shifts"
},
"contract_details_attributes": {
"type": "array",
"description": "A list of contract details"
},
"planning_custom_fields": {
"type": "array",
"description": "A list of planning custom fields"
},
"created_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who created the team"
},
"created_at": {
"type": "string",
"description": "Time of when team was created in ISO 8601 format"
},
"updated_by": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "The user who updated the team"
},
"updated_at": {
"type": "string",
"description": "Time of when tean was updated in ISO 8601 format"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating\n\nthe team. The keys refer to the name of the field (eg. function_id) but\ncan also be “base” for generic errors. The value is a list of human\nreadable errors for that specific field."
}
},
"required": [
"id",
"volunteers_needed",
"work_location_id",
"work_location_specification",
"published",
"shifts_attributes",
"created_at",
"updated_at"
],
"description": "Team info"
},
"volunteer": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the collaborator"
},
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"email": {
"type": "string",
"description": "Email of the collaborator"
},
"mobile": {
"type": "string",
"description": "Phone number of the collaborator"
},
"gender": {
"type": "string",
"enum": [
"male",
"female"
],
"description": "Gender"
},
"nationality": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"social_statute_code": {
"type": "string",
"enum": [
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"description": "The social statute"
},
"national_registration_numbers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country for which the number is valid according to ISO 3166-1 alpha-2"
},
"number": {
"type": "string",
"description": "unique number format specified per person per country"
}
}
}
},
"language": {
"type": "string",
"description": "Language in which to communicate with the collaborator according to ISO 639-1"
},
"birth_date": {
"type": "string",
"description": "Birth date according RFC 3339"
},
"birth_place": {
"type": "string",
"description": "Birth city"
},
"birth_country": {
"type": "string",
"description": "Birth country according to ISO 3166-1 alpha-2"
},
"contact_person": {
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "The email of this contact person"
},
"mobile": {
"type": "string",
"description": "The phone number"
}
},
"required": [
"email"
],
"description": "A contact person in case of emergency"
},
"iban": {
"type": "string",
"description": "IBAN number"
},
"bic": {
"type": "string",
"description": "BIC number"
},
"primary_address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The home address"
}
},
"required": [
"name",
"id",
"language"
],
"description": "Volunteer info"
}
},
"required": [
"id",
"status"
]
},
"description": "List of all candidacies"
},
"previous": {
"type": "string",
"description": "Page of the next part of candidacies"
},
"next": {
"type": "string",
"description": "Page of the next part of candidacies"
}
}
}
Master Data ¶
Availability types ¶
ListGET/api/v1/admin/tenant/availability_types
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"availability_types": [
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"abbreviation_i18n_attributes": {
"0": {
"language": "en",
"abbreviation": "CEO"
}
},
"sort_order": 25,
"is_plannable": true,
"allow_overlap_existing_enrolments": false,
"requires_approval": false,
"create_admin_notifications": false,
"approval_only_by_primary_department": false,
"update_only_by_primary_department": false,
"request_evidence": false,
"show_on_work_schedule": true,
"allow_entry_by_collaborator": false,
"enter_for_past_present_future": [
"fully_past,past,present,future,fully_future"
],
"allow_remark": true,
"enter_per": "free",
"color": "#AABBCC",
"roles_that_can_approve": [
"1"
],
"applicable_for_social_statuses": [
null,
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"payroll_codes": [
{
"id": "1",
"payroll_service_id": "1",
"payroll_code": "ABC",
"requires_approval": false,
"payroll_calculates_duration": false
}
],
"overlappable_type_definitions": [
{
"id": "1",
"allowed_to_be_overlapped_by_id": "12"
}
],
"role_based_permissions": [
{
"id": "1",
"applies_for": "admin",
"action": "create",
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": "Hello, world!",
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": "manager",
"check_status": true
}
]
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"availability_types": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"abbreviation_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"abbreviation": {
"type": "string",
"description": "the abbreviation of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"abbreviation"
]
}
}
},
"sort_order": {
"type": "number",
"description": "The order in the list. Can be left empty and will be added as last."
},
"is_plannable": {
"type": "boolean",
"description": "whether the availabilty type is plannable (i.e. Ready for work) or not (i.e. Sick, Absent)"
},
"allow_overlap_existing_enrolments": {
"type": "boolean",
"description": "If the availability can overlap existing enrolments when created. Only appluicable if is not plannable."
},
"requires_approval": {
"type": "boolean",
"description": "When true, any availability of this type will need to be approved by an administrator before being final"
},
"create_admin_notifications": {
"type": "boolean",
"description": "When true if admin notifications need to be made when created by the collaborator. Only applicable if requires approval is false. (in the other case notifications are made anyway)"
},
"approval_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can approve (only used when `requires_approval` is true)"
},
"update_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can update (only used when `requires_approval` is true)"
},
"request_evidence": {
"type": "boolean",
"description": "when true, the collaborator will be allowed to upload documents supporting the availability requested"
},
"allow_entry_by_collaborator": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to use this availability type: only admins will be able to enter it"
},
"enter_for_past_present_future": {
"type": "array",
"description": "Determines if the availability type can be entered in these periods. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future"
},
"allow_remark": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to enter a text remark when requesting availabilies of this type"
},
"enter_per": {
"type": "string",
"enum": [
"free",
"day",
"day_part"
],
"description": "what time periods is this allowed: free parts of the day, all day (24 hours) or a predefined time-window (i.e. Morning 6:00-12:00 Afternoon 12:00-18:00)"
},
"color": {
"type": "string",
"description": "Color used to present the availability in calendars. Should be a hexadecimal color code."
},
"show_on_work_schedule": {
"type": "boolean",
"description": "If the availability should show up on the work schedule."
},
"roles_that_can_approve": {
"type": "array",
"description": "a list of 0 or more roles `id` that can approve the availabilities of this type. When blank: all roles can approve."
},
"applicable_for_social_statuses": {
"type": "array",
"description": "a list of 0 or more social statuses that may use this type."
},
"payroll_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type payroll code"
},
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration associated to availabilities of this type"
},
"payroll_code": {
"type": "string",
"description": "the payroll integration identifier for this type of availability"
},
"requires_approval": {
"type": "boolean",
"description": "when true, the payroll integration will determine if availabilities of this type are approved"
},
"payroll_calculates_duration": {
"type": "boolean",
"description": "when true, the payroll integration will determine the duration of these availabilities"
}
},
"required": [
"id",
"payroll_service_id",
"payroll_code",
"requires_approval",
"payroll_calculates_duration"
]
},
"description": "a list of 0 or more payroll codes that are associated to availabilities of this type"
},
"overlappable_type_definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the allowed availability type definition"
},
"allowed_to_be_overlapped_by_id": {
"type": "string",
"description": "The ID of the availability type that is allowed to overlap this one. Both must be either plannble = Yes or plannable = No"
}
},
"required": [
"id",
"allowed_to_be_overlapped_by_id"
]
},
"description": "a list of 0 or more definitions of availabilities that are allowed to overlap this availability type. Is only visible when the setting Allow overlapping availabilities = Yes"
},
"role_based_permissions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the role based permission"
},
"applies_for": {
"type": "string",
"description": "One of admin|manager that determine if this permission applies to site admins or managers of the collaborator"
},
"action": {
"type": "string",
"description": "One of create|update|destroy|approve corresponding to the action being granted permission"
},
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": {
"type": "string"
},
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": {
"type": "string"
},
"check_status": {
"type": "boolean",
"description": "whether the status of an availability is checked before performing the action: for example, if planning approved and payroll not approved some actions will not be possible"
}
},
"required": [
"id",
"applies_for",
"action",
"check_status"
]
},
"description": "a list of 0 or more role based permissions that describe what actions admin and managers can perform on availabilities of this type"
}
},
"required": [
"id",
"is_plannable",
"requires_approval",
"enter_per"
]
}
}
}
}
CreatePOST/api/v1/admin/tenant/availability_types
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"abbreviation_i18n_attributes": {
"0": {
"language": "en",
"abbreviation": "CEO"
}
},
"sort_order": 25,
"is_plannable": true,
"allow_overlap_existing_enrolments": false,
"requires_approval": false,
"create_admin_notifications": false,
"approval_only_by_primary_department": false,
"update_only_by_primary_department": false,
"request_evidence": false,
"show_on_work_schedule": true,
"allow_entry_by_collaborator": false,
"enter_for_past_present_future": [
"fully_past,past,present,future,fully_future"
],
"allow_remark": true,
"enter_per": "free",
"color": "#AABBCC",
"roles_that_can_approve": [
"1"
],
"applicable_for_social_statuses": [
null,
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"payroll_codes": [
{
"id": "1",
"payroll_service_id": "1",
"payroll_code": "ABC",
"requires_approval": false,
"payroll_calculates_duration": false
}
],
"overlappable_type_definitions": [
{
"id": "1",
"allowed_to_be_overlapped_by_id": "12"
}
],
"role_based_permissions": [
{
"id": "1",
"applies_for": "admin",
"action": "create",
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": "Hello, world!",
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": "manager",
"check_status": true
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"abbreviation_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"abbreviation": {
"type": "string",
"description": "the abbreviation of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"abbreviation"
]
}
}
},
"sort_order": {
"type": "number",
"description": "The order in the list. Can be left empty and will be added as last."
},
"is_plannable": {
"type": "boolean",
"description": "whether the availabilty type is plannable (i.e. Ready for work) or not (i.e. Sick, Absent)"
},
"allow_overlap_existing_enrolments": {
"type": "boolean",
"description": "If the availability can overlap existing enrolments when created. Only appluicable if is not plannable."
},
"requires_approval": {
"type": "boolean",
"description": "When true, any availability of this type will need to be approved by an administrator before being final"
},
"create_admin_notifications": {
"type": "boolean",
"description": "When true if admin notifications need to be made when created by the collaborator. Only applicable if requires approval is false. (in the other case notifications are made anyway)"
},
"approval_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can approve (only used when `requires_approval` is true)"
},
"update_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can update (only used when `requires_approval` is true)"
},
"request_evidence": {
"type": "boolean",
"description": "when true, the collaborator will be allowed to upload documents supporting the availability requested"
},
"allow_entry_by_collaborator": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to use this availability type: only admins will be able to enter it"
},
"enter_for_past_present_future": {
"type": "array",
"description": "Determines if the availability type can be entered in these periods. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future"
},
"allow_remark": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to enter a text remark when requesting availabilies of this type"
},
"enter_per": {
"type": "string",
"enum": [
"free",
"day",
"day_part"
],
"description": "what time periods is this allowed: free parts of the day, all day (24 hours) or a predefined time-window (i.e. Morning 6:00-12:00 Afternoon 12:00-18:00)"
},
"color": {
"type": "string",
"description": "Color used to present the availability in calendars. Should be a hexadecimal color code."
},
"show_on_work_schedule": {
"type": "boolean",
"description": "If the availability should show up on the work schedule."
},
"roles_that_can_approve": {
"type": "array",
"description": "a list of 0 or more roles `id` that can approve the availabilities of this type. When blank: all roles can approve."
},
"applicable_for_social_statuses": {
"type": "array",
"description": "a list of 0 or more social statuses that may use this type."
},
"payroll_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type payroll code"
},
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration associated to availabilities of this type"
},
"payroll_code": {
"type": "string",
"description": "the payroll integration identifier for this type of availability"
},
"requires_approval": {
"type": "boolean",
"description": "when true, the payroll integration will determine if availabilities of this type are approved"
},
"payroll_calculates_duration": {
"type": "boolean",
"description": "when true, the payroll integration will determine the duration of these availabilities"
}
},
"required": [
"id",
"payroll_service_id",
"payroll_code",
"requires_approval",
"payroll_calculates_duration"
]
},
"description": "a list of 0 or more payroll codes that are associated to availabilities of this type"
},
"overlappable_type_definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the allowed availability type definition"
},
"allowed_to_be_overlapped_by_id": {
"type": "string",
"description": "The ID of the availability type that is allowed to overlap this one. Both must be either plannble = Yes or plannable = No"
}
},
"required": [
"id",
"allowed_to_be_overlapped_by_id"
]
},
"description": "a list of 0 or more definitions of availabilities that are allowed to overlap this availability type. Is only visible when the setting Allow overlapping availabilities = Yes"
},
"role_based_permissions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the role based permission"
},
"applies_for": {
"type": "string",
"description": "One of admin|manager that determine if this permission applies to site admins or managers of the collaborator"
},
"action": {
"type": "string",
"description": "One of create|update|destroy|approve corresponding to the action being granted permission"
},
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": {
"type": "string"
},
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": {
"type": "string"
},
"check_status": {
"type": "boolean",
"description": "whether the status of an availability is checked before performing the action: for example, if planning approved and payroll not approved some actions will not be possible"
}
},
"required": [
"id",
"applies_for",
"action",
"check_status"
]
},
"description": "a list of 0 or more role based permissions that describe what actions admin and managers can perform on availabilities of this type"
}
},
"required": [
"id",
"is_plannable",
"requires_approval",
"enter_per"
]
}
201
Headers
Content-Type: application/json
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"abbreviation_i18n_attributes": {
"0": {
"language": "en",
"abbreviation": "CEO"
}
},
"sort_order": 25,
"is_plannable": true,
"allow_overlap_existing_enrolments": false,
"requires_approval": false,
"create_admin_notifications": false,
"approval_only_by_primary_department": false,
"update_only_by_primary_department": false,
"request_evidence": false,
"show_on_work_schedule": true,
"allow_entry_by_collaborator": false,
"enter_for_past_present_future": [
"fully_past,past,present,future,fully_future"
],
"allow_remark": true,
"enter_per": "free",
"color": "#AABBCC",
"roles_that_can_approve": [
"1"
],
"applicable_for_social_statuses": [
null,
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"payroll_codes": [
{
"id": "1",
"payroll_service_id": "1",
"payroll_code": "ABC",
"requires_approval": false,
"payroll_calculates_duration": false
}
],
"overlappable_type_definitions": [
{
"id": "1",
"allowed_to_be_overlapped_by_id": "12"
}
],
"role_based_permissions": [
{
"id": "1",
"applies_for": "admin",
"action": "create",
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": "Hello, world!",
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": "manager",
"check_status": true
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"abbreviation_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"abbreviation": {
"type": "string",
"description": "the abbreviation of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"abbreviation"
]
}
}
},
"sort_order": {
"type": "number",
"description": "The order in the list. Can be left empty and will be added as last."
},
"is_plannable": {
"type": "boolean",
"description": "whether the availabilty type is plannable (i.e. Ready for work) or not (i.e. Sick, Absent)"
},
"allow_overlap_existing_enrolments": {
"type": "boolean",
"description": "If the availability can overlap existing enrolments when created. Only appluicable if is not plannable."
},
"requires_approval": {
"type": "boolean",
"description": "When true, any availability of this type will need to be approved by an administrator before being final"
},
"create_admin_notifications": {
"type": "boolean",
"description": "When true if admin notifications need to be made when created by the collaborator. Only applicable if requires approval is false. (in the other case notifications are made anyway)"
},
"approval_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can approve (only used when `requires_approval` is true)"
},
"update_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can update (only used when `requires_approval` is true)"
},
"request_evidence": {
"type": "boolean",
"description": "when true, the collaborator will be allowed to upload documents supporting the availability requested"
},
"allow_entry_by_collaborator": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to use this availability type: only admins will be able to enter it"
},
"enter_for_past_present_future": {
"type": "array",
"description": "Determines if the availability type can be entered in these periods. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future"
},
"allow_remark": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to enter a text remark when requesting availabilies of this type"
},
"enter_per": {
"type": "string",
"enum": [
"free",
"day",
"day_part"
],
"description": "what time periods is this allowed: free parts of the day, all day (24 hours) or a predefined time-window (i.e. Morning 6:00-12:00 Afternoon 12:00-18:00)"
},
"color": {
"type": "string",
"description": "Color used to present the availability in calendars. Should be a hexadecimal color code."
},
"show_on_work_schedule": {
"type": "boolean",
"description": "If the availability should show up on the work schedule."
},
"roles_that_can_approve": {
"type": "array",
"description": "a list of 0 or more roles `id` that can approve the availabilities of this type. When blank: all roles can approve."
},
"applicable_for_social_statuses": {
"type": "array",
"description": "a list of 0 or more social statuses that may use this type."
},
"payroll_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type payroll code"
},
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration associated to availabilities of this type"
},
"payroll_code": {
"type": "string",
"description": "the payroll integration identifier for this type of availability"
},
"requires_approval": {
"type": "boolean",
"description": "when true, the payroll integration will determine if availabilities of this type are approved"
},
"payroll_calculates_duration": {
"type": "boolean",
"description": "when true, the payroll integration will determine the duration of these availabilities"
}
},
"required": [
"id",
"payroll_service_id",
"payroll_code",
"requires_approval",
"payroll_calculates_duration"
]
},
"description": "a list of 0 or more payroll codes that are associated to availabilities of this type"
},
"overlappable_type_definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the allowed availability type definition"
},
"allowed_to_be_overlapped_by_id": {
"type": "string",
"description": "The ID of the availability type that is allowed to overlap this one. Both must be either plannble = Yes or plannable = No"
}
},
"required": [
"id",
"allowed_to_be_overlapped_by_id"
]
},
"description": "a list of 0 or more definitions of availabilities that are allowed to overlap this availability type. Is only visible when the setting Allow overlapping availabilities = Yes"
},
"role_based_permissions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the role based permission"
},
"applies_for": {
"type": "string",
"description": "One of admin|manager that determine if this permission applies to site admins or managers of the collaborator"
},
"action": {
"type": "string",
"description": "One of create|update|destroy|approve corresponding to the action being granted permission"
},
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": {
"type": "string"
},
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": {
"type": "string"
},
"check_status": {
"type": "boolean",
"description": "whether the status of an availability is checked before performing the action: for example, if planning approved and payroll not approved some actions will not be possible"
}
},
"required": [
"id",
"applies_for",
"action",
"check_status"
]
},
"description": "a list of 0 or more role based permissions that describe what actions admin and managers can perform on availabilities of this type"
}
},
"required": [
"id",
"is_plannable",
"requires_approval",
"enter_per"
]
}
ReadGET/api/v1/admin/tenant/availability_types/{id}
Example URI
- id
string
(required) Example: 1ID of the Availability type
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json; charset=utf-8
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"abbreviation_i18n_attributes": {
"0": {
"language": "en",
"abbreviation": "CEO"
}
},
"sort_order": 25,
"is_plannable": true,
"allow_overlap_existing_enrolments": false,
"requires_approval": false,
"create_admin_notifications": false,
"approval_only_by_primary_department": false,
"update_only_by_primary_department": false,
"request_evidence": false,
"show_on_work_schedule": true,
"allow_entry_by_collaborator": false,
"enter_for_past_present_future": [
"fully_past,past,present,future,fully_future"
],
"allow_remark": true,
"enter_per": "free",
"color": "#AABBCC",
"roles_that_can_approve": [
"1"
],
"applicable_for_social_statuses": [
null,
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"payroll_codes": [
{
"id": "1",
"payroll_service_id": "1",
"payroll_code": "ABC",
"requires_approval": false,
"payroll_calculates_duration": false
}
],
"overlappable_type_definitions": [
{
"id": "1",
"allowed_to_be_overlapped_by_id": "12"
}
],
"role_based_permissions": [
{
"id": "1",
"applies_for": "admin",
"action": "create",
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": "Hello, world!",
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": "manager",
"check_status": true
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"abbreviation_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"abbreviation": {
"type": "string",
"description": "the abbreviation of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"abbreviation"
]
}
}
},
"sort_order": {
"type": "number",
"description": "The order in the list. Can be left empty and will be added as last."
},
"is_plannable": {
"type": "boolean",
"description": "whether the availabilty type is plannable (i.e. Ready for work) or not (i.e. Sick, Absent)"
},
"allow_overlap_existing_enrolments": {
"type": "boolean",
"description": "If the availability can overlap existing enrolments when created. Only appluicable if is not plannable."
},
"requires_approval": {
"type": "boolean",
"description": "When true, any availability of this type will need to be approved by an administrator before being final"
},
"create_admin_notifications": {
"type": "boolean",
"description": "When true if admin notifications need to be made when created by the collaborator. Only applicable if requires approval is false. (in the other case notifications are made anyway)"
},
"approval_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can approve (only used when `requires_approval` is true)"
},
"update_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can update (only used when `requires_approval` is true)"
},
"request_evidence": {
"type": "boolean",
"description": "when true, the collaborator will be allowed to upload documents supporting the availability requested"
},
"allow_entry_by_collaborator": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to use this availability type: only admins will be able to enter it"
},
"enter_for_past_present_future": {
"type": "array",
"description": "Determines if the availability type can be entered in these periods. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future"
},
"allow_remark": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to enter a text remark when requesting availabilies of this type"
},
"enter_per": {
"type": "string",
"enum": [
"free",
"day",
"day_part"
],
"description": "what time periods is this allowed: free parts of the day, all day (24 hours) or a predefined time-window (i.e. Morning 6:00-12:00 Afternoon 12:00-18:00)"
},
"color": {
"type": "string",
"description": "Color used to present the availability in calendars. Should be a hexadecimal color code."
},
"show_on_work_schedule": {
"type": "boolean",
"description": "If the availability should show up on the work schedule."
},
"roles_that_can_approve": {
"type": "array",
"description": "a list of 0 or more roles `id` that can approve the availabilities of this type. When blank: all roles can approve."
},
"applicable_for_social_statuses": {
"type": "array",
"description": "a list of 0 or more social statuses that may use this type."
},
"payroll_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type payroll code"
},
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration associated to availabilities of this type"
},
"payroll_code": {
"type": "string",
"description": "the payroll integration identifier for this type of availability"
},
"requires_approval": {
"type": "boolean",
"description": "when true, the payroll integration will determine if availabilities of this type are approved"
},
"payroll_calculates_duration": {
"type": "boolean",
"description": "when true, the payroll integration will determine the duration of these availabilities"
}
},
"required": [
"id",
"payroll_service_id",
"payroll_code",
"requires_approval",
"payroll_calculates_duration"
]
},
"description": "a list of 0 or more payroll codes that are associated to availabilities of this type"
},
"overlappable_type_definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the allowed availability type definition"
},
"allowed_to_be_overlapped_by_id": {
"type": "string",
"description": "The ID of the availability type that is allowed to overlap this one. Both must be either plannble = Yes or plannable = No"
}
},
"required": [
"id",
"allowed_to_be_overlapped_by_id"
]
},
"description": "a list of 0 or more definitions of availabilities that are allowed to overlap this availability type. Is only visible when the setting Allow overlapping availabilities = Yes"
},
"role_based_permissions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the role based permission"
},
"applies_for": {
"type": "string",
"description": "One of admin|manager that determine if this permission applies to site admins or managers of the collaborator"
},
"action": {
"type": "string",
"description": "One of create|update|destroy|approve corresponding to the action being granted permission"
},
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": {
"type": "string"
},
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": {
"type": "string"
},
"check_status": {
"type": "boolean",
"description": "whether the status of an availability is checked before performing the action: for example, if planning approved and payroll not approved some actions will not be possible"
}
},
"required": [
"id",
"applies_for",
"action",
"check_status"
]
},
"description": "a list of 0 or more role based permissions that describe what actions admin and managers can perform on availabilities of this type"
}
},
"required": [
"id",
"is_plannable",
"requires_approval",
"enter_per"
]
}
UpdatePATCH/api/v1/admin/tenant/availability_types/{id}
Example URI
- id
string
(required) Example: 1ID of the Availability type
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"abbreviation_i18n_attributes": {
"0": {
"language": "en",
"abbreviation": "CEO"
}
},
"sort_order": 25,
"is_plannable": true,
"allow_overlap_existing_enrolments": false,
"requires_approval": false,
"create_admin_notifications": false,
"approval_only_by_primary_department": false,
"update_only_by_primary_department": false,
"request_evidence": false,
"show_on_work_schedule": true,
"allow_entry_by_collaborator": false,
"enter_for_past_present_future": [
"fully_past,past,present,future,fully_future"
],
"allow_remark": true,
"enter_per": "free",
"color": "#AABBCC",
"roles_that_can_approve": [
"1"
],
"applicable_for_social_statuses": [
null,
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"payroll_codes": [
{
"id": "1",
"payroll_service_id": "1",
"payroll_code": "ABC",
"requires_approval": false,
"payroll_calculates_duration": false
}
],
"overlappable_type_definitions": [
{
"id": "1",
"allowed_to_be_overlapped_by_id": "12"
}
],
"role_based_permissions": [
{
"id": "1",
"applies_for": "admin",
"action": "create",
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": "Hello, world!",
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": "manager",
"check_status": true
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"abbreviation_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"abbreviation": {
"type": "string",
"description": "the abbreviation of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"abbreviation"
]
}
}
},
"sort_order": {
"type": "number",
"description": "The order in the list. Can be left empty and will be added as last."
},
"is_plannable": {
"type": "boolean",
"description": "whether the availabilty type is plannable (i.e. Ready for work) or not (i.e. Sick, Absent)"
},
"allow_overlap_existing_enrolments": {
"type": "boolean",
"description": "If the availability can overlap existing enrolments when created. Only appluicable if is not plannable."
},
"requires_approval": {
"type": "boolean",
"description": "When true, any availability of this type will need to be approved by an administrator before being final"
},
"create_admin_notifications": {
"type": "boolean",
"description": "When true if admin notifications need to be made when created by the collaborator. Only applicable if requires approval is false. (in the other case notifications are made anyway)"
},
"approval_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can approve (only used when `requires_approval` is true)"
},
"update_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can update (only used when `requires_approval` is true)"
},
"request_evidence": {
"type": "boolean",
"description": "when true, the collaborator will be allowed to upload documents supporting the availability requested"
},
"allow_entry_by_collaborator": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to use this availability type: only admins will be able to enter it"
},
"enter_for_past_present_future": {
"type": "array",
"description": "Determines if the availability type can be entered in these periods. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future"
},
"allow_remark": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to enter a text remark when requesting availabilies of this type"
},
"enter_per": {
"type": "string",
"enum": [
"free",
"day",
"day_part"
],
"description": "what time periods is this allowed: free parts of the day, all day (24 hours) or a predefined time-window (i.e. Morning 6:00-12:00 Afternoon 12:00-18:00)"
},
"color": {
"type": "string",
"description": "Color used to present the availability in calendars. Should be a hexadecimal color code."
},
"show_on_work_schedule": {
"type": "boolean",
"description": "If the availability should show up on the work schedule."
},
"roles_that_can_approve": {
"type": "array",
"description": "a list of 0 or more roles `id` that can approve the availabilities of this type. When blank: all roles can approve."
},
"applicable_for_social_statuses": {
"type": "array",
"description": "a list of 0 or more social statuses that may use this type."
},
"payroll_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type payroll code"
},
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration associated to availabilities of this type"
},
"payroll_code": {
"type": "string",
"description": "the payroll integration identifier for this type of availability"
},
"requires_approval": {
"type": "boolean",
"description": "when true, the payroll integration will determine if availabilities of this type are approved"
},
"payroll_calculates_duration": {
"type": "boolean",
"description": "when true, the payroll integration will determine the duration of these availabilities"
}
},
"required": [
"id",
"payroll_service_id",
"payroll_code",
"requires_approval",
"payroll_calculates_duration"
]
},
"description": "a list of 0 or more payroll codes that are associated to availabilities of this type"
},
"overlappable_type_definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the allowed availability type definition"
},
"allowed_to_be_overlapped_by_id": {
"type": "string",
"description": "The ID of the availability type that is allowed to overlap this one. Both must be either plannble = Yes or plannable = No"
}
},
"required": [
"id",
"allowed_to_be_overlapped_by_id"
]
},
"description": "a list of 0 or more definitions of availabilities that are allowed to overlap this availability type. Is only visible when the setting Allow overlapping availabilities = Yes"
},
"role_based_permissions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the role based permission"
},
"applies_for": {
"type": "string",
"description": "One of admin|manager that determine if this permission applies to site admins or managers of the collaborator"
},
"action": {
"type": "string",
"description": "One of create|update|destroy|approve corresponding to the action being granted permission"
},
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": {
"type": "string"
},
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": {
"type": "string"
},
"check_status": {
"type": "boolean",
"description": "whether the status of an availability is checked before performing the action: for example, if planning approved and payroll not approved some actions will not be possible"
}
},
"required": [
"id",
"applies_for",
"action",
"check_status"
]
},
"description": "a list of 0 or more role based permissions that describe what actions admin and managers can perform on availabilities of this type"
}
},
"required": [
"id",
"is_plannable",
"requires_approval",
"enter_per"
]
}
200
Headers
Content-Type: application/json
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"abbreviation_i18n_attributes": {
"0": {
"language": "en",
"abbreviation": "CEO"
}
},
"sort_order": 25,
"is_plannable": true,
"allow_overlap_existing_enrolments": false,
"requires_approval": false,
"create_admin_notifications": false,
"approval_only_by_primary_department": false,
"update_only_by_primary_department": false,
"request_evidence": false,
"show_on_work_schedule": true,
"allow_entry_by_collaborator": false,
"enter_for_past_present_future": [
"fully_past,past,present,future,fully_future"
],
"allow_remark": true,
"enter_per": "free",
"color": "#AABBCC",
"roles_that_can_approve": [
"1"
],
"applicable_for_social_statuses": [
null,
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"payroll_codes": [
{
"id": "1",
"payroll_service_id": "1",
"payroll_code": "ABC",
"requires_approval": false,
"payroll_calculates_duration": false
}
],
"overlappable_type_definitions": [
{
"id": "1",
"allowed_to_be_overlapped_by_id": "12"
}
],
"role_based_permissions": [
{
"id": "1",
"applies_for": "admin",
"action": "create",
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": "Hello, world!",
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": "manager",
"check_status": true
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"abbreviation_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"abbreviation": {
"type": "string",
"description": "the abbreviation of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"abbreviation"
]
}
}
},
"sort_order": {
"type": "number",
"description": "The order in the list. Can be left empty and will be added as last."
},
"is_plannable": {
"type": "boolean",
"description": "whether the availabilty type is plannable (i.e. Ready for work) or not (i.e. Sick, Absent)"
},
"allow_overlap_existing_enrolments": {
"type": "boolean",
"description": "If the availability can overlap existing enrolments when created. Only appluicable if is not plannable."
},
"requires_approval": {
"type": "boolean",
"description": "When true, any availability of this type will need to be approved by an administrator before being final"
},
"create_admin_notifications": {
"type": "boolean",
"description": "When true if admin notifications need to be made when created by the collaborator. Only applicable if requires approval is false. (in the other case notifications are made anyway)"
},
"approval_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can approve (only used when `requires_approval` is true)"
},
"update_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can update (only used when `requires_approval` is true)"
},
"request_evidence": {
"type": "boolean",
"description": "when true, the collaborator will be allowed to upload documents supporting the availability requested"
},
"allow_entry_by_collaborator": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to use this availability type: only admins will be able to enter it"
},
"enter_for_past_present_future": {
"type": "array",
"description": "Determines if the availability type can be entered in these periods. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future"
},
"allow_remark": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to enter a text remark when requesting availabilies of this type"
},
"enter_per": {
"type": "string",
"enum": [
"free",
"day",
"day_part"
],
"description": "what time periods is this allowed: free parts of the day, all day (24 hours) or a predefined time-window (i.e. Morning 6:00-12:00 Afternoon 12:00-18:00)"
},
"color": {
"type": "string",
"description": "Color used to present the availability in calendars. Should be a hexadecimal color code."
},
"show_on_work_schedule": {
"type": "boolean",
"description": "If the availability should show up on the work schedule."
},
"roles_that_can_approve": {
"type": "array",
"description": "a list of 0 or more roles `id` that can approve the availabilities of this type. When blank: all roles can approve."
},
"applicable_for_social_statuses": {
"type": "array",
"description": "a list of 0 or more social statuses that may use this type."
},
"payroll_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type payroll code"
},
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration associated to availabilities of this type"
},
"payroll_code": {
"type": "string",
"description": "the payroll integration identifier for this type of availability"
},
"requires_approval": {
"type": "boolean",
"description": "when true, the payroll integration will determine if availabilities of this type are approved"
},
"payroll_calculates_duration": {
"type": "boolean",
"description": "when true, the payroll integration will determine the duration of these availabilities"
}
},
"required": [
"id",
"payroll_service_id",
"payroll_code",
"requires_approval",
"payroll_calculates_duration"
]
},
"description": "a list of 0 or more payroll codes that are associated to availabilities of this type"
},
"overlappable_type_definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the allowed availability type definition"
},
"allowed_to_be_overlapped_by_id": {
"type": "string",
"description": "The ID of the availability type that is allowed to overlap this one. Both must be either plannble = Yes or plannable = No"
}
},
"required": [
"id",
"allowed_to_be_overlapped_by_id"
]
},
"description": "a list of 0 or more definitions of availabilities that are allowed to overlap this availability type. Is only visible when the setting Allow overlapping availabilities = Yes"
},
"role_based_permissions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the role based permission"
},
"applies_for": {
"type": "string",
"description": "One of admin|manager that determine if this permission applies to site admins or managers of the collaborator"
},
"action": {
"type": "string",
"description": "One of create|update|destroy|approve corresponding to the action being granted permission"
},
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": {
"type": "string"
},
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": {
"type": "string"
},
"check_status": {
"type": "boolean",
"description": "whether the status of an availability is checked before performing the action: for example, if planning approved and payroll not approved some actions will not be possible"
}
},
"required": [
"id",
"applies_for",
"action",
"check_status"
]
},
"description": "a list of 0 or more role based permissions that describe what actions admin and managers can perform on availabilities of this type"
}
},
"required": [
"id",
"is_plannable",
"requires_approval",
"enter_per"
]
}
201
Headers
Content-Type: application/json
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"abbreviation_i18n_attributes": {
"0": {
"language": "en",
"abbreviation": "CEO"
}
},
"sort_order": 25,
"is_plannable": true,
"allow_overlap_existing_enrolments": false,
"requires_approval": false,
"create_admin_notifications": false,
"approval_only_by_primary_department": false,
"update_only_by_primary_department": false,
"request_evidence": false,
"show_on_work_schedule": true,
"allow_entry_by_collaborator": false,
"enter_for_past_present_future": [
"fully_past,past,present,future,fully_future"
],
"allow_remark": true,
"enter_per": "free",
"color": "#AABBCC",
"roles_that_can_approve": [
"1"
],
"applicable_for_social_statuses": [
null,
"career_pause",
"disabled_entrepreneur",
"early_retired",
"entrepreneur",
"flexijobs",
"functionary",
"incapacitated",
"living_wager",
"retired",
"student",
"unemployed",
"unemployed_waiting_period",
"unknown",
"working_class",
"working_class_blue_collar",
"work_student"
],
"payroll_codes": [
{
"id": "1",
"payroll_service_id": "1",
"payroll_code": "ABC",
"requires_approval": false,
"payroll_calculates_duration": false
}
],
"overlappable_type_definitions": [
{
"id": "1",
"allowed_to_be_overlapped_by_id": "12"
}
],
"role_based_permissions": [
{
"id": "1",
"applies_for": "admin",
"action": "create",
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": "Hello, world!",
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": "manager",
"check_status": true
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"abbreviation_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"abbreviation": {
"type": "string",
"description": "the abbreviation of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"abbreviation"
]
}
}
},
"sort_order": {
"type": "number",
"description": "The order in the list. Can be left empty and will be added as last."
},
"is_plannable": {
"type": "boolean",
"description": "whether the availabilty type is plannable (i.e. Ready for work) or not (i.e. Sick, Absent)"
},
"allow_overlap_existing_enrolments": {
"type": "boolean",
"description": "If the availability can overlap existing enrolments when created. Only appluicable if is not plannable."
},
"requires_approval": {
"type": "boolean",
"description": "When true, any availability of this type will need to be approved by an administrator before being final"
},
"create_admin_notifications": {
"type": "boolean",
"description": "When true if admin notifications need to be made when created by the collaborator. Only applicable if requires approval is false. (in the other case notifications are made anyway)"
},
"approval_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can approve (only used when `requires_approval` is true)"
},
"update_only_by_primary_department": {
"type": "boolean",
"description": "only an administrator of the collaborator department can update (only used when `requires_approval` is true)"
},
"request_evidence": {
"type": "boolean",
"description": "when true, the collaborator will be allowed to upload documents supporting the availability requested"
},
"allow_entry_by_collaborator": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to use this availability type: only admins will be able to enter it"
},
"enter_for_past_present_future": {
"type": "array",
"description": "Determines if the availability type can be entered in these periods. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future"
},
"allow_remark": {
"type": "boolean",
"description": "when false, the collaborators will not be allowed to enter a text remark when requesting availabilies of this type"
},
"enter_per": {
"type": "string",
"enum": [
"free",
"day",
"day_part"
],
"description": "what time periods is this allowed: free parts of the day, all day (24 hours) or a predefined time-window (i.e. Morning 6:00-12:00 Afternoon 12:00-18:00)"
},
"color": {
"type": "string",
"description": "Color used to present the availability in calendars. Should be a hexadecimal color code."
},
"show_on_work_schedule": {
"type": "boolean",
"description": "If the availability should show up on the work schedule."
},
"roles_that_can_approve": {
"type": "array",
"description": "a list of 0 or more roles `id` that can approve the availabilities of this type. When blank: all roles can approve."
},
"applicable_for_social_statuses": {
"type": "array",
"description": "a list of 0 or more social statuses that may use this type."
},
"payroll_codes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the availability type payroll code"
},
"payroll_service_id": {
"type": "string",
"description": "The ID of the payroll integration associated to availabilities of this type"
},
"payroll_code": {
"type": "string",
"description": "the payroll integration identifier for this type of availability"
},
"requires_approval": {
"type": "boolean",
"description": "when true, the payroll integration will determine if availabilities of this type are approved"
},
"payroll_calculates_duration": {
"type": "boolean",
"description": "when true, the payroll integration will determine the duration of these availabilities"
}
},
"required": [
"id",
"payroll_service_id",
"payroll_code",
"requires_approval",
"payroll_calculates_duration"
]
},
"description": "a list of 0 or more payroll codes that are associated to availabilities of this type"
},
"overlappable_type_definitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the allowed availability type definition"
},
"allowed_to_be_overlapped_by_id": {
"type": "string",
"description": "The ID of the availability type that is allowed to overlap this one. Both must be either plannble = Yes or plannable = No"
}
},
"required": [
"id",
"allowed_to_be_overlapped_by_id"
]
},
"description": "a list of 0 or more definitions of availabilities that are allowed to overlap this availability type. Is only visible when the setting Allow overlapping availabilities = Yes"
},
"role_based_permissions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the role based permission"
},
"applies_for": {
"type": "string",
"description": "One of admin|manager that determine if this permission applies to site admins or managers of the collaborator"
},
"action": {
"type": "string",
"description": "One of create|update|destroy|approve corresponding to the action being granted permission"
},
"time_frames: `fully_past,past,present,future,fully_future` (array[string]) - List of time frames the permission of action is granted. fully_past, past, present, future, fully_future means respectively ends in the past, begins in the past, in the present, ends in the future, begins in the future": {
"type": "string"
},
"role_id: `1` (string, required) - The ID of the admin role to which the permission is given. Leave blank when granting permissions with applies_for": {
"type": "string"
},
"check_status": {
"type": "boolean",
"description": "whether the status of an availability is checked before performing the action: for example, if planning approved and payroll not approved some actions will not be possible"
}
},
"required": [
"id",
"applies_for",
"action",
"check_status"
]
},
"description": "a list of 0 or more role based permissions that describe what actions admin and managers can perform on availabilities of this type"
}
},
"required": [
"id",
"is_plannable",
"requires_approval",
"enter_per"
]
}
RemoveDELETE/api/v1/admin/tenant/availability_types/{id}
Example URI
- id
string
(required) Example: 1ID of the Availability type
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
204
Day parts ¶
ListGET/api/v1/admin/tenant/day_parts
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"start_time": "06:30",
"end_time": "14:00"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the day part"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"start_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part starts"
},
"end_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part ends"
}
},
"required": [
"id",
"start_time",
"end_time"
]
}
CreatePOST/api/v1/admin/tenant/day_parts
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"start_time": "06:30",
"end_time": "14:00"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the day part"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"start_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part starts"
},
"end_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part ends"
}
},
"required": [
"id",
"start_time",
"end_time"
]
}
201
Headers
Content-Type: application/json
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"start_time": "06:30",
"end_time": "14:00"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the day part"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"start_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part starts"
},
"end_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part ends"
}
},
"required": [
"id",
"start_time",
"end_time"
]
}
ReadGET/api/v1/admin/tenant/day_parts/{id}
Example URI
- id
string
(required) Example: 1ID of the Day part
Headers
Content-Type: application/json
Body
Authentication-Reference: AAAA-BBBB-CCCC
Authentication-Epoch: 1493226007
Authentication-Signature: 051afb5d034f4a29db36d384ddc24f5a406dc0e787a761d6693b4c9348ed206071e18dc6c1854688cc7121152068f3787d6dffcda433dce312e8a5814c6b652f
200
Headers
Content-Type: application/json; charset=utf-8
Body
{
"id": "1",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"start_time": "06:30",
"end_time": "14:00"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the day part"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"start_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part starts"
},
"end_time": {
"type": "string",
"description": "A time (HH:MM) to indicate when the day part ends"
}
},
"required": [
"id",
"start_time",
"end_time"
]
}
RemoveDELETE/api/v1/admin/tenant/day_parts/{id}
Example URI
- id
string
(required) Example: 1ID of the Day part
Headers
Content-Type: application/json
Body
Authentication-Reference: AAAA-BBBB-CCCC
Authentication-Epoch: 1493226007
Authentication-Signature: 051afb5d034f4a29db36d384ddc24f5a406dc0e787a761d6693b4c9348ed206071e18dc6c1854688cc7121152068f3787d6dffcda433dce312e8a5814c6b652f
204
Functions ¶
ListGET/api/v1/admin/functions
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"functions": [
{
"id": "1",
"name": "Some Name",
"description": "A description",
"applies_to_all_departments": true,
"department_ids": [
1
],
"name_i18n": {
"en": "Name"
},
"description_i18n": {
"en": "Description"
}
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"functions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the team function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The description of the function"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether function belongs to all departments of the tenant"
},
"department_ids": {
"type": "array",
"items": {
"type": "number"
},
"description": "The list of department ids to add"
},
"name_i18n": {
"type": "object",
"properties": {
"en": {
"type": "string",
"description": "English name value"
}
}
},
"description_i18n": {
"type": "object",
"properties": {
"en": {
"type": "string",
"description": "English name value"
}
}
}
},
"required": [
"id",
"name",
"description"
]
}
}
}
}
CreatePOST/api/v1/admin/functions
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"function": {
"id": "1",
"name": "Some Name",
"description": "A description",
"applies_to_all_departments": true,
"department_ids": [],
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the team function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The description of the function"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether function belongs to all departments of the tenant"
},
"department_ids": {
"type": "array",
"items": {
"type": "number"
},
"description": "The list of department ids to add"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"profile_property_requirements_attributes": {
"type": "array",
"description": "A list of profile properties. Only changes (additions or removals) need to passed"
}
},
"required": [
"id",
"name",
"description"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"functions": [
{
"id": "1",
"name": "Some Name",
"description": "A description",
"applies_to_all_departments": true,
"department_ids": [
1
],
"name_i18n": {
"en": "Name"
},
"description_i18n": {
"en": "Description"
}
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"functions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the team function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The description of the function"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether function belongs to all departments of the tenant"
},
"department_ids": {
"type": "array",
"items": {
"type": "number"
},
"description": "The list of department ids to add"
},
"name_i18n": {
"type": "object",
"properties": {
"en": {
"type": "string",
"description": "English name value"
}
}
},
"description_i18n": {
"type": "object",
"properties": {
"en": {
"type": "string",
"description": "English name value"
}
}
}
},
"required": [
"id",
"name",
"description"
]
}
}
}
}
UpdatePATCH/api/v1/admin/functions/{id}
Example URI
- id
string
(required) Example: 4554The ID of the Function
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"function": {
"id": "1",
"name": "Some Name",
"description": "A description",
"applies_to_all_departments": true,
"department_ids": [],
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"profile_property_requirements_attributes": [
{
"profile_property_id": "7",
"must_have": false,
"weight": 25,
"numeric_min": 7,
"numeric_max": 125,
"date_min": "2018-01-15",
"date_max": "2020-12-25",
"datetime_min": "1970-01-01T05:00:00",
"datetime_max": "1979-01-01T05:00:00",
"time_min": "05:15",
"time_max": "23:30",
"list_single_options": [
"option 1"
],
"list_multi_options": [
"option 1",
"option 2"
]
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"function": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the team function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The description of the function"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether function belongs to all departments of the tenant"
},
"department_ids": {
"type": "array",
"items": {
"type": "number"
},
"description": "The list of department ids to add"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"profile_property_requirements_attributes": {
"type": "array",
"description": "A list of profile properties. Only changes (additions or removals) need to passed"
}
},
"required": [
"id",
"name",
"description"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"functions": [
{
"id": "1",
"name": "Some Name",
"description": "A description",
"applies_to_all_departments": true,
"department_ids": [
1
],
"name_i18n": {
"en": "Name"
},
"description_i18n": {
"en": "Description"
}
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"functions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the team function"
},
"name": {
"type": "string",
"description": "The name of the function"
},
"description": {
"type": "string",
"description": "The description of the function"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether function belongs to all departments of the tenant"
},
"department_ids": {
"type": "array",
"items": {
"type": "number"
},
"description": "The list of department ids to add"
},
"name_i18n": {
"type": "object",
"properties": {
"en": {
"type": "string",
"description": "English name value"
}
}
},
"description_i18n": {
"type": "object",
"properties": {
"en": {
"type": "string",
"description": "English name value"
}
}
}
},
"required": [
"id",
"name",
"description"
]
}
}
}
}
Addresses ¶
ListGET/api/v1/admin/addresses{?page,page_items}
Returns all addresses. Results are paginated
Example URI
- page
number
(optional) Default: 1 Example: 2The paginated page number.
- page_items
number
(optional) Default: 100 Example: 25Items per page
- filter[name]
string
(optional) Example: Test nameAddress name to filter addresses by
- filter[departments]
array
(optional) Example: ['1073', '1245']Array of department IDs to filter addresses by
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"addresses": [
{
"id": "1",
"name": "Address name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"country": "BE",
"latlon_lat": "45.2222",
"latlon_lon": "15.2222",
"latlon_applied_manually": true,
"map_zoomlevel": "15",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
],
"count": "12",
"previous": "url",
"next": "url"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"addresses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the address"
},
"name": {
"type": "string",
"description": "The name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string",
"description": "ZIP code of the address"
},
"city": {
"type": "string",
"description": "City of the address"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"latlon_lat": {
"type": "string",
"description": "Latitude of the address"
},
"latlon_lon": {
"type": "string",
"description": "Longitude of the address"
},
"latlon_applied_manually": {
"type": "boolean",
"description": "will show the end_user if the latlon was set manually or not"
},
"map_zoomlevel": {
"type": "string",
"description": "Saved zoom level of the address on the map"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicate whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"required": [
"id",
"city"
]
},
"description": "List of addresses"
},
"count": {
"type": "string",
"description": "Total Number of addresses"
},
"previous": {
"type": "string",
"description": "URL for the previous set of results"
},
"next": {
"type": "string",
"description": "URL for the next set of results"
}
}
}
CreatePOST/api/v1/admin/addresses
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"address": {
"name": "Address Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"country": "BE",
"latlon_lat": "45.2222",
"latlon_lon": "15.2222",
"latlon_applied_manually": true,
"map_zoomlevel": "15",
"applies_to_all_departments": true,
"department_ids": [
"103",
"791",
"189"
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "An optional name assigned to this address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"latlon_lat": {
"type": "string",
"description": "Latitude of the address"
},
"latlon_lon": {
"type": "string",
"description": "Longitude of the address"
},
"latlon_applied_manually": {
"type": "boolean",
"description": "will show the end_user if the latlon was set manually or not"
},
"map_zoomlevel": {
"type": "string",
"description": "Zoom level of the address on the map"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"department_ids": {
"type": "array",
"description": "If tenant uses department management, this array lists department IDs to link the address to"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "1",
"name": "Address name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"country": "BE",
"latlon_lat": "45.2222",
"latlon_lon": "15.2222",
"latlon_applied_manually": true,
"map_zoomlevel": "15",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the address"
},
"name": {
"type": "string",
"description": "The name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string",
"description": "ZIP code of the address"
},
"city": {
"type": "string",
"description": "City of the address"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"latlon_lat": {
"type": "string",
"description": "Latitude of the address"
},
"latlon_lon": {
"type": "string",
"description": "Longitude of the address"
},
"latlon_applied_manually": {
"type": "boolean",
"description": "will show the end_user if the latlon was set manually or not"
},
"map_zoomlevel": {
"type": "string",
"description": "Saved zoom level of the address on the map"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicate whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"required": [
"id",
"city"
]
}
DetailsGET/api/v1/admin/addresses/{id}
Example URI
- id
string
(required) Example: 4554The ID of the Address
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "1",
"name": "Address name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"country": "BE",
"latlon_lat": "45.2222",
"latlon_lon": "15.2222",
"latlon_applied_manually": true,
"map_zoomlevel": "15",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the address"
},
"name": {
"type": "string",
"description": "The name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string",
"description": "ZIP code of the address"
},
"city": {
"type": "string",
"description": "City of the address"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"latlon_lat": {
"type": "string",
"description": "Latitude of the address"
},
"latlon_lon": {
"type": "string",
"description": "Longitude of the address"
},
"latlon_applied_manually": {
"type": "boolean",
"description": "will show the end_user if the latlon was set manually or not"
},
"map_zoomlevel": {
"type": "string",
"description": "Saved zoom level of the address on the map"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicate whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"required": [
"id",
"city"
]
}
UpdatePATCH/api/v1/admin/addresses/{id}
Example URI
- id
string
(required) Example: 4554The ID of the Address
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"address": {
"name": "Address Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"country": "BE",
"latlon_lat": "45.2222",
"latlon_lon": "15.2222",
"latlon_applied_manually": true,
"map_zoomlevel": "15",
"applies_to_all_departments": true,
"department_ids": [
"103",
"791",
"189"
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "An optional name assigned to this address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"latlon_lat": {
"type": "string",
"description": "Latitude of the address"
},
"latlon_lon": {
"type": "string",
"description": "Longitude of the address"
},
"latlon_applied_manually": {
"type": "boolean",
"description": "will show the end_user if the latlon was set manually or not"
},
"map_zoomlevel": {
"type": "string",
"description": "Zoom level of the address on the map"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"department_ids": {
"type": "array",
"description": "If tenant uses department management, this array lists department IDs to link the address to"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "1",
"name": "Address name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"country": "BE",
"latlon_lat": "45.2222",
"latlon_lon": "15.2222",
"latlon_applied_manually": true,
"map_zoomlevel": "15",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the address"
},
"name": {
"type": "string",
"description": "The name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string",
"description": "ZIP code of the address"
},
"city": {
"type": "string",
"description": "City of the address"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"latlon_lat": {
"type": "string",
"description": "Latitude of the address"
},
"latlon_lon": {
"type": "string",
"description": "Longitude of the address"
},
"latlon_applied_manually": {
"type": "boolean",
"description": "will show the end_user if the latlon was set manually or not"
},
"map_zoomlevel": {
"type": "string",
"description": "Saved zoom level of the address on the map"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicate whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"required": [
"id",
"city"
]
}
Planning Custom fields ¶
ListGET/api/v1/admin/planning_custom_fields{?page,page_items}
Returns all planning custom fields. Results are paginated
Example URI
- page
number
(optional) Default: 1 Example: 2The paginated page number.
- page_items
number
(optional) Default: 100 Example: 25Items per page
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"planning_custom_fields": [
{
"id": 52,
"group_id": 1,
"property_type": "boolean",
"name": "Example Name",
"description": "Example Description",
"visible_for_volunteer": true,
"required": true,
"numeric_whole_number": true,
"numeric_minimal_value": 0,
"numeric_maximal_value": 200,
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": "the unit of the field",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": "Hello, world!",
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"based_on": "addresses"
}
],
"count": "12",
"previous": "url",
"next": "url"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"planning_custom_fields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The Id of the planning custom field"
},
"group_id": {
"type": "number"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid planning custom field types"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the planning custom field will be visible for collaborators (when false, it will only be visible for admins)"
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the planning custom field"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the property"
},
"numeric_minimal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the property. Must be greater than `time_range_start`"
},
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": {
"type": "string"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "if planning custom field is a one- or multi- choice list based on dynamic list of options, this parameters defines where they come from:"
}
},
"required": [
"id",
"group_id",
"property_type",
"name",
"description",
"visible_for_volunteer",
"required",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end"
]
},
"description": "List of planning custom fields"
},
"count": {
"type": "string",
"description": "Total number of planning custom fields"
},
"previous": {
"type": "string",
"description": "URL for the previous set of results"
},
"next": {
"type": "string",
"description": "URL for the next set of results"
}
}
}
CreatePOST/api/v1/admin/planning_custom_fields
Use this endpoint to create a custom field. Note that you will need the id of a group to save the new custom field in; you will likely need to first create a group
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"planning_custom_field": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"based_on": "addresses"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"planning_custom_field": {
"type": "object",
"properties": {
"tenant_planning_custom_field_group_id": {
"type": "number"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid planning custom field types"
},
"level": {
"type": "string",
"enum": [
"happening",
"cluster",
"team",
"address"
],
"description": "The level of the planning custom field"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"use_as_filter": {
"type": "boolean",
"description": "if the custom field should appear in the filters"
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the planning custom field"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the planning custom field will be visible for collaborators (when false, it will only be visible for admins)"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the property"
},
"numeric_minimal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit_i18n": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `numeric_unit`"
},
"numeric_unit": {
"type": "string",
"description": "the numeric unit of the given numeric type attribute expressed in the specific `language`"
}
},
"required": [
"language",
"numeric_unit"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `numeric_unit`"
},
"numeric_unit": {
"type": "string",
"description": "the numeric unit of the given numeric type attribute expressed in the specific `language`"
}
},
"required": [
"language",
"numeric_unit"
]
}
},
"required": [
"0",
"1"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the property. Must be greater than `time_range_start`"
},
"list_options_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
},
"1": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
},
"1": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
},
"1": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
}
},
"required": [
"0",
"1"
]
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "if planning custom field is a one- or multi- choice list based on dynamic list of options, this parameters defines where they come from:"
}
},
"required": [
"tenant_planning_custom_field_group_id",
"property_type",
"level",
"use_as_filter",
"required",
"visible_for_volunteer",
"numeric_minimal_value",
"numeric_maximal_value",
"numeric_unit_i18n",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": 52,
"group_id": 1,
"property_type": "boolean",
"name": "Example Name",
"description": "Example Description",
"visible_for_volunteer": true,
"required": true,
"numeric_whole_number": true,
"numeric_minimal_value": 0,
"numeric_maximal_value": 200,
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": "the unit of the field",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": "Hello, world!",
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"based_on": "addresses"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The Id of the planning custom field"
},
"group_id": {
"type": "number"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid planning custom field types"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the planning custom field will be visible for collaborators (when false, it will only be visible for admins)"
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the planning custom field"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the property"
},
"numeric_minimal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the property. Must be greater than `time_range_start`"
},
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": {
"type": "string"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "if planning custom field is a one- or multi- choice list based on dynamic list of options, this parameters defines where they come from:"
}
},
"required": [
"id",
"group_id",
"property_type",
"name",
"description",
"visible_for_volunteer",
"required",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end"
]
}
400
Headers
Content-Type: application/json
Body
{
"errors": {
"template_name": [
"has already been taken"
]
}
}
ModifyPATCH/api/v1/admin/planning_custom_fields/{id}
Use this endpoint to modify a planning custom field. Fields you do not want to change, you don’t need to pass again
Example URI
- id
string
(required) Example: 33The Beeple ID of the custom field
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"planning_custom_field": {
"tenant_planning_custom_field_group_id": 1,
"property_type": "boolean",
"level": "happening",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"0": {
"language": "en",
"description": "Some description"
}
},
"use_as_filter": true,
"required": true,
"visible_for_volunteer": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n": {
"0": {
"language": "en",
"numeric_unit": "kilo"
},
"1": {
"language": "en",
"numeric_unit": "kilo"
}
},
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options_attributes": {
"0": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
},
"1": {
"0": {
"slug": "option_1",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
},
"1": {
"slug": "option_2",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
}
},
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"planning_custom_field": {
"type": "object",
"properties": {
"tenant_planning_custom_field_group_id": {
"type": "number"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid planning custom field types"
},
"level": {
"type": "string",
"enum": [
"happening",
"cluster",
"team",
"address"
],
"description": "The level of the planning custom field"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
}
},
"required": [
"0"
]
},
"use_as_filter": {
"type": "boolean",
"description": "if the custom field should appear in the filters"
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the planning custom field"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the planning custom field will be visible for collaborators (when false, it will only be visible for admins)"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the property"
},
"numeric_minimal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit_i18n": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `numeric_unit`"
},
"numeric_unit": {
"type": "string",
"description": "the numeric unit of the given numeric type attribute expressed in the specific `language`"
}
},
"required": [
"language",
"numeric_unit"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `numeric_unit`"
},
"numeric_unit": {
"type": "string",
"description": "the numeric unit of the given numeric type attribute expressed in the specific `language`"
}
},
"required": [
"language",
"numeric_unit"
]
}
},
"required": [
"0",
"1"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the property. Must be greater than `time_range_start`"
},
"list_options_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
},
"1": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
},
"1": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
},
"1": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
]
}
},
"required": [
"title_i18n_attributes"
]
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
}
},
"required": [
"0",
"1"
]
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
}
},
"required": [
"tenant_planning_custom_field_group_id",
"property_type",
"level",
"use_as_filter",
"required",
"visible_for_volunteer",
"numeric_minimal_value",
"numeric_maximal_value",
"numeric_unit_i18n",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": 52,
"group_id": 1,
"property_type": "boolean",
"name": "Example Name",
"description": "Example Description",
"visible_for_volunteer": true,
"required": true,
"numeric_whole_number": true,
"numeric_minimal_value": 0,
"numeric_maximal_value": 200,
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": "the unit of the field",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": "Hello, world!",
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"based_on": "addresses"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The Id of the planning custom field"
},
"group_id": {
"type": "number"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid planning custom field types"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the planning custom field will be visible for collaborators (when false, it will only be visible for admins)"
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the planning custom field"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the property"
},
"numeric_minimal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the property. Must be greater than `time_range_start`"
},
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": {
"type": "string"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "if planning custom field is a one- or multi- choice list based on dynamic list of options, this parameters defines where they come from:"
}
},
"required": [
"id",
"group_id",
"property_type",
"name",
"description",
"visible_for_volunteer",
"required",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end"
]
}
DetailsGET/api/v1/admin/planning_custom_fields/{id}
Returns attributes of a planning custom field by ID
Example URI
- id
string
(required) Example: 33The Beeple ID of the custom field
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": 52,
"group_id": 1,
"property_type": "boolean",
"name": "Example Name",
"description": "Example Description",
"visible_for_volunteer": true,
"required": true,
"numeric_whole_number": true,
"numeric_minimal_value": 0,
"numeric_maximal_value": 200,
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": "the unit of the field",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": "Hello, world!",
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"based_on": "addresses"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The Id of the planning custom field"
},
"group_id": {
"type": "number"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid planning custom field types"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the planning custom field will be visible for collaborators (when false, it will only be visible for admins)"
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the planning custom field"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the property"
},
"numeric_minimal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"number",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit: `km` (string, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the property. Must be greater than `time_range_start`"
},
"list_options (ListOptionAttributes, required) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": {
"type": "string"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "if planning custom field is a one- or multi- choice list based on dynamic list of options, this parameters defines where they come from:"
}
},
"required": [
"id",
"group_id",
"property_type",
"name",
"description",
"visible_for_volunteer",
"required",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end"
]
}
Planning Custom Fields Groups ¶
ListGET/api/v1/admin/planning_custom_field_groups{?page,page_items}
Returns all planning custom field groups. Results are paginated
Example URI
- page
number
(optional) Default: 1 Example: 2The paginated page number.
- page_items
number
(optional) Default: 100 Example: 25Items per page
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"planning_custom_field_groups": [
{
"id": 1,
"name": "Example Group Name",
"sort_order": 7
}
],
"count": "12",
"previous": "url",
"next": "url"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"planning_custom_field_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number"
},
"name": {
"type": "string"
},
"sort_order": {
"type": "number"
}
}
},
"description": "List of planning custom field groups"
},
"count": {
"type": "string",
"description": "Total number of planning custom field groups"
},
"previous": {
"type": "string",
"description": "URL for the previous set of results"
},
"next": {
"type": "string",
"description": "URL for the next set of results"
}
}
}
CreatePOST/api/v1/admin/planning_custom_field_groups
Use this endpoint to create a group that will hold profile properties
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"planning_custom_field_group": {
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"planning_custom_field_group": {
"type": "object",
"properties": {
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
]
}
},
"description": "Group info"
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": 1,
"name": "Example Group Name",
"sort_order": 7
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number"
},
"name": {
"type": "string"
},
"sort_order": {
"type": "number"
}
}
}
ModifyPATCH/api/v1/admin/planning_custom_field_groups/{id}
Use this endpoint to modify a planning custom field group.
Example URI
- id
string
(required) Example: 33The Beeple ID of the custom field group
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"planning_custom_field_group": {
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"planning_custom_field_group": {
"type": "object",
"properties": {
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
]
}
},
"description": "Group info"
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": 1,
"name": "Example Group Name",
"sort_order": 7
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number"
},
"name": {
"type": "string"
},
"sort_order": {
"type": "number"
}
}
}
DetailsGET/api/v1/admin/planning_custom_field_groups/{id}
Returns attributes of a planning custom field group by ID
Example URI
- id
string
(required) Example: 33The Beeple ID of the custom field group
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": 1,
"name": "Example Group Name",
"sort_order": 7
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number"
},
"name": {
"type": "string"
},
"sort_order": {
"type": "number"
}
}
}
Profile Property Groups ¶
CreatePOST/api/v1/admin/profile_property_groups
Use this endpoint to create a group that will hold profile properties
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"profile_property_group": {
"name_i18n_attributes": {
"language": "en",
"name": "Some name"
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"profile_property_group": {
"type": "object",
"properties": {
"name_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"name_i18n_attributes"
],
"description": "Group info"
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": 1,
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"sort_order": 1
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "the ID of the profile property group. You will need to send this in attribute `group_id` when requesting to create a profile property under this group"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
],
"description": "the name of the group"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
}
},
"required": [
"id",
"name_i18n_attributes"
]
}
Profile Properties ¶
ListGET/api/v1/admin/profile_properties
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"profile_property_groups": [
{
"id": 1,
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"sort_order": 1,
"profile_properties": [
{
"group_id": 1,
"id": 1888,
"property_type": "boolean",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"required": true,
"visible_for_volunteer": true,
"editable": true,
"show_at_application": true,
"use_as_filter": true,
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": "sets the unit in which the profile property is expressed",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"upload_file_type": "pdf",
"comments_enabled_collaborator": true,
"comments_enabled_verified": true,
"proof_required_collaborator": false,
"proof_required_verified": false,
"expiration_date_required_collaborator": false,
"expiration_date_required_verified": false,
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"list_options_as_list (array[ListOptionResponse], fixed-type) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": "Hello, world!"
}
]
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"profile_property_groups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "the ID of the profile property group. You will need to send this in attribute `group_id` when requesting to create a profile property under this group"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
],
"description": "the name of the group"
},
"sort_order": {
"type": "number",
"description": "the order at which the group will be displayed in the Beeple App: defaults to the last position in the list of groups"
},
"profile_properties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"group_id": {
"type": "number"
},
"id": {
"type": "number",
"description": "the ID of the profile property. You will need to send this when requesting to create a profile property. You should not send this when requestion to create a profile property"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid profile property types"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the profile property"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the profile property will be visible for collaborators (when false, it will only be visible for admins)"
},
"editable": {
"type": "boolean",
"description": "whether collaborators will be able to edit/change the value of the profile property: when false, they will only be able to see the value but not to change it"
},
"show_at_application": {
"type": "boolean",
"description": "when true, the profile property will be presented for new website applicants"
},
"use_as_filter": {
"type": "boolean",
"description": "when true, the property will be usable in filters"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the profile property"
},
"numeric_minimal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the profile property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the profile property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the profile property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the profile property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the profile property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the profile property. Must be greater than `time_range_start`"
},
"upload_file_type": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `upload`: file type accepted as upload file for the profile property"
},
"comments_enabled_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be allowed to add a remark when filling up the profile property"
},
"comments_enabled_verified": {
"type": "boolean",
"description": "when true, an admin will be allowed to add a remark when filling up the profile property"
},
"proof_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"proof_required_verified": {
"type": "boolean",
"description": "when true, an admin will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"expiration_date_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"expiration_date_required_verified": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the profile property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the profile property will be displayed in its profile property group: defaults to the last position in the list of profile properties of the group"
},
"list_options_as_list (array[ListOptionResponse], fixed-type) - only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from": {
"type": "string"
}
},
"required": [
"group_id",
"property_type",
"name_i18n_attributes",
"description_i18n_attributes",
"required",
"visible_for_volunteer",
"editable",
"show_at_application",
"use_as_filter",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end",
"upload_file_type",
"comments_enabled_collaborator",
"comments_enabled_verified",
"proof_required_collaborator",
"proof_required_verified",
"expiration_date_required_collaborator",
"expiration_date_required_verified"
]
}
}
},
"required": [
"id",
"name_i18n_attributes"
]
}
}
}
}
CreatePOST/api/v1/admin/profile_properties
Use this endpoint to create a profile property. Note that you will need the id of a group to save the new property in; you will likely need to first create a group
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"profile_property": {
"group_id": 1,
"id": 1888,
"property_type": "boolean",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"required": true,
"visible_for_volunteer": true,
"editable": true,
"show_at_application": true,
"use_as_filter": true,
"based_on": "addresses",
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": "sets the unit in which the profile property is expressed",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"upload_file_type": "pdf",
"comments_enabled_collaborator": true,
"comments_enabled_verified": true,
"proof_required_collaborator": false,
"proof_required_verified": false,
"expiration_date_required_collaborator": false,
"expiration_date_required_verified": false,
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"list_options_attributes": [
{
"slug": "option_1",
"title": "a title",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"profile_property": {
"type": "object",
"properties": {
"group_id": {
"type": "number"
},
"id": {
"type": "number",
"description": "the ID of the profile property. You will need to send this when requesting to create a profile property. You should not send this when requestion to create a profile property"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid profile property types"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the profile property"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the profile property will be visible for collaborators (when false, it will only be visible for admins)"
},
"editable": {
"type": "boolean",
"description": "whether collaborators will be able to edit/change the value of the profile property: when false, they will only be able to see the value but not to change it"
},
"show_at_application": {
"type": "boolean",
"description": "when true, the profile property will be presented for new website applicants"
},
"use_as_filter": {
"type": "boolean",
"description": "when true, the property will be usable in filters"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "One of the valid profile properties list based options"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the profile property"
},
"numeric_minimal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the profile property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the profile property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the profile property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the profile property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the profile property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the profile property. Must be greater than `time_range_start`"
},
"upload_file_type": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `upload`: file type accepted as upload file for the profile property"
},
"comments_enabled_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be allowed to add a remark when filling up the profile property"
},
"comments_enabled_verified": {
"type": "boolean",
"description": "when true, an admin will be allowed to add a remark when filling up the profile property"
},
"proof_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"proof_required_verified": {
"type": "boolean",
"description": "when true, an admin will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"expiration_date_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"expiration_date_required_verified": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the profile property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the profile property will be displayed in its profile property group: defaults to the last position in the list of profile properties of the group"
},
"list_options_attributes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title": {
"type": "string",
"description": "Either title or title_i18n_attributes need to be filled"
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
],
"description": "Either title or title_i18n_attributes need to be filled"
}
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
}
},
"required": [
"group_id",
"property_type",
"name_i18n_attributes",
"description_i18n_attributes",
"required",
"visible_for_volunteer",
"editable",
"show_at_application",
"use_as_filter",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end",
"upload_file_type",
"comments_enabled_collaborator",
"comments_enabled_verified",
"proof_required_collaborator",
"proof_required_verified",
"expiration_date_required_collaborator",
"expiration_date_required_verified"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"group_id": 1,
"id": 1888,
"property_type": "boolean",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"required": true,
"visible_for_volunteer": true,
"editable": true,
"show_at_application": true,
"use_as_filter": true,
"based_on": "addresses",
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": "sets the unit in which the profile property is expressed",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"upload_file_type": "pdf",
"comments_enabled_collaborator": true,
"comments_enabled_verified": true,
"proof_required_collaborator": false,
"proof_required_verified": false,
"expiration_date_required_collaborator": false,
"expiration_date_required_verified": false,
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"list_options_attributes": [
{
"slug": "option_1",
"title": "a title",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"group_id": {
"type": "number"
},
"id": {
"type": "number",
"description": "the ID of the profile property. You will need to send this when requesting to create a profile property. You should not send this when requestion to create a profile property"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid profile property types"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the profile property"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the profile property will be visible for collaborators (when false, it will only be visible for admins)"
},
"editable": {
"type": "boolean",
"description": "whether collaborators will be able to edit/change the value of the profile property: when false, they will only be able to see the value but not to change it"
},
"show_at_application": {
"type": "boolean",
"description": "when true, the profile property will be presented for new website applicants"
},
"use_as_filter": {
"type": "boolean",
"description": "when true, the property will be usable in filters"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "One of the valid profile properties list based options"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the profile property"
},
"numeric_minimal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the profile property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the profile property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the profile property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the profile property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the profile property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the profile property. Must be greater than `time_range_start`"
},
"upload_file_type": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `upload`: file type accepted as upload file for the profile property"
},
"comments_enabled_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be allowed to add a remark when filling up the profile property"
},
"comments_enabled_verified": {
"type": "boolean",
"description": "when true, an admin will be allowed to add a remark when filling up the profile property"
},
"proof_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"proof_required_verified": {
"type": "boolean",
"description": "when true, an admin will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"expiration_date_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"expiration_date_required_verified": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the profile property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the profile property will be displayed in its profile property group: defaults to the last position in the list of profile properties of the group"
},
"list_options_attributes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title": {
"type": "string",
"description": "Either title or title_i18n_attributes need to be filled"
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
],
"description": "Either title or title_i18n_attributes need to be filled"
}
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
}
},
"required": [
"group_id",
"property_type",
"name_i18n_attributes",
"description_i18n_attributes",
"required",
"visible_for_volunteer",
"editable",
"show_at_application",
"use_as_filter",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end",
"upload_file_type",
"comments_enabled_collaborator",
"comments_enabled_verified",
"proof_required_collaborator",
"proof_required_verified",
"expiration_date_required_collaborator",
"expiration_date_required_verified"
]
}
400
Headers
Content-Type: application/json
Body
{
"errors": {
"template_name": [
"has already been taken"
]
}
}
ModifyPATCH/api/v1/admin/profile_properties/{id}
Use this endpoint to modify a profile property. Fields you do not want to change, you don’t need to pass again
Example URI
- id
string
(required) Example: 7The ID of the profile property
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"profile_property": {
"group_id": 1,
"id": 1888,
"property_type": "boolean",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"required": true,
"visible_for_volunteer": true,
"editable": true,
"show_at_application": true,
"use_as_filter": true,
"based_on": "addresses",
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": "sets the unit in which the profile property is expressed",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"upload_file_type": "pdf",
"comments_enabled_collaborator": true,
"comments_enabled_verified": true,
"proof_required_collaborator": false,
"proof_required_verified": false,
"expiration_date_required_collaborator": false,
"expiration_date_required_verified": false,
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"list_options_attributes": [
{
"slug": "option_1",
"title": "a title",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"profile_property": {
"type": "object",
"properties": {
"group_id": {
"type": "number"
},
"id": {
"type": "number",
"description": "the ID of the profile property. You will need to send this when requesting to create a profile property. You should not send this when requestion to create a profile property"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid profile property types"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the profile property"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the profile property will be visible for collaborators (when false, it will only be visible for admins)"
},
"editable": {
"type": "boolean",
"description": "whether collaborators will be able to edit/change the value of the profile property: when false, they will only be able to see the value but not to change it"
},
"show_at_application": {
"type": "boolean",
"description": "when true, the profile property will be presented for new website applicants"
},
"use_as_filter": {
"type": "boolean",
"description": "when true, the property will be usable in filters"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "One of the valid profile properties list based options"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the profile property"
},
"numeric_minimal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the profile property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the profile property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the profile property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the profile property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the profile property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the profile property. Must be greater than `time_range_start`"
},
"upload_file_type": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `upload`: file type accepted as upload file for the profile property"
},
"comments_enabled_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be allowed to add a remark when filling up the profile property"
},
"comments_enabled_verified": {
"type": "boolean",
"description": "when true, an admin will be allowed to add a remark when filling up the profile property"
},
"proof_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"proof_required_verified": {
"type": "boolean",
"description": "when true, an admin will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"expiration_date_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"expiration_date_required_verified": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the profile property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the profile property will be displayed in its profile property group: defaults to the last position in the list of profile properties of the group"
},
"list_options_attributes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title": {
"type": "string",
"description": "Either title or title_i18n_attributes need to be filled"
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
],
"description": "Either title or title_i18n_attributes need to be filled"
}
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
}
},
"required": [
"group_id",
"property_type",
"name_i18n_attributes",
"description_i18n_attributes",
"required",
"visible_for_volunteer",
"editable",
"show_at_application",
"use_as_filter",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end",
"upload_file_type",
"comments_enabled_collaborator",
"comments_enabled_verified",
"proof_required_collaborator",
"proof_required_verified",
"expiration_date_required_collaborator",
"expiration_date_required_verified"
]
}
}
}
200
Headers
Content-Type: application/json
Body
{
"group_id": 1,
"id": 1888,
"property_type": "boolean",
"name_i18n_attributes": {
"0": {
"language": "en",
"name": "Some name"
},
"1": {
"language": "en",
"name": "Some name"
}
},
"description_i18n_attributes": {
"language": "en",
"description": "Some description"
},
"required": true,
"visible_for_volunteer": true,
"editable": true,
"show_at_application": true,
"use_as_filter": true,
"based_on": "addresses",
"numeric_whole_number": true,
"numeric_minimal_value": "0",
"numeric_maximal_value": "200",
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": "sets the unit in which the profile property is expressed",
"datetime_range_start": "2018-04-01T10:10:00.000+02:00",
"datetime_range_end": "2018-04-01T12:10:00.000+02:00",
"date_range_start": "2017-04-01",
"date_range_end": "2017-04-02",
"time_range_start": "04:00",
"time_range_end": "17:00",
"upload_file_type": "pdf",
"comments_enabled_collaborator": true,
"comments_enabled_verified": true,
"proof_required_collaborator": false,
"proof_required_verified": false,
"expiration_date_required_collaborator": false,
"expiration_date_required_verified": false,
"template_name: `my_profile_property`": "Hello, world!",
"sort_order": 2,
"list_options_attributes": [
{
"slug": "option_1",
"title": "a title",
"title_i18n_attributes": {
"0": {
"language": "en",
"title": "My 2nd option"
},
"1": {
"language": "en",
"title": "My 2nd option"
}
}
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"group_id": {
"type": "number"
},
"id": {
"type": "number",
"description": "the ID of the profile property. You will need to send this when requesting to create a profile property. You should not send this when requestion to create a profile property"
},
"property_type": {
"type": "string",
"enum": [
"boolean",
"list_multi_option",
"list_single_option",
"numeric",
"freetext",
"freetext_multiline",
"date",
"time",
"datetime",
"upload"
],
"description": "One of the valid profile property types"
},
"name_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `name`."
},
"name": {
"type": "string",
"description": "the name of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"name"
]
}
},
"required": [
"0",
"1"
]
},
"description_i18n_attributes": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `description`"
},
"description": {
"type": "string",
"description": "the description of the given attribute expressed in the specific `language`"
}
},
"required": [
"language",
"description"
]
},
"required": {
"type": "boolean",
"description": "whether it will be mandatory for users to fill in a value for the profile property"
},
"visible_for_volunteer": {
"type": "boolean",
"description": "whether the profile property will be visible for collaborators (when false, it will only be visible for admins)"
},
"editable": {
"type": "boolean",
"description": "whether collaborators will be able to edit/change the value of the profile property: when false, they will only be able to see the value but not to change it"
},
"show_at_application": {
"type": "boolean",
"description": "when true, the profile property will be presented for new website applicants"
},
"use_as_filter": {
"type": "boolean",
"description": "when true, the property will be usable in filters"
},
"based_on": {
"type": "string",
"enum": [
"addresses",
"functions"
],
"description": "One of the valid profile properties list based options"
},
"numeric_whole_number": {
"type": [
"boolean",
"null"
],
"description": "only when `property_type` is `numeric`: when set to true, only integers will be accepted as valid values for the profile property"
},
"numeric_minimal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the minimal value accepted as valid"
},
"numeric_maximal_value": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `numeric`: sets the maximium value accepted as valid"
},
"numeric_unit_i18n_attributes (TranslatableNumericUnit, required) - only when `property_type` is `numeric`": {
"type": "string"
},
"datetime_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the lower limit of the accepted valid range of datetime value of the profile property"
},
"datetime_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `datetime`: the upper limit of the accepted valid range of datetime value of the profile property. Must be greater than `datetime_range_start`"
},
"date_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the lower limit of the accepted valid range of date value of the profile property"
},
"date_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `date`: the upper limit of the accepted valid range of date value of the profile property. Must be greater than `date_range_start`"
},
"time_range_start": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the lower limit of the accepted valid range of time value of the profile property"
},
"time_range_end": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `time`: the upper limit of the accepted valid range of time value of the profile property. Must be greater than `time_range_start`"
},
"upload_file_type": {
"type": [
"string",
"null"
],
"description": "only when `property_type` is `upload`: file type accepted as upload file for the profile property"
},
"comments_enabled_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be allowed to add a remark when filling up the profile property"
},
"comments_enabled_verified": {
"type": "boolean",
"description": "when true, an admin will be allowed to add a remark when filling up the profile property"
},
"proof_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"proof_required_verified": {
"type": "boolean",
"description": "when true, an admin will be enforced to provide and upload a piece of evidence when filling up the profile property"
},
"expiration_date_required_collaborator": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"expiration_date_required_verified": {
"type": "boolean",
"description": "when true, a collaborator will be enforced to provide an expiration date when filling up the profile property"
},
"template_name: `my_profile_property`": {
"type": "string",
"description": "a name that can be used in templates to get the value of the profile property. It must me unique within a tenant"
},
"sort_order": {
"type": "number",
"description": "the order at which the profile property will be displayed in its profile property group: defaults to the last position in the list of profile properties of the group"
},
"list_options_attributes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "when provided, an alphanumeric ID given to the list option. It must be unique within the list."
},
"title": {
"type": "string",
"description": "Either title or title_i18n_attributes need to be filled"
},
"title_i18n_attributes": {
"type": "object",
"properties": {
"0": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
},
"1": {
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/ISO_639-1) of the language used in `title`."
},
"title": {
"type": "string",
"description": "the title of the given list option expressed in the specific `language`"
}
},
"required": [
"language",
"title"
]
}
},
"required": [
"0",
"1"
],
"description": "Either title or title_i18n_attributes need to be filled"
}
}
},
"description": "only when `property_type` is `list_multi_option` or `list_single_option`, a list of the options the user may choose from"
}
},
"required": [
"group_id",
"property_type",
"name_i18n_attributes",
"description_i18n_attributes",
"required",
"visible_for_volunteer",
"editable",
"show_at_application",
"use_as_filter",
"numeric_minimal_value",
"numeric_maximal_value",
"datetime_range_start",
"datetime_range_end",
"date_range_start",
"date_range_end",
"time_range_start",
"time_range_end",
"upload_file_type",
"comments_enabled_collaborator",
"comments_enabled_verified",
"proof_required_collaborator",
"proof_required_verified",
"expiration_date_required_collaborator",
"expiration_date_required_verified"
]
}
Clients ¶
ListGET/api/v1/admin/clients
Returns all clients. Results are paginated. To get all results follow the
next_page
link in the result.
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"clients": [
{
"id": "101",
"name": "Acme Corp",
"legal_type": "LC Limited",
"company_registration_number": "BE0123456478",
"contact_person_name": "John Doe",
"contact_person_language": "NL",
"contact_email": "johndoe@acme.corp",
"contact_phone_number": "32498465349",
"portal_active": true,
"department_id": "754",
"project_id": "123",
"subproject_id": "709",
"address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
}
],
"next": "url",
"prev": "url"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"clients": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the client"
},
"legal_type": {
"type": "string",
"description": "The legal type of the client"
},
"company_registration_number": {
"type": "string",
"description": "The company registration number. Country dependant of format."
},
"contact_person_name": {
"type": "string",
"description": "Contact person's name within the company"
},
"contact_person_language": {
"type": "string",
"description": "Language of the contact person"
},
"contact_email": {
"type": "string",
"description": "Email of the contact person"
},
"contact_phone_number": {
"type": "string",
"description": "Phone number of the contact person"
},
"portal_active": {
"type": "boolean",
"description": "Setting if the customer portal is active"
},
"department_id": {
"type": "string",
"description": "The ID of the department for this customer (required if portal is active)"
},
"project_id": {
"type": "string",
"description": "The ID of the project ID for this customer"
},
"subproject_id": {
"type": "string",
"description": "The ID of the subproject ID for this customer"
},
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The address of the customer"
}
}
},
"description": "List of clients"
},
"next": {
"type": "string",
"description": "URL for the next set of results"
},
"prev": {
"type": "string",
"description": "URL for the previous set of results"
}
}
}
CreatePOST/api/v1/admin/clients
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"client": {
"name": "Acme Corp",
"legal_type": "LC Limited",
"company_registration_number": "BE0123456478",
"contact_person_name": "John Doe",
"contact_person_language": "NL",
"contact_email": "johndoe@acme.corp",
"contact_phone_number": "32498465349",
"portal_active": true,
"department_id": "754",
"subproject_id": "709",
"address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"client": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the client"
},
"legal_type": {
"type": "string",
"description": "The legal type of the client"
},
"company_registration_number": {
"type": "string",
"description": "The company registration number. Country dependant of format."
},
"contact_person_name": {
"type": "string",
"description": "Contact person's name within the company"
},
"contact_person_language": {
"type": "string",
"description": "Language of the contact person"
},
"contact_email": {
"type": "string",
"description": "Email of the contact person"
},
"contact_phone_number": {
"type": "string",
"description": "Phone number of the contact person"
},
"portal_active": {
"type": "boolean",
"description": "Setting if the customer portal is active"
},
"department_id": {
"type": "string",
"description": "The ID of the department for this customer (required if portal is active)"
},
"subproject_id": {
"type": "string",
"description": "The ID of the subproject ID for this customer (required if portal is active)"
},
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The address of the customer"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "101",
"name": "Acme Corp",
"legal_type": "LC Limited",
"company_registration_number": "BE0123456478",
"contact_person_name": "John Doe",
"contact_person_language": "NL",
"contact_email": "johndoe@acme.corp",
"contact_phone_number": "32498465349",
"portal_active": true,
"department_id": "754",
"project_id": "123",
"subproject_id": "709",
"address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
},
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the client"
},
"legal_type": {
"type": "string",
"description": "The legal type of the client"
},
"company_registration_number": {
"type": "string",
"description": "The company registration number. Country dependant of format."
},
"contact_person_name": {
"type": "string",
"description": "Contact person's name within the company"
},
"contact_person_language": {
"type": "string",
"description": "Language of the contact person"
},
"contact_email": {
"type": "string",
"description": "Email of the contact person"
},
"contact_phone_number": {
"type": "string",
"description": "Phone number of the contact person"
},
"portal_active": {
"type": "boolean",
"description": "Setting if the customer portal is active"
},
"department_id": {
"type": "string",
"description": "The ID of the department for this customer (required if portal is active)"
},
"project_id": {
"type": "string",
"description": "The ID of the project ID for this customer"
},
"subproject_id": {
"type": "string",
"description": "The ID Of the subproject ID for this customer"
},
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The address of the customer"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating or updating. The keys refer to the name of the field (eg. start_date) but\n\ncan also be “base” for generic errors. The value is a list of human readable errors for that specific field."
}
}
}
GetGET/api/v1/admin/clients/{id}
Example URI
- id
string
(required) Example: 4554The ID of the Client
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "101",
"name": "Acme Corp",
"legal_type": "LC Limited",
"company_registration_number": "BE0123456478",
"contact_person_name": "John Doe",
"contact_person_language": "NL",
"contact_email": "johndoe@acme.corp",
"contact_phone_number": "32498465349",
"portal_active": true,
"department_id": "754",
"project_id": "123",
"subproject_id": "709",
"address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
},
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the client"
},
"legal_type": {
"type": "string",
"description": "The legal type of the client"
},
"company_registration_number": {
"type": "string",
"description": "The company registration number. Country dependant of format."
},
"contact_person_name": {
"type": "string",
"description": "Contact person's name within the company"
},
"contact_person_language": {
"type": "string",
"description": "Language of the contact person"
},
"contact_email": {
"type": "string",
"description": "Email of the contact person"
},
"contact_phone_number": {
"type": "string",
"description": "Phone number of the contact person"
},
"portal_active": {
"type": "boolean",
"description": "Setting if the customer portal is active"
},
"department_id": {
"type": "string",
"description": "The ID of the department for this customer (required if portal is active)"
},
"project_id": {
"type": "string",
"description": "The ID of the project ID for this customer"
},
"subproject_id": {
"type": "string",
"description": "The ID Of the subproject ID for this customer"
},
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The address of the customer"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating or updating. The keys refer to the name of the field (eg. start_date) but\n\ncan also be “base” for generic errors. The value is a list of human readable errors for that specific field."
}
}
}
UpdatePATCH/api/v1/admin/clients/{id}
Example URI
- id
string
(required) Example: 4554The ID of the Client
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"client": {
"name": "Acme Corp",
"legal_type": "LC Limited",
"company_registration_number": "BE0123456478",
"contact_person_name": "John Doe",
"contact_person_language": "NL",
"contact_email": "johndoe@acme.corp",
"contact_phone_number": "32498465349",
"portal_active": true,
"department_id": "754",
"subproject_id": "709",
"address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"client": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the client"
},
"legal_type": {
"type": "string",
"description": "The legal type of the client"
},
"company_registration_number": {
"type": "string",
"description": "The company registration number. Country dependant of format."
},
"contact_person_name": {
"type": "string",
"description": "Contact person's name within the company"
},
"contact_person_language": {
"type": "string",
"description": "Language of the contact person"
},
"contact_email": {
"type": "string",
"description": "Email of the contact person"
},
"contact_phone_number": {
"type": "string",
"description": "Phone number of the contact person"
},
"portal_active": {
"type": "boolean",
"description": "Setting if the customer portal is active"
},
"department_id": {
"type": "string",
"description": "The ID of the department for this customer (required if portal is active)"
},
"subproject_id": {
"type": "string",
"description": "The ID of the subproject ID for this customer (required if portal is active)"
},
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The address of the customer"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "101",
"name": "Acme Corp",
"legal_type": "LC Limited",
"company_registration_number": "BE0123456478",
"contact_person_name": "John Doe",
"contact_person_language": "NL",
"contact_email": "johndoe@acme.corp",
"contact_phone_number": "32498465349",
"portal_active": true,
"department_id": "754",
"project_id": "123",
"subproject_id": "709",
"address": {
"name": "Some Name",
"street1": "Dorpstraat 1",
"street2": "Bus 1",
"zip": "2018",
"city": "Antwerpen",
"administrative_area_level_1": "Hello, world!",
"administrative_area_level_2": "Hello, world!",
"administrative_area_level_3": "Hello, world!",
"administrative_area_level_4": "Hello, world!",
"administrative_area_level_5": "Hello, world!",
"country": "BE",
"applies_to_all_departments": true,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
},
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the client"
},
"legal_type": {
"type": "string",
"description": "The legal type of the client"
},
"company_registration_number": {
"type": "string",
"description": "The company registration number. Country dependant of format."
},
"contact_person_name": {
"type": "string",
"description": "Contact person's name within the company"
},
"contact_person_language": {
"type": "string",
"description": "Language of the contact person"
},
"contact_email": {
"type": "string",
"description": "Email of the contact person"
},
"contact_phone_number": {
"type": "string",
"description": "Phone number of the contact person"
},
"portal_active": {
"type": "boolean",
"description": "Setting if the customer portal is active"
},
"department_id": {
"type": "string",
"description": "The ID of the department for this customer (required if portal is active)"
},
"project_id": {
"type": "string",
"description": "The ID of the project ID for this customer"
},
"subproject_id": {
"type": "string",
"description": "The ID Of the subproject ID for this customer"
},
"address": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The human name of the address"
},
"street1": {
"type": "string",
"description": "Street + house number"
},
"street2": {
"type": "string",
"description": "Extension of street1"
},
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"administrative_area_level_1": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_2": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_3": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_4": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"administrative_area_level_5": {
"type": "string",
"description": "An extra administrative level, depends per country / tenant what this means"
},
"country": {
"type": "string",
"description": "According to ISO 3166-1 alpha-2"
},
"applies_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether address belongs to all departments of the tenant"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the address"
}
},
"description": "The address of the customer"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating or updating. The keys refer to the name of the field (eg. start_date) but\n\ncan also be “base” for generic errors. The value is a list of human readable errors for that specific field."
}
}
}
Departments ¶
ListGET/api/v1/admin/departments
Returns all departments. Results are paginated. To get all results follow the
next_page
link in the result.
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
],
"next": "Hello, world!",
"prev": "Hello, world!"
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "List of departments"
},
"next": {
"type": "string",
"description": "URL for the next set of results"
},
"prev": {
"type": "string",
"description": "URL for the previous set of results"
}
}
}
CreatePOST/api/v1/admin/departments
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"department": {
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"department": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp",
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating or updating. The keys refer to the name of the field (eg. start_date) but\n\ncan also be “base” for generic errors. The value is a list of human readable errors for that specific field."
}
}
}
GetGET/api/v1/admin/departments/{id}
Example URI
- id
string
(required) Example: 4554The ID of the Department
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp",
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating or updating. The keys refer to the name of the field (eg. start_date) but\n\ncan also be “base” for generic errors. The value is a list of human readable errors for that specific field."
}
}
}
UpdatePATCH/api/v1/admin/departments/{id}
Example URI
- id
string
(required) Example: 4554The ID of the Department
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"department": {
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"department": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp",
"errors": [
"Hello, world!"
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the department"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
},
"errors": {
"type": "array",
"description": "A key-value list of any errors encountered while creating or updating. The keys refer to the name of the field (eg. start_date) but\n\ncan also be “base” for generic errors. The value is a list of human readable errors for that specific field."
}
}
}
Team compensations ¶
ListGET/api/v1/admin/team_compensations
Example URI
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Body
{
"team_compensations": [
{
"id": "1",
"name": "Some Name",
"type": "hour",
"contract_type": "interim"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"team_compensations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the team compensation"
},
"name": {
"type": "string",
"description": "The name of the compensation"
},
"type": {
"type": "string",
"enum": [
"hour",
"day",
"team"
],
"description": "The type of compensation"
},
"contract_type": {
"type": "string",
"enum": [
"interim",
"freelancer",
"intern",
"contractual",
"volunteer"
],
"description": "The contract type of the compensation"
}
},
"required": [
"id",
"name"
]
}
}
}
}
Access Control ¶
Access Control ¶
Assign accessPOST/api/v1/admin/admin-account/{collaborator}/{role}
Create or update a manager
When manager is found by role
and collaborator
then this endpoint performs update for existing manager.
When manager cannot been found by role
and collaborator
then this endpoint creates a new manager.
Example URI
- collaborator
string
(required) Example: 4554The ID of the collaborator
- role
string
(required) Example: 7The ID of the role
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
Body
{
"manager": {
"full_access": false,
"set_default_overview": false,
"collaborator_manager_access": false,
"access_to_all_departments": false,
"manager_of_all_departments": false,
"department_ids": [
"103",
"791",
"189"
]
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"manager": {
"type": "object",
"properties": {
"full_access": {
"type": "boolean",
"description": "This property indicates whether the user receives full access to all projects"
},
"set_default_overview": {
"type": "boolean",
"description": "This property indicates whether to set default overview for a user"
},
"collaborator_manager_access": {
"type": "boolean",
"description": "If tenant uses collaborator access determined by collaborator manager role, this settings defines manager's access to collaborators"
},
"access_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether user belongs to all tenant departments"
},
"manager_of_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether user manages all tenant departments"
},
"department_ids": {
"type": "array",
"description": "If tenant uses department management, this array lists department IDs which user can manage"
}
}
}
}
}
200
Headers
Content-Type: application/json
Body
{
"id": "2213213",
"full_access": false,
"set_default_overview": false,
"role": {
"id": "1",
"name": "Admin"
},
"collaborator": {
"id": 2403,
"first_name": "John",
"last_name": "Doe",
"email": "John-doe@example.com"
},
"collaborator_manager_access": false,
"access_to_all_departments": false,
"manager_of_all_departments": false,
"departments": [
{
"id": "101",
"name": "Acme Corp",
"description": "The department for Acme Corp"
}
]
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the manager"
},
"full_access": {
"type": "boolean",
"description": "This property indicates whether the user receives full access to all projects"
},
"set_default_overview": {
"type": "boolean",
"description": "This property indicates whether to set default overview for a user"
},
"role": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "ID of the role assigned to a manager"
},
"name": {
"type": "string",
"description": "Name of the role assigned to a manager"
}
},
"required": [
"id",
"name"
]
},
"collaborator": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Identification number within Beeple"
},
"first_name": {
"type": "string",
"description": "First name"
},
"last_name": {
"type": "string",
"description": "Last name"
},
"email": {
"type": "string",
"description": "Email"
}
},
"required": [
"id",
"first_name",
"last_name"
],
"description": "Collaborator's info assigned to a manager"
},
"collaborator_manager_access": {
"type": "boolean",
"description": "If tenant uses collaborator access determined by collaborator manager role, this settings defines manager's access to collaborators"
},
"access_to_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether user belongs to all tenant departments"
},
"manager_of_all_departments": {
"type": "boolean",
"description": "If tenant uses department management, this property indicates whether user manages all tenant departments"
},
"departments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the client"
},
"name": {
"type": "string",
"description": "The name of the department"
},
"description": {
"type": "string",
"description": "A description of the department"
}
}
},
"description": "If tenant uses department management, this object lists departments of the user which he can manage"
}
},
"required": [
"id"
]
}
Remove accessDELETE/api/v1/admin/admin-account/{collaborator}
Example URI
- collaborator
string
(required) Example: 4554The ID of the collaborator
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Client Access Control ¶
Assign accessPOST/api/v1/admin/admin-account-client/{client}/{collaborator}/{role}
Example URI
- client
string
(required) Example: 37The ID of the client
- collaborator
string
(required) Example: 4554The ID of the collaborator
- role
string
(required) Example: 7The ID of the role
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json
Remove accessDELETE/api/v1/admin/admin-account-client/{client}/{collaborator}
Example URI
- client
string
(required) Example: 37The ID of the client
- collaborator
string
(required) Example: 4554The ID of the collaborator
Headers
Content-Type: application/json
Token: AAAA-BBBB-CCCC
200
Headers
Content-Type: application/json