OpenXchangeClient.Api.Chronos (open_xchange_client v0.10.1)

API calls for all endpoints tagged Chronos.

Link to this section Summary

Functions

Browses a specific page of the SchedJoules calendars catalog. If no 'id' is provided, then the root page is returned.

Retreives a list of all countries that are supported by SchedJoules.

Gets free-busy timeslots for the given attendees.

Retrieves not acknowledged alarm triggers.

Gets the configured availability of the user.

Gets all events where the session userattendee's participation status equals "NEEDS-ACTION".

Gets all changed events since the given timestamp.

Gets a ZIP archive for multiple attachments of an event.

Retrieves a list of all supported languages by SchedJoules

Probe to check given ICal calendar properties before creating a new account.

Resolves an event identifier to an event, and returns it in the perspective of the current session's user, i.e. having an appropriate parent folder identifier assigned.

Performs a full text search with the specified query.

Sets/Overwrites the availability of the user. If an empty payload is sent, then the availability of the user is deleted/unset.

Updates an event based on an update sent by the organizer or a reply sent to the organizer.

Link to this section Functions

Link to this function

accept(connection, session, data_source, description_format, body, opts \\ [])

Accepts an itip invitation.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • data_source (String.t): The identifier of the data source. Currently only "com.openexchange.mail.ical" is valid.
  • description_format (String.t): The desired output fromat. Currently only "html" is valid.
  • body (ConversionDataSource): The data source object.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

accept_and_ignore_conflicts(connection, session, data_source, description_format, body, opts \\ [])

Accepts an itip invitation and ignores conflicts ir possible.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • data_source (String.t): The identifier of the data source. Currently only "com.openexchange.mail.ical" is valid.
  • description_format (String.t): The desired output fromat. Currently only "html" is valid.
  • body (ConversionDataSource): The data source object.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

acknowledge_alarm(connection, session, id, folder, alarm_id, opts \\ [])

Acknowledges an alarm.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • id (String.t): ID of the event.
  • folder (String.t): ID of the folder who contains the events.
  • alarm_id (integer()): The id of the alarm which shall be acknowledged.
  • opts (KeywordList): [optional] Optional parameters
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

analyze(connection, session, data_source, description_format, body, opts \\ [])

Analyzes an itip message.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • data_source (String.t): The identifier of the data source. Currently only "com.openexchange.mail.ical" is valid.
  • description_format (String.t): The desired output fromat. Currently only "html" is valid.
  • body (ConversionDataSource): The data source object.
  • opts (KeywordList): [optional] Optional parameters
    • :timezone (String.t): The timezone to show the event in.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

browse(connection, session, opts \\ [])

Browses a specific page of the SchedJoules calendars catalog. If no 'id' is provided, then the root page is returned.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • opts (KeywordList): [optional] Optional parameters
    • :id (integer()): The identifier of the page.
    • :language (String.t): The language/locale to translate the results to. If none is provided then the locale of the user's session will be used. If that one is not available then falls back to 'en'.
    • :country (String.t): The country/location for which to fetch the available catalog pages from the SchedJoules. If none is provided then the country of the user's session will be used. If that one is not available then falls back to 'us'. The 'country' parameter is only used for the root page. Otherwise it has no effect.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

change_organizer(connection, session, folder, id, timestamp, change_organizer_body, opts \\ [])

Changes an organizer of an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • id (String.t): ID of the event.
  • timestamp (integer()): Timestamp of the last update of the event.
  • change_organizer_body (InlineObject3):
  • opts (KeywordList): [optional] Optional parameters
    • :recurrence_id (String.t): The recurrence identifier.
    • :recurrence_range (String.t): The targeted range specified with the recurrence id.
    • :expand (boolean()): Defines if event series should be extended or not.
    • :fields (String.t): A comma-separated list of field identifiers.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data
    • :range_start (String.t): If expand is set to 'true' this parameter defines a lower inclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
    • :range_end (String.t): If expand is set to 'true' this parameter defines a upper exclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

countries(connection, session, opts \\ [])

@spec countries(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, OpenXchangeClient.Model.CountriesResponse.t()} | {:error, Tesla.Env.t()}

Retreives a list of all countries that are supported by SchedJoules.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • opts (KeywordList): [optional] Optional parameters
    • :language (String.t): The language/locale to translate the results to. If none is provided then the locale of the user's session will be used. If that one is not available then falls back to 'en'.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

