From 3bceb2e8f75f49edb4e71c6c289bae54b5b30ef0 Mon Sep 17 00:00:00 2001 From: uffejaeger <71610258+uffejaeger@users.noreply.github.com> Date: Mon, 10 Aug 2026 08:54:25 +0000 Subject: [PATCH] Update pinned Intercom OpenAPI spec --- internal/generated/intercom/client.gen.go | 33 ++++++++++++++ spec/intercom.openapi.yaml | 55 +++++++++++++++++++++++ spec/metadata.json | 4 +- 3 files changed, 90 insertions(+), 2 deletions(-) diff --git a/internal/generated/intercom/client.gen.go b/internal/generated/intercom/client.gen.go index 10dcd61..16c56ee 100644 --- a/internal/generated/intercom/client.gen.go +++ b/internal/generated/intercom/client.gen.go @@ -40,6 +40,8 @@ const ( AdminLoginFailure ActivityLogActivityType = "admin_login_failure" AdminLoginSuccess ActivityLogActivityType = "admin_login_success" AdminLogout ActivityLogActivityType = "admin_logout" + AdminOccupancySettingChange ActivityLogActivityType = "admin_occupancy_setting_change" + AdminOccupancyStateChange ActivityLogActivityType = "admin_occupancy_state_change" AdminPasswordResetRequest ActivityLogActivityType = "admin_password_reset_request" AdminPasswordResetSuccess ActivityLogActivityType = "admin_password_reset_success" AdminPermissionChange ActivityLogActivityType = "admin_permission_change" @@ -172,6 +174,10 @@ func (e ActivityLogActivityType) Valid() bool { return true case AdminLogout: return true + case AdminOccupancySettingChange: + return true + case AdminOccupancyStateChange: + return true case AdminPasswordResetRequest: return true case AdminPasswordResetSuccess: @@ -5590,6 +5596,9 @@ type ActivityLogMetadataSchema struct { // After The state of settings or values after the change. Structure varies by activity type. After *map[string]interface{} `json:"after,omitempty"` + // Auto Indicates the state was derived automatically rather than set by an Admin. + Auto *bool `json:"auto,omitempty"` + // AutoChanged Indicates if the status was changed automatically or manually. AutoChanged *string `json:"auto_changed,omitempty"` @@ -5602,6 +5611,15 @@ type ActivityLogMetadataSchema struct { // Before The state of settings or values before the change. Structure varies by activity type. Before *map[string]interface{} `json:"before,omitempty"` + // Changes The settings altered by the change, keyed by setting name. Only settings whose value actually moved are included, so an unchanged setting is absent rather than present with equal values. + Changes *map[string]struct { + // After The value after the change. + After interface{} `json:"after,omitempty"` + + // Before The value before the change. + Before interface{} `json:"before,omitempty"` + } `json:"changes,omitempty"` + // ConsentId The ID of the impersonation consent. ConsentId *int `json:"consent_id,omitempty"` @@ -5617,12 +5635,24 @@ type ActivityLogMetadataSchema struct { // ExternalId The unique identifier for the contact which is provided by the Client. ExternalId *string `json:"external_id,omitempty"` + // LastActivityAt The time of the Admin's last recorded activity. + LastActivityAt *int `json:"last_activity_at,omitempty"` + // Mode The mode of the setting (e.g., when_away_only, when_away_and_reassign). Mode *string `json:"mode,omitempty"` + // NewState The state after the change. `idle` or `occupied`. + NewState *string `json:"new_state,omitempty"` + + // PreviousState The state before the change. `idle` or `occupied`, and null when the Admin had not been classified yet. + PreviousState *string `json:"previous_state,omitempty"` + // ReassignConversations Indicates if conversations should be reassigned while an Admin is away. ReassignConversations *bool `json:"reassign_conversations,omitempty"` + // SettingType The group of workspace settings the change belongs to, for example `teammate_occupancy` or `automatic_away_mode`. + SettingType *string `json:"setting_type,omitempty"` + // SignInMethod The way the admin signed in. SignInMethod *string `json:"sign_in_method,omitempty"` @@ -5641,6 +5671,9 @@ type ActivityLogMetadataSchema struct { // TeamAssignmentLimit The team assignment limit value (null if limit was removed). TeamAssignmentLimit *int `json:"team_assignment_limit,omitempty"` + // ThresholdMinutes The inactivity window, in minutes, used to classify the Admin. + ThresholdMinutes *int `json:"threshold_minutes,omitempty"` + // TicketAssignmentLimit The ticket assignment limit value for an admin. TicketAssignmentLimit *int `json:"ticket_assignment_limit,omitempty"` diff --git a/spec/intercom.openapi.yaml b/spec/intercom.openapi.yaml index e95e43e..5b27176 100644 --- a/spec/intercom.openapi.yaml +++ b/spec/intercom.openapi.yaml @@ -792,6 +792,8 @@ paths: - admin_login_failure - admin_login_success - admin_logout + - admin_occupancy_setting_change + - admin_occupancy_state_change - admin_password_reset_request - admin_password_reset_success - admin_permission_change @@ -22442,6 +22444,8 @@ components: - admin_login_failure - admin_login_success - admin_logout + - admin_occupancy_setting_change + - admin_occupancy_state_change - admin_password_reset_request - admin_password_reset_success - admin_permission_change @@ -22635,6 +22639,57 @@ components: nullable: true description: The name of the Admin who initiated the activity. example: Joe Example + previous_state: + type: string + nullable: true + description: The state before the change. `idle` or `occupied`, and null + when the Admin had not been classified yet. + example: idle + new_state: + type: string + nullable: true + description: The state after the change. `idle` or `occupied`. + example: occupied + threshold_minutes: + type: integer + nullable: true + description: The inactivity window, in minutes, used to classify the Admin. + example: 15 + last_activity_at: + type: integer + format: date-time + nullable: true + description: The time of the Admin's last recorded activity. + example: 1671028894 + auto: + type: boolean + nullable: true + description: Indicates the state was derived automatically rather than set + by an Admin. + example: true + setting_type: + type: string + nullable: true + description: The group of workspace settings the change belongs to, for + example `teammate_occupancy` or `automatic_away_mode`. + example: teammate_occupancy + changes: + type: object + nullable: true + description: The settings altered by the change, keyed by setting name. + Only settings whose value actually moved are included, so an unchanged + setting is absent rather than present with equal values. + additionalProperties: + type: object + properties: + before: + description: The value before the change. + after: + description: The value after the change. + example: + occupancy_window_minutes: + before: 15 + after: 30 conversation_assignment_limit: type: integer nullable: true diff --git a/spec/metadata.json b/spec/metadata.json index c798f34..32d7fcf 100644 --- a/spec/metadata.json +++ b/spec/metadata.json @@ -1,7 +1,7 @@ { - "source": "https://github.com/intercom/Intercom-OpenAPI/blob/2e6172f2928d05db0371eef9f25bcdde4f10a768/descriptions/2.16/api.intercom.io.yaml", + "source": "https://github.com/intercom/Intercom-OpenAPI/blob/5662b2ec2ab3626b9e54ef5e89f7b7be4931391f/descriptions/2.16/api.intercom.io.yaml", "upstreamRepository": "intercom/Intercom-OpenAPI", "upstreamPath": "descriptions/2.16/api.intercom.io.yaml", - "upstreamCommit": "2e6172f2928d05db0371eef9f25bcdde4f10a768", + "upstreamCommit": "5662b2ec2ab3626b9e54ef5e89f7b7be4931391f", "apiVersion": "2.16" }