Microsoft Exchange · Schema
EventCollectionResponse
Collection of events
CalendarCollaborationContactsEmailEnterprise
Properties
| Name | Type | Description |
|---|---|---|
| @odata.context | string | |
| @odata.nextLink | string | |
| value | array |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/microsoft-exchange/json-schema/microsoft-exchange-event-collection-response-schema.json",
"title": "EventCollectionResponse",
"description": "Collection of events",
"x-generated": "2026-11-05",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/microsoft-exchange-calendars-api-openapi.yml#/components/schemas/EventCollectionResponse",
"type": "object",
"properties": {
"@odata.context": {
"type": "string"
},
"@odata.nextLink": {
"type": "string",
"format": "uri"
},
"value": {
"type": "array",
"items": {
"$ref": "#/$defs/Event"
}
}
},
"$defs": {
"Attendee": {
"type": "object",
"description": "An event attendee with response status",
"properties": {
"emailAddress": {
"$ref": "#/$defs/EmailAddress"
},
"type": {
"type": "string",
"enum": [
"required",
"optional",
"resource"
],
"description": "The type of attendee"
},
"status": {
"$ref": "#/$defs/ResponseStatus"
},
"proposedNewTime": {
"$ref": "#/$defs/TimeSlot"
}
}
},
"DateTimeTimeZone": {
"type": "object",
"description": "Describes a date, time, and time zone",
"properties": {
"dateTime": {
"type": "string",
"description": "A date and time in ISO 8601 format"
},
"timeZone": {
"type": "string",
"description": "A time zone name (e.g. Pacific Standard Time)"
}
}
},
"EmailAddress": {
"type": "object",
"description": "The name and email address of a person",
"properties": {
"name": {
"type": "string",
"description": "The display name"
},
"address": {
"type": "string",
"format": "email",
"description": "The email address"
}
}
},
"Event": {
"type": "object",
"description": "An event in a user calendar or the default calendar of a Microsoft 365 group",
"properties": {
"id": {
"type": "string",
"readOnly": true,
"description": "Unique identifier for the event"
},
"subject": {
"type": "string",
"description": "The text of the event's subject line"
},
"body": {
"$ref": "#/$defs/ItemBody"
},
"bodyPreview": {
"type": "string",
"readOnly": true,
"description": "The preview of the message associated with the event in text format"
},
"start": {
"$ref": "#/$defs/DateTimeTimeZone"
},
"end": {
"$ref": "#/$defs/DateTimeTimeZone"
},
"location": {
"$ref": "#/$defs/Location"
},
"locations": {
"type": "array",
"items": {
"$ref": "#/$defs/Location"
},
"description": "The locations where the event is held or attended from"
},
"attendees": {
"type": "array",
"items": {
"$ref": "#/$defs/Attendee"
},
"description": "The collection of attendees for the event"
},
"organizer": {
"$ref": "#/$defs/Recipient"
},
"isAllDay": {
"type": "boolean",
"description": "Whether the event lasts all day"
},
"isCancelled": {
"type": "boolean",
"readOnly": true,
"description": "Whether the event has been canceled"
},
"isDraft": {
"type": "boolean",
"readOnly": true,
"description": "Whether the user has updated the event but not sent updates to attendees"
},
"isOnlineMeeting": {
"type": "boolean",
"description": "Whether this event has online meeting information"
},
"isOrganizer": {
"type": "boolean",
"readOnly": true,
"description": "Whether the calendar owner is the organizer"
},
"isReminderOn": {
"type": "boolean",
"description": "Whether an alert is set to remind the user"
},
"onlineMeeting": {
"$ref": "#/$defs/OnlineMeetingInfo"
},
"onlineMeetingProvider": {
"type": "string",
"enum": [
"unknown",
"teamsForBusiness",
"skypeForBusiness",
"skypeForConsumer"
],
"description": "The online meeting service provider"
},
"onlineMeetingUrl": {
"type": "string",
"readOnly": true,
"description": "URL for an online meeting"
},
"recurrence": {
"$ref": "#/$defs/PatternedRecurrence"
},
"reminderMinutesBeforeStart": {
"type": "integer",
"description": "Minutes before start time that the reminder alert occurs"
},
"responseRequested": {
"type": "boolean",
"description": "Whether the organizer requests invitees to send a response"
},
"responseStatus": {
"$ref": "#/$defs/ResponseStatus"
},
"sensitivity": {
"type": "string",
"enum": [
"normal",
"personal",
"private",
"confidential"
],
"description": "The event sensitivity level"
},
"seriesMasterId": {
"type": "string",
"readOnly": true,
"description": "The ID for the recurring series master if this is part of a series"
},
"showAs": {
"type": "string",
"enum": [
"free",
"tentative",
"busy",
"oof",
"workingElsewhere",
"unknown"
],
"description": "The status to show for the event"
},
"type": {
"type": "string",
"readOnly": true,
"enum": [
"singleInstance",
"occurrence",
"exception",
"seriesMaster"
],
"description": "The event type"
},
"importance": {
"type": "string",
"enum": [
"low",
"normal",
"high"
],
"description": "The importance of the event"
},
"hasAttachments": {
"type": "boolean",
"readOnly": true,
"description": "Whether the event has attachments"
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"description": "The categories associated with the event"
},
"allowNewTimeProposals": {
"type": "boolean",
"description": "Whether the organizer allows invitees to propose new times"
},
"iCalUId": {
"type": "string",
"readOnly": true,
"description": "A unique identifier for an event across calendars"
},
"changeKey": {
"type": "string",
"readOnly": true,
"description": "Identifies the version of the event"
},
"createdDateTime": {
"type": "string",
"format": "date-time",
"readOnly": true,
"description": "The date and time the event was created"
},
"lastModifiedDateTime": {
"type": "string",
"format": "date-time",
"readOnly": true,
"description": "The date and time the event was last changed"
},
"webLink": {
"type": "string",
"format": "uri",
"readOnly": true,
"description": "The URL to open the event in Outlook on the web"
},
"transactionId": {
"type": "string",
"description": "Custom identifier for client retries to avoid duplicate creation"
},
"hideAttendees": {
"type": "boolean",
"description": "When true, each attendee only sees themselves in the meeting request"
},
"originalStartTimeZone": {
"type": "string",
"description": "The start time zone set when the event was created"
},
"originalEndTimeZone": {
"type": "string",
"description": "The end time zone set when the event was created"
}
}
},
"ItemBody": {
"type": "object",
"description": "Represents the body content of an event",
"properties": {
"contentType": {
"type": "string",
"enum": [
"text",
"html"
],
"description": "The type of the content"
},
"content": {
"type": "string",
"description": "The content of the item body"
}
}
},
"Location": {
"type": "object",
"description": "Represents location information for an event",
"properties": {
"displayName": {
"type": "string",
"description": "The name associated with the location"
},
"locationType": {
"type": "string",
"enum": [
"default",
"conferenceRoom",
"homeAddress",
"businessAddress",
"geoCoordinates",
"streetAddress",
"hotel",
"restaurant",
"localBusiness",
"postalAddress"
],
"description": "The type of location"
},
"locationUri": {
"type": "string",
"description": "URI representing the location"
},
"locationEmailAddress": {
"type": "string",
"description": "Email address of the location"
},
"address": {
"$ref": "#/$defs/PhysicalAddress"
},
"coordinates": {
"$ref": "#/$defs/OutlookGeoCoordinates"
},
"uniqueId": {
"type": "string",
"description": "An internal identifier for the location"
},
"uniqueIdType": {
"type": "string",
"enum": [
"unknown",
"locationStore",
"directory",
"private",
"bing"
]
}
}
},
"OnlineMeetingInfo": {
"type": "object",
"description": "Details for joining an online meeting",
"properties": {
"joinUrl": {
"type": "string",
"format": "uri",
"description": "The URL to join the online meeting"
},
"conferenceId": {
"type": "string",
"description": "The ID of the conference"
},
"tollNumber": {
"type": "string",
"description": "The toll number for the online meeting"
},
"tollFreeNumbers": {
"type": "array",
"items": {
"type": "string"
},
"description": "Toll-free numbers for the online meeting"
},
"quickDial": {
"type": "string",
"description": "Quick dial number for the online meeting"
},
"phones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"number": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"unknown",
"home",
"business",
"mobile",
"other",
"pager"
]
}
}
}
}
}
},
"OutlookGeoCoordinates": {
"type": "object",
"description": "Geographic coordinates and elevation of a location",
"properties": {
"latitude": {
"type": "number",
"format": "double"
},
"longitude": {
"type": "number",
"format": "double"
},
"accuracy": {
"type": "number",
"format": "double"
},
"altitude": {
"type": "number",
"format": "double"
},
"altitudeAccuracy": {
"type": "number",
"format": "double"
}
}
},
"PatternedRecurrence": {
"type": "object",
"description": "The recurrence pattern and range for an event",
"properties": {
"pattern": {
"$ref": "#/$defs/RecurrencePattern"
},
"range": {
"$ref": "#/$defs/RecurrenceRange"
}
}
},
"PhysicalAddress": {
"type": "object",
"description": "Physical street address",
"properties": {
"street": {
"type": "string"
},
"city": {
"type": "string"
},
"state": {
"type": "string"
},
"countryOrRegion": {
"type": "string"
},
"postalCode": {
"type": "string"
}
}
},
"Recipient": {
"type": "object",
"description": "Represents the recipient of an event",
"properties": {
"emailAddress": {
"$ref": "#/$defs/EmailAddress"
}
}
},
"RecurrencePattern": {
"type": "object",
"description": "The frequency of an event recurrence",
"properties": {
"type": {
"type": "string",
"enum": [
"daily",
"weekly",
"absoluteMonthly",
"relativeMonthly",
"absoluteYearly",
"relativeYearly"
]
},
"interval": {
"type": "integer",
"description": "The number of units between occurrences"
},
"month": {
"type": "integer",
"description": "The month in which the event occurs (1-12)"
},
"dayOfMonth": {
"type": "integer",
"description": "The day of the month on which the event occurs"
},
"daysOfWeek": {
"type": "array",
"items": {
"type": "string",
"enum": [
"sunday",
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday"
]
}
},
"firstDayOfWeek": {
"type": "string",
"enum": [
"sunday",
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday"
]
},
"index": {
"type": "string",
"enum": [
"first",
"second",
"third",
"fourth",
"last"
]
}
}
},
"RecurrenceRange": {
"type": "object",
"description": "The duration of a recurrence",
"properties": {
"type": {
"type": "string",
"enum": [
"endDate",
"noEnd",
"numbered"
]
},
"startDate": {
"type": "string",
"format": "date",
"description": "The start date of the recurring series"
},
"endDate": {
"type": "string",
"format": "date",
"description": "The end date of the recurring series"
},
"recurrenceTimeZone": {
"type": "string",
"description": "Time zone for the start and end dates"
},
"numberOfOccurrences": {
"type": "integer",
"description": "Number of times to repeat the event"
}
}
},
"ResponseStatus": {
"type": "object",
"description": "Response status of an attendee or organizer",
"properties": {
"response": {
"type": "string",
"enum": [
"none",
"organizer",
"tentativelyAccepted",
"accepted",
"declined",
"notResponded"
],
"description": "The response type"
},
"time": {
"type": "string",
"format": "date-time",
"description": "The date and time that the response was returned"
}
}
},
"TimeSlot": {
"type": "object",
"description": "A time period",
"properties": {
"start": {
"$ref": "#/$defs/DateTimeTimeZone"
},
"end": {
"$ref": "#/$defs/DateTimeTimeZone"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/microsoft-exchange-event-collection-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.