create_event(connection, session, folder, body, opts \\ [])

Creates an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • body (EventData): A JSON object containing the event's data.
  • opts (KeywordList): [optional] Optional parameters
    • :check_conflicts (boolean()): Whether to check for conflicts or not.
    • :send_internal_notifications (boolean()): Specifies that attendees should be notified about the changes when saving a meeting or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data
    • :range_start (String.t): If expand is set to 'true' this parameter defines a lower inclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
    • :range_end (String.t): If expand is set to 'true' this parameter defines a upper exclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
    • :expand (boolean()): Defines if event series should be extended or not.
    • :used_groups (String.t): In case the client resolves groups into single attendees the client can provide the ids of the groups he used (resolved) as a comma separated list. This way the usecount of those groups will be increased.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

create_event_with_attachments(connection, session, folder, json0, file0, opts \\ [])

@spec create_event_with_attachments(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  String.t(),
  keyword()
) :: {:ok, String.t()} | {:error, Tesla.Env.t()}

Creates an event and attaches files.

Note It is possible to create multiple attachments at once. Therefore add additional form fields and replace "[index]" in file_[index] with the appropriate index, like file_1. The index always starts with 0 (mandatory attachment object). There can only be one json payload describing the EventData, the rest json payloads (if present) will simply be ignored.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • json0 (String.t): A JSON object containing the event's data as described in EventData.
  • file0 (String.t): The attachment file as per <input type=\"file\" />.
  • opts (KeywordList): [optional] Optional parameters
    • :check_conflicts (boolean()): Whether to check for conflicts or not.
    • :send_internal_notifications (boolean()): Specifies that attendees should be notified about the changes when saving a meeting or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :used_groups (String.t): In case the client resolves groups into single attendees the client can provide the ids of the groups he used (resolved) as a comma separated list. This way the usecount of those groups will be increased.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

decline(connection, session, data_source, description_format, body, opts \\ [])

Declines an itip invitation.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • data_source (String.t): The identifier of the data source. Currently only "com.openexchange.mail.ical" is valid.
  • description_format (String.t): The desired output fromat. Currently only "html" is valid.
  • body (ConversionDataSource): The data source object.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

delete_event(connection, session, timestamp, delete_body, opts \\ [])

Deletes events.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • timestamp (integer()): Timestamp of the last update of the events.
  • delete_body (InlineObject2):
  • opts (KeywordList): [optional] Optional parameters
    • :range_start (String.t): If expand is set to 'true' this parameter defines a lower inclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
    • :range_end (String.t): If expand is set to 'true' this parameter defines a upper exclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
    • :expand (boolean()): Defines if event series should be extended or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :fields (String.t): A comma-separated list of field identifiers.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

freebusy(connection, session, from, until, body, opts \\ [])

Gets free-busy timeslots for the given attendees.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • from (String.t): Lower inclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
  • until (String.t): Upper exclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
  • body (FreeBusyBody):
  • opts (KeywordList): [optional] Optional parameters
    • :mask_id (String.t): The identifier of an existing event or event series to ignore when calculating free/busy information. This is useful when a client wants to find a new timeslot for an existing event.
    • :merge (boolean()): Set to <code>true</code> to merge the resulting free/busy-times.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_alarm_trigger(connection, session, range_end, opts \\ [])

@spec get_alarm_trigger(Tesla.Env.client(), String.t(), String.t(), keyword()) ::
  {:ok, OpenXchangeClient.Model.AlarmTriggerResponse.t()}
  | {:error, Tesla.Env.t()}

Retrieves not acknowledged alarm triggers.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • range_end (String.t): Upper exclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which should trigger before this date are returned.
  • opts (KeywordList): [optional] Optional parameters
    • :actions (String.t): A comma separated list of alarm actions. Only this actions will be returned.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_all_events(connection, session, range_start, range_end, opts \\ [])

@spec get_all_events(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword()
) ::
  {:ok, OpenXchangeClient.Model.EventsResponse.t()} | {:error, Tesla.Env.t()}

