openapi: 3.2.0 info: description: Use the OCI Control Center Demand Signal API to manage Demand Signals. title: OCI Control Center Demand Signal Occ Metric Alarm API version: '20240430' x-provenance: method: harvested first_party: true publisher: Oracle source: https://docs.oracle.com/en-us/iaas/api/specs/806148b547773570d1e4ebc94c2e5efa20b751170d4471e0b4f6d0433ca6a7e6.yaml harvested: '2026-08-04' note: Published by Oracle as the contract for the OCI Control Center Demand Signal 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/806148b547773570d1e4ebc94c2e5efa20b751170d4471e0b4f6d0433ca6a7e6.yaml what: the harvested document for OCI Control Center Demand Signal API servers: - url: https://127.0.0.1/20240430 tags: - name: OccMetricAlarm paths: /internal/occMetricAlarms: get: description: 'Internal API to list all OccMetricAlarms in Kiev irrespective of compartment. ' operationId: ListInternalOccMetricAlarms parameters: - $ref: '#/components/parameters/DisplayNameQueryParam' - $ref: '#/components/parameters/PaginationLimitQueryParam' - $ref: '#/components/parameters/PaginationTokenQueryParam' - $ref: '#/components/parameters/SortOrderQueryParam' - $ref: '#/components/parameters/SortByQueryParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: A page of OccMetricAlarmSummary objects. headers: opc-next-page: description: 'For list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' 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/OccMetricAlarmCollection' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Gets a list of OccMetricAlarms across all compartments. tags: - OccMetricAlarm x-related-resource: '#/definitions/OccMetricAlarmCollection' /occMetricAlarms: get: description: 'Gets a list of OccMetricAlarms. ' operationId: ListOccMetricAlarms parameters: - $ref: '#/components/parameters/CompartmentIdQueryParam' - $ref: '#/components/parameters/DisplayNameQueryParam' - $ref: '#/components/parameters/IsActiveFilterQueryParam' - $ref: '#/components/parameters/PaginationLimitQueryParam' - $ref: '#/components/parameters/PaginationTokenQueryParam' - $ref: '#/components/parameters/SortOrderQueryParam' - $ref: '#/components/parameters/SortByQueryParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: A page of OccMetricAlarmSummary objects. headers: opc-next-page: description: 'For list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' 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/OccMetricAlarmCollection' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Gets a list of OccMetricAlarms. tags: - OccMetricAlarm x-related-resource: '#/definitions/OccMetricAlarmCollection' post: description: 'Creates a new OccMetricAlarm resource in the specified compartment with the provided configuration details. ' operationId: CreateOccMetricAlarm parameters: - $ref: '#/components/parameters/RetryTokenHeader' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: The OccMetricAlarm was created. 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/OccMetricAlarm' 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 an OccMetricAlarm. tags: - OccMetricAlarm x-related-resource: '#/definitions/OccMetricAlarm' requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateOccMetricAlarmDetails' description: The details for creating a new OccMetricAlarm. required: true /occMetricAlarms/{occMetricAlarmId}: delete: description: 'Deletes the specified OccMetricAlarm resource. ' operationId: DeleteOccMetricAlarm parameters: - $ref: '#/components/parameters/OccMetricAlarmIdentifierPathParam' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' responses: 204: description: The OccMetricAlarm was deleted. 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 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Deletes an OccMetricAlarm. tags: - OccMetricAlarm x-related-resource: '#/definitions/OccMetricAlarm' get: description: 'Retrieves the specified OccMetricAlarm resource based on its identifier. ' operationId: GetOccMetricAlarm parameters: - $ref: '#/components/parameters/OccMetricAlarmIdentifierPathParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: The OccMetricAlarm was retrieved. 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/OccMetricAlarm' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Gets an OccMetricAlarm. tags: - OccMetricAlarm put: description: 'Updates an existing OccMetricAlarm resource with new or modified configuration details. ' operationId: UpdateOccMetricAlarm parameters: - $ref: '#/components/parameters/OccMetricAlarmIdentifierPathParam' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: The OccMetricAlarm was updated. 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/OccMetricAlarm' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Updates an OccMetricAlarm. tags: - OccMetricAlarm requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateOccMetricAlarmDetails' description: The details to update the specified OccMetricAlarm. required: true components: parameters: PaginationTokenQueryParam: description: 'For list pagination. The value of the opc-next-page response header from the previous "List" call. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' in: query name: page schema: type: string minLength: 1 SortByQueryParam: description: 'The field to sort by. You can provide only one sort order. Default order for `timeCreated` is descending. Default order for `displayName` is ascending. ' in: query name: sortBy schema: type: string enum: - timeCreated - displayName default: timeCreated IsActiveFilterQueryParam: description: Filter to list only active or inactive alarms. in: query name: isActive x-default-description: 'null' schema: type: boolean CompartmentIdQueryParam: description: The [OCID](/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which to list resources. in: query name: compartmentId x-default-description: 'null' schema: type: string IfMatchHeader: description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match required: false schema: type: string PaginationLimitQueryParam: description: 'For list pagination. The maximum number of results per page, or items to return in a paginated "List" call. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' in: query name: limit schema: type: integer default: 10 maximum: 1000 minimum: 1 SortOrderQueryParam: description: The sort order to use, either ascending (`ASC`) or descending (`DESC`). in: query name: sortOrder x-default-description: 'The default value depends upon `sortBy`, and in general is `DESC` when sorting by time and `ASC` otherwise. ' x-obmcs-top-level-enum: '#/definitions/SortOrder' schema: type: string enum: - ASC - DESC OccMetricAlarmIdentifierPathParam: description: The [OCID](/iaas/Content/General/Concepts/identifiers.htm) of the OccMetricAlarm. in: path name: occMetricAlarmId required: true schema: type: string RetryTokenHeader: description: 'A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected. ' in: header name: opc-retry-token required: false schema: type: string maxLength: 64 minLength: 1 DisplayNameQueryParam: description: A filter to return only resources that match the given display name exactly. in: query name: displayName x-default-description: 'null' schema: type: string maxLength: 255 minLength: 1 RequestIdHeader: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash. ' in: header name: opc-request-id schema: type: string schemas: BaseResourceConfiguration: description: Configuration for a given 'resource' discriminator: propertyName: resource properties: resource: description: Resources like COMPUTE, STORAGE, EXADATA etc. enum: - COMPUTE - EXADATA - STORAGE - NETWORK type: string required: - resource 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 message. type: string required: - code - message OccMetricAlarmSummary: description: Summary of OccMetricAlarm. properties: compartmentId: description: Compartment OCID in which the alarm is created. maxLength: 255 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object description: description: Optional description for the alarm. maxLength: 1000 type: string displayName: description: Human-readable name for the alarm. maxLength: 255 minLength: 1 type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object frequency: description: Frequency at which notifications should be sent. type: string x-obmcs-enumref: '#/definitions/OccMetricAlarm/frequency' id: description: Unique OCID for this alarm configuration. maxLength: 255 type: string isActive: description: Alarm active status. type: boolean lifecycleState: description: The current lifecycle state of the resource. type: string x-obmcs-enumref: '#/definitions/OccMetricAlarm/lifecycleState' resourceConfiguration: $ref: '#/components/schemas/BaseResourceConfiguration' subscribers: description: List of topic OCIDs for notifications. items: type: string maxItems: 100 type: array systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a system tag key and value, scoped to a namespace. Example: `{"free-tier-retained": "true"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object threshold: description: Threshold at which alarm must be triggered. minimum: 0 type: integer thresholdType: description: Units in which threshold is being stored. type: string x-obmcs-enumref: '#/definitions/OccMetricAlarm/thresholdType' timeCreated: description: Creation timestamp (RFC 3339). format: date-time type: string timeUpdated: description: Last update timestamp (RFC 3339). format: date-time type: string required: - id - displayName - timeCreated - timeUpdated - lifecycleState - compartmentId - isActive - subscribers - frequency - threshold - resourceConfiguration type: object UpdateOccMetricAlarmDetails: description: Fields that can be updated for OccMetricAlarm. properties: definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object description: description: Optional description for the alarm. maxLength: 1000 type: string displayName: description: Human-readable name for the alarm. maxLength: 255 minLength: 1 type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object frequency: description: Frequency at which notifications should be sent. type: string x-obmcs-enumref: '#/definitions/OccMetricAlarm/frequency' isActive: description: Alarm active status. type: boolean lifecycleState: description: The current lifecycle state of the resource. enum: - CREATING - UPDATING - ACTIVE - DELETING - DELETED - FAILED type: string subscribers: description: List of topic OCIDs for notifications. items: type: string maxItems: 100 type: array threshold: description: Threshold at which alarm must be triggered. minimum: 0 type: integer thresholdType: description: Units in which threshold is being stored. type: string x-obmcs-enumref: '#/definitions/OccMetricAlarm/thresholdType' type: object CreateOccMetricAlarmDetails: description: Payload for creating an OccMetricAlarm. properties: compartmentId: description: Compartment OCID in which the alarm is created. maxLength: 255 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object description: description: Optional description for the alarm. maxLength: 1000 type: string displayName: description: Human-readable name for the alarm. maxLength: 255 minLength: 1 type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object frequency: description: Frequency at which notifications should be sent. type: string x-obmcs-enumref: '#/definitions/OccMetricAlarm/frequency' isActive: description: Alarm active status. type: boolean lifecycleState: description: The current lifecycle state of the resource. enum: - CREATING - UPDATING - ACTIVE - DELETING - DELETED - FAILED type: string resourceConfiguration: $ref: '#/components/schemas/BaseResourceConfiguration' subscribers: description: List of topic OCIDs for notifications. items: type: string maxItems: 100 type: array threshold: description: Threshold at which alarm must be triggered. minimum: 0 type: integer thresholdType: description: Units in which threshold is being stored. type: string x-obmcs-enumref: '#/definitions/OccMetricAlarm/thresholdType' required: - displayName - compartmentId - isActive - frequency - threshold - resourceConfiguration type: object OccMetricAlarm: description: 'OccMetricAlarm represents an alarm configuration for OCI Control Center metric. ' properties: compartmentId: description: Compartment OCID in which the alarm is created. maxLength: 255 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object description: description: Optional description for the alarm. maxLength: 1000 type: string displayName: description: Human-readable name for the alarm. maxLength: 255 minLength: 1 type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object frequency: description: Frequency at which notifications should be sent. enum: - DAILY - WEEKLY - MONTHLY type: string id: description: Unique OCID for this alarm configuration. maxLength: 255 type: string isActive: description: Alarm active status. type: boolean lifecycleState: description: The current lifecycle state of the resource. enum: - CREATING - UPDATING - ACTIVE - DELETING - DELETED - FAILED type: string resourceConfiguration: $ref: '#/components/schemas/BaseResourceConfiguration' subscribers: description: List of topic OCIDs for notifications. items: type: string maxItems: 100 type: array systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a system tag key and value, scoped to a namespace. Example: `{"free-tier-retained": "true"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object threshold: description: Threshold at which alarm must be triggered. minimum: 0 type: integer thresholdType: description: Units in which threshold is being stored. enum: - PERCENTAGE - UNITS type: string timeCreated: description: Creation timestamp (RFC 3339). format: date-time type: string timeUpdated: description: Last update timestamp (RFC 3339). format: date-time type: string required: - id - displayName - timeCreated - timeUpdated - lifecycleState - isActive - subscribers - frequency - threshold - thresholdType - resourceConfiguration type: object x-example: "{\n \"id\": \"ocid1.occmetricalarm.oc1..exampleuniqueID\",\n \"displayName\": \"compute-alarm\",\n \"description\": \"Compute Alarm\",\n \"timeCreated\": \"2025-09-02T05:55:02.314Z\",\n \"timeUpdated\": \"2025-09-02T05:56:11.105Z\",\n \"lifecycleState\": \"ACTIVE\",\n \"compartmentId\": \"ocid1.compartment.oc1..exampleuniqueCompartment\",\n \"isActive\": true,\n \"subscribers\": [\n \"ocid1.topic.aaaaaa...\",\n \"ocid1.topic.bbbbbb...\"\n ],\n \"frequency\": \"WEEKLY\",\n \"threshold\": 65,\n \"resourceConfiguration\": {\n \"resource\": \"COMPUTE\",\n \"shape\": \"VM.Standard.E5\",\n \"computeHwGeneration\": \"GEN3\",\n \"usageType\": \"CUSTOMER\"\n }\n}\n" OccMetricAlarmCollection: description: Results of an OccMetricAlarm list operation. properties: items: description: Results list of OccMetricAlarmSummary objects. items: $ref: '#/components/schemas/OccMetricAlarmSummary' type: array required: - items type: object 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 list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' 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: 'The [OCID](/iaas/Content/General/Concepts/identifiers.htm) of the asynchronous work request. Use GetWorkRequest with this ID to track the status of the request. ' type: string retry-after: description: A decimal number representing the number of seconds the client should wait before polling this endpoint again. type: integer x-properties: definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object serviceTenancyId: '''${service_tenancy}''' systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a system tag key and value, scoped to a namespace. Example: `{"free-tier-retained": "true"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object x-properties: lifecycleState: description: The current lifecycle state of the resource. enum: - CREATING - UPDATING - ACTIVE - DELETING - DELETED - FAILED type: string x-tag-groups: demandSignalServiceList: - occ-demand-signal${dash_stage_suffix} x-obmcs-client-retries-enabled: true x-obmcs-endpoint-service-name: control-center-ds x-oracle-package: com.oracle.oci.occ.ds