Skip to content

Google: Imports an event This operation is used to add a private copy of an existing event to a calendar Only events with an event Type of default may be imported Deprecated behavior: If a non-default event is imported, its type will be changed to default and any event-type-specific properties it may have will be dropped

Google calendarEvents.calendarEventsImport: arguments, response, policy and SDK examples.

← Calendar events operations · Get started

Operation google.calendar_events_import

Provider route: POST /calendar/v3/calendars/{calendarId}/events/import. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/google with npm, or alter-sdk-google with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { GoogleIntegration } from "@alter-ai/google";
async function execute(input: Parameters<GoogleIntegration["calendarEvents"]["calendarEventsImport"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new GoogleIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.calendarEvents.calendarEventsImport(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_google import GoogleIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = GoogleIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.calendar_events.calendar_events_import(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
pathobjectRequired within parentAdditional keys: not allowed
path.calendarIdstringRequired within parentCalendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the “primary” keyword.
queryobjectOptionalAdditional keys: not allowed
query.fieldsstringOptionalSelector specifying which fields to include in a partial response.
query.prettyPrintbooleanOptionalReturns response with indentations and line breaks.
Default: true
query.quotaUserstringOptionalAn opaque string that represents a user for quota purposes. Must not exceed 40 characters.
query.userIpstringOptionalDeprecated. Please use quotaUser instead.
query.conferenceDataVersionintegerOptionalVersion number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event’s body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0.
Format: int32
Maximum: 1
Minimum: 0
query.eventLabelVersionintegerOptionalVersion number of the event label feature supported by the API client. Version 0 assumes no event label support and processes the colorId field for color management. Version 1 enables support for event labels, and processes the eventLabelId in the event’s body. In this case, the colorId field is ignored. The default is 0.
Format: int32
Maximum: 1
Minimum: 0
query.supportsAttachmentsbooleanOptionalWhether API client performing operation supports event attachments. Optional. The default is False.
bodyModelRequired within parentExpand Imports an event. This operation is used to add a private copy of an existing event to a calendar. Only events with an eventType of default may be imported.
Deprecated behavior: If a non-default event is imported, its type will be changed to default and any event-type-specific properties it may have will be dropped — request body — body

Referenced models: Imports an event. This operation is used to add a private copy of an existing event to a calendar. Only events with an eventType of default may be imported.
Deprecated behavior: If a non-default event is imported, its type will be changed to default and any event-type-specific properties it may have will be dropped — request body — body

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$ModelRootExpand Creates an event — response body

Referenced models: Creates an event — response body

17 more schemas are linked from the tables above, on the schema pages.

Creates an event — response body — conference Data
FieldTypePresenceDescription and constraints
$objectRoot
conferenceIdstringOptionalThe ID of the conference.
Can be used by developers to keep track of conferences, should not be displayed to users.
The ID value is formed differently for each conference solution type:
- eventHangout: ID is not set. (This conference type is deprecated.)
- eventNamedHangout: ID is the name of the Hangout. (This conference type is deprecated.)
- hangoutsMeet: ID is the 10-letter meeting code, for example aaa-bbbb-ccc.
- addOn: ID is defined by the third-party provider. Optional.
conferenceSolutionModelOptionalExpand Creates an event — response body — conference Data conference Solution
The conference solution, such as Google Meet.
Unset for a conference with a failed create request.
Either conferenceSolution and at least one entryPoint, or createRequest is required.
createRequestModelOptionalExpand Creates an event — response body — conference Data create Request
A request to generate a new conference and attach it to the event. The data is generated asynchronously. To see whether the data is present check the status field.
Either conferenceSolution and at least one entryPoint, or createRequest is required.
entryPointsarrayOptionalInformation about individual conference entry points, such as URLs or phone numbers.
All of them must belong to the same conference.
Either conferenceSolution and at least one entryPoint, or createRequest is required.
entryPoints[]ModelEach itemExpand Creates an event — response body — conference Data entry Points item
notesstringOptionalAdditional notes (such as instructions from the domain administrator, legal notices) to display to the user. Can contain HTML. The maximum length is 2048 characters. Optional.
parametersModelOptionalExpand Creates an event — response body — conference Data parameters
Additional properties related to a conference. An example would be a solution-specific setting for enabling video streaming.
signaturestringOptionalThe signature of the conference data.
Generated on server side.
Unset for a conference with a failed create request.
Optional for a conference with a pending create request.

Referenced models: Creates an event — response body — conference Data parameters, Creates an event — response body — conference Data conference Solution, Creates an event — response body — conference Data create Request, Creates an event — response body — conference Data entry Points item

Creates an event — response body — attachments item
FieldTypePresenceDescription and constraints
$objectRoot
fileIdstringOptionalID of the attached file. Read-only.
For Google Drive files, this is the ID of the corresponding Files resource entry in the Drive API.
fileUrlstringOptionalURL link to the attachment.
For adding Google Drive file attachments use the same format as in alternateLink property of the Files resource in the Drive API.
Required when adding an attachment.
iconLinkstringOptionalURL link to the attachment's icon. This field can only be modified for custom third-party attachments.
mimeTypestringOptionalInternet media type (MIME type) of the attachment.
titlestringOptionalAttachment title.
Creates an event — response body — attendees item
FieldTypePresenceDescription and constraints
$objectRoot
additionalGuestsJSONOptional
additionalGuests (anyOf 1)integerAlternativeNumber of additional guests. Optional. The default is 0.
Default: 0
Format: int32
additionalGuests (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
asyncOperationstringOptionalIf present, indicates the status of an asynchronous operation ongoing for this attendee (e.g. listing of members of large attendee groups). Read-only. The default is to not be present.
Possible values are:
- "inProgress" - The asynchronous operation is in progress.
- (not present) - Otherwise.
Default:
commentstringOptionalThe attendee's response comment. Optional.
displayNamestringOptionalThe attendee's name, if available. Optional.
emailstringOptionalThe attendee's email address, if available. This field must be present when adding an attendee. It must be a valid email address as per RFC5322.
Required when adding an attendee.
idstringOptionalThe attendee's Profile ID, if available.
optionalbooleanOptionalWhether this is an optional attendee. Optional. The default is False.
Default: false
organizerbooleanOptionalWhether the attendee is the organizer of the event. Read-only. The default is False.
resourcebooleanOptionalWhether the attendee is a resource. Can only be set when the attendee is added to the event for the first time. Subsequent modifications are ignored. Optional. The default is False.
Default: false
responseStatusstringOptionalThe attendee's response status. Possible values are:
- "needsAction" - The attendee has not responded to the invitation (recommended for new events).
- "declined" - The attendee has declined the invitation.
- "tentative" - The attendee has tentatively accepted the invitation.
- "accepted" - The attendee has accepted the invitation. Warning: If you add an event using the values declined, tentative, or accepted, attendees with the "Add invitations to my calendar" setting set to "When I respond to invitation in email" or "Only if the sender is known" might have their response reset to needsAction and won't see an event in their calendar unless they change their response in the event invitation email. Furthermore, if more than 200 guests are invited to the event, response status is not propagated to the guests.
selfbooleanOptionalWhether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
Default: false
Creates an event — response body — birthday Properties
FieldTypePresenceDescription and constraints
$objectRoot
contactstringOptionalResource name of the contact this birthday event is linked to. This can be used to fetch contact details from People API. Format: "people/c12345". Read-only.
customTypeNamestringOptionalCustom type label specified for this event. This is populated if birthdayProperties.type is set to "custom". Read-only.
typestringOptionalType of birthday or special event. Possible values are:
- "anniversary" - An anniversary other than birthday. Always has a contact.
- "birthday" - A birthday event. This is the default value.
- "custom" - A special date whose label is further specified in the customTypeName field. Always has a contact.
- "other" - A special date which does not fall into the other categories, and does not have a custom label. Always has a contact.
- "self" - Calendar owner's own birthday. Cannot have a contact. The Calendar API only supports creating events with the type "birthday". The type cannot be changed after the event is created.
Default: birthday
Creates an event — response body — end
FieldTypePresenceDescription and constraints
$objectRoot
datestringOptionalThe date, in the format "yyyy-mm-dd", if this is an all-day event.
Format: date
dateTimestringOptionalThe time, as a combined date-time value (formatted according to RFC3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
Format: date-time
timeZonestringOptionalThe time zone in which the time is specified. (Formatted as an IANA Time Zone Database name, e.g. "Europe/Zurich".) For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
Creates an event — response body — focus Time Properties
FieldTypePresenceDescription and constraints
$objectRoot
autoDeclineModestringOptionalWhether to decline meeting invitations which overlap Focus Time events. Valid values are declineNone, meaning that no meeting invitations are declined; declineAllConflictingInvitations, meaning that all conflicting meeting invitations that conflict with the event are declined; and declineOnlyNewConflictingInvitations, meaning that only new conflicting meeting invitations which arrive while the Focus Time event is present are to be declined.
chatStatusstringOptionalThe status to mark the user in Chat and related products. This can be available or doNotDisturb.
declineMessagestringOptionalResponse message to set if an existing event or new invitation is automatically declined by Calendar.
Creates an event — response body — out Of Office Properties
FieldTypePresenceDescription and constraints
$objectRoot
autoDeclineModestringOptionalWhether to decline meeting invitations which overlap Out of office events. Valid values are declineNone, meaning that no meeting invitations are declined; declineAllConflictingInvitations, meaning that all conflicting meeting invitations that conflict with the event are declined; and declineOnlyNewConflictingInvitations, meaning that only new conflicting meeting invitations which arrive while the Out of office event is present are to be declined.
declineMessagestringOptionalResponse message to set if an existing event or new invitation is automatically declined by Calendar.
Returns events on the specified calendar — response body — default Reminders item
FieldTypePresenceDescription and constraints
$objectRoot
methodstringOptionalThe method used by this reminder. Possible values are:
- "email" - Reminders are sent via email.
- "popup" - Reminders are sent via a UI popup.
Required when adding a reminder.
minutesJSONOptional
minutes (anyOf 1)integerAlternativeNumber of minutes before the start of the event when the reminder should trigger. Valid values are between 0 and 40320 (4 weeks in minutes).
Required when adding a reminder.
Format: int32
minutes (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$

SDK function policy ID: google.calendar_events_import. Catalog operation: calendar.events.import. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Required provider scopes: ["https://www.googleapis.com/auth/calendar", "https://www.googleapis.com/auth/calendar.app.created", "https://www.googleapis.com/auth/calendar.events", "https://www.googleapis.com/auth/calendar.events.owned"]

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.