Gets all events in folder.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • range_start (String.t): Lower inclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
  • range_end (String.t): Upper exclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
  • opts (KeywordList): [optional] Optional parameters
    • :folder (String.t): ID of the folder who contains the events. If not set, all events of the default account will be queried.
    • :fields (String.t): A comma-separated list of field identifiers.
    • :order (String.t): The sort order to apply, either <code>ASC</code> for ascending, or <code>DESC</code> for descending.
    • :sort (String.t): Specifies the field for sorting the results.
    • :expand (boolean()): Defines if event series should be extended or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :update_cache (boolean()): If set to 'true' the cache will be forced to be updated (e. g. by contacting the underlying external account)

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_all_events_for_multiple_folders(connection, session, range_start, range_end, body, opts \\ [])

Gets all events of multiple folders.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • range_start (String.t): Lower inclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
  • range_end (String.t): Upper exclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
  • body (ChronosFolderBody): A JSON object containing the folder ids.
  • opts (KeywordList): [optional] Optional parameters
    • :fields (String.t): A comma-separated list of field identifiers.
    • :order (String.t): The sort order to apply, either <code>ASC</code> for ascending, or <code>DESC</code> for descending.
    • :sort (String.t): Specifies the field for sorting the results.
    • :expand (boolean()): Defines if event series should be extended or not.
    • :update_cache (boolean()): If set to 'true' the cache will be forced to be updated (e. g. by contacting the underlying external account)

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_availability(connection, session, opts \\ [])

@spec get_availability(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, OpenXchangeClient.Model.GetAvailabilityResponse.t()}
  | {:error, Tesla.Env.t()}

Gets the configured availability of the user.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_event(connection, session, id, folder, opts \\ [])

@spec get_event(Tesla.Env.client(), String.t(), String.t(), String.t(), keyword()) ::
  {:ok, OpenXchangeClient.Model.EventResponse.t()} | {:error, Tesla.Env.t()}

Gets an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • id (String.t): ID of the event.
  • folder (String.t): ID of the folder who contains the events.
  • opts (KeywordList): [optional] Optional parameters
    • :recurrence_id (String.t): The recurrence identifier.
    • :fields (String.t): A comma-separated list of field identifiers.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_event_attachment(connection, session, id, folder, managed_id, opts \\ [])

@spec get_event_attachment(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  integer(),
  keyword()
) :: {:ok, String.t()} | {:error, Tesla.Env.t()}

Gets the attachment of an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • id (String.t): ID of the event.
  • folder (String.t): ID of the folder who contains the events.
  • managed_id (integer()): The identifier of the attachment.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_event_list(connection, session, body, opts \\ [])

Gets a list of events.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • body ([OpenXchangeClient.Model.EventId.t]): A JSON array of JSON objects with the id and optionally the recurrence position of the event.
  • opts (KeywordList): [optional] Optional parameters
    • :fields (String.t): A comma-separated list of field identifiers.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_events_needing_action(connection, session, range_start, range_end, opts \\ [])

@spec get_events_needing_action(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword()
) :: {:ok, OpenXchangeClient.Model.EventsResponse.t()} | {:error, Tesla.Env.t()}

Gets all events where the session userattendee's participation status equals "NEEDS-ACTION".

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • range_start (String.t): Lower inclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
  • range_end (String.t): Upper exclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
  • opts (KeywordList): [optional] Optional parameters
    • :fields (String.t): A comma-separated list of field identifiers.
    • :order (String.t): The sort order to apply, either <code>ASC</code> for ascending, or <code>DESC</code> for descending.
    • :sort (String.t): Specifies the field for sorting the results.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_updates(connection, session, folder, timestamp, opts \\ [])

Gets all changed events since the given timestamp.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • timestamp (integer()): Timestamp of the last update of the requested events.
  • opts (KeywordList): [optional] Optional parameters
    • :range_start (String.t): Lower inclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
    • :range_end (String.t): Upper exclusive limit of the queried range as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
    • :fields (String.t): A comma-separated list of field identifiers.
    • :order (String.t): The sort order to apply, either <code>ASC</code> for ascending, or <code>DESC</code> for descending.
    • :sort (String.t): Specifies the field for sorting the results.
    • :expand (boolean()): Defines if event series should be extended or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

get_zipped_event_attachments(connection, session, id, folder, body, opts \\ [])

@spec get_zipped_event_attachments(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  [String.t()],
  keyword()
) :: {:ok, String.t()} | {:error, Tesla.Env.t()}

