openapi: 3.2.0 info: description: Manage Oracle Cloud Infrastructure console announcements. title: Announcements Service Announcements Preferences API version: 0.0.1 x-provenance: method: harvested first_party: true publisher: Oracle source: https://docs.oracle.com/en-us/iaas/api/specs/ad81e510c25e589a2fdfbfe0fb957253a658175b2922b7951ddb17b4910c849b.yaml harvested: '2026-08-04' note: Published by Oracle as the contract for the Announcements Service API OCI service and stored verbatim; API Evangelist added only this provenance block. x-evidence: - url: https://docs.oracle.com/en-us/iaas/api/specs/index.json what: Oracle's own index of every OCI service specification - url: https://docs.oracle.com/en-us/iaas/api/specs/ad81e510c25e589a2fdfbfe0fb957253a658175b2922b7951ddb17b4910c849b.yaml what: the harvested document for Announcements Service API servers: - url: http://127.0.0.1/20180904 - url: https://127.0.0.1/20180904 tags: - name: announcementsPreferences paths: /announcementsPreferences: get: description: 'Gets the current preferences of the tenancy regarding receiving announcements by email. This call is subject to an Announcements limit that applies to the total number of requests across all read or write operations. Announcements might throttle this call to reject an otherwise valid request when the total rate of operations exceeds 20 requests per second for a given user. The service might also throttle this call to reject an otherwise valid request when the total rate of operations exceeds 100 requests per second for a given tenancy. ' operationId: ListAnnouncementsPreferences parameters: - $ref: '#/components/parameters/PaginationLimitQueryParam' - $ref: '#/components/parameters/PaginationTokenQueryParam' - $ref: '#/components/parameters/CompartmentIdQueryParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: 'The current tenancy preferences for receiving announcements by email. ' headers: opc-next-page: description: 'For pagination of a list of items. When paging through a list, if this header appears in the response, then a partial list might have been returned. Include this value as the `page` parameter for the subsequent GET request to get the next batch of items. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: items: $ref: '#/components/schemas/AnnouncementsPreferencesSummary' type: array 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: ListAnnouncementsPreferences tags: - announcementsPreferences x-example: 'GET /20180904/announcementsPreferences?compartmentId=<compartmentId> Host: announcements.us-ashburn-1.oraclecloud.com <authorization and other headers> ' post: description: 'Creates a request that specifies preferences for the tenancy regarding receiving announcements by email. This call is subject to an Announcements limit that applies to the total number of requests across all read or write operations. Announcements might throttle this call to reject an otherwise valid request when the total rate of operations exceeds 20 requests per second for a given user. The service might also throttle this call to reject an otherwise valid request when the total rate of operations exceeds 100 requests per second for a given tenancy. ' operationId: CreateAnnouncementsPreference parameters: - $ref: '#/components/parameters/RequestIdHeader' - description: Idempotency token in: header name: opc-retry-token schema: type: string responses: 200: description: OK headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/AnnouncementsPreferencesSummary' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Creates email preferences. tags: - announcementsPreferences x-example: "POST /20180904/announcementsPreferences/<rootCompartmentId>\nhost: announcements.us-ashburn-1.oraclecloud.com\n<authorization and other headers>\n{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleauingds4uwkcvbxv4ijs7zxuqnoewldef4fauxs7vaax2fab4gcsq\",\n \"preferenceType\": \"OPT_IN_TENANT_AND_INFORMATIONAL_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"type\": \"CreateAnnouncementsPreferencesDetails\"\n}\n" requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateAnnouncementsPreferencesDetails' description: The object that contains details about tenancy preferences for receiving announcements by email. required: true /announcementsPreferences/{preferenceId}: get: description: 'Gets the current preferences of the tenancy regarding receiving announcements by email. This call is subject to an Announcements limit that applies to the total number of requests across all read or write operations. Announcements might throttle this call to reject an otherwise valid request when the total rate of operations exceeds 20 requests per second for a given user. The service might also throttle this call to reject an otherwise valid request when the total rate of operations exceeds 100 requests per second for a given tenancy. ' operationId: GetAnnouncementsPreference parameters: - $ref: '#/components/parameters/PreferenceIdPathParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: 'The current tenancy preferences for receiving announcements by email. ' headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/AnnouncementsPreferences' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Gets the current email preferences for announcements. tags: - announcementsPreferences x-example: 'GET /20180904/announcementsPreferences/<preferenceId> host: announcements.us-ashburn-1.oraclecloud.com <authorization and other headers> ' put: description: 'Updates the preferences of the tenancy regarding receiving announcements by email. This call is subject to an Announcements limit that applies to the total number of requests across all read or write operations. Announcements might throttle this call to reject an otherwise valid request when the total rate of operations exceeds 20 requests per second for a given user. The service might also throttle this call to reject an otherwise valid request when the total rate of operations exceeds 100 requests per second for a given tenancy. ' operationId: UpdateAnnouncementsPreference parameters: - $ref: '#/components/parameters/PreferenceIdPathParam' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/IfMatchHeader' responses: 200: description: 'Updated email preferences for announcements for the specified compartment. ' headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/AnnouncementsPreferencesSummary' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Updates email preferences for announcements. tags: - announcementsPreferences x-example: "PUT /20180904/announcementsPreferences/<preferenceId>\nhost: announcements.us-ashburn-1.oraclecloud.com\n<authorization and other headers>\n{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleauingds4uwkcvbxv4ijs7zxuqnoewldef4fauxs7vaax2fab4gcsq\",\n \"preferenceType\": \"OPT_IN_TENANT_AND_INFORMATIONAL_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"type\": \"UpdateAnnouncementsPreferencesDetails\"\n}\n" requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateAnnouncementsPreferencesDetails' description: The object that contains details about tenancy preferences for receiving announcements by email. required: true components: parameters: CompartmentIdQueryParam: description: 'The OCID of the compartment. ' in: query name: compartmentId required: true schema: type: string maxLength: 512 minLength: 1 IfMatchHeader: description: The locking version, used for optimistic concurrency control. in: header name: if-match schema: type: string PreferenceIdPathParam: description: The ID of the preference. in: path name: preferenceId required: true schema: type: string PaginationTokenQueryParam: description: The value of the `opc-next-page` response header from the previous "List" call. in: query name: page schema: type: string maxLength: 3000 minLength: 1 RequestIdHeader: description: 'The unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the complete request ID. ' in: header name: opc-request-id schema: type: string PaginationLimitQueryParam: description: The maximum number of items to return in a paginated "List" call. in: query name: limit schema: type: integer default: 100 maximum: 1000 minimum: 1 schemas: BaseAnnouncementsPreferences: description: The object that contains the announcement email preferences configured for the tenancy (root compartment). discriminator: propertyName: type properties: compartmentId: description: 'The OCID of the compartment for which the email preferences apply. Because announcements are specific to a tenancy, specify the tenancy by providing the root compartment OCID. ' maxLength: 255 minLength: 1 type: string id: description: The ID of the preferences. type: string isUnsubscribed: description: 'A Boolean value to indicate whether the specified compartment chooses to not to receive informational announcements by email. (Manage preferences for receiving announcements by email by specifying the `preferenceType` attribute instead.) ' type: boolean preferenceType: description: The string representing the user's preference regarding receiving announcements by email. type: string x-obmcs-enumref: '#/definitions/BaseCreateAnnouncementsPreferencesDetails/preferenceType' preferredTimeZone: default: UTC description: The time zone in which the user prefers to receive announcements. Specify the preference with a value that uses the IANA Time Zone Database format (x-obmcs-time-zone). For example - America/Los_Angeles example: America/Los_Angeles format: x-obmcs-time-zone type: string timeCreated: description: When the preferences were set initially. format: date-time type: string timeUpdated: description: When the preferences were last updated. format: date-time type: string type: description: The entity type, which specifies either an object or a summary object for announcement email preferences. maxLength: 255 minLength: 1 type: string required: - type x-example: "{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleawuu4tcvbsd2ups5fsclgm5ksfjwmx6faux5sbjyw5ob5ojq2vkxa\",\n \"id\": \"ocid1.tenancy.oc1..exampleawuu4tcvbsd2ups5fsclgm5ksfjwmx6faux5sbjyw5ob5ojq2vkxa\",\n \"isUnsubscribed\": true,\n \"preferenceType\": \"OPT_IN_TENANT_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"timeCreated\": \"2022-01-19T21:30:13.803Z\",\n \"timeUpdated\": \"2023-05-12T23:41:45.968Z\",\n \"type\": \"AnnouncementsPreferences\"\n}\n" AnnouncementsPreferencesSummary: allOf: - $ref: '#/components/schemas/BaseAnnouncementsPreferences' - discriminator: AnnouncementsPreferencesSummary description: The summary object for announcement email preferences. x-example: "{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleawuu4tcvbsd2ups5fsclgm5ksfjwmx6faux5sbjyw5ob5ojq2vkxa\",\n \"id\": \"ocid1.tenancy.oc1..exampleawuu4tcvbsd2ups5fsclgm5ksfjwmx6faux5sbjyw5ob5ojq2vkxa\",\n \"isUnsubscribed\": true,\n \"preferenceType\": \"OPT_IN_TENANT_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"timeCreated\": \"2022-01-19T21:30:13.803Z\",\n \"timeUpdated\": \"2023-05-12T23:41:45.968Z\",\n \"type\": \"AnnouncementsPreferencesSummary\"\n}\n" UpdateAnnouncementsPreferencesDetails: allOf: - $ref: '#/components/schemas/BaseCreateAnnouncementsPreferencesDetails' - discriminator: UpdateAnnouncementsPreferencesDetails description: The object used to update announcement email preferences. x-example: "{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleauingds4uwkcvbxv4ijs7zxuqnoewldef4fauxs7vaax2fab4gcsq\",\n \"preferenceType\": \"OPT_IN_TENANT_AND_INFORMATIONAL_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"type\": \"UpdateAnnouncementsPreferencesDetails\"\n}\n" CreateAnnouncementsPreferencesDetails: allOf: - $ref: '#/components/schemas/BaseCreateAnnouncementsPreferencesDetails' - discriminator: CreateAnnouncementsPreferencesDetails description: The object used to create announcement email preferences. x-example: "{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleauingds4uwkcvbxv4ijs7zxuqnoewldef4fauxs7vaax2fab4gcsq\",\n \"isUnsubscribed\": true,\n \"preferenceType\": \"OPT_IN_TENANT_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"type\": \"CreateAnnouncementsPreferencesDetails\"\n}\n" Error: description: Error Information. properties: code: description: A short error code that defines the error, meant for programmatic parsing. type: string message: description: A human-readable error string. type: string required: - code - message AnnouncementsPreferences: allOf: - $ref: '#/components/schemas/BaseAnnouncementsPreferences' - discriminator: AnnouncementsPreferences description: The object for announcement email preferences. x-example: "{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleawuu4tcvbsd2ups5fsclgm5ksfjwmx6faux5sbjyw5ob5ojq2vkxa\",\n \"id\": \"ocid1.tenancy.oc1..exampleawuu4tcvbsd2ups5fsclgm5ksfjwmx6faux5sbjyw5ob5ojq2vkxa\",\n \"isUnsubscribed\": true,\n \"preferenceType\": \"OPT_IN_TENANT_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"timeCreated\": \"2022-01-19T21:30:13.803Z\",\n \"timeUpdated\": \"2023-05-12T23:41:45.968Z\",\n \"type\": \"AnnouncementsPreferences\"\n}\n" BaseCreateAnnouncementsPreferencesDetails: description: The model for the parameters of announcement email preferences configured for the tenancy (root compartment). discriminator: propertyName: type properties: compartmentId: description: 'The OCID of the compartment for which you want to manage announcement email preferences. (Specify the tenancy by providing the root compartment OCID.) ' maxLength: 255 minLength: 1 type: string isUnsubscribed: description: 'A Boolean value to indicate whether the specified compartment chooses to not to receive informational announcements by email. (Manage preferences for receiving announcements by email by specifying the `preferenceType` attribute instead.) ' type: boolean preferenceType: description: The string representing the user's preference, whether to opt in to only required announcements, to opt in to all announcements, including informational announcements, or to opt out of all announcements. enum: - OPT_IN_TENANT_ANNOUNCEMENTS - OPT_IN_TENANT_AND_INFORMATIONAL_ANNOUNCEMENTS - OPT_OUT_ALL_ANNOUNCEMENTS type: string preferredTimeZone: default: UTC description: The time zone in which the user prefers to receive announcements. Specify the preference with a value that uses the IANA Time Zone Database format (x-obmcs-time-zone). For example - America/Los_Angeles example: America/Los_Angeles format: x-obmcs-time-zone type: string type: description: 'The entity type, which specifies a model that either creates new announcement email preferences or updates existing preferences. ' maxLength: 255 minLength: 1 type: string required: - type - preferenceType x-example: "{\n \"compartmentId\": \"ocid1.tenancy.oc1..exampleauingds4uwkcvbxv4ijs7zxuqnoewldef4fauxs7vaax2fab4gcsq\",\n \"isUnsubscribed\": true,\n \"preferenceType\": \"OPT_IN_TENANT_ANNOUNCEMENTS\",\n \"preferredTimeZone\": \"UTC\",\n \"type\": \"BaseCreateAnnouncementsPreferencesDetails\"\n}\n" responses: default: description: Unknown Error headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/Error' x-anchors: x-headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' type: string opc-next-page: description: 'For pagination of a list of items. When paging through a list, if this header appears in the response, then a partial list might have been returned. Include this value as the `page` parameter for the subsequent GET request to get the next batch of items. ' type: string opc-previous-page: description: 'For pagination of a list of items. Include this value as the `page` parameter for the subsequent GET request to get the previous batch of items. ' type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' type: string opc-work-request-id: description: 'Unique Oracle-assigned identifier for the asynchronous request. You can use this to query status of the asynchronous operation. ' type: string x-properties: definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string, integer and boolean types are supported. ' type: object description: 'Key-value pair representing predefined tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace": {"bar-key": "value"}}` ' type: object freeformTags: additionalProperties: type: string description: 'Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` ' type: object systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string, integer and boolean types are supported. ' type: object description: 'Key-value pair representing system tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object x-obmcs-client-retries-enabled: false x-oracle-package: com.oracle.pic.announcements.announcements-api