diff --git a/.generator/schemas/v1/openapi.yaml b/.generator/schemas/v1/openapi.yaml
index 00de5f7dc6f..56084ed19bc 100644
--- a/.generator/schemas/v1/openapi.yaml
+++ b/.generator/schemas/v1/openapi.yaml
@@ -4219,14 +4219,14 @@ components:
type: boolean
type: object
HostTags:
- description: Host name and an array of its tags
+ description: Set of tags to associate with your host.
properties:
host:
description: Your host name.
example: test.host
type: string
tags:
- description: A list of tags associated with a host.
+ description: A list of tags to apply to the host.
items:
description: A given tag in a list.
example: environment:production
@@ -18972,18 +18972,18 @@ components:
- match
type: object
TagToHosts:
- description: In this object, the key is the tag, and the value is a list of
- host names that are reporting that tag.
+ description: In this object, the key is the tag, the value is a list of host
+ names that are reporting that tag.
properties:
tags:
additionalProperties:
- description: A list of host names which contain this tag
+ description: A list of additional properties for tags.
items:
description: A given tag in a list.
example: test.metric.host
type: string
type: array
- description: A mapping of tags to host names
+ description: A list of tags to apply to the host.
type: object
type: object
TargetFormatType:
@@ -36008,13 +36008,11 @@ paths:
- synthetics_global_variable_write
/api/v1/tags/hosts:
get:
- description: Returns a mapping of tags to hosts. For each tag, the response
- returns a list of host names that contain this tag. There is a restriction
- of 10k total host names from the org that can be attached to tags and returned.
+ description: Return a mapping of tags to hosts for your whole infrastructure.
operationId: ListHostTags
parameters:
- - description: Source to filter. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).
- Use "user" source for custom-defined tags.
+ - description: When specified, filters host list to those tags with the specified
+ source.
in: query
name: source
required: false
@@ -36045,7 +36043,7 @@ paths:
- apiKeyAuth: []
appKeyAuth: []
- AuthZ: []
- summary: Get All Host Tags
+ summary: Get Tags
tags:
- Tags
x-permission:
@@ -36053,21 +36051,21 @@ paths:
permissions: []
/api/v1/tags/hosts/{host_name}:
delete:
- description: 'This endpoint allows you to remove all tags
+ description: 'This endpoint allows you to remove all user-assigned tags
- for a single host. If no source is specified, only deletes from the source
- "User".'
+ for a single host.'
operationId: DeleteHostTags
parameters:
- - description: Specified host name to delete tags
+ - description: This endpoint allows you to remove all user-assigned tags for
+ a single host.
in: path
name: host_name
required: true
schema:
type: string
- - description: Source of the tags to be deleted. [Complete list of source attribute
- values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).
- Use "user" source for custom-defined tags.
+ - description: 'The source of the tags (for example chef, puppet).
+
+ [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).'
in: query
name: source
required: false
@@ -36097,14 +36095,14 @@ paths:
description: Return the list of tags that apply to a given host.
operationId: GetHostTags
parameters:
- - description: Name of the host to retrieve tags for
+ - description: When specified, filters list of tags to those tags with the specified
+ source.
in: path
name: host_name
required: true
schema:
type: string
- - description: Source to filter. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).
- Use "user" source for custom-defined tags.
+ - description: Source to filter.
in: query
name: source
required: false
@@ -36131,25 +36129,25 @@ paths:
description: Not Found
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
- summary: Get Host Tags
+ summary: Get host tags
tags:
- Tags
post:
description: 'This endpoint allows you to add new tags to a host,
- optionally specifying what source these tags come from. If tags already exist,
- appends new tags to the tag list. If no source is specified, defaults to "user".'
+ optionally specifying where these tags come from.'
operationId: CreateHostTags
parameters:
- - description: Specified host name to add new tags
+ - description: This endpoint allows you to add new tags to a host, optionally
+ specifying where the tags came from.
in: path
name: host_name
required: true
schema:
type: string
- - description: Source to add tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).
- Use "user" source for custom-defined tags. If no source is specified, defaults
- to "user".
+ - description: 'The source of the tags.
+
+ [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).'
example: chef
in: query
name: source
@@ -36194,15 +36192,16 @@ paths:
an integration source with those supplied in the request.'
operationId: UpdateHostTags
parameters:
- - description: Specified host name to change tags
+ - description: This endpoint allows you to update/replace all in an integration
+ source with those supplied in the request.
in: path
name: host_name
required: true
schema:
type: string
- - description: Source to update tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).
- Use "user" source for custom-defined tags. If no source specified, defaults
- to "user".
+ - description: 'The source of the tags (for example chef, puppet).
+
+ [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value)'
in: query
name: source
required: false
@@ -39218,8 +39217,7 @@ tags:
by a source. For example, some valid sources include nagios, hudson, jenkins,
- users, feed, chef, puppet, git, bitbucket, fabric, capistrano, etc. Find a complete
- list of source type names under [API Source Attributes](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).
+ users, feed, chef, puppet, git, bitbucket, fabric, capistrano, etc.
Read more about tags on [Getting Started with Tags](https://docs.datadoghq.com/getting_started/tagging/).'
diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 0910438e4a2..9a9ee6afe60 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -13096,6 +13096,123 @@ components:
- findings
- project
type: object
+ CreateComponentRequest:
+ example:
+ data:
+ attributes:
+ name: Metrics Intake
+ position: 0
+ type: component
+ relationships:
+ group:
+ data: null
+ type: components
+ properties:
+ data:
+ $ref: '#/components/schemas/CreateComponentRequestData'
+ type: object
+ CreateComponentRequestData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributes'
+ relationships:
+ $ref: '#/components/schemas/CreateComponentRequestDataRelationships'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupType'
+ required:
+ - type
+ type: object
+ CreateComponentRequestDataAttributes:
+ description: The supported attributes for creating a component.
+ properties:
+ components:
+ description: If creating a component of type `group`, the components to
+ create within the group.
+ example:
+ - name: Login
+ position: 0
+ type: component
+ - name: Settings
+ position: 1
+ type: component
+ items:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributesComponentsItems'
+ type: array
+ name:
+ description: The name of the component.
+ example: Web App
+ type: string
+ position:
+ description: The zero-indexed position of the component.
+ example: 0
+ format: int64
+ type: integer
+ type:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributesType'
+ description: The type of the component.
+ example: group
+ required:
+ - name
+ - position
+ - type
+ type: object
+ CreateComponentRequestDataAttributesComponentsItems:
+ properties:
+ name:
+ description: The name of the grouped component.
+ example: ''
+ type: string
+ position:
+ description: The zero-indexed position of the grouped component relative
+ to the other components in the group.
+ example: 0
+ format: int64
+ type: integer
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType'
+ required:
+ - name
+ - position
+ - type
+ type: object
+ CreateComponentRequestDataAttributesType:
+ description: The type of the component.
+ enum:
+ - component
+ - group
+ example: component
+ type: string
+ x-enum-varnames:
+ - COMPONENT
+ - GROUP
+ CreateComponentRequestDataRelationships:
+ description: The supported relationships for creating a component.
+ properties:
+ group:
+ $ref: '#/components/schemas/CreateComponentRequestDataRelationshipsGroup'
+ description: The group to create the component within.
+ type: object
+ CreateComponentRequestDataRelationshipsGroup:
+ properties:
+ data:
+ $ref: '#/components/schemas/CreateComponentRequestDataRelationshipsGroupData'
+ required:
+ - data
+ type: object
+ CreateComponentRequestDataRelationshipsGroupData:
+ nullable: true
+ properties:
+ id:
+ description: The ID of the group.
+ example: ''
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupType'
+ required:
+ - type
+ - id
+ type: object
CreateConnectionRequest:
example:
data:
@@ -13266,6 +13383,90 @@ components:
meta:
$ref: '#/components/schemas/DataDeletionResponseMeta'
type: object
+ CreateDegradationRequest:
+ example:
+ data:
+ attributes:
+ components_affected:
+ - id: 1234abcd-12ab-34cd-56ef-123456abcdef
+ status: degraded
+ description: Our API is experiencing elevated latency. We are investigating
+ the issue.
+ status: investigating
+ title: Elevated API Latency
+ type: degradations
+ properties:
+ data:
+ $ref: '#/components/schemas/CreateDegradationRequestData'
+ type: object
+ CreateDegradationRequestData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CreateDegradationRequestDataAttributes'
+ type:
+ $ref: '#/components/schemas/PatchDegradationRequestDataType'
+ required:
+ - type
+ type: object
+ CreateDegradationRequestDataAttributes:
+ description: The supported attributes for creating a degradation.
+ properties:
+ components_affected:
+ description: The components affected by the degradation.
+ example:
+ - id: 1234abcd-12ab-34cd-56ef-123456abcdef
+ status: degraded
+ items:
+ $ref: '#/components/schemas/CreateDegradationRequestDataAttributesComponentsAffectedItems'
+ type: array
+ description:
+ description: The description of the degradation.
+ example: Our API is experiencing elevated latency. We are investigating
+ the issue.
+ type: string
+ status:
+ $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus'
+ description: The status of the degradation.
+ example: investigating
+ title:
+ description: The title of the degradation.
+ example: Elevated API Latency
+ type: string
+ required:
+ - components_affected
+ - status
+ - title
+ type: object
+ CreateDegradationRequestDataAttributesComponentsAffectedItems:
+ properties:
+ id:
+ description: The ID of the component. Must be a component of type `component`.
+ example: ''
+ format: uuid
+ type: string
+ name:
+ readOnly: true
+ type: string
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus'
+ required:
+ - id
+ - status
+ type: object
+ CreateDegradationRequestDataAttributesStatus:
+ description: The status of the degradation.
+ enum:
+ - investigating
+ - identified
+ - monitoring
+ - resolved
+ example: investigating
+ type: string
+ x-enum-varnames:
+ - INVESTIGATING
+ - IDENTIFIED
+ - MONITORING
+ - RESOLVED
CreateDeploymentGateParams:
description: Parameters for creating a deployment gate.
properties:
@@ -13919,6 +14120,186 @@ components:
type: string
x-enum-varnames:
- CREATE_RULESET
+ CreateStatusPageRequest:
+ example:
+ data:
+ attributes:
+ company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM
+ components:
+ - name: API
+ position: 0
+ type: component
+ - components:
+ - name: Login
+ position: 0
+ type: component
+ - name: Settings
+ position: 1
+ type: component
+ name: Web App
+ position: 1
+ type: group
+ - name: Webhooks
+ position: 2
+ type: component
+ domain_prefix: status-page-us1
+ email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF
+ enabled: true
+ favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA
+ name: Status Page US1
+ subscriptions_enabled: true
+ type: public
+ visualization_type: bars_and_uptime_percentage
+ type: status_pages
+ properties:
+ data:
+ $ref: '#/components/schemas/CreateStatusPageRequestData'
+ type: object
+ CreateStatusPageRequestData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributes'
+ type:
+ $ref: '#/components/schemas/StatusPageDataType'
+ required:
+ - type
+ type: object
+ CreateStatusPageRequestDataAttributes:
+ description: The supported attributes for creating a status page.
+ properties:
+ company_logo:
+ description: The base64-encoded image data displayed on the status page.
+ example: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM
+ type: string
+ components:
+ description: The components displayed on the status page.
+ example:
+ - components:
+ - name: Login
+ position: 0
+ type: component
+ - name: Settings
+ position: 1
+ type: component
+ name: Web App
+ position: 0
+ type: group
+ - name: API
+ position: 1
+ type: component
+ - name: Webhooks
+ position: 2
+ type: component
+ items:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesComponentsItems'
+ type: array
+ domain_prefix:
+ description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`.
+ Globally unique across Datadog Status Pages.
+ example: status-page-us1
+ type: string
+ email_header_image:
+ description: Base64-encoded image data included in email notifications sent
+ to status page subscribers.
+ example: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF
+ type: string
+ enabled:
+ description: Whether the status page is enabled.
+ example: true
+ type: boolean
+ favicon:
+ description: Base64-encoded image data displayed in the browser tab.
+ example: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA
+ type: string
+ name:
+ description: The name of the status page.
+ example: Status Page US1
+ type: string
+ subscriptions_enabled:
+ description: Whether users can subscribe to the status page.
+ example: true
+ type: boolean
+ type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType'
+ example: public
+ visualization_type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType'
+ example: bars_and_uptime_percentage
+ required:
+ - domain_prefix
+ - enabled
+ - name
+ - type
+ - visualization_type
+ type: object
+ CreateStatusPageRequestDataAttributesComponentsItems:
+ properties:
+ components:
+ description: If creating a component of type `group`, the components to
+ create within the group.
+ items:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesComponentsItemsComponentsItems'
+ type: array
+ id:
+ description: The ID of the component.
+ format: uuid
+ readOnly: true
+ type: string
+ name:
+ description: The name of the component.
+ type: string
+ position:
+ description: The zero-indexed position of the component.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributesType'
+ type: object
+ CreateStatusPageRequestDataAttributesComponentsItemsComponentsItems:
+ properties:
+ id:
+ description: The ID of the grouped component.
+ format: uuid
+ readOnly: true
+ type: string
+ name:
+ description: The name of the grouped component.
+ type: string
+ position:
+ description: The zero-indexed position of the grouped component. Relative
+ to the other components in the group.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType'
+ type: object
+ CreateStatusPageRequestDataAttributesType:
+ description: The type of the status page controlling how the status page is
+ accessed.
+ enum:
+ - public
+ - internal
+ example: public
+ type: string
+ x-enum-varnames:
+ - PUBLIC
+ - INTERNAL
+ CreateStatusPageRequestDataAttributesVisualizationType:
+ description: The visualization type of the status page.
+ enum:
+ - bars_and_uptime_percentage
+ - bars_only
+ - component_name_only
+ example: bars_and_uptime_percentage
+ type: string
+ x-enum-varnames:
+ - BARS_AND_UPTIME_PERCENTAGE
+ - BARS_ONLY
+ - COMPONENT_NAME_ONLY
CreateTableRequest:
description: Request body for creating a new reference table from a local file
or cloud storage.
@@ -17288,6 +17669,217 @@ components:
example: 1722439510282
format: int64
type: integer
+ Degradation:
+ properties:
+ data:
+ $ref: '#/components/schemas/DegradationData'
+ included:
+ description: The included related resources of a degradation. Client must
+ explicitly request these resources by name in the `include` query parameter.
+ items:
+ $ref: '#/components/schemas/DegradationArrayIncluded'
+ type: array
+ type: object
+ DegradationArray:
+ properties:
+ data:
+ items:
+ $ref: '#/components/schemas/DegradationData'
+ type: array
+ included:
+ description: The included related resources of a degradation. Client must
+ explicitly request these resources by name in the `include` query parameter.
+ items:
+ $ref: '#/components/schemas/DegradationArrayIncluded'
+ type: array
+ meta:
+ $ref: '#/components/schemas/StatusPagesResponseMeta'
+ required:
+ - data
+ type: object
+ DegradationArrayIncluded:
+ oneOf:
+ - $ref: '#/components/schemas/StatusPagesUser'
+ - $ref: '#/components/schemas/StatusPageAsIncluded'
+ DegradationData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/DegradationDataAttributes'
+ id:
+ description: The ID of the degradation.
+ format: uuid
+ type: string
+ relationships:
+ $ref: '#/components/schemas/DegradationDataRelationships'
+ type:
+ $ref: '#/components/schemas/PatchDegradationRequestDataType'
+ required:
+ - type
+ type: object
+ DegradationDataAttributes:
+ description: The attributes of a degradation.
+ properties:
+ components_affected:
+ description: Components affected by the degradation.
+ items:
+ $ref: '#/components/schemas/DegradationDataAttributesComponentsAffectedItems'
+ type: array
+ created_at:
+ description: Timestamp of when the degradation was created.
+ format: date-time
+ type: string
+ description:
+ description: Description of the degradation.
+ type: string
+ modified_at:
+ description: Timestamp of when the degradation was last modified.
+ format: date-time
+ type: string
+ status:
+ $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus'
+ title:
+ description: Title of the degradation.
+ type: string
+ updates:
+ description: Past updates made to the degradation.
+ items:
+ $ref: '#/components/schemas/DegradationDataAttributesUpdatesItems'
+ type: array
+ type: object
+ DegradationDataAttributesComponentsAffectedItems:
+ properties:
+ id:
+ description: The ID of the component.
+ example: ''
+ format: uuid
+ type: string
+ name:
+ description: The name of the component.
+ readOnly: true
+ type: string
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus'
+ required:
+ - id
+ - status
+ type: object
+ DegradationDataAttributesUpdatesItems:
+ properties:
+ components_affected:
+ description: The components affected at the time of the update.
+ items:
+ $ref: '#/components/schemas/DegradationDataAttributesUpdatesItemsComponentsAffectedItems'
+ type: array
+ created_at:
+ description: Timestamp of when the update was created.
+ format: date-time
+ readOnly: true
+ type: string
+ description:
+ description: Description of the update.
+ type: string
+ id:
+ description: Identifier of the update.
+ format: uuid
+ readOnly: true
+ type: string
+ modified_at:
+ description: Timestamp of when the update was last modified.
+ format: date-time
+ readOnly: true
+ type: string
+ status:
+ $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus'
+ type: object
+ DegradationDataAttributesUpdatesItemsComponentsAffectedItems:
+ properties:
+ id:
+ description: Identifier of the component affected at the time of the update.
+ example: ''
+ format: uuid
+ type: string
+ name:
+ description: The name of the component affected at the time of the update.
+ readOnly: true
+ type: string
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus'
+ description: The status of the component affected at the time of the update.
+ required:
+ - id
+ - status
+ type: object
+ DegradationDataRelationships:
+ description: The relationships of a degradation.
+ properties:
+ created_by_user:
+ $ref: '#/components/schemas/DegradationDataRelationshipsCreatedByUser'
+ description: The Datadog user who created the degradation.
+ last_modified_by_user:
+ $ref: '#/components/schemas/DegradationDataRelationshipsLastModifiedByUser'
+ description: The Datadog user who last modified the degradation.
+ status_page:
+ $ref: '#/components/schemas/DegradationDataRelationshipsStatusPage'
+ description: The status page the degradation belongs to.
+ type: object
+ DegradationDataRelationshipsCreatedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/DegradationDataRelationshipsCreatedByUserData'
+ required:
+ - data
+ type: object
+ DegradationDataRelationshipsCreatedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who created the degradation.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ DegradationDataRelationshipsLastModifiedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/DegradationDataRelationshipsLastModifiedByUserData'
+ required:
+ - data
+ type: object
+ DegradationDataRelationshipsLastModifiedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who last modified the degradation.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ DegradationDataRelationshipsStatusPage:
+ properties:
+ data:
+ $ref: '#/components/schemas/DegradationDataRelationshipsStatusPageData'
+ required:
+ - data
+ type: object
+ DegradationDataRelationshipsStatusPageData:
+ properties:
+ id:
+ description: The ID of the status page.
+ example: ''
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPageDataType'
+ required:
+ - type
+ - id
+ type: object
DeleteAppResponse:
description: The response object after an app is successfully deleted.
properties:
@@ -40598,6 +41190,136 @@ components:
title:
type: string
type: object
+ PatchComponentRequest:
+ example:
+ data:
+ attributes:
+ name: Metrics Intake Service
+ position: 4
+ id: 1234abcd-12ab-34cd-56ef-123456abcdef
+ type: components
+ properties:
+ data:
+ $ref: '#/components/schemas/PatchComponentRequestData'
+ type: object
+ PatchComponentRequestData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/PatchComponentRequestDataAttributes'
+ id:
+ description: The ID of the component.
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupType'
+ required:
+ - type
+ type: object
+ PatchComponentRequestDataAttributes:
+ description: The supported attributes for updating a component.
+ properties:
+ name:
+ description: The name of the component.
+ example: Web App
+ type: string
+ position:
+ description: The position of the component. If the component belongs to
+ a group, the position is relative to the other components in the group.
+ example: 1
+ format: int64
+ type: integer
+ type: object
+ PatchDegradationRequest:
+ example:
+ data:
+ attributes:
+ components_affected:
+ - id: 1234abcd-12ab-34cd-56ef-123456abcdef
+ status: operational
+ description: We've deployed a fix and latency has returned to normal.
+ This issue has been resolved.
+ status: resolved
+ id: 1234abcd-12ab-34cd-56ef-123456abcdef
+ type: degradations
+ properties:
+ data:
+ $ref: '#/components/schemas/PatchDegradationRequestData'
+ type: object
+ PatchDegradationRequestData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/PatchDegradationRequestDataAttributes'
+ id:
+ description: The ID of the degradation.
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/PatchDegradationRequestDataType'
+ required:
+ - type
+ type: object
+ PatchDegradationRequestDataAttributes:
+ description: The supported attributes for updating a degradation.
+ properties:
+ components_affected:
+ description: The components affected by the degradation.
+ example:
+ - id: 1234abcd-12ab-34cd-56ef-123456abcdef
+ status: operational
+ items:
+ $ref: '#/components/schemas/PatchDegradationRequestDataAttributesComponentsAffectedItems'
+ type: array
+ description:
+ description: The description of the degradation.
+ example: We've deployed a fix and latency has returned to normal. This issue
+ has been resolved.
+ type: string
+ status:
+ $ref: '#/components/schemas/PatchDegradationRequestDataAttributesStatus'
+ example: resolved
+ title:
+ description: The title of the degradation.
+ example: Elevated API Latency
+ type: string
+ type: object
+ PatchDegradationRequestDataAttributesComponentsAffectedItems:
+ properties:
+ id:
+ description: The ID of the component. Must be a component of type `component`.
+ example: ''
+ format: uuid
+ type: string
+ name:
+ readOnly: true
+ type: string
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus'
+ required:
+ - id
+ - status
+ type: object
+ PatchDegradationRequestDataAttributesStatus:
+ description: The status of the degradation.
+ enum:
+ - investigating
+ - identified
+ - monitoring
+ - resolved
+ type: string
+ x-enum-varnames:
+ - INVESTIGATING
+ - IDENTIFIED
+ - MONITORING
+ - RESOLVED
+ PatchDegradationRequestDataType:
+ default: degradations
+ description: Degradations resource type.
+ enum:
+ - degradations
+ example: degradations
+ type: string
+ x-enum-varnames:
+ - DEGRADATIONS
PatchIncidentNotificationTemplateRequest:
description: Update request for a notification template.
properties:
@@ -40644,6 +41366,78 @@ components:
version:
$ref: '#/components/schemas/Version'
type: object
+ PatchStatusPageRequest:
+ example:
+ data:
+ attributes:
+ company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM
+ domain_prefix: status-page-us1-east
+ email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF
+ enabled: false
+ favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA
+ name: Status Page US1 East
+ subscriptions_enabled: false
+ type: internal
+ visualization_type: bars_only
+ id: 1234abcd-12ab-34cd-56ef-123456abcdef
+ type: status_pages
+ properties:
+ data:
+ $ref: '#/components/schemas/PatchStatusPageRequestData'
+ type: object
+ PatchStatusPageRequestData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/PatchStatusPageRequestDataAttributes'
+ id:
+ description: The ID of the status page.
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPageDataType'
+ required:
+ - type
+ type: object
+ PatchStatusPageRequestDataAttributes:
+ description: The supported attributes for updating a status page.
+ properties:
+ company_logo:
+ description: The base64-encoded image data displayed on the status page.
+ example: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM
+ type: string
+ domain_prefix:
+ description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`.
+ Globally unique across Datadog Status Pages.
+ example: status-page-us1
+ type: string
+ email_header_image:
+ description: The base64-encoded image data displayed in email notifications
+ sent to status page subscribers.
+ example: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF
+ type: string
+ enabled:
+ description: Whether the status page is enabled.
+ example: true
+ type: boolean
+ favicon:
+ description: The base64-encoded image data displayed in the browser tab.
+ example: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA
+ type: string
+ name:
+ description: The name of the status page.
+ example: Status Page US1
+ type: string
+ subscriptions_enabled:
+ description: Whether users can subscribe to the status page.
+ example: true
+ type: boolean
+ type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType'
+ example: public
+ visualization_type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType'
+ example: bars_and_uptime_percentage
+ type: object
PatchTableRequest:
description: Request body for updating an existing reference table.
example:
@@ -53855,6 +54649,871 @@ components:
required:
- type
type: object
+ StatusPage:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPageData'
+ included:
+ description: The included related resources of a status page. Client must
+ explicitly request these resources by name in the `include` query parameter.
+ items:
+ $ref: '#/components/schemas/StatusPageArrayIncluded'
+ type: array
+ type: object
+ StatusPageArray:
+ properties:
+ data:
+ items:
+ $ref: '#/components/schemas/StatusPageData'
+ type: array
+ included:
+ description: The included related resources of a status page. Client must
+ explicitly request these resources by name in the `include` query parameter.
+ items:
+ $ref: '#/components/schemas/StatusPageArrayIncluded'
+ type: array
+ meta:
+ $ref: '#/components/schemas/StatusPagesResponseMeta'
+ required:
+ - data
+ type: object
+ StatusPageArrayIncluded:
+ oneOf:
+ - $ref: '#/components/schemas/StatusPagesUser'
+ StatusPageAsIncluded:
+ description: The included status page resource.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/StatusPageAsIncludedAttributes'
+ id:
+ description: The ID of the status page.
+ format: uuid
+ type: string
+ relationships:
+ $ref: '#/components/schemas/StatusPageAsIncludedRelationships'
+ type:
+ $ref: '#/components/schemas/StatusPageDataType'
+ required:
+ - type
+ type: object
+ StatusPageAsIncludedAttributes:
+ description: The attributes of a status page.
+ properties:
+ company_logo:
+ description: The base64-encoded image data displayed in the company logo.
+ type: string
+ components:
+ description: Components displayed on the status page.
+ items:
+ $ref: '#/components/schemas/StatusPageAsIncludedAttributesComponentsItems'
+ type: array
+ created_at:
+ description: Timestamp of when the status page was created.
+ format: date-time
+ type: string
+ custom_domain:
+ description: If configured, the url that the status page is accessible at.
+ type: string
+ custom_domain_enabled:
+ description: Whether the custom domain is configured.
+ type: boolean
+ domain_prefix:
+ description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`.
+ Globally unique across Datadog Status Pages.
+ type: string
+ email_header_image:
+ description: Base64-encoded image data included in email notifications sent
+ to status page subscribers.
+ type: string
+ enabled:
+ description: Whether the status page is enabled.
+ type: boolean
+ favicon:
+ description: Base64-encoded image data displayed in the browser tab.
+ type: string
+ modified_at:
+ description: Timestamp of when the status page was last modified.
+ format: date-time
+ type: string
+ name:
+ description: The name of the status page.
+ type: string
+ page_url:
+ description: The url that the status page is accessible at.
+ type: string
+ subscriptions_enabled:
+ description: Whether users can subscribe to the status page.
+ type: boolean
+ type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType'
+ visualization_type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType'
+ type: object
+ StatusPageAsIncludedAttributesComponentsItems:
+ properties:
+ components:
+ items:
+ $ref: '#/components/schemas/StatusPageAsIncludedAttributesComponentsItemsComponentsItems'
+ type: array
+ id:
+ description: The ID of the component.
+ format: uuid
+ readOnly: true
+ type: string
+ name:
+ description: The name of the component.
+ type: string
+ position:
+ description: The zero-indexed position of the component.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributesType'
+ type: object
+ StatusPageAsIncludedAttributesComponentsItemsComponentsItems:
+ properties:
+ id:
+ description: The ID of the grouped component.
+ format: uuid
+ readOnly: true
+ type: string
+ name:
+ description: The name of the grouped component.
+ type: string
+ position:
+ description: The zero-indexed position of the grouped component. Relative
+ to the other components in the group.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType'
+ type: object
+ StatusPageAsIncludedRelationships:
+ description: The relationships of a status page.
+ properties:
+ created_by_user:
+ $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsCreatedByUser'
+ description: The Datadog user who created the status page.
+ last_modified_by_user:
+ $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsLastModifiedByUser'
+ description: The Datadog user who last modified the status page.
+ type: object
+ StatusPageAsIncludedRelationshipsCreatedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsCreatedByUserData'
+ required:
+ - data
+ type: object
+ StatusPageAsIncludedRelationshipsCreatedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who created the status page.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPageAsIncludedRelationshipsLastModifiedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsLastModifiedByUserData'
+ required:
+ - data
+ type: object
+ StatusPageAsIncludedRelationshipsLastModifiedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who last modified the status page.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPageData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/StatusPageDataAttributes'
+ id:
+ description: The ID of the status page.
+ format: uuid
+ type: string
+ relationships:
+ $ref: '#/components/schemas/StatusPageDataRelationships'
+ type:
+ $ref: '#/components/schemas/StatusPageDataType'
+ required:
+ - type
+ type: object
+ StatusPageDataAttributes:
+ description: The attributes of a status page.
+ properties:
+ company_logo:
+ description: Base64-encoded image data displayed on the status page.
+ nullable: true
+ type: string
+ components:
+ description: Components displayed on the status page.
+ items:
+ $ref: '#/components/schemas/StatusPageDataAttributesComponentsItems'
+ type: array
+ created_at:
+ description: Timestamp of when the status page was created.
+ format: date-time
+ type: string
+ custom_domain:
+ description: If configured, the url that the status page is accessible at.
+ nullable: true
+ type: string
+ custom_domain_enabled:
+ description: Whether the custom domain is configured.
+ type: boolean
+ domain_prefix:
+ description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`.
+ Globally unique across Datadog Status Pages.
+ type: string
+ email_header_image:
+ description: Base64-encoded image data included in email notifications sent
+ to status page subscribers.
+ nullable: true
+ type: string
+ enabled:
+ description: Whether the status page is enabled.
+ type: boolean
+ favicon:
+ description: Base64-encoded image data displayed in the browser tab.
+ nullable: true
+ type: string
+ modified_at:
+ description: Timestamp of when the status page was last modified.
+ format: date-time
+ type: string
+ name:
+ description: The name of the status page.
+ type: string
+ page_url:
+ description: The url that the status page is accessible at.
+ type: string
+ subscriptions_enabled:
+ description: Whether users can subscribe to the status page.
+ type: boolean
+ type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType'
+ visualization_type:
+ $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType'
+ type: object
+ StatusPageDataAttributesComponentsItems:
+ properties:
+ components:
+ description: If the component is of type `group`, the components within
+ the group.
+ items:
+ $ref: '#/components/schemas/StatusPageDataAttributesComponentsItemsComponentsItems'
+ type: array
+ id:
+ description: The ID of the component.
+ format: uuid
+ type: string
+ name:
+ description: The name of the component.
+ type: string
+ position:
+ description: The zero-indexed position of the component.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributesType'
+ type: object
+ StatusPageDataAttributesComponentsItemsComponentsItems:
+ properties:
+ id:
+ description: The ID of the component.
+ format: uuid
+ type: string
+ name:
+ description: The name of the component.
+ type: string
+ position:
+ description: The zero-indexed position of the component. Relative to the
+ other components in the group.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType'
+ type: object
+ StatusPageDataRelationships:
+ description: The relationships of a status page.
+ properties:
+ created_by_user:
+ $ref: '#/components/schemas/StatusPageDataRelationshipsCreatedByUser'
+ description: The Datadog user who created the status page.
+ last_modified_by_user:
+ $ref: '#/components/schemas/StatusPageDataRelationshipsLastModifiedByUser'
+ description: The Datadog user who last modified the status page.
+ type: object
+ StatusPageDataRelationshipsCreatedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPageDataRelationshipsCreatedByUserData'
+ required:
+ - data
+ type: object
+ StatusPageDataRelationshipsCreatedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who created the status page.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPageDataRelationshipsLastModifiedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPageDataRelationshipsLastModifiedByUserData'
+ required:
+ - data
+ type: object
+ StatusPageDataRelationshipsLastModifiedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who last modified the status page.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPageDataType:
+ default: status_pages
+ description: Status pages resource type.
+ enum:
+ - status_pages
+ example: status_pages
+ type: string
+ x-enum-varnames:
+ - STATUS_PAGES
+ StatusPagesComponent:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentData'
+ included:
+ description: The included related resources of a component. Client must
+ explicitly request these resources by name in the `include` query parameter.
+ items:
+ $ref: '#/components/schemas/StatusPagesComponentArrayIncluded'
+ type: array
+ type: object
+ StatusPagesComponentArray:
+ properties:
+ data:
+ items:
+ $ref: '#/components/schemas/StatusPagesComponentData'
+ type: array
+ included:
+ description: The included related resources of a component. Client must
+ explicitly request these resources by name in the `include` query parameter.
+ items:
+ $ref: '#/components/schemas/StatusPagesComponentArrayIncluded'
+ type: array
+ required:
+ - data
+ type: object
+ StatusPagesComponentArrayIncluded:
+ oneOf:
+ - $ref: '#/components/schemas/StatusPagesUser'
+ - $ref: '#/components/schemas/StatusPageAsIncluded'
+ - $ref: '#/components/schemas/StatusPagesComponentGroup'
+ StatusPagesComponentData:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributes'
+ id:
+ description: The ID of the component.
+ format: uuid
+ type: string
+ relationships:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationships'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupType'
+ required:
+ - type
+ type: object
+ StatusPagesComponentDataAttributes:
+ description: The attributes of a component.
+ properties:
+ components:
+ description: If the component is of type `group`, the components within
+ the group.
+ items:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributesComponentsItems'
+ type: array
+ created_at:
+ description: Timestamp of when the component was created.
+ format: date-time
+ type: string
+ modified_at:
+ description: Timestamp of when the component was last modified.
+ format: date-time
+ type: string
+ name:
+ description: The name of the component.
+ type: string
+ position:
+ description: The zero-indexed position of the component.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus'
+ type:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributesType'
+ required:
+ - type
+ type: object
+ StatusPagesComponentDataAttributesComponentsItems:
+ properties:
+ id:
+ format: uuid
+ readOnly: true
+ type: string
+ name:
+ type: string
+ position:
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType'
+ type: object
+ StatusPagesComponentDataAttributesStatus:
+ description: The status of the component.
+ enum:
+ - operational
+ - degraded
+ - partial_outage
+ - major_outage
+ example: operational
+ type: string
+ x-enum-varnames:
+ - OPERATIONAL
+ - DEGRADED
+ - PARTIAL_OUTAGE
+ - MAJOR_OUTAGE
+ StatusPagesComponentDataRelationships:
+ description: The relationships of a component.
+ properties:
+ created_by_user:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsCreatedByUser'
+ description: The Datadog user who created the component.
+ group:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsGroup'
+ description: The group the component belongs to.
+ last_modified_by_user:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsLastModifiedByUser'
+ description: The Datadog user who last modified the component.
+ status_page:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsStatusPage'
+ description: The status page the component belongs to.
+ type: object
+ StatusPagesComponentDataRelationshipsCreatedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsCreatedByUserData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentDataRelationshipsCreatedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who created the component.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentDataRelationshipsGroup:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsGroupData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentDataRelationshipsGroupData:
+ nullable: true
+ properties:
+ id:
+ description: The ID of the group the component belongs to.
+ example: ''
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentDataRelationshipsLastModifiedByUser:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsLastModifiedByUserData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentDataRelationshipsLastModifiedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who last modified the component.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentDataRelationshipsStatusPage:
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsStatusPageData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentDataRelationshipsStatusPageData:
+ properties:
+ id:
+ description: The ID of the status page the component belongs to.
+ example: ''
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPageDataType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentGroup:
+ description: The included component group resource.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributes'
+ id:
+ description: The ID of the component.
+ format: uuid
+ type: string
+ relationships:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationships'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupType'
+ required:
+ - type
+ type: object
+ StatusPagesComponentGroupAttributes:
+ description: The attributes of a component group.
+ properties:
+ components:
+ description: If the component is of type `group`, the components within
+ the group.
+ items:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItems'
+ type: array
+ created_at:
+ description: Timestamp of when the component was created.
+ format: date-time
+ type: string
+ modified_at:
+ description: Timestamp of when the component was last modified.
+ format: date-time
+ type: string
+ name:
+ description: The name of the component.
+ type: string
+ position:
+ description: The zero-indexed position of the component.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus'
+ type:
+ $ref: '#/components/schemas/CreateComponentRequestDataAttributesType'
+ required:
+ - type
+ type: object
+ StatusPagesComponentGroupAttributesComponentsItems:
+ properties:
+ id:
+ description: The ID of the grouped component.
+ format: uuid
+ readOnly: true
+ type: string
+ name:
+ description: The name of the grouped component.
+ type: string
+ position:
+ description: The zero-indexed position of the grouped component. Relative
+ to the other components in the group.
+ format: int64
+ type: integer
+ status:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus'
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType'
+ type: object
+ StatusPagesComponentGroupAttributesComponentsItemsStatus:
+ description: The status of the component.
+ enum:
+ - operational
+ - degraded
+ - partial_outage
+ - major_outage
+ readOnly: true
+ type: string
+ x-enum-varnames:
+ - OPERATIONAL
+ - DEGRADED
+ - PARTIAL_OUTAGE
+ - MAJOR_OUTAGE
+ StatusPagesComponentGroupAttributesComponentsItemsType:
+ description: The type of the component.
+ enum:
+ - component
+ example: component
+ type: string
+ x-enum-varnames:
+ - COMPONENT
+ StatusPagesComponentGroupRelationships:
+ description: The relationships of a component group.
+ properties:
+ created_by_user:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsCreatedByUser'
+ group:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsGroup'
+ last_modified_by_user:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsLastModifiedByUser'
+ status_page:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsStatusPage'
+ type: object
+ StatusPagesComponentGroupRelationshipsCreatedByUser:
+ description: The Datadog user who created the component group.
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsCreatedByUserData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentGroupRelationshipsCreatedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who created the component group.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentGroupRelationshipsGroup:
+ description: The group the component group belongs to.
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsGroupData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentGroupRelationshipsGroupData:
+ nullable: true
+ properties:
+ id:
+ example: ''
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesComponentGroupType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentGroupRelationshipsLastModifiedByUser:
+ description: The Datadog user who last modified the component group.
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsLastModifiedByUserData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentGroupRelationshipsLastModifiedByUserData:
+ properties:
+ id:
+ description: The ID of the Datadog user who last modified the component
+ group.
+ example: ''
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentGroupRelationshipsStatusPage:
+ description: The status page the component group belongs to.
+ properties:
+ data:
+ $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsStatusPageData'
+ required:
+ - data
+ type: object
+ StatusPagesComponentGroupRelationshipsStatusPageData:
+ properties:
+ id:
+ description: The ID of the status page.
+ example: ''
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPageDataType'
+ required:
+ - type
+ - id
+ type: object
+ StatusPagesComponentGroupType:
+ default: components
+ description: Components resource type.
+ enum:
+ - components
+ example: components
+ type: string
+ x-enum-varnames:
+ - COMPONENTS
+ StatusPagesPagination:
+ description: Offset-based pagination schema.
+ properties:
+ first_offset:
+ description: Integer representing the offset to fetch the first page of
+ results.
+ example: 0
+ format: int64
+ type: integer
+ last_offset:
+ description: Integer representing the offset to fetch the last page of results.
+ example: 900
+ format: int64
+ nullable: true
+ type: integer
+ limit:
+ description: Integer representing the number of elements to returned in
+ the results.
+ example: 100
+ format: int64
+ type: integer
+ next_offset:
+ description: Integer representing the index of the first element in the
+ next page of results. Equal to page size added to the current offset.
+ example: 100
+ format: int64
+ nullable: true
+ type: integer
+ offset:
+ description: Integer representing the index of the first element in the
+ results.
+ example: 0
+ format: int64
+ type: integer
+ prev_offset:
+ description: Integer representing the index of the first element in the
+ previous page of results.
+ example: 100
+ format: int64
+ nullable: true
+ type: integer
+ total:
+ description: Integer representing the total number of elements available.
+ example: 1000
+ format: int64
+ nullable: true
+ type: integer
+ type:
+ $ref: '#/components/schemas/StatusPagesPaginationType'
+ type: object
+ StatusPagesPaginationType:
+ default: offset_limit
+ enum:
+ - offset_limit
+ example: offset_limit
+ type: string
+ x-enum-varnames:
+ - OFFSET_LIMIT
+ StatusPagesResponseMeta:
+ description: Response metadata.
+ properties:
+ page:
+ $ref: '#/components/schemas/StatusPagesPagination'
+ readOnly: true
+ type: object
+ StatusPagesUser:
+ description: The included Datadog user resource.
+ properties:
+ attributes:
+ $ref: '#/components/schemas/StatusPagesUserAttributes'
+ id:
+ description: The ID of the Datadog user.
+ format: uuid
+ type: string
+ type:
+ $ref: '#/components/schemas/StatusPagesUserType'
+ required:
+ - type
+ type: object
+ StatusPagesUserAttributes:
+ description: Attributes of the Datadog user.
+ properties:
+ email:
+ description: The email of the Datadog user.
+ type: string
+ handle:
+ description: The handle of the Datadog user.
+ type: string
+ icon:
+ description: The icon of the Datadog user.
+ type: string
+ name:
+ description: The name of the Datadog user.
+ type: string
+ uuid:
+ description: The UUID of the Datadog user.
+ type: string
+ type: object
+ StatusPagesUserType:
+ default: users
+ description: Users resource type.
+ enum:
+ - users
+ example: users
+ type: string
+ x-enum-varnames:
+ - USERS
Step:
description: A Step is a sub-component of a workflow. Each Step performs an
action.
@@ -87063,6 +88722,668 @@ paths:
tags:
- Security Monitoring
x-unstable: '**Note**: This endpoint may be subject to changes.'
+ /api/v2/statuspages:
+ get:
+ description: Lists all status pages for the organization.
+ operationId: ListStatusPages
+ parameters:
+ - description: Offset to use as the start of the page.
+ in: query
+ name: page[offset]
+ schema:
+ default: 0
+ type: integer
+ - description: The number of status pages to return per page.
+ in: query
+ name: page[limit]
+ schema:
+ default: 50
+ type: integer
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user.'
+ in: query
+ name: include
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPageArray'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: List status pages
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_read
+ post:
+ description: Creates a new status page.
+ operationId: CreateStatusPage
+ parameters:
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user.'
+ in: query
+ name: include
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateStatusPageRequest'
+ required: true
+ responses:
+ '201':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPage'
+ description: Created
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Create status page
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_write
+ /api/v2/statuspages/degradations:
+ get:
+ description: Lists all degradations for the organization. Optionally filter
+ by status and page.
+ operationId: ListDegradations
+ parameters:
+ - description: Optional page id filter.
+ in: query
+ name: filter[page_id]
+ schema:
+ type: string
+ - description: Offset to use as the start of the page.
+ in: query
+ name: page[offset]
+ schema:
+ default: 0
+ type: integer
+ - description: The number of degradations to return per page.
+ in: query
+ name: page[limit]
+ schema:
+ default: 50
+ type: integer
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page.'
+ in: query
+ name: include
+ schema:
+ type: string
+ - description: 'Optional degradation status filter. Supported values: investigating,
+ identified, monitoring, resolved.'
+ in: query
+ name: filter[status]
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/DegradationArray'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: List degradations
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_read
+ /api/v2/statuspages/{page_id}:
+ delete:
+ description: Deletes a status page by its ID.
+ operationId: DeleteStatusPage
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ responses:
+ '204':
+ description: No Content
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Delete status page
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_write
+ get:
+ description: Retrieves a specific status page by its ID.
+ operationId: GetStatusPage
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user.'
+ in: query
+ name: include
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPage'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Get status page
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_read
+ patch:
+ description: Updates an existing status page's attributes.
+ operationId: UpdateStatusPage
+ parameters:
+ - description: Whether to delete existing subscribers when updating a status
+ page's type.
+ in: query
+ name: delete_subscribers
+ schema:
+ default: false
+ type: boolean
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user.'
+ in: query
+ name: include
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/PatchStatusPageRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPage'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Update status page
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_write
+ /api/v2/statuspages/{page_id}/components:
+ get:
+ description: Lists all components for a status page.
+ operationId: ListComponents
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page, group.'
+ in: query
+ name: include
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPagesComponentArray'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: List components
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_read
+ post:
+ description: Creates a new component.
+ operationId: CreateComponent
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page, group.'
+ in: query
+ name: include
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateComponentRequest'
+ required: true
+ responses:
+ '201':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPagesComponent'
+ description: Created
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Create component
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_write
+ /api/v2/statuspages/{page_id}/components/{component_id}:
+ delete:
+ description: Deletes a component by its ID.
+ operationId: DeleteComponent
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: The ID of the component.
+ in: path
+ name: component_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ responses:
+ '204':
+ description: No Content
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Delete component
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_write
+ get:
+ description: Retrieves a specific component by its ID.
+ operationId: GetComponent
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: The ID of the component.
+ in: path
+ name: component_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page, group.'
+ in: query
+ name: include
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPagesComponent'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Get component
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_read
+ patch:
+ description: Updates an existing component's attributes.
+ operationId: UpdateComponent
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: The ID of the component.
+ in: path
+ name: component_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page, group.'
+ in: query
+ name: include
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/PatchComponentRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/StatusPagesComponent'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Update component
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_write
+ /api/v2/statuspages/{page_id}/degradations:
+ post:
+ description: Creates a new degradation.
+ operationId: CreateDegradation
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: Whether to notify page subscribers of the degradation.
+ in: query
+ name: notify_subscribers
+ schema:
+ default: true
+ type: boolean
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page.'
+ in: query
+ name: include
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateDegradationRequest'
+ required: true
+ responses:
+ '201':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Degradation'
+ description: Created
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Create degradation
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_incident_write
+ /api/v2/statuspages/{page_id}/degradations/{degradation_id}:
+ delete:
+ description: Deletes a degradation by its ID.
+ operationId: DeleteDegradation
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: The ID of the degradation.
+ in: path
+ name: degradation_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ responses:
+ '204':
+ description: No Content
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Delete degradation
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_incident_write
+ get:
+ description: Retrieves a specific degradation by its ID.
+ operationId: GetDegradation
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: The ID of the degradation.
+ in: path
+ name: degradation_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page.'
+ in: query
+ name: include
+ schema:
+ type: string
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Degradation'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Get degradation
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_settings_read
+ patch:
+ description: Updates an existing degradation's attributes.
+ operationId: UpdateDegradation
+ parameters:
+ - description: The ID of the status page.
+ in: path
+ name: page_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: Whether to notify page subscribers of the degradation.
+ in: query
+ name: notify_subscribers
+ schema:
+ default: true
+ type: boolean
+ - description: The ID of the degradation.
+ in: path
+ name: degradation_id
+ required: true
+ schema:
+ example: 1234abcd-12ab-34cd-56ef-123456abcdef
+ format: uuid
+ type: string
+ - description: 'Comma-separated list of resources to include. Supported values:
+ created_by_user, last_modified_by_user, status_page.'
+ in: query
+ name: include
+ schema:
+ type: string
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/PatchDegradationRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Degradation'
+ description: OK
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ - AuthZ: []
+ summary: Update degradation
+ tags:
+ - Status Pages
+ x-permission:
+ operator: AND
+ permissions:
+ - status_pages_incident_write
/api/v2/synthetics/settings/on_demand_concurrency_cap:
get:
description: Get the on-demand concurrency cap.
@@ -91335,6 +93656,10 @@ tags:
name: Spans Metrics
- description: API for static analysis
name: Static Analysis
+- description: Manage your status pages and communicate service disruptions to stakeholders
+ via Datadog's API. See the [Status Pages documentation](https://docs.datadoghq.com/incident_response/status_pages/)
+ for more information.
+ name: Status Pages
- description: "Datadog Synthetics uses simulated user requests and browser rendering
to help you ensure uptime,\nidentify regional issues, and track your application
performance. Datadog Synthetics tests come in\ntwo different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/)\nand
diff --git a/examples/v1/tags/GetHostTags.java b/examples/v1/tags/GetHostTags.java
index af6b37e8a0a..41cbdae0358 100644
--- a/examples/v1/tags/GetHostTags.java
+++ b/examples/v1/tags/GetHostTags.java
@@ -1,4 +1,4 @@
-// Get Host Tags returns "OK" response
+// Get host tags returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
diff --git a/examples/v1/tags/ListHostTags.java b/examples/v1/tags/ListHostTags.java
index 5a7cb72c8ff..a63fe39f365 100644
--- a/examples/v1/tags/ListHostTags.java
+++ b/examples/v1/tags/ListHostTags.java
@@ -1,4 +1,4 @@
-// Get All Host Tags returns "OK" response
+// Get Tags returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
diff --git a/examples/v2/status-pages/CreateComponent.java b/examples/v2/status-pages/CreateComponent.java
new file mode 100644
index 00000000000..70f82308269
--- /dev/null
+++ b/examples/v2/status-pages/CreateComponent.java
@@ -0,0 +1,49 @@
+// Create component returns "Created" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.CreateComponentRequest;
+import com.datadog.api.client.v2.model.CreateComponentRequestData;
+import com.datadog.api.client.v2.model.CreateComponentRequestDataAttributes;
+import com.datadog.api.client.v2.model.CreateComponentRequestDataAttributesType;
+import com.datadog.api.client.v2.model.StatusPagesComponent;
+import com.datadog.api.client.v2.model.StatusPagesComponentGroupType;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ CreateComponentRequest body =
+ new CreateComponentRequest()
+ .data(
+ new CreateComponentRequestData()
+ .attributes(
+ new CreateComponentRequestDataAttributes()
+ .name("Logs")
+ .position(0L)
+ .type(CreateComponentRequestDataAttributesType.COMPONENT))
+ .type(StatusPagesComponentGroupType.COMPONENTS));
+
+ try {
+ StatusPagesComponent result = apiInstance.createComponent(STATUS_PAGE_DATA_ID, body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#createComponent");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/CreateDegradation.java b/examples/v2/status-pages/CreateDegradation.java
new file mode 100644
index 00000000000..d69a08b5e05
--- /dev/null
+++ b/examples/v2/status-pages/CreateDegradation.java
@@ -0,0 +1,69 @@
+// Create degradation returns "Created" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.CreateDegradationRequest;
+import com.datadog.api.client.v2.model.CreateDegradationRequestData;
+import com.datadog.api.client.v2.model.CreateDegradationRequestDataAttributes;
+import com.datadog.api.client.v2.model.CreateDegradationRequestDataAttributesComponentsAffectedItems;
+import com.datadog.api.client.v2.model.CreateDegradationRequestDataAttributesStatus;
+import com.datadog.api.client.v2.model.Degradation;
+import com.datadog.api.client.v2.model.PatchDegradationRequestDataType;
+import com.datadog.api.client.v2.model.StatusPagesComponentDataAttributesStatus;
+import java.util.Collections;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_COMPONENTS_0_ID = null;
+ try {
+ STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_COMPONENTS_0_ID =
+ UUID.fromString(
+ System.getenv("STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_COMPONENTS_0_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ CreateDegradationRequest body =
+ new CreateDegradationRequest()
+ .data(
+ new CreateDegradationRequestData()
+ .attributes(
+ new CreateDegradationRequestDataAttributes()
+ .componentsAffected(
+ Collections.singletonList(
+ new CreateDegradationRequestDataAttributesComponentsAffectedItems()
+ .id(
+ STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_COMPONENTS_0_ID)
+ .status(
+ StatusPagesComponentDataAttributesStatus.MAJOR_OUTAGE)))
+ .description(
+ "Our API is experiencing elevated latency. We are investigating the"
+ + " issue.")
+ .status(CreateDegradationRequestDataAttributesStatus.INVESTIGATING)
+ .title("Elevated API Latency"))
+ .type(PatchDegradationRequestDataType.DEGRADATIONS));
+
+ try {
+ Degradation result = apiInstance.createDegradation(STATUS_PAGE_DATA_ID, body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#createDegradation");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/CreateStatusPage.java b/examples/v2/status-pages/CreateStatusPage.java
new file mode 100644
index 00000000000..752afbc68c8
--- /dev/null
+++ b/examples/v2/status-pages/CreateStatusPage.java
@@ -0,0 +1,58 @@
+// Create status page returns "Created" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.CreateComponentRequestDataAttributesType;
+import com.datadog.api.client.v2.model.CreateStatusPageRequest;
+import com.datadog.api.client.v2.model.CreateStatusPageRequestData;
+import com.datadog.api.client.v2.model.CreateStatusPageRequestDataAttributes;
+import com.datadog.api.client.v2.model.CreateStatusPageRequestDataAttributesComponentsItems;
+import com.datadog.api.client.v2.model.CreateStatusPageRequestDataAttributesType;
+import com.datadog.api.client.v2.model.CreateStatusPageRequestDataAttributesVisualizationType;
+import com.datadog.api.client.v2.model.StatusPage;
+import com.datadog.api.client.v2.model.StatusPageDataType;
+import java.util.Arrays;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ CreateStatusPageRequest body =
+ new CreateStatusPageRequest()
+ .data(
+ new CreateStatusPageRequestData()
+ .attributes(
+ new CreateStatusPageRequestDataAttributes()
+ .name("A Status Page")
+ .domainPrefix("status-page-5e2fd69be33e79aa")
+ .components(
+ Arrays.asList(
+ new CreateStatusPageRequestDataAttributesComponentsItems()
+ .name("Login")
+ .type(CreateComponentRequestDataAttributesType.COMPONENT)
+ .position(0L),
+ new CreateStatusPageRequestDataAttributesComponentsItems()
+ .name("Settings")
+ .type(CreateComponentRequestDataAttributesType.COMPONENT)
+ .position(1L)))
+ .enabled(true)
+ .type(CreateStatusPageRequestDataAttributesType.INTERNAL)
+ .visualizationType(
+ CreateStatusPageRequestDataAttributesVisualizationType
+ .BARS_AND_UPTIME_PERCENTAGE))
+ .type(StatusPageDataType.STATUS_PAGES));
+
+ try {
+ StatusPage result = apiInstance.createStatusPage(body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#createStatusPage");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/DeleteComponent.java b/examples/v2/status-pages/DeleteComponent.java
new file mode 100644
index 00000000000..0b80d90b4b0
--- /dev/null
+++ b/examples/v2/status-pages/DeleteComponent.java
@@ -0,0 +1,38 @@
+// Delete component returns "No Content" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID = null;
+ try {
+ STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID =
+ UUID.fromString(System.getenv("STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ try {
+ apiInstance.deleteComponent(STATUS_PAGE_DATA_ID, STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#deleteComponent");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/DeleteDegradation.java b/examples/v2/status-pages/DeleteDegradation.java
new file mode 100644
index 00000000000..d888c2ac2f7
--- /dev/null
+++ b/examples/v2/status-pages/DeleteDegradation.java
@@ -0,0 +1,39 @@
+// Delete degradation returns "No Content" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ // there is a valid "degradation" in the system
+ UUID DEGRADATION_DATA_ID = null;
+ try {
+ DEGRADATION_DATA_ID = UUID.fromString(System.getenv("DEGRADATION_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ try {
+ apiInstance.deleteDegradation(STATUS_PAGE_DATA_ID, DEGRADATION_DATA_ID);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#deleteDegradation");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/DeleteStatusPage.java b/examples/v2/status-pages/DeleteStatusPage.java
new file mode 100644
index 00000000000..58d26c51458
--- /dev/null
+++ b/examples/v2/status-pages/DeleteStatusPage.java
@@ -0,0 +1,31 @@
+// Delete status page returns "No Content" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ try {
+ apiInstance.deleteStatusPage(STATUS_PAGE_DATA_ID);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#deleteStatusPage");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/GetComponent.java b/examples/v2/status-pages/GetComponent.java
new file mode 100644
index 00000000000..9036397c296
--- /dev/null
+++ b/examples/v2/status-pages/GetComponent.java
@@ -0,0 +1,42 @@
+// Get component returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.StatusPagesComponent;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID = null;
+ try {
+ STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID =
+ UUID.fromString(System.getenv("STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ try {
+ StatusPagesComponent result =
+ apiInstance.getComponent(
+ STATUS_PAGE_DATA_ID, STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#getComponent");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/GetDegradation.java b/examples/v2/status-pages/GetDegradation.java
new file mode 100644
index 00000000000..34393a643c7
--- /dev/null
+++ b/examples/v2/status-pages/GetDegradation.java
@@ -0,0 +1,41 @@
+// Get degradation returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.Degradation;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ // there is a valid "degradation" in the system
+ UUID DEGRADATION_DATA_ID = null;
+ try {
+ DEGRADATION_DATA_ID = UUID.fromString(System.getenv("DEGRADATION_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ try {
+ Degradation result = apiInstance.getDegradation(STATUS_PAGE_DATA_ID, DEGRADATION_DATA_ID);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#getDegradation");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/GetStatusPage.java b/examples/v2/status-pages/GetStatusPage.java
new file mode 100644
index 00000000000..2bf5b6fd9c0
--- /dev/null
+++ b/examples/v2/status-pages/GetStatusPage.java
@@ -0,0 +1,33 @@
+// Get status page returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.StatusPage;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ try {
+ StatusPage result = apiInstance.getStatusPage(STATUS_PAGE_DATA_ID);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#getStatusPage");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/ListComponents.java b/examples/v2/status-pages/ListComponents.java
new file mode 100644
index 00000000000..903c4609662
--- /dev/null
+++ b/examples/v2/status-pages/ListComponents.java
@@ -0,0 +1,33 @@
+// List components returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.StatusPagesComponentArray;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ try {
+ StatusPagesComponentArray result = apiInstance.listComponents(STATUS_PAGE_DATA_ID);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#listComponents");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/ListDegradations.java b/examples/v2/status-pages/ListDegradations.java
new file mode 100644
index 00000000000..259bc3b6739
--- /dev/null
+++ b/examples/v2/status-pages/ListDegradations.java
@@ -0,0 +1,24 @@
+// List degradations returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.DegradationArray;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ try {
+ DegradationArray result = apiInstance.listDegradations();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#listDegradations");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/ListStatusPages.java b/examples/v2/status-pages/ListStatusPages.java
new file mode 100644
index 00000000000..f4081f8d476
--- /dev/null
+++ b/examples/v2/status-pages/ListStatusPages.java
@@ -0,0 +1,24 @@
+// List status pages returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.StatusPageArray;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ try {
+ StatusPageArray result = apiInstance.listStatusPages();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#listStatusPages");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/UpdateComponent.java b/examples/v2/status-pages/UpdateComponent.java
new file mode 100644
index 00000000000..4d815d57b24
--- /dev/null
+++ b/examples/v2/status-pages/UpdateComponent.java
@@ -0,0 +1,54 @@
+// Update component returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.PatchComponentRequest;
+import com.datadog.api.client.v2.model.PatchComponentRequestData;
+import com.datadog.api.client.v2.model.PatchComponentRequestDataAttributes;
+import com.datadog.api.client.v2.model.StatusPagesComponent;
+import com.datadog.api.client.v2.model.StatusPagesComponentGroupType;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID = null;
+ try {
+ STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID =
+ UUID.fromString(System.getenv("STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ PatchComponentRequest body =
+ new PatchComponentRequest()
+ .data(
+ new PatchComponentRequestData()
+ .attributes(new PatchComponentRequestDataAttributes().name("Logs Indexing"))
+ .id(STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID)
+ .type(StatusPagesComponentGroupType.COMPONENTS));
+
+ try {
+ StatusPagesComponent result =
+ apiInstance.updateComponent(
+ STATUS_PAGE_DATA_ID, STATUS_PAGE_DATA_ATTRIBUTES_COMPONENTS_0_ID, body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#updateComponent");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/UpdateDegradation.java b/examples/v2/status-pages/UpdateDegradation.java
new file mode 100644
index 00000000000..0ac43d7fb6e
--- /dev/null
+++ b/examples/v2/status-pages/UpdateDegradation.java
@@ -0,0 +1,56 @@
+// Update degradation returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.Degradation;
+import com.datadog.api.client.v2.model.PatchDegradationRequest;
+import com.datadog.api.client.v2.model.PatchDegradationRequestData;
+import com.datadog.api.client.v2.model.PatchDegradationRequestDataAttributes;
+import com.datadog.api.client.v2.model.PatchDegradationRequestDataType;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ // there is a valid "degradation" in the system
+ UUID DEGRADATION_DATA_ID = null;
+ try {
+ DEGRADATION_DATA_ID = UUID.fromString(System.getenv("DEGRADATION_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ PatchDegradationRequest body =
+ new PatchDegradationRequest()
+ .data(
+ new PatchDegradationRequestData()
+ .attributes(
+ new PatchDegradationRequestDataAttributes()
+ .title("Elevated API Latency in US1"))
+ .id(DEGRADATION_DATA_ID)
+ .type(PatchDegradationRequestDataType.DEGRADATIONS));
+
+ try {
+ Degradation result =
+ apiInstance.updateDegradation(STATUS_PAGE_DATA_ID, DEGRADATION_DATA_ID, body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#updateDegradation");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/examples/v2/status-pages/UpdateStatusPage.java b/examples/v2/status-pages/UpdateStatusPage.java
new file mode 100644
index 00000000000..4403990a3a2
--- /dev/null
+++ b/examples/v2/status-pages/UpdateStatusPage.java
@@ -0,0 +1,46 @@
+// Update status page returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.StatusPagesApi;
+import com.datadog.api.client.v2.model.PatchStatusPageRequest;
+import com.datadog.api.client.v2.model.PatchStatusPageRequestData;
+import com.datadog.api.client.v2.model.PatchStatusPageRequestDataAttributes;
+import com.datadog.api.client.v2.model.StatusPage;
+import com.datadog.api.client.v2.model.StatusPageDataType;
+import java.util.UUID;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ StatusPagesApi apiInstance = new StatusPagesApi(defaultClient);
+
+ // there is a valid "status_page" in the system
+ UUID STATUS_PAGE_DATA_ID = null;
+ try {
+ STATUS_PAGE_DATA_ID = UUID.fromString(System.getenv("STATUS_PAGE_DATA_ID"));
+ } catch (IllegalArgumentException e) {
+ System.err.println("Error parsing UUID: " + e.getMessage());
+ }
+
+ PatchStatusPageRequest body =
+ new PatchStatusPageRequest()
+ .data(
+ new PatchStatusPageRequestData()
+ .attributes(
+ new PatchStatusPageRequestDataAttributes().name("A Status Page in US1"))
+ .id(STATUS_PAGE_DATA_ID)
+ .type(StatusPageDataType.STATUS_PAGES));
+
+ try {
+ StatusPage result = apiInstance.updateStatusPage(STATUS_PAGE_DATA_ID, body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling StatusPagesApi#updateStatusPage");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v1/api/TagsApi.java b/src/main/java/com/datadog/api/client/v1/api/TagsApi.java
index bb2331f2d6a..bb99d2b0979 100644
--- a/src/main/java/com/datadog/api/client/v1/api/TagsApi.java
+++ b/src/main/java/com/datadog/api/client/v1/api/TagsApi.java
@@ -52,10 +52,9 @@ public static class CreateHostTagsOptionalParameters {
/**
* Set source.
*
- * @param source Source to add tags. Complete
- * list of source attribute values. Use "user" source for custom-defined tags. If no
- * source is specified, defaults to "user". (optional)
+ * list of source attribute values. (optional)
* @return CreateHostTagsOptionalParameters
*/
public CreateHostTagsOptionalParameters source(String source) {
@@ -69,7 +68,8 @@ public CreateHostTagsOptionalParameters source(String source) {
*
*
See {@link #createHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to add new tags (required)
+ * @param hostName This endpoint allows you to add new tags to a host, optionally specifying where
+ * the tags came from. (required)
* @param body Update host tags request body. (required)
* @return HostTags
* @throws ApiException if fails to make API call
@@ -84,7 +84,8 @@ public HostTags createHostTags(String hostName, HostTags body) throws ApiExcepti
*
*
See {@link #createHostTagsWithHttpInfoAsync}.
*
- * @param hostName Specified host name to add new tags (required)
+ * @param hostName This endpoint allows you to add new tags to a host, optionally specifying where
+ * the tags came from. (required)
* @param body Update host tags request body. (required)
* @return CompletableFuture<HostTags>
*/
@@ -101,7 +102,8 @@ public CompletableFuture createHostTagsAsync(String hostName, HostTags
*
* See {@link #createHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to add new tags (required)
+ * @param hostName This endpoint allows you to add new tags to a host, optionally specifying where
+ * the tags came from. (required)
* @param body Update host tags request body. (required)
* @param parameters Optional parameters for the request.
* @return HostTags
@@ -118,7 +120,8 @@ public HostTags createHostTags(
*
*
See {@link #createHostTagsWithHttpInfoAsync}.
*
- * @param hostName Specified host name to add new tags (required)
+ * @param hostName This endpoint allows you to add new tags to a host, optionally specifying where
+ * the tags came from. (required)
* @param body Update host tags request body. (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture<HostTags>
@@ -133,11 +136,11 @@ public CompletableFuture createHostTagsAsync(
}
/**
- * This endpoint allows you to add new tags to a host, optionally specifying what source these
- * tags come from. If tags already exist, appends new tags to the tag list. If no source is
- * specified, defaults to "user".
+ * This endpoint allows you to add new tags to a host, optionally specifying where these tags come
+ * from.
*
- * @param hostName Specified host name to add new tags (required)
+ * @param hostName This endpoint allows you to add new tags to a host, optionally specifying where
+ * the tags came from. (required)
* @param body Update host tags request body. (required)
* @param parameters Optional parameters for the request.
* @return ApiResponse<HostTags>
@@ -204,7 +207,8 @@ public ApiResponse createHostTagsWithHttpInfo(
*
* See {@link #createHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to add new tags (required)
+ * @param hostName This endpoint allows you to add new tags to a host, optionally specifying where
+ * the tags came from. (required)
* @param body Update host tags request body. (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture<ApiResponse<HostTags>>
@@ -275,10 +279,9 @@ public static class DeleteHostTagsOptionalParameters {
/**
* Set source.
*
- * @param source Source of the tags to be deleted. Complete
- * list of source attribute values. Use "user" source for custom-defined tags.
- * (optional)
+ * list of source attribute values. (optional)
* @return DeleteHostTagsOptionalParameters
*/
public DeleteHostTagsOptionalParameters source(String source) {
@@ -292,7 +295,8 @@ public DeleteHostTagsOptionalParameters source(String source) {
*
*
See {@link #deleteHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to delete tags (required)
+ * @param hostName This endpoint allows you to remove all user-assigned tags for a single host.
+ * (required)
* @throws ApiException if fails to make API call
*/
public void deleteHostTags(String hostName) throws ApiException {
@@ -304,7 +308,8 @@ public void deleteHostTags(String hostName) throws ApiException {
*
*
See {@link #deleteHostTagsWithHttpInfoAsync}.
*
- * @param hostName Specified host name to delete tags (required)
+ * @param hostName This endpoint allows you to remove all user-assigned tags for a single host.
+ * (required)
* @return CompletableFuture
*/
public CompletableFuture deleteHostTagsAsync(String hostName) {
@@ -320,7 +325,8 @@ public CompletableFuture deleteHostTagsAsync(String hostName) {
*
* See {@link #deleteHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to delete tags (required)
+ * @param hostName This endpoint allows you to remove all user-assigned tags for a single host.
+ * (required)
* @param parameters Optional parameters for the request.
* @throws ApiException if fails to make API call
*/
@@ -334,7 +340,8 @@ public void deleteHostTags(String hostName, DeleteHostTagsOptionalParameters par
*
*
See {@link #deleteHostTagsWithHttpInfoAsync}.
*
- * @param hostName Specified host name to delete tags (required)
+ * @param hostName This endpoint allows you to remove all user-assigned tags for a single host.
+ * (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture
*/
@@ -348,10 +355,10 @@ public CompletableFuture deleteHostTagsAsync(
}
/**
- * This endpoint allows you to remove all tags for a single host. If no source is specified, only
- * deletes from the source "User".
+ * This endpoint allows you to remove all user-assigned tags for a single host.
*
- * @param hostName Specified host name to delete tags (required)
+ * @param hostName This endpoint allows you to remove all user-assigned tags for a single host.
+ * (required)
* @param parameters Optional parameters for the request.
* @return ApiResponse<Void>
* @throws ApiException if fails to make API call
@@ -410,7 +417,8 @@ public ApiResponse deleteHostTagsWithHttpInfo(
*
* See {@link #deleteHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to delete tags (required)
+ * @param hostName This endpoint allows you to remove all user-assigned tags for a single host.
+ * (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture<ApiResponse<Void>>
*/
@@ -471,10 +479,7 @@ public static class GetHostTagsOptionalParameters {
/**
* Set source.
*
- * @param source Source to filter. Complete
- * list of source attribute values. Use "user" source for custom-defined tags.
- * (optional)
+ * @param source Source to filter. (optional)
* @return GetHostTagsOptionalParameters
*/
public GetHostTagsOptionalParameters source(String source) {
@@ -484,11 +489,12 @@ public GetHostTagsOptionalParameters source(String source) {
}
/**
- * Get Host Tags.
+ * Get host tags.
*
*
See {@link #getHostTagsWithHttpInfo}.
*
- * @param hostName Name of the host to retrieve tags for (required)
+ * @param hostName When specified, filters list of tags to those tags with the specified source.
+ * (required)
* @return HostTags
* @throws ApiException if fails to make API call
*/
@@ -497,11 +503,12 @@ public HostTags getHostTags(String hostName) throws ApiException {
}
/**
- * Get Host Tags.
+ * Get host tags.
*
*
See {@link #getHostTagsWithHttpInfoAsync}.
*
- * @param hostName Name of the host to retrieve tags for (required)
+ * @param hostName When specified, filters list of tags to those tags with the specified source.
+ * (required)
* @return CompletableFuture<HostTags>
*/
public CompletableFuture getHostTagsAsync(String hostName) {
@@ -513,11 +520,12 @@ public CompletableFuture getHostTagsAsync(String hostName) {
}
/**
- * Get Host Tags.
+ * Get host tags.
*
* See {@link #getHostTagsWithHttpInfo}.
*
- * @param hostName Name of the host to retrieve tags for (required)
+ * @param hostName When specified, filters list of tags to those tags with the specified source.
+ * (required)
* @param parameters Optional parameters for the request.
* @return HostTags
* @throws ApiException if fails to make API call
@@ -528,11 +536,12 @@ public HostTags getHostTags(String hostName, GetHostTagsOptionalParameters param
}
/**
- * Get Host Tags.
+ * Get host tags.
*
*
See {@link #getHostTagsWithHttpInfoAsync}.
*
- * @param hostName Name of the host to retrieve tags for (required)
+ * @param hostName When specified, filters list of tags to those tags with the specified source.
+ * (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture<HostTags>
*/
@@ -548,7 +557,8 @@ public CompletableFuture getHostTagsAsync(
/**
* Return the list of tags that apply to a given host.
*
- * @param hostName Name of the host to retrieve tags for (required)
+ * @param hostName When specified, filters list of tags to those tags with the specified source.
+ * (required)
* @param parameters Optional parameters for the request.
* @return ApiResponse<HostTags>
* @throws ApiException if fails to make API call
@@ -603,11 +613,12 @@ public ApiResponse getHostTagsWithHttpInfo(
}
/**
- * Get Host Tags.
+ * Get host tags.
*
* See {@link #getHostTagsWithHttpInfo}.
*
- * @param hostName Name of the host to retrieve tags for (required)
+ * @param hostName When specified, filters list of tags to those tags with the specified source.
+ * (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture<ApiResponse<HostTags>>
*/
@@ -668,9 +679,7 @@ public static class ListHostTagsOptionalParameters {
/**
* Set source.
*
- * @param source Source to filter. Complete
- * list of source attribute values. Use "user" source for custom-defined tags.
+ * @param source When specified, filters host list to those tags with the specified source.
* (optional)
* @return ListHostTagsOptionalParameters
*/
@@ -681,7 +690,7 @@ public ListHostTagsOptionalParameters source(String source) {
}
/**
- * Get All Host Tags.
+ * Get Tags.
*
*
See {@link #listHostTagsWithHttpInfo}.
*
@@ -693,7 +702,7 @@ public TagToHosts listHostTags() throws ApiException {
}
/**
- * Get All Host Tags.
+ * Get Tags.
*
*
See {@link #listHostTagsWithHttpInfoAsync}.
*
@@ -708,7 +717,7 @@ public CompletableFuture listHostTagsAsync() {
}
/**
- * Get All Host Tags.
+ * Get Tags.
*
* See {@link #listHostTagsWithHttpInfo}.
*
@@ -721,7 +730,7 @@ public TagToHosts listHostTags(ListHostTagsOptionalParameters parameters) throws
}
/**
- * Get All Host Tags.
+ * Get Tags.
*
*
See {@link #listHostTagsWithHttpInfoAsync}.
*
@@ -738,9 +747,7 @@ public CompletableFuture listHostTagsAsync(
}
/**
- * Returns a mapping of tags to hosts. For each tag, the response returns a list of host names
- * that contain this tag. There is a restriction of 10k total host names from the org that can be
- * attached to tags and returned.
+ * Return a mapping of tags to hosts for your whole infrastructure.
*
* @param parameters Optional parameters for the request.
* @return ApiResponse<TagToHosts>
@@ -788,7 +795,7 @@ public ApiResponse listHostTagsWithHttpInfo(ListHostTagsOptionalPara
}
/**
- * Get All Host Tags.
+ * Get Tags.
*
* See {@link #listHostTagsWithHttpInfo}.
*
@@ -841,10 +848,9 @@ public static class UpdateHostTagsOptionalParameters {
/**
* Set source.
*
- * @param source Source to update tags. Complete
- * list of source attribute values. Use "user" source for custom-defined tags. If no
- * source specified, defaults to "user". (optional)
+ * list of source attribute values (optional)
* @return UpdateHostTagsOptionalParameters
*/
public UpdateHostTagsOptionalParameters source(String source) {
@@ -858,7 +864,8 @@ public UpdateHostTagsOptionalParameters source(String source) {
*
*
See {@link #updateHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to change tags (required)
+ * @param hostName This endpoint allows you to update/replace all in an integration source with
+ * those supplied in the request. (required)
* @param body Add tags to host (required)
* @return HostTags
* @throws ApiException if fails to make API call
@@ -873,7 +880,8 @@ public HostTags updateHostTags(String hostName, HostTags body) throws ApiExcepti
*
*
See {@link #updateHostTagsWithHttpInfoAsync}.
*
- * @param hostName Specified host name to change tags (required)
+ * @param hostName This endpoint allows you to update/replace all in an integration source with
+ * those supplied in the request. (required)
* @param body Add tags to host (required)
* @return CompletableFuture<HostTags>
*/
@@ -890,7 +898,8 @@ public CompletableFuture updateHostTagsAsync(String hostName, HostTags
*
* See {@link #updateHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to change tags (required)
+ * @param hostName This endpoint allows you to update/replace all in an integration source with
+ * those supplied in the request. (required)
* @param body Add tags to host (required)
* @param parameters Optional parameters for the request.
* @return HostTags
@@ -907,7 +916,8 @@ public HostTags updateHostTags(
*
*
See {@link #updateHostTagsWithHttpInfoAsync}.
*
- * @param hostName Specified host name to change tags (required)
+ * @param hostName This endpoint allows you to update/replace all in an integration source with
+ * those supplied in the request. (required)
* @param body Add tags to host (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture<HostTags>
@@ -925,7 +935,8 @@ public CompletableFuture updateHostTagsAsync(
* This endpoint allows you to update/replace all tags in an integration source with those
* supplied in the request.
*
- * @param hostName Specified host name to change tags (required)
+ * @param hostName This endpoint allows you to update/replace all in an integration source with
+ * those supplied in the request. (required)
* @param body Add tags to host (required)
* @param parameters Optional parameters for the request.
* @return ApiResponse<HostTags>
@@ -992,7 +1003,8 @@ public ApiResponse updateHostTagsWithHttpInfo(
*
* See {@link #updateHostTagsWithHttpInfo}.
*
- * @param hostName Specified host name to change tags (required)
+ * @param hostName This endpoint allows you to update/replace all in an integration source with
+ * those supplied in the request. (required)
* @param body Add tags to host (required)
* @param parameters Optional parameters for the request.
* @return CompletableFuture<ApiResponse<HostTags>>
diff --git a/src/main/java/com/datadog/api/client/v1/model/HostTags.java b/src/main/java/com/datadog/api/client/v1/model/HostTags.java
index ef9c3188a48..fda1c74e074 100644
--- a/src/main/java/com/datadog/api/client/v1/model/HostTags.java
+++ b/src/main/java/com/datadog/api/client/v1/model/HostTags.java
@@ -18,7 +18,7 @@
import java.util.Map;
import java.util.Objects;
-/** Host name and an array of its tags */
+/** Set of tags to associate with your host. */
@JsonPropertyOrder({HostTags.JSON_PROPERTY_HOST, HostTags.JSON_PROPERTY_TAGS})
@jakarta.annotation.Generated(
value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
@@ -65,7 +65,7 @@ public HostTags addTagsItem(String tagsItem) {
}
/**
- * A list of tags associated with a host.
+ * A list of tags to apply to the host.
*
* @return tags
*/
diff --git a/src/main/java/com/datadog/api/client/v1/model/TagToHosts.java b/src/main/java/com/datadog/api/client/v1/model/TagToHosts.java
index 4048f2f6cb0..2cc5d52c271 100644
--- a/src/main/java/com/datadog/api/client/v1/model/TagToHosts.java
+++ b/src/main/java/com/datadog/api/client/v1/model/TagToHosts.java
@@ -18,7 +18,7 @@
import java.util.Objects;
/**
- * In this object, the key is the tag, and the value is a list of host names that are reporting that
+ * In this object, the key is the tag, the value is a list of host names that are reporting that
* tag.
*/
@JsonPropertyOrder({TagToHosts.JSON_PROPERTY_TAGS})
@@ -43,7 +43,7 @@ public TagToHosts putTagsItem(String key, List tagsItem) {
}
/**
- * A mapping of tags to host names
+ * A list of tags to apply to the host.
*
* @return tags
*/
diff --git a/src/main/java/com/datadog/api/client/v2/api/StatusPagesApi.java b/src/main/java/com/datadog/api/client/v2/api/StatusPagesApi.java
new file mode 100644
index 00000000000..11e3520d1b1
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/api/StatusPagesApi.java
@@ -0,0 +1,3183 @@
+package com.datadog.api.client.v2.api;
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.ApiResponse;
+import com.datadog.api.client.Pair;
+import com.datadog.api.client.v2.model.CreateComponentRequest;
+import com.datadog.api.client.v2.model.CreateDegradationRequest;
+import com.datadog.api.client.v2.model.CreateStatusPageRequest;
+import com.datadog.api.client.v2.model.Degradation;
+import com.datadog.api.client.v2.model.DegradationArray;
+import com.datadog.api.client.v2.model.PatchComponentRequest;
+import com.datadog.api.client.v2.model.PatchDegradationRequest;
+import com.datadog.api.client.v2.model.PatchStatusPageRequest;
+import com.datadog.api.client.v2.model.StatusPage;
+import com.datadog.api.client.v2.model.StatusPageArray;
+import com.datadog.api.client.v2.model.StatusPagesComponent;
+import com.datadog.api.client.v2.model.StatusPagesComponentArray;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.core.GenericType;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
+import java.util.concurrent.CompletableFuture;
+
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class StatusPagesApi {
+ private ApiClient apiClient;
+
+ public StatusPagesApi() {
+ this(ApiClient.getDefaultApiClient());
+ }
+
+ public StatusPagesApi(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ /**
+ * Get the API client.
+ *
+ * @return API client
+ */
+ public ApiClient getApiClient() {
+ return apiClient;
+ }
+
+ /**
+ * Set the API client.
+ *
+ * @param apiClient an instance of API client
+ */
+ public void setApiClient(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ /** Manage optional parameters to createComponent. */
+ public static class CreateComponentOptionalParameters {
+ private String include;
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user, status_page, group. (optional)
+ * @return CreateComponentOptionalParameters
+ */
+ public CreateComponentOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+ }
+
+ /**
+ * Create component.
+ *
+ * See {@link #createComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @return StatusPagesComponent
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPagesComponent createComponent(UUID pageId, CreateComponentRequest body)
+ throws ApiException {
+ return createComponentWithHttpInfo(pageId, body, new CreateComponentOptionalParameters())
+ .getData();
+ }
+
+ /**
+ * Create component.
+ *
+ *
See {@link #createComponentWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @return CompletableFuture<StatusPagesComponent>
+ */
+ public CompletableFuture createComponentAsync(
+ UUID pageId, CreateComponentRequest body) {
+ return createComponentWithHttpInfoAsync(pageId, body, new CreateComponentOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Create component.
+ *
+ * See {@link #createComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return StatusPagesComponent
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPagesComponent createComponent(
+ UUID pageId, CreateComponentRequest body, CreateComponentOptionalParameters parameters)
+ throws ApiException {
+ return createComponentWithHttpInfo(pageId, body, parameters).getData();
+ }
+
+ /**
+ * Create component.
+ *
+ *
See {@link #createComponentWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<StatusPagesComponent>
+ */
+ public CompletableFuture createComponentAsync(
+ UUID pageId, CreateComponentRequest body, CreateComponentOptionalParameters parameters) {
+ return createComponentWithHttpInfoAsync(pageId, body, parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Creates a new component.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<StatusPagesComponent>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 201 | Created | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse createComponentWithHttpInfo(
+ UUID pageId, CreateComponentRequest body, CreateComponentOptionalParameters parameters)
+ throws ApiException {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling createComponent");
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'body' when calling createComponent");
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.createComponent",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Create component.
+ *
+ * See {@link #createComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<ApiResponse<StatusPagesComponent>>
+ */
+ public CompletableFuture> createComponentWithHttpInfoAsync(
+ UUID pageId, CreateComponentRequest body, CreateComponentOptionalParameters parameters) {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling createComponent"));
+ return result;
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'body' when calling createComponent"));
+ return result;
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.createComponent",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /** Manage optional parameters to createDegradation. */
+ public static class CreateDegradationOptionalParameters {
+ private Boolean notifySubscribers;
+ private String include;
+
+ /**
+ * Set notifySubscribers.
+ *
+ * @param notifySubscribers Whether to notify page subscribers of the degradation. (optional,
+ * default to true)
+ * @return CreateDegradationOptionalParameters
+ */
+ public CreateDegradationOptionalParameters notifySubscribers(Boolean notifySubscribers) {
+ this.notifySubscribers = notifySubscribers;
+ return this;
+ }
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user, status_page. (optional)
+ * @return CreateDegradationOptionalParameters
+ */
+ public CreateDegradationOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+ }
+
+ /**
+ * Create degradation.
+ *
+ * See {@link #createDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @return Degradation
+ * @throws ApiException if fails to make API call
+ */
+ public Degradation createDegradation(UUID pageId, CreateDegradationRequest body)
+ throws ApiException {
+ return createDegradationWithHttpInfo(pageId, body, new CreateDegradationOptionalParameters())
+ .getData();
+ }
+
+ /**
+ * Create degradation.
+ *
+ *
See {@link #createDegradationWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @return CompletableFuture<Degradation>
+ */
+ public CompletableFuture createDegradationAsync(
+ UUID pageId, CreateDegradationRequest body) {
+ return createDegradationWithHttpInfoAsync(
+ pageId, body, new CreateDegradationOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Create degradation.
+ *
+ * See {@link #createDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return Degradation
+ * @throws ApiException if fails to make API call
+ */
+ public Degradation createDegradation(
+ UUID pageId, CreateDegradationRequest body, CreateDegradationOptionalParameters parameters)
+ throws ApiException {
+ return createDegradationWithHttpInfo(pageId, body, parameters).getData();
+ }
+
+ /**
+ * Create degradation.
+ *
+ *
See {@link #createDegradationWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<Degradation>
+ */
+ public CompletableFuture createDegradationAsync(
+ UUID pageId, CreateDegradationRequest body, CreateDegradationOptionalParameters parameters) {
+ return createDegradationWithHttpInfoAsync(pageId, body, parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Creates a new degradation.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<Degradation>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 201 | Created | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse createDegradationWithHttpInfo(
+ UUID pageId, CreateDegradationRequest body, CreateDegradationOptionalParameters parameters)
+ throws ApiException {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling createDegradation");
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'body' when calling createDegradation");
+ }
+ Boolean notifySubscribers = parameters.notifySubscribers;
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/degradations"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(
+ apiClient.parameterToPairs("", "notify_subscribers", notifySubscribers));
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.createDegradation",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Create degradation.
+ *
+ * See {@link #createDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<ApiResponse<Degradation>>
+ */
+ public CompletableFuture> createDegradationWithHttpInfoAsync(
+ UUID pageId, CreateDegradationRequest body, CreateDegradationOptionalParameters parameters) {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling createDegradation"));
+ return result;
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'body' when calling createDegradation"));
+ return result;
+ }
+ Boolean notifySubscribers = parameters.notifySubscribers;
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/degradations"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(
+ apiClient.parameterToPairs("", "notify_subscribers", notifySubscribers));
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.createDegradation",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /** Manage optional parameters to createStatusPage. */
+ public static class CreateStatusPageOptionalParameters {
+ private String include;
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user. (optional)
+ * @return CreateStatusPageOptionalParameters
+ */
+ public CreateStatusPageOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+ }
+
+ /**
+ * Create status page.
+ *
+ * See {@link #createStatusPageWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return StatusPage
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPage createStatusPage(CreateStatusPageRequest body) throws ApiException {
+ return createStatusPageWithHttpInfo(body, new CreateStatusPageOptionalParameters()).getData();
+ }
+
+ /**
+ * Create status page.
+ *
+ *
See {@link #createStatusPageWithHttpInfoAsync}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<StatusPage>
+ */
+ public CompletableFuture createStatusPageAsync(CreateStatusPageRequest body) {
+ return createStatusPageWithHttpInfoAsync(body, new CreateStatusPageOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Create status page.
+ *
+ * See {@link #createStatusPageWithHttpInfo}.
+ *
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return StatusPage
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPage createStatusPage(
+ CreateStatusPageRequest body, CreateStatusPageOptionalParameters parameters)
+ throws ApiException {
+ return createStatusPageWithHttpInfo(body, parameters).getData();
+ }
+
+ /**
+ * Create status page.
+ *
+ *
See {@link #createStatusPageWithHttpInfoAsync}.
+ *
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<StatusPage>
+ */
+ public CompletableFuture createStatusPageAsync(
+ CreateStatusPageRequest body, CreateStatusPageOptionalParameters parameters) {
+ return createStatusPageWithHttpInfoAsync(body, parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Creates a new status page.
+ *
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<StatusPage>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 201 | Created | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse createStatusPageWithHttpInfo(
+ CreateStatusPageRequest body, CreateStatusPageOptionalParameters parameters)
+ throws ApiException {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'body' when calling createStatusPage");
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath = "/api/v2/statuspages";
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.createStatusPage",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Create status page.
+ *
+ * See {@link #createStatusPageWithHttpInfo}.
+ *
+ * @param body (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<ApiResponse<StatusPage>>
+ */
+ public CompletableFuture> createStatusPageWithHttpInfoAsync(
+ CreateStatusPageRequest body, CreateStatusPageOptionalParameters parameters) {
+ Object localVarPostBody = body;
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'body' when calling createStatusPage"));
+ return result;
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath = "/api/v2/statuspages";
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.createStatusPage",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Delete component.
+ *
+ * See {@link #deleteComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @throws ApiException if fails to make API call
+ */
+ public void deleteComponent(UUID pageId, UUID componentId) throws ApiException {
+ deleteComponentWithHttpInfo(pageId, componentId);
+ }
+
+ /**
+ * Delete component.
+ *
+ *
See {@link #deleteComponentWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @return CompletableFuture
+ */
+ public CompletableFuture deleteComponentAsync(UUID pageId, UUID componentId) {
+ return deleteComponentWithHttpInfoAsync(pageId, componentId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Deletes a component by its ID.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 204 | No Content | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse deleteComponentWithHttpInfo(UUID pageId, UUID componentId)
+ throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling deleteComponent");
+ }
+
+ // verify the required parameter 'componentId' is set
+ if (componentId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'componentId' when calling deleteComponent");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components/{component_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "component_id" + "\\}", apiClient.escapeString(componentId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.deleteComponent",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /**
+ * Delete component.
+ *
+ * See {@link #deleteComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @return CompletableFuture<ApiResponse<Void>>
+ */
+ public CompletableFuture> deleteComponentWithHttpInfoAsync(
+ UUID pageId, UUID componentId) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling deleteComponent"));
+ return result;
+ }
+
+ // verify the required parameter 'componentId' is set
+ if (componentId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'componentId' when calling deleteComponent"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components/{component_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "component_id" + "\\}", apiClient.escapeString(componentId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.deleteComponent",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /**
+ * Delete degradation.
+ *
+ * See {@link #deleteDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @throws ApiException if fails to make API call
+ */
+ public void deleteDegradation(UUID pageId, UUID degradationId) throws ApiException {
+ deleteDegradationWithHttpInfo(pageId, degradationId);
+ }
+
+ /**
+ * Delete degradation.
+ *
+ *
See {@link #deleteDegradationWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @return CompletableFuture
+ */
+ public CompletableFuture deleteDegradationAsync(UUID pageId, UUID degradationId) {
+ return deleteDegradationWithHttpInfoAsync(pageId, degradationId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Deletes a degradation by its ID.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 204 | No Content | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse deleteDegradationWithHttpInfo(UUID pageId, UUID degradationId)
+ throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling deleteDegradation");
+ }
+
+ // verify the required parameter 'degradationId' is set
+ if (degradationId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'degradationId' when calling deleteDegradation");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/degradations/{degradation_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "degradation_id" + "\\}", apiClient.escapeString(degradationId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.deleteDegradation",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /**
+ * Delete degradation.
+ *
+ * See {@link #deleteDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @return CompletableFuture<ApiResponse<Void>>
+ */
+ public CompletableFuture> deleteDegradationWithHttpInfoAsync(
+ UUID pageId, UUID degradationId) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling deleteDegradation"));
+ return result;
+ }
+
+ // verify the required parameter 'degradationId' is set
+ if (degradationId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'degradationId' when calling deleteDegradation"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/degradations/{degradation_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "degradation_id" + "\\}", apiClient.escapeString(degradationId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.deleteDegradation",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /**
+ * Delete status page.
+ *
+ * See {@link #deleteStatusPageWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @throws ApiException if fails to make API call
+ */
+ public void deleteStatusPage(UUID pageId) throws ApiException {
+ deleteStatusPageWithHttpInfo(pageId);
+ }
+
+ /**
+ * Delete status page.
+ *
+ *
See {@link #deleteStatusPageWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @return CompletableFuture
+ */
+ public CompletableFuture deleteStatusPageAsync(UUID pageId) {
+ return deleteStatusPageWithHttpInfoAsync(pageId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Deletes a status page by its ID.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 204 | No Content | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse deleteStatusPageWithHttpInfo(UUID pageId) throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling deleteStatusPage");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.deleteStatusPage",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /**
+ * Delete status page.
+ *
+ * See {@link #deleteStatusPageWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @return CompletableFuture<ApiResponse<Void>>
+ */
+ public CompletableFuture> deleteStatusPageWithHttpInfoAsync(UUID pageId) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling deleteStatusPage"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.deleteStatusPage",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"*/*"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "DELETE",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ null);
+ }
+
+ /** Manage optional parameters to getComponent. */
+ public static class GetComponentOptionalParameters {
+ private String include;
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user, status_page, group. (optional)
+ * @return GetComponentOptionalParameters
+ */
+ public GetComponentOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+ }
+
+ /**
+ * Get component.
+ *
+ * See {@link #getComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @return StatusPagesComponent
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPagesComponent getComponent(UUID pageId, UUID componentId) throws ApiException {
+ return getComponentWithHttpInfo(pageId, componentId, new GetComponentOptionalParameters())
+ .getData();
+ }
+
+ /**
+ * Get component.
+ *
+ *
See {@link #getComponentWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @return CompletableFuture<StatusPagesComponent>
+ */
+ public CompletableFuture getComponentAsync(UUID pageId, UUID componentId) {
+ return getComponentWithHttpInfoAsync(pageId, componentId, new GetComponentOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get component.
+ *
+ * See {@link #getComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @param parameters Optional parameters for the request.
+ * @return StatusPagesComponent
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPagesComponent getComponent(
+ UUID pageId, UUID componentId, GetComponentOptionalParameters parameters)
+ throws ApiException {
+ return getComponentWithHttpInfo(pageId, componentId, parameters).getData();
+ }
+
+ /**
+ * Get component.
+ *
+ *
See {@link #getComponentWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<StatusPagesComponent>
+ */
+ public CompletableFuture getComponentAsync(
+ UUID pageId, UUID componentId, GetComponentOptionalParameters parameters) {
+ return getComponentWithHttpInfoAsync(pageId, componentId, parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Retrieves a specific component by its ID.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<StatusPagesComponent>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse getComponentWithHttpInfo(
+ UUID pageId, UUID componentId, GetComponentOptionalParameters parameters)
+ throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling getComponent");
+ }
+
+ // verify the required parameter 'componentId' is set
+ if (componentId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'componentId' when calling getComponent");
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components/{component_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "component_id" + "\\}", apiClient.escapeString(componentId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.getComponent",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get component.
+ *
+ * See {@link #getComponentWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param componentId The ID of the component. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<ApiResponse<StatusPagesComponent>>
+ */
+ public CompletableFuture> getComponentWithHttpInfoAsync(
+ UUID pageId, UUID componentId, GetComponentOptionalParameters parameters) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling getComponent"));
+ return result;
+ }
+
+ // verify the required parameter 'componentId' is set
+ if (componentId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'componentId' when calling getComponent"));
+ return result;
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components/{component_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "component_id" + "\\}", apiClient.escapeString(componentId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.getComponent",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /** Manage optional parameters to getDegradation. */
+ public static class GetDegradationOptionalParameters {
+ private String include;
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user, status_page. (optional)
+ * @return GetDegradationOptionalParameters
+ */
+ public GetDegradationOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+ }
+
+ /**
+ * Get degradation.
+ *
+ * See {@link #getDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @return Degradation
+ * @throws ApiException if fails to make API call
+ */
+ public Degradation getDegradation(UUID pageId, UUID degradationId) throws ApiException {
+ return getDegradationWithHttpInfo(pageId, degradationId, new GetDegradationOptionalParameters())
+ .getData();
+ }
+
+ /**
+ * Get degradation.
+ *
+ *
See {@link #getDegradationWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @return CompletableFuture<Degradation>
+ */
+ public CompletableFuture getDegradationAsync(UUID pageId, UUID degradationId) {
+ return getDegradationWithHttpInfoAsync(
+ pageId, degradationId, new GetDegradationOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get degradation.
+ *
+ * See {@link #getDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @param parameters Optional parameters for the request.
+ * @return Degradation
+ * @throws ApiException if fails to make API call
+ */
+ public Degradation getDegradation(
+ UUID pageId, UUID degradationId, GetDegradationOptionalParameters parameters)
+ throws ApiException {
+ return getDegradationWithHttpInfo(pageId, degradationId, parameters).getData();
+ }
+
+ /**
+ * Get degradation.
+ *
+ *
See {@link #getDegradationWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<Degradation>
+ */
+ public CompletableFuture getDegradationAsync(
+ UUID pageId, UUID degradationId, GetDegradationOptionalParameters parameters) {
+ return getDegradationWithHttpInfoAsync(pageId, degradationId, parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Retrieves a specific degradation by its ID.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<Degradation>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse getDegradationWithHttpInfo(
+ UUID pageId, UUID degradationId, GetDegradationOptionalParameters parameters)
+ throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling getDegradation");
+ }
+
+ // verify the required parameter 'degradationId' is set
+ if (degradationId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'degradationId' when calling getDegradation");
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/degradations/{degradation_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "degradation_id" + "\\}", apiClient.escapeString(degradationId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.getDegradation",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get degradation.
+ *
+ * See {@link #getDegradationWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param degradationId The ID of the degradation. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<ApiResponse<Degradation>>
+ */
+ public CompletableFuture> getDegradationWithHttpInfoAsync(
+ UUID pageId, UUID degradationId, GetDegradationOptionalParameters parameters) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling getDegradation"));
+ return result;
+ }
+
+ // verify the required parameter 'degradationId' is set
+ if (degradationId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'degradationId' when calling getDegradation"));
+ return result;
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/degradations/{degradation_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()))
+ .replaceAll(
+ "\\{" + "degradation_id" + "\\}", apiClient.escapeString(degradationId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.getDegradation",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /** Manage optional parameters to getStatusPage. */
+ public static class GetStatusPageOptionalParameters {
+ private String include;
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user. (optional)
+ * @return GetStatusPageOptionalParameters
+ */
+ public GetStatusPageOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+ }
+
+ /**
+ * Get status page.
+ *
+ * See {@link #getStatusPageWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @return StatusPage
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPage getStatusPage(UUID pageId) throws ApiException {
+ return getStatusPageWithHttpInfo(pageId, new GetStatusPageOptionalParameters()).getData();
+ }
+
+ /**
+ * Get status page.
+ *
+ *
See {@link #getStatusPageWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @return CompletableFuture<StatusPage>
+ */
+ public CompletableFuture getStatusPageAsync(UUID pageId) {
+ return getStatusPageWithHttpInfoAsync(pageId, new GetStatusPageOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get status page.
+ *
+ * See {@link #getStatusPageWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return StatusPage
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPage getStatusPage(UUID pageId, GetStatusPageOptionalParameters parameters)
+ throws ApiException {
+ return getStatusPageWithHttpInfo(pageId, parameters).getData();
+ }
+
+ /**
+ * Get status page.
+ *
+ *
See {@link #getStatusPageWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<StatusPage>
+ */
+ public CompletableFuture getStatusPageAsync(
+ UUID pageId, GetStatusPageOptionalParameters parameters) {
+ return getStatusPageWithHttpInfoAsync(pageId, parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Retrieves a specific status page by its ID.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<StatusPage>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse getStatusPageWithHttpInfo(
+ UUID pageId, GetStatusPageOptionalParameters parameters) throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling getStatusPage");
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.getStatusPage",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get status page.
+ *
+ * See {@link #getStatusPageWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<ApiResponse<StatusPage>>
+ */
+ public CompletableFuture> getStatusPageWithHttpInfoAsync(
+ UUID pageId, GetStatusPageOptionalParameters parameters) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling getStatusPage"));
+ return result;
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.getStatusPage",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /** Manage optional parameters to listComponents. */
+ public static class ListComponentsOptionalParameters {
+ private String include;
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user, status_page, group. (optional)
+ * @return ListComponentsOptionalParameters
+ */
+ public ListComponentsOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+ }
+
+ /**
+ * List components.
+ *
+ * See {@link #listComponentsWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @return StatusPagesComponentArray
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPagesComponentArray listComponents(UUID pageId) throws ApiException {
+ return listComponentsWithHttpInfo(pageId, new ListComponentsOptionalParameters()).getData();
+ }
+
+ /**
+ * List components.
+ *
+ *
See {@link #listComponentsWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @return CompletableFuture<StatusPagesComponentArray>
+ */
+ public CompletableFuture listComponentsAsync(UUID pageId) {
+ return listComponentsWithHttpInfoAsync(pageId, new ListComponentsOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * List components.
+ *
+ * See {@link #listComponentsWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return StatusPagesComponentArray
+ * @throws ApiException if fails to make API call
+ */
+ public StatusPagesComponentArray listComponents(
+ UUID pageId, ListComponentsOptionalParameters parameters) throws ApiException {
+ return listComponentsWithHttpInfo(pageId, parameters).getData();
+ }
+
+ /**
+ * List components.
+ *
+ *
See {@link #listComponentsWithHttpInfoAsync}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<StatusPagesComponentArray>
+ */
+ public CompletableFuture listComponentsAsync(
+ UUID pageId, ListComponentsOptionalParameters parameters) {
+ return listComponentsWithHttpInfoAsync(pageId, parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Lists all components for a status page.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<StatusPagesComponentArray>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse listComponentsWithHttpInfo(
+ UUID pageId, ListComponentsOptionalParameters parameters) throws ApiException {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ throw new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling listComponents");
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.listComponents",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * List components.
+ *
+ * See {@link #listComponentsWithHttpInfo}.
+ *
+ * @param pageId The ID of the status page. (required)
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<ApiResponse<StatusPagesComponentArray>>
+ */
+ public CompletableFuture> listComponentsWithHttpInfoAsync(
+ UUID pageId, ListComponentsOptionalParameters parameters) {
+ Object localVarPostBody = null;
+
+ // verify the required parameter 'pageId' is set
+ if (pageId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400, "Missing the required parameter 'pageId' when calling listComponents"));
+ return result;
+ }
+ String include = parameters.include;
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/statuspages/{page_id}/components"
+ .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString()));
+
+ List localVarQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+
+ localVarQueryParams.addAll(apiClient.parameterToPairs("", "include", include));
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.StatusPagesApi.listComponents",
+ localVarPath,
+ localVarQueryParams,
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"});
+ } catch (ApiException ex) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /** Manage optional parameters to listDegradations. */
+ public static class ListDegradationsOptionalParameters {
+ private String filterPageId;
+ private Integer pageOffset;
+ private Integer pageLimit;
+ private String include;
+ private String filterStatus;
+
+ /**
+ * Set filterPageId.
+ *
+ * @param filterPageId Optional page id filter. (optional)
+ * @return ListDegradationsOptionalParameters
+ */
+ public ListDegradationsOptionalParameters filterPageId(String filterPageId) {
+ this.filterPageId = filterPageId;
+ return this;
+ }
+
+ /**
+ * Set pageOffset.
+ *
+ * @param pageOffset Offset to use as the start of the page. (optional, default to 0)
+ * @return ListDegradationsOptionalParameters
+ */
+ public ListDegradationsOptionalParameters pageOffset(Integer pageOffset) {
+ this.pageOffset = pageOffset;
+ return this;
+ }
+
+ /**
+ * Set pageLimit.
+ *
+ * @param pageLimit The number of degradations to return per page. (optional, default to 50)
+ * @return ListDegradationsOptionalParameters
+ */
+ public ListDegradationsOptionalParameters pageLimit(Integer pageLimit) {
+ this.pageLimit = pageLimit;
+ return this;
+ }
+
+ /**
+ * Set include.
+ *
+ * @param include Comma-separated list of resources to include. Supported values:
+ * created_by_user, last_modified_by_user, status_page. (optional)
+ * @return ListDegradationsOptionalParameters
+ */
+ public ListDegradationsOptionalParameters include(String include) {
+ this.include = include;
+ return this;
+ }
+
+ /**
+ * Set filterStatus.
+ *
+ * @param filterStatus Optional degradation status filter. Supported values: investigating,
+ * identified, monitoring, resolved. (optional)
+ * @return ListDegradationsOptionalParameters
+ */
+ public ListDegradationsOptionalParameters filterStatus(String filterStatus) {
+ this.filterStatus = filterStatus;
+ return this;
+ }
+ }
+
+ /**
+ * List degradations.
+ *
+ * See {@link #listDegradationsWithHttpInfo}.
+ *
+ * @return DegradationArray
+ * @throws ApiException if fails to make API call
+ */
+ public DegradationArray listDegradations() throws ApiException {
+ return listDegradationsWithHttpInfo(new ListDegradationsOptionalParameters()).getData();
+ }
+
+ /**
+ * List degradations.
+ *
+ *
See {@link #listDegradationsWithHttpInfoAsync}.
+ *
+ * @return CompletableFuture<DegradationArray>
+ */
+ public CompletableFuture listDegradationsAsync() {
+ return listDegradationsWithHttpInfoAsync(new ListDegradationsOptionalParameters())
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * List degradations.
+ *
+ * See {@link #listDegradationsWithHttpInfo}.
+ *
+ * @param parameters Optional parameters for the request.
+ * @return DegradationArray
+ * @throws ApiException if fails to make API call
+ */
+ public DegradationArray listDegradations(ListDegradationsOptionalParameters parameters)
+ throws ApiException {
+ return listDegradationsWithHttpInfo(parameters).getData();
+ }
+
+ /**
+ * List degradations.
+ *
+ *
See {@link #listDegradationsWithHttpInfoAsync}.
+ *
+ * @param parameters Optional parameters for the request.
+ * @return CompletableFuture<DegradationArray>
+ */
+ public CompletableFuture listDegradationsAsync(
+ ListDegradationsOptionalParameters parameters) {
+ return listDegradationsWithHttpInfoAsync(parameters)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Lists all degradations for the organization. Optionally filter by status and page.
+ *
+ * @param parameters Optional parameters for the request.
+ * @return ApiResponse<DegradationArray>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * |