eventAllocate
Identify available time slots for scheduling events by analyzing calendar availability, duration, and participants' schedules.
Instructions
Find a free slot to create an event.
Input Schema
Name | Required | Description | Default |
---|---|---|---|
allocation | Yes | ||
name | Yes |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"allocation": {
"additionalProperties": false,
"properties": {
"calendar": {
"type": "string"
},
"dates": {
"allOf": [
{
"additionalProperties": {},
"type": "object"
},
{
"anyOf": [
{
"additionalProperties": false,
"properties": {
"date": {
"items": [
{
"type": "integer"
},
{
"type": "integer"
},
{
"type": "integer"
}
],
"maxItems": 3,
"minItems": 3,
"type": "array"
},
"type": {
"const": "date",
"type": "string"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"end": {},
"start": {},
"type": {
"const": "date_range",
"type": "string"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"hint": {
"type": "integer"
},
"month": {
"enum": [
"january",
"february",
"march",
"april",
"may",
"june",
"july",
"august",
"september",
"october",
"november",
"december"
],
"type": "string"
},
"type": {
"const": "month",
"type": "string"
},
"year": {
"type": "integer"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"hint": {
"enum": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
],
"type": "string"
},
"type": {
"const": "week",
"type": "string"
},
"week": {
"additionalProperties": false,
"properties": {
"n": {
"type": "integer"
},
"year": {
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"type": {
"const": "year",
"type": "string"
},
"year": {
"type": "integer"
}
},
"type": "object"
}
]
}
]
},
"daytime": {
"items": [
{
"additionalProperties": false,
"properties": {
"hours": {
"maximum": 24,
"minimum": 0,
"type": "integer"
},
"minutes": {
"default": 0,
"maximum": 60,
"minimum": 0,
"type": "integer"
},
"seconds": {
"default": 0,
"maximum": 60,
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
{
"anyOf": [
{
"type": "null"
},
{
"additionalProperties": false,
"properties": {
"hours": {
"maximum": 24,
"minimum": 0,
"type": "integer"
},
"minutes": {
"maximum": 60,
"minimum": 0,
"type": "integer"
},
"seconds": {
"maximum": 60,
"minimum": 0,
"type": "integer"
}
},
"required": [
"minutes",
"seconds"
],
"type": "object"
}
]
}
],
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"document": {
"additionalProperties": false,
"properties": {
"id": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"kind": {
"enum": [
"event",
"event-rec",
"page",
"people",
"task",
"task-rec"
],
"type": "string"
}
},
"type": "object"
},
"section": {
"items": [
{
"type": "string"
},
{
"type": "integer"
}
],
"maxItems": 2,
"minItems": 2,
"type": "array"
}
},
"type": "object"
},
"duration": {
"type": "integer"
},
"participants": {
"default": [],
"items": {
"anyOf": [
{
"type": "string"
},
{
"additionalProperties": false,
"properties": {
"email": {
"type": "string"
},
"emailPrimary": {
"type": "string"
},
"helper": {
"type": "string"
},
"id": {
"type": "string"
}
},
"type": "object"
}
]
},
"type": "array"
},
"recurrence": {
"allOf": [
{
"additionalProperties": {},
"type": "object"
},
{
"anyOf": [
{
"additionalProperties": false,
"properties": {
"count": {
"type": "integer"
},
"rule": {
"allOf": [
{
"additionalProperties": {},
"type": "object"
},
{
"anyOf": [
{
"additionalProperties": false,
"properties": {
"every": {
"const": "day",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"day": {
"anyOf": [
{
"type": "integer"
},
{
"items": [
{},
{
"type": "integer"
}
],
"maxItems": 2,
"minItems": 2,
"type": "array"
}
]
},
"every": {
"const": "month",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"every": {
"const": "week",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
},
"weekdays": {
"additionalProperties": false,
"properties": {
"friday": {
"default": false,
"type": "boolean"
},
"monday": {
"default": false,
"type": "boolean"
},
"saturday": {
"default": false,
"type": "boolean"
},
"sunday": {
"default": false,
"type": "boolean"
},
"thursday": {
"default": false,
"type": "boolean"
},
"tuesday": {
"default": false,
"type": "boolean"
},
"wednesday": {
"default": false,
"type": "boolean"
}
},
"type": "object"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"every": {
"const": "workday",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"day": {
"type": "integer"
},
"every": {
"const": "year",
"type": "string"
},
"month": {},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
}
]
}
]
},
"start": {}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"end": {},
"rule": {
"allOf": [
{
"additionalProperties": {},
"type": "object"
},
{
"anyOf": [
{
"additionalProperties": false,
"properties": {
"every": {
"const": "day",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"day": {
"anyOf": [
{
"type": "integer"
},
{
"items": [
{},
{
"type": "integer"
}
],
"maxItems": 2,
"minItems": 2,
"type": "array"
}
]
},
"every": {
"const": "month",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"every": {
"const": "week",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
},
"weekdays": {
"additionalProperties": false,
"properties": {
"friday": {
"default": false,
"type": "boolean"
},
"monday": {
"default": false,
"type": "boolean"
},
"saturday": {
"default": false,
"type": "boolean"
},
"sunday": {
"default": false,
"type": "boolean"
},
"thursday": {
"default": false,
"type": "boolean"
},
"tuesday": {
"default": false,
"type": "boolean"
},
"wednesday": {
"default": false,
"type": "boolean"
}
},
"type": "object"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"every": {
"const": "workday",
"type": "string"
},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"day": {
"type": "integer"
},
"every": {
"const": "year",
"type": "string"
},
"month": {},
"period": {
"default": 1,
"type": "integer"
}
},
"type": "object"
}
]
}
]
},
"start": {}
},
"type": "object"
}
]
}
]
},
"slot": {
"items": [
{
"type": "string"
},
{
"additionalProperties": false,
"properties": {
"kind": {
"enum": [
"focus",
"meetings",
"processing"
],
"type": "string"
},
"name": {
"type": "string"
}
},
"type": "object"
}
],
"maxItems": 2,
"minItems": 2,
"type": "array"
}
},
"type": "object"
},
"name": {
"type": "string"
}
},
"required": [
"name",
"allocation"
],
"type": "object"
}