Gets a ZIP archive for multiple attachments of an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • id (String.t): ID of the event.
  • folder (String.t): ID of the folder who contains the events.
  • body ([String.t]): A JSON array with the identifiers of the attachments, which shall be put into ZIP archive
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

languages(connection, session, opts \\ [])

@spec languages(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, OpenXchangeClient.Model.LanguagesResponse.t()} | {:error, Tesla.Env.t()}

Retrieves a list of all supported languages by SchedJoules

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

move_event(connection, session, folder, id, timestamp, target_folder, opts \\ [])

Moves an event to another calendar folder.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • id (String.t): ID of the event.
  • timestamp (integer()): Timestamp of the last update of the event.
  • target_folder (String.t): ID of the target folder.
  • opts (KeywordList): [optional] Optional parameters
    • :check_conflicts (boolean()): Whether to check for conflicts or not.
    • :recurrence_id (String.t): The recurrence identifier.
    • :send_internal_notifications (boolean()): Specifies that attendees should be notified about the changes when saving a meeting or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data
    • :range_start (String.t): If expand is set to 'true' this parameter defines a lower inclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
    • :range_end (String.t): If expand is set to 'true' this parameter defines a upper exclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
    • :expand (boolean()): Defines if event series should be extended or not.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

probe(connection, session, body, opts \\ [])

Probe to check given ICal calendar properties before creating a new account.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • body (CalendarAccountProbeData): The properties to check.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

resolve_event(connection, session, id, opts \\ [])

@spec resolve_event(Tesla.Env.client(), String.t(), String.t(), keyword()) ::
  {:ok, OpenXchangeClient.Model.EventResponse.t()} | {:error, Tesla.Env.t()}

Resolves an event identifier to an event, and returns it in the perspective of the current session's user, i.e. having an appropriate parent folder identifier assigned.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • id (String.t): ID of the event.
  • opts (KeywordList): [optional] Optional parameters
    • :fields (String.t): A comma-separated list of field identifiers.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

search(connection, session, query, opts \\ [])

Performs a full text search with the specified query.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • query (String.t): The query
  • opts (KeywordList): [optional] Optional parameters
    • :language (String.t): The language/locale to translate the results to. If none is provided then the locale of the user's session will be used. If that one is not available then falls back to 'en'.
    • :max_rows (integer()): Specifies the maximum amount of results to return. If not specified, then it will fall back to '20'

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

set_availability(connection, session, body, opts \\ [])

@spec set_availability(
  Tesla.Env.client(),
  String.t(),
  OpenXchangeClient.Model.AvailabilityData.t(),
  keyword()
) :: {:ok, nil} | {:error, Tesla.Env.t()}

Sets/Overwrites the availability of the user. If an empty payload is sent, then the availability of the user is deleted/unset.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • body (AvailabilityData): A JSON object containing the availability's data.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

snooze_alarm(connection, session, id, folder, alarm_id, snooze_time, opts \\ [])

Snoozes an alarm by the given duration.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • id (String.t): ID of the event.
  • folder (String.t): ID of the folder who contains the events.
  • alarm_id (integer()): The id of the alarm which shall be snoozed.
  • snooze_time (integer()): The duration in milliseconds the alarm should be snoozed by. E.g. 300000 for 5 minutes.
  • opts (KeywordList): [optional] Optional parameters
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

tentative(connection, session, data_source, description_format, body, opts \\ [])

Tentatively accepts an itip invitation.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • data_source (String.t): The identifier of the data source. Currently only "com.openexchange.mail.ical" is valid.
  • description_format (String.t): The desired output fromat. Currently only "html" is valid.
  • body (ConversionDataSource): The data source object.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

update(connection, session, data_source, description_format, body, opts \\ [])

Updates an event based on an update sent by the organizer or a reply sent to the organizer.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • data_source (String.t): The identifier of the data source. Currently only "com.openexchange.mail.ical" is valid.
  • description_format (String.t): The desired output fromat. Currently only "html" is valid.
  • body (ConversionDataSource): The data source object.
  • opts (KeywordList): [optional] Optional parameters

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

update_alarms(connection, session, folder, id, timestamp, body, opts \\ [])

Updates the personal alarms of an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • id (String.t): ID of the event.
  • timestamp (integer()): Timestamp of the last update of the event.
  • body ([OpenXchangeClient.Model.Alarm.t]): A JSON array containing the alarms.
  • opts (KeywordList): [optional] Optional parameters
    • :recurrence_id (String.t): The recurrence identifier.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

update_attendee(connection, session, folder, id, timestamp, body, opts \\ [])

Updates the attendee status of an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • id (String.t): ID of the event.
  • timestamp (integer()): Timestamp of the last update of the event.
  • body (AttendeeAndAlarm):
  • opts (KeywordList): [optional] Optional parameters
    • :recurrence_id (String.t): The recurrence identifier.
    • :send_internal_notifications (boolean()): Specifies that attendees should be notified about the changes when saving a meeting or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data
    • :check_conflicts (boolean()): Whether to check for conflicts or not.
    • :range_start (String.t): If expand is set to 'true' this parameter defines a lower inclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
    • :range_end (String.t): If expand is set to 'true' this parameter defines a upper exclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
    • :expand (boolean()): Defines if event series should be extended or not.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

update_event(connection, session, folder, id, timestamp, update_body, opts \\ [])

Updates an event.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • id (String.t): ID of the event.
  • timestamp (integer()): Timestamp of the last update of the event.
  • update_body (InlineObject1):
  • opts (KeywordList): [optional] Optional parameters
    • :recurrence_id (String.t): The recurrence identifier.
    • :recurrence_range (String.t): The targeted range specified with the recurrence id.
    • :check_conflicts (boolean()): Whether to check for conflicts or not.
    • :send_internal_notifications (boolean()): Specifies that attendees should be notified about the changes when saving a meeting or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :push_token (String.t): The client's push token to allow filtering of push events for modified calendar data
    • :range_start (String.t): If expand is set to 'true' this parameter defines a lower inclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which start on or after this date are returned.
    • :range_end (String.t): If expand is set to 'true' this parameter defines a upper exclusive limit as a utc date-time value as specified in rfc 5545 chapter 3.3.5. E.g. "20170708T220000Z". Only events which end before this date are returned.
    • :expand (boolean()): Defines if event series should be extended or not.
    • :used_groups (String.t): In case the client resolves groups into single attendees the client can provide the ids of the groups he used (resolved) as a comma separated list. This way the usecount of those groups will be increased.

returns

Returns

on success {:error, Tesla.Env.t} on failure

Link to this function

update_event_with_attachments(connection, session, folder, id, timestamp, json0, file0, opts \\ [])

@spec update_event_with_attachments(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  integer(),
  String.t(),
  String.t(),
  keyword()
) :: {:ok, String.t()} | {:error, Tesla.Env.t()}

Updates an event and its attachments.

Note It is possible to update multiple attachments at once. Therefore add additional form fields and replace "[index]" in file_[index] with the appropriate index, like file_1. The index always starts with 0 (mandatory attachment object). There can only be one json payload describing the EventData, the rest json payloads (if present) will simply be ignored. If the event already has attachments, then for each of those attachments their valid manageId must be provided as part of the attachment metadata. The absense of an already existing attachment for the event will result in the deletion of that attachment.

parameters

Parameters

  • connection (OpenXchangeClient.Connection): Connection to server
  • session (String.t): A session ID previously obtained from the login module.
  • folder (String.t): ID of the folder who contains the events.
  • id (String.t): ID of the event.
  • timestamp (integer()): Timestamp of the last update of the event.
  • json0 (String.t): A JSON object containing an optional comment for the user to provide information about the update of the event under the key 'comment' and the event's data as described in EventData under the key 'data'.
  • file0 (String.t): The attachment file as per <input type=\"file\" />.
  • opts (KeywordList): [optional] Optional parameters
    • :recurrence_id (String.t): The recurrence identifier.
    • :check_conflicts (boolean()): Whether to check for conflicts or not.
    • :send_internal_notifications (boolean()): Specifies that attendees should be notified about the changes when saving a meeting or not.
    • :extended_entities (boolean()): If set to 'true' attendees of internal users will be extended by a 'contact' field, which contains some of the contact fields of this user.
    • :used_groups (String.t): In case the client resolves groups into single attendees the client can provide the ids of the groups he used (resolved) as a comma separated list. This way the usecount of those groups will be increased.

returns

Returns

on success {:error, Tesla.Env.t} on failure