diff --git a/.apigentools-info b/.apigentools-info index 2fd95d4c965..44a29ebc038 100644 --- a/.apigentools-info +++ b/.apigentools-info @@ -4,13 +4,13 @@ "spec_versions": { "v1": { "apigentools_version": "1.2.0", - "regenerated": "2020-06-03 07:12:44.642879", - "spec_repo_commit": "80b557a" + "regenerated": "2020-06-04 13:37:39.934098", + "spec_repo_commit": "343cf1b" }, "v2": { "apigentools_version": "1.2.0", - "regenerated": "2020-06-03 07:12:49.322758", - "spec_repo_commit": "80b557a" + "regenerated": "2020-06-04 13:37:44.452832", + "spec_repo_commit": "343cf1b" } } } \ No newline at end of file diff --git a/api/v2/datadog/.openapi-generator/FILES b/api/v2/datadog/.openapi-generator/FILES index e0f4a61ae3d..b334760faa1 100644 --- a/api/v2/datadog/.openapi-generator/FILES +++ b/api/v2/datadog/.openapi-generator/FILES @@ -4,6 +4,7 @@ README.md api/openapi.yaml api_dashboard_lists.go +api_logs_archives.go api_roles.go api_security_monitoring.go api_users.go @@ -23,6 +24,26 @@ docs/DashboardListUpdateItemsRequest.md docs/DashboardListUpdateItemsResponse.md docs/DashboardListsApi.md docs/DashboardType.md +docs/LogsArchive.md +docs/LogsArchiveAttributes.md +docs/LogsArchiveCreateRequest.md +docs/LogsArchiveCreateRequestAttributes.md +docs/LogsArchiveCreateRequestDefinition.md +docs/LogsArchiveCreateRequestDestination.md +docs/LogsArchiveDefinition.md +docs/LogsArchiveDestination.md +docs/LogsArchiveDestinationAzure.md +docs/LogsArchiveDestinationAzureType.md +docs/LogsArchiveDestinationGCS.md +docs/LogsArchiveDestinationGCSType.md +docs/LogsArchiveDestinationS3.md +docs/LogsArchiveDestinationS3Type.md +docs/LogsArchiveIntegrationAzure.md +docs/LogsArchiveIntegrationGCS.md +docs/LogsArchiveIntegrationS3.md +docs/LogsArchiveState.md +docs/LogsArchives.md +docs/LogsArchivesApi.md docs/Organization.md docs/OrganizationAttributes.md docs/OrganizationsType.md @@ -38,6 +59,7 @@ docs/RelationshipToOrganizations.md docs/RelationshipToPermission.md docs/RelationshipToPermissionData.md docs/RelationshipToPermissions.md +docs/RelationshipToRole.md docs/RelationshipToRoleData.md docs/RelationshipToRoles.md docs/RelationshipToUser.md @@ -110,6 +132,25 @@ model_dashboard_list_items.go model_dashboard_list_update_items_request.go model_dashboard_list_update_items_response.go model_dashboard_type.go +model_logs_archive.go +model_logs_archive_attributes.go +model_logs_archive_create_request.go +model_logs_archive_create_request_attributes.go +model_logs_archive_create_request_definition.go +model_logs_archive_create_request_destination.go +model_logs_archive_definition.go +model_logs_archive_destination.go +model_logs_archive_destination_azure.go +model_logs_archive_destination_azure_type.go +model_logs_archive_destination_gcs.go +model_logs_archive_destination_gcs_type.go +model_logs_archive_destination_s3.go +model_logs_archive_destination_s3_type.go +model_logs_archive_integration_azure.go +model_logs_archive_integration_gcs.go +model_logs_archive_integration_s3.go +model_logs_archive_state.go +model_logs_archives.go model_organization.go model_organization_attributes.go model_organizations_type.go @@ -125,6 +166,7 @@ model_relationship_to_organizations.go model_relationship_to_permission.go model_relationship_to_permission_data.go model_relationship_to_permissions.go +model_relationship_to_role.go model_relationship_to_role_data.go model_relationship_to_roles.go model_relationship_to_user.go diff --git a/api/v2/datadog/README.md b/api/v2/datadog/README.md index 1202fada4d4..842526cfc00 100644 --- a/api/v2/datadog/README.md +++ b/api/v2/datadog/README.md @@ -77,6 +77,14 @@ Class | Method | HTTP request | Description *DashboardListsApi* | [**DeleteDashboardListItems**](docs/DashboardListsApi.md#deletedashboardlistitems) | **Delete** /api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards | Delete items from a dashboard list *DashboardListsApi* | [**GetDashboardListItems**](docs/DashboardListsApi.md#getdashboardlistitems) | **Get** /api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards | Get a Dashboard List *DashboardListsApi* | [**UpdateDashboardListItems**](docs/DashboardListsApi.md#updatedashboardlistitems) | **Put** /api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards | Update items of a dashboard list +*LogsArchivesApi* | [**AddReadRoleToArchive**](docs/LogsArchivesApi.md#addreadroletoarchive) | **Post** /api/v2/logs/config/archives/{archive_id}/readers | Grant role to an archive +*LogsArchivesApi* | [**CreateLogsArchive**](docs/LogsArchivesApi.md#createlogsarchive) | **Post** /api/v2/logs/config/archives | Create an archive +*LogsArchivesApi* | [**DeleteLogsArchive**](docs/LogsArchivesApi.md#deletelogsarchive) | **Delete** /api/v2/logs/config/archives/{archive_id} | Delete an archive +*LogsArchivesApi* | [**GetLogsArchive**](docs/LogsArchivesApi.md#getlogsarchive) | **Get** /api/v2/logs/config/archives/{archive_id} | Get an archive +*LogsArchivesApi* | [**ListArchiveReadRoles**](docs/LogsArchivesApi.md#listarchivereadroles) | **Get** /api/v2/logs/config/archives/{archive_id}/readers | List read roles for an archive +*LogsArchivesApi* | [**ListLogsArchives**](docs/LogsArchivesApi.md#listlogsarchives) | **Get** /api/v2/logs/config/archives | Get all archives +*LogsArchivesApi* | [**RemoveRoleFromArchive**](docs/LogsArchivesApi.md#removerolefromarchive) | **Delete** /api/v2/logs/config/archives/{archive_id}/readers | Revoke role from an archive +*LogsArchivesApi* | [**UpdateLogsArchive**](docs/LogsArchivesApi.md#updatelogsarchive) | **Put** /api/v2/logs/config/archives/{archive_id} | Update an archive *RolesApi* | [**AddPermissionToRole**](docs/RolesApi.md#addpermissiontorole) | **Post** /api/v2/roles/{role_id}/permissions | Grant permission to a role *RolesApi* | [**AddUserToRole**](docs/RolesApi.md#addusertorole) | **Post** /api/v2/roles/{role_id}/users | Add a user to a role *RolesApi* | [**CreateRole**](docs/RolesApi.md#createrole) | **Post** /api/v2/roles | Create role @@ -120,6 +128,25 @@ Class | Method | HTTP request | Description - [DashboardListUpdateItemsRequest](docs/DashboardListUpdateItemsRequest.md) - [DashboardListUpdateItemsResponse](docs/DashboardListUpdateItemsResponse.md) - [DashboardType](docs/DashboardType.md) + - [LogsArchive](docs/LogsArchive.md) + - [LogsArchiveAttributes](docs/LogsArchiveAttributes.md) + - [LogsArchiveCreateRequest](docs/LogsArchiveCreateRequest.md) + - [LogsArchiveCreateRequestAttributes](docs/LogsArchiveCreateRequestAttributes.md) + - [LogsArchiveCreateRequestDefinition](docs/LogsArchiveCreateRequestDefinition.md) + - [LogsArchiveCreateRequestDestination](docs/LogsArchiveCreateRequestDestination.md) + - [LogsArchiveDefinition](docs/LogsArchiveDefinition.md) + - [LogsArchiveDestination](docs/LogsArchiveDestination.md) + - [LogsArchiveDestinationAzure](docs/LogsArchiveDestinationAzure.md) + - [LogsArchiveDestinationAzureType](docs/LogsArchiveDestinationAzureType.md) + - [LogsArchiveDestinationGCS](docs/LogsArchiveDestinationGCS.md) + - [LogsArchiveDestinationGCSType](docs/LogsArchiveDestinationGCSType.md) + - [LogsArchiveDestinationS3](docs/LogsArchiveDestinationS3.md) + - [LogsArchiveDestinationS3Type](docs/LogsArchiveDestinationS3Type.md) + - [LogsArchiveIntegrationAzure](docs/LogsArchiveIntegrationAzure.md) + - [LogsArchiveIntegrationGCS](docs/LogsArchiveIntegrationGCS.md) + - [LogsArchiveIntegrationS3](docs/LogsArchiveIntegrationS3.md) + - [LogsArchiveState](docs/LogsArchiveState.md) + - [LogsArchives](docs/LogsArchives.md) - [Organization](docs/Organization.md) - [OrganizationAttributes](docs/OrganizationAttributes.md) - [OrganizationsType](docs/OrganizationsType.md) @@ -135,6 +162,7 @@ Class | Method | HTTP request | Description - [RelationshipToPermission](docs/RelationshipToPermission.md) - [RelationshipToPermissionData](docs/RelationshipToPermissionData.md) - [RelationshipToPermissions](docs/RelationshipToPermissions.md) + - [RelationshipToRole](docs/RelationshipToRole.md) - [RelationshipToRoleData](docs/RelationshipToRoleData.md) - [RelationshipToRoles](docs/RelationshipToRoles.md) - [RelationshipToUser](docs/RelationshipToUser.md) diff --git a/api/v2/datadog/api/openapi.yaml b/api/v2/datadog/api/openapi.yaml index a7af8a2cae6..d755289477b 100644 --- a/api/v2/datadog/api/openapi.yaml +++ b/api/v2/datadog/api/openapi.yaml @@ -36,6 +36,15 @@ tags: organize, find, and share all of your dashboards with your team and organization. name: Dashboard Lists +- description: |- + Archives forward all the logs ingested to a cloud storage system. + + See the [Archives Page](https://app.datadoghq.com/logs/pipelines/archives) + for a list of the archives currently configured in our UI. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/logs/archives/ + name: Logs Archives - description: |- The Roles API is used to create and manage Datadog roles, what [global permissions](https://docs.datadoghq.com/account_management/rbac/) @@ -236,6 +245,323 @@ paths: tags: - Dashboard Lists x-codegen-request-body-name: body + /api/v2/logs/config/archives: + get: + description: Get the list of configured logs archives with their definitions. + operationId: ListLogsArchives + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/LogsArchives' + description: OK + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + summary: Get all archives + tags: + - Logs Archives + post: + description: Create an archive in your organization. + operationId: CreateLogsArchive + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/LogsArchiveCreateRequest' + description: The definition of the new archive. + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/LogsArchive' + description: OK + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + summary: Create an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + /api/v2/logs/config/archives/{archive_id}: + delete: + description: Delete a given archive from your organization. + operationId: DeleteLogsArchive + parameters: + - description: The ID of the archive. + explode: false + in: path + name: archive_id + required: true + schema: + type: string + style: simple + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + "404": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + summary: Delete an archive + tags: + - Logs Archives + get: + description: Get a specific archive from your organization. + operationId: GetLogsArchive + parameters: + - description: The ID of the archive. + explode: false + in: path + name: archive_id + required: true + schema: + type: string + style: simple + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/LogsArchive' + description: OK + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + "404": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + summary: Get an archive + tags: + - Logs Archives + put: + description: |- + Update a given archive configuration. + + **Note**: Using this method updates your archive configuration by **replacing** + your current configuration with the new one sent to your Datadog organization. + operationId: UpdateLogsArchive + parameters: + - description: The ID of the archive. + explode: false + in: path + name: archive_id + required: true + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/LogsArchiveCreateRequest' + description: New definition of the archive. + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/LogsArchive' + description: OK + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + "404": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + summary: Update an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + /api/v2/logs/config/archives/{archive_id}/readers: + delete: + description: Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + operationId: RemoveRoleFromArchive + parameters: + - description: The ID of the archive. + explode: false + in: path + name: archive_id + required: true + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RelationshipToRole' + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + "404": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + summary: Revoke role from an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Returns all read roles a given archive is restricted to. + operationId: ListArchiveReadRoles + parameters: + - description: The ID of the archive. + explode: false + in: path + name: archive_id + required: true + schema: + type: string + style: simple + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/RolesResponse' + description: OK + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + "404": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + summary: List read roles for an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + operationId: AddReadRoleToArchive + parameters: + - description: The ID of the archive. + explode: false + in: path + name: archive_id + required: true + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RelationshipToRole' + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + "403": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + "404": + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + summary: Grant role to an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/permissions: get: description: Returns a list of all permissions, including name, description, @@ -1338,6 +1664,15 @@ components: headers: {} links: {} parameters: + ArchiveID: + description: The ID of the archive. + explode: false + in: path + name: archive_id + required: true + schema: + type: string + style: simple PageNumber: description: Specific page number to return. explode: true @@ -1685,6 +2020,318 @@ components: - INTEGRATION_SCREENBOARD - INTEGRATION_TIMEBOARD - HOST_TIMEBOARD + LogsArchive: + description: The logs archive. + example: + data: + attributes: + query: source:nginx + name: Nginx Archive + state: WORKING + id: a2zcMylnM4OCHpYusxIi3g + type: archives + properties: + data: + $ref: '#/components/schemas/LogsArchiveDefinition' + type: object + LogsArchiveAttributes: + description: The attributes associated with the archive. + example: + query: source:nginx + name: Nginx Archive + state: WORKING + properties: + destination: + $ref: '#/components/schemas/LogsArchiveDestination' + name: + description: The archive name. + example: Nginx Archive + type: string + query: + description: The archive query/filter. Logs matching this query are included + in the archive. + example: source:nginx + type: string + state: + $ref: '#/components/schemas/LogsArchiveState' + required: + - destination + - name + - query + type: object + LogsArchiveCreateRequest: + description: The logs archive. + example: + data: + attributes: + query: source:nginx + name: Nginx Archive + type: archives + properties: + data: + $ref: '#/components/schemas/LogsArchiveCreateRequestDefinition' + type: object + LogsArchiveCreateRequestAttributes: + description: The attributes associated with the archive. + example: + query: source:nginx + name: Nginx Archive + properties: + destination: + $ref: '#/components/schemas/LogsArchiveCreateRequestDestination' + name: + description: The archive name. + example: Nginx Archive + type: string + query: + description: The archive query/filter. Logs matching this query are included + in the archive. + example: source:nginx + type: string + required: + - destination + - name + - query + type: object + LogsArchiveCreateRequestDefinition: + description: The definition of an archive. + example: + attributes: + query: source:nginx + name: Nginx Archive + type: archives + properties: + attributes: + $ref: '#/components/schemas/LogsArchiveCreateRequestAttributes' + type: + default: archives + description: The type of the resource. The value should always be archives. + example: archives + type: string + required: + - type + type: object + LogsArchiveCreateRequestDestination: + description: An archive's destination. + oneOf: + - $ref: '#/components/schemas/LogsArchiveDestinationAzure' + - $ref: '#/components/schemas/LogsArchiveDestinationGCS' + - $ref: '#/components/schemas/LogsArchiveDestinationS3' + required: + - integration + - type + type: object + LogsArchiveDefinition: + description: The definition of an archive. + example: + attributes: + query: source:nginx + name: Nginx Archive + state: WORKING + id: a2zcMylnM4OCHpYusxIi3g + type: archives + properties: + attributes: + $ref: '#/components/schemas/LogsArchiveAttributes' + id: + description: The archive ID. + example: a2zcMylnM4OCHpYusxIi3g + readOnly: true + type: string + type: + default: archives + description: The type of the resource. The value should always be archives. + example: archives + readOnly: true + type: string + required: + - type + type: object + LogsArchiveDestination: + description: An archive's destination. + nullable: true + oneOf: + - $ref: '#/components/schemas/LogsArchiveDestinationAzure' + - $ref: '#/components/schemas/LogsArchiveDestinationGCS' + - $ref: '#/components/schemas/LogsArchiveDestinationS3' + required: + - integration + - type + type: object + LogsArchiveDestinationAzure: + description: The Azure archive destination. + properties: + container: + description: The container where the archive will be stored. + example: container-name + type: string + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationAzure' + path: + description: The archive path. + type: string + region: + description: The region where the archive will be stored. + type: string + storage_account: + description: The associated storage account. + example: account-name + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationAzureType' + required: + - container + - integration + - storage_account + - type + type: object + LogsArchiveDestinationAzureType: + default: azure + description: Type of the Azure archive destination. + enum: + - azure + example: azure + type: string + x-enum-varnames: + - AZURE + LogsArchiveDestinationGCS: + description: The GCS archive destination. + properties: + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationGCS' + path: + description: The archive path. + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationGCSType' + required: + - bucket + - integration + - type + type: object + LogsArchiveDestinationGCSType: + default: gcs + description: Type of the GCS archive destination. + enum: + - gcs + example: gcs + type: string + x-enum-varnames: + - GCS + LogsArchiveDestinationS3: + description: The S3 archive destination. + properties: + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationS3' + path: + description: The archive path. + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationS3Type' + required: + - bucket + - integration + - type + type: object + LogsArchiveDestinationS3Type: + default: s3 + description: Type of the S3 archive destination. + enum: + - s3 + example: s3 + type: string + x-enum-varnames: + - S3 + LogsArchiveIntegrationAzure: + description: The Azure archive's integration destination. + properties: + client_id: + description: A client ID. + example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa + type: string + tenant_id: + description: A tenant ID. + example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa + type: string + required: + - client_id + - tenant_id + type: object + LogsArchiveIntegrationGCS: + description: The GCS archive's integration destination. + properties: + client_email: + description: A client email. + example: youremail@example.com + type: string + project_id: + description: A project ID. + example: project-id + type: string + required: + - client_email + - project_id + type: object + LogsArchiveIntegrationS3: + description: The S3 Archive's integration destination. + properties: + account_id: + description: The account ID for the integration. + example: "123456789012" + type: string + role_name: + description: The path of the integration. + example: role-name + type: string + required: + - account_id + - role_name + type: object + LogsArchiveState: + description: The state of the archive. + enum: + - UNKNOWN + - WORKING + - FAILING + - WORKING_AUTH_LEGACY + example: WORKING + type: string + x-enum-varnames: + - UNKNOWN + - WORKING + - FAILING + - WORKING_AUTH_LEGACY + LogsArchives: + description: The available archives. + example: + data: + - attributes: + query: source:nginx + name: Nginx Archive + state: WORKING + id: a2zcMylnM4OCHpYusxIi3g + type: archives + - attributes: + query: source:nginx + name: Nginx Archive + state: WORKING + id: a2zcMylnM4OCHpYusxIi3g + type: archives + properties: + data: + description: A list of archives. + items: + $ref: '#/components/schemas/LogsArchiveDefinition' + type: array + type: object Organization: description: Organization object. properties: @@ -1934,6 +2581,16 @@ components: $ref: '#/components/schemas/RelationshipToPermissionData' type: array type: object + RelationshipToRole: + description: Relationship to role. + example: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles + properties: + data: + $ref: '#/components/schemas/RelationshipToRoleData' + type: object RelationshipToRoleData: description: Relationship to role object. example: diff --git a/api/v2/datadog/api_logs_archives.go b/api/v2/datadog/api_logs_archives.go new file mode 100644 index 00000000000..7528a8c9f3f --- /dev/null +++ b/api/v2/datadog/api_logs_archives.go @@ -0,0 +1,1308 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + _context "context" + _fmt "fmt" + _ioutil "io/ioutil" + _log "log" + _nethttp "net/http" + _neturl "net/url" + "strings" +) + +// Linger please +var ( + _ _context.Context +) + +// LogsArchivesApiService LogsArchivesApi service +type LogsArchivesApiService service + +type apiAddReadRoleToArchiveRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService + archiveId string + body *RelationshipToRole +} + +func (r apiAddReadRoleToArchiveRequest) Body(body RelationshipToRole) apiAddReadRoleToArchiveRequest { + r.body = &body + return r +} + +/* +AddReadRoleToArchive Grant role to an archive +Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + * @param archiveId The ID of the archive. +@return apiAddReadRoleToArchiveRequest +*/ +func (a *LogsArchivesApiService) AddReadRoleToArchive(ctx _context.Context, archiveId string) apiAddReadRoleToArchiveRequest { + return apiAddReadRoleToArchiveRequest{ + apiService: a, + ctx: ctx, + archiveId: archiveId, + } +} + +/* +Execute executes the request + +*/ +func (r apiAddReadRoleToArchiveRequest) Execute() (*_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodPost + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + ) + operationId := "AddReadRoleToArchive" + if r.apiService.client.cfg.IsUnstableOperationEnabled(operationId) { + _log.Printf("WARNING: Using unstable operation '%s'", operationId) + } else { + return nil, GenericOpenAPIError{error: _fmt.Sprintf("Unstable operation '%s' is disabled", operationId)} + } + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.AddReadRoleToArchive") + if err != nil { + return nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives/{archive_id}/readers" + localVarPath = strings.Replace(localVarPath, "{"+"archive_id"+"}", _neturl.QueryEscape(parameterToString(r.archiveId, "")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{"application/json"} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "AddReadRoleToArchive" + + // body params + localVarPostBody = r.body + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + return localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + return localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarHTTPResponse, newErr + } + + return localVarHTTPResponse, nil +} + +type apiCreateLogsArchiveRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService + body *LogsArchiveCreateRequest +} + +func (r apiCreateLogsArchiveRequest) Body(body LogsArchiveCreateRequest) apiCreateLogsArchiveRequest { + r.body = &body + return r +} + +/* +CreateLogsArchive Create an archive +Create an archive in your organization. + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). +@return apiCreateLogsArchiveRequest +*/ +func (a *LogsArchivesApiService) CreateLogsArchive(ctx _context.Context) apiCreateLogsArchiveRequest { + return apiCreateLogsArchiveRequest{ + apiService: a, + ctx: ctx, + } +} + +/* +Execute executes the request + @return LogsArchive +*/ +func (r apiCreateLogsArchiveRequest) Execute() (LogsArchive, *_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodPost + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + localVarReturnValue LogsArchive + ) + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.CreateLogsArchive") + if err != nil { + return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives" + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + if r.body == nil { + return localVarReturnValue, nil, reportError("body is required and must be specified") + } + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{"application/json"} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "CreateLogsArchive" + + // body params + localVarPostBody = r.body + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return localVarReturnValue, nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + err = r.apiService.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: err.Error(), + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + return localVarReturnValue, localVarHTTPResponse, nil +} + +type apiDeleteLogsArchiveRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService + archiveId string +} + +/* +DeleteLogsArchive Delete an archive +Delete a given archive from your organization. + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + * @param archiveId The ID of the archive. +@return apiDeleteLogsArchiveRequest +*/ +func (a *LogsArchivesApiService) DeleteLogsArchive(ctx _context.Context, archiveId string) apiDeleteLogsArchiveRequest { + return apiDeleteLogsArchiveRequest{ + apiService: a, + ctx: ctx, + archiveId: archiveId, + } +} + +/* +Execute executes the request + +*/ +func (r apiDeleteLogsArchiveRequest) Execute() (*_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodDelete + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + ) + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.DeleteLogsArchive") + if err != nil { + return nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives/{archive_id}" + localVarPath = strings.Replace(localVarPath, "{"+"archive_id"+"}", _neturl.QueryEscape(parameterToString(r.archiveId, "")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "DeleteLogsArchive" + + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + return localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + return localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarHTTPResponse, newErr + } + + return localVarHTTPResponse, nil +} + +type apiGetLogsArchiveRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService + archiveId string +} + +/* +GetLogsArchive Get an archive +Get a specific archive from your organization. + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + * @param archiveId The ID of the archive. +@return apiGetLogsArchiveRequest +*/ +func (a *LogsArchivesApiService) GetLogsArchive(ctx _context.Context, archiveId string) apiGetLogsArchiveRequest { + return apiGetLogsArchiveRequest{ + apiService: a, + ctx: ctx, + archiveId: archiveId, + } +} + +/* +Execute executes the request + @return LogsArchive +*/ +func (r apiGetLogsArchiveRequest) Execute() (LogsArchive, *_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodGet + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + localVarReturnValue LogsArchive + ) + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.GetLogsArchive") + if err != nil { + return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives/{archive_id}" + localVarPath = strings.Replace(localVarPath, "{"+"archive_id"+"}", _neturl.QueryEscape(parameterToString(r.archiveId, "")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "GetLogsArchive" + + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return localVarReturnValue, nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + err = r.apiService.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: err.Error(), + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + return localVarReturnValue, localVarHTTPResponse, nil +} + +type apiListArchiveReadRolesRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService + archiveId string +} + +/* +ListArchiveReadRoles List read roles for an archive +Returns all read roles a given archive is restricted to. + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + * @param archiveId The ID of the archive. +@return apiListArchiveReadRolesRequest +*/ +func (a *LogsArchivesApiService) ListArchiveReadRoles(ctx _context.Context, archiveId string) apiListArchiveReadRolesRequest { + return apiListArchiveReadRolesRequest{ + apiService: a, + ctx: ctx, + archiveId: archiveId, + } +} + +/* +Execute executes the request + @return RolesResponse +*/ +func (r apiListArchiveReadRolesRequest) Execute() (RolesResponse, *_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodGet + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + localVarReturnValue RolesResponse + ) + operationId := "ListArchiveReadRoles" + if r.apiService.client.cfg.IsUnstableOperationEnabled(operationId) { + _log.Printf("WARNING: Using unstable operation '%s'", operationId) + } else { + return localVarReturnValue, nil, GenericOpenAPIError{error: _fmt.Sprintf("Unstable operation '%s' is disabled", operationId)} + } + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.ListArchiveReadRoles") + if err != nil { + return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives/{archive_id}/readers" + localVarPath = strings.Replace(localVarPath, "{"+"archive_id"+"}", _neturl.QueryEscape(parameterToString(r.archiveId, "")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "ListArchiveReadRoles" + + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return localVarReturnValue, nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + err = r.apiService.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: err.Error(), + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + return localVarReturnValue, localVarHTTPResponse, nil +} + +type apiListLogsArchivesRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService +} + +/* +ListLogsArchives Get all archives +Get the list of configured logs archives with their definitions. + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). +@return apiListLogsArchivesRequest +*/ +func (a *LogsArchivesApiService) ListLogsArchives(ctx _context.Context) apiListLogsArchivesRequest { + return apiListLogsArchivesRequest{ + apiService: a, + ctx: ctx, + } +} + +/* +Execute executes the request + @return LogsArchives +*/ +func (r apiListLogsArchivesRequest) Execute() (LogsArchives, *_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodGet + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + localVarReturnValue LogsArchives + ) + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.ListLogsArchives") + if err != nil { + return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives" + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "ListLogsArchives" + + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return localVarReturnValue, nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + err = r.apiService.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: err.Error(), + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + return localVarReturnValue, localVarHTTPResponse, nil +} + +type apiRemoveRoleFromArchiveRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService + archiveId string + body *RelationshipToRole +} + +func (r apiRemoveRoleFromArchiveRequest) Body(body RelationshipToRole) apiRemoveRoleFromArchiveRequest { + r.body = &body + return r +} + +/* +RemoveRoleFromArchive Revoke role from an archive +Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + * @param archiveId The ID of the archive. +@return apiRemoveRoleFromArchiveRequest +*/ +func (a *LogsArchivesApiService) RemoveRoleFromArchive(ctx _context.Context, archiveId string) apiRemoveRoleFromArchiveRequest { + return apiRemoveRoleFromArchiveRequest{ + apiService: a, + ctx: ctx, + archiveId: archiveId, + } +} + +/* +Execute executes the request + +*/ +func (r apiRemoveRoleFromArchiveRequest) Execute() (*_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodDelete + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + ) + operationId := "RemoveRoleFromArchive" + if r.apiService.client.cfg.IsUnstableOperationEnabled(operationId) { + _log.Printf("WARNING: Using unstable operation '%s'", operationId) + } else { + return nil, GenericOpenAPIError{error: _fmt.Sprintf("Unstable operation '%s' is disabled", operationId)} + } + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.RemoveRoleFromArchive") + if err != nil { + return nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives/{archive_id}/readers" + localVarPath = strings.Replace(localVarPath, "{"+"archive_id"+"}", _neturl.QueryEscape(parameterToString(r.archiveId, "")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{"application/json"} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "RemoveRoleFromArchive" + + // body params + localVarPostBody = r.body + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + return localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + return localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarHTTPResponse, newErr + } + + return localVarHTTPResponse, nil +} + +type apiUpdateLogsArchiveRequest struct { + ctx _context.Context + apiService *LogsArchivesApiService + archiveId string + body *LogsArchiveCreateRequest +} + +func (r apiUpdateLogsArchiveRequest) Body(body LogsArchiveCreateRequest) apiUpdateLogsArchiveRequest { + r.body = &body + return r +} + +/* +UpdateLogsArchive Update an archive +Update a given archive configuration. + +**Note**: Using this method updates your archive configuration by **replacing** +your current configuration with the new one sent to your Datadog organization. + * @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + * @param archiveId The ID of the archive. +@return apiUpdateLogsArchiveRequest +*/ +func (a *LogsArchivesApiService) UpdateLogsArchive(ctx _context.Context, archiveId string) apiUpdateLogsArchiveRequest { + return apiUpdateLogsArchiveRequest{ + apiService: a, + ctx: ctx, + archiveId: archiveId, + } +} + +/* +Execute executes the request + @return LogsArchive +*/ +func (r apiUpdateLogsArchiveRequest) Execute() (LogsArchive, *_nethttp.Response, error) { + var ( + localVarHTTPMethod = _nethttp.MethodPut + localVarPostBody interface{} + localVarFormFileName string + localVarFileName string + localVarFileBytes []byte + localVarReturnValue LogsArchive + ) + + localBasePath, err := r.apiService.client.cfg.ServerURLWithContext(r.ctx, "LogsArchivesApiService.UpdateLogsArchive") + if err != nil { + return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()} + } + + localVarPath := localBasePath + "/api/v2/logs/config/archives/{archive_id}" + localVarPath = strings.Replace(localVarPath, "{"+"archive_id"+"}", _neturl.QueryEscape(parameterToString(r.archiveId, "")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := _neturl.Values{} + localVarFormParams := _neturl.Values{} + + if r.body == nil { + return localVarReturnValue, nil, reportError("body is required and must be specified") + } + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{"application/json"} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + + // Set Operation-ID header for telemetry + localVarHeaderParams["DD-OPERATION-ID"] = "UpdateLogsArchive" + + // body params + localVarPostBody = r.body + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["apiKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-API-KEY"] = key + } + } + } + if r.ctx != nil { + // API Key Authentication + if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["appKeyAuth"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["DD-APPLICATION-KEY"] = key + } + } + } + req, err := r.apiService.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) + if err != nil { + return localVarReturnValue, nil, err + } + + localVarHTTPResponse, err := r.apiService.client.callAPI(req) + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + localVarBody, err := _ioutil.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + if err != nil { + return localVarReturnValue, localVarHTTPResponse, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 400 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 403 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + return localVarReturnValue, localVarHTTPResponse, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v APIErrorResponse + err = r.apiService.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.error = err.Error() + return localVarReturnValue, localVarHTTPResponse, newErr + } + newErr.model = v + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + err = r.apiService.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := GenericOpenAPIError{ + body: localVarBody, + error: err.Error(), + } + return localVarReturnValue, localVarHTTPResponse, newErr + } + + return localVarReturnValue, localVarHTTPResponse, nil +} diff --git a/api/v2/datadog/client.go b/api/v2/datadog/client.go index 9ff702611a8..1fa54f216c6 100644 --- a/api/v2/datadog/client.go +++ b/api/v2/datadog/client.go @@ -48,6 +48,8 @@ type APIClient struct { DashboardListsApi *DashboardListsApiService + LogsArchivesApi *LogsArchivesApiService + RolesApi *RolesApiService SecurityMonitoringApi *SecurityMonitoringApiService @@ -72,6 +74,7 @@ func NewAPIClient(cfg *Configuration) *APIClient { // API Services c.DashboardListsApi = (*DashboardListsApiService)(&c.common) + c.LogsArchivesApi = (*LogsArchivesApiService)(&c.common) c.RolesApi = (*RolesApiService)(&c.common) c.SecurityMonitoringApi = (*SecurityMonitoringApiService)(&c.common) c.UsersApi = (*UsersApiService)(&c.common) diff --git a/api/v2/datadog/configuration.go b/api/v2/datadog/configuration.go index 362f6d4e1b8..756eea929aa 100644 --- a/api/v2/datadog/configuration.go +++ b/api/v2/datadog/configuration.go @@ -140,8 +140,12 @@ func NewConfiguration() *Configuration { }, }, }, - OperationServers: map[string]ServerConfigurations{}, - unstableOperations: map[string]bool{}, + OperationServers: map[string]ServerConfigurations{}, + unstableOperations: map[string]bool{ + "AddReadRoleToArchive": false, + "ListArchiveReadRoles": false, + "RemoveRoleFromArchive": false, + }, } return cfg } diff --git a/api/v2/datadog/docs/LogsArchive.md b/api/v2/datadog/docs/LogsArchive.md new file mode 100644 index 00000000000..43cd2f314c8 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchive.md @@ -0,0 +1,56 @@ +# LogsArchive + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Data** | Pointer to [**LogsArchiveDefinition**](LogsArchiveDefinition.md) | | [optional] + +## Methods + +### NewLogsArchive + +`func NewLogsArchive() *LogsArchive` + +NewLogsArchive instantiates a new LogsArchive object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveWithDefaults + +`func NewLogsArchiveWithDefaults() *LogsArchive` + +NewLogsArchiveWithDefaults instantiates a new LogsArchive object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetData + +`func (o *LogsArchive) GetData() LogsArchiveDefinition` + +GetData returns the Data field if non-nil, zero value otherwise. + +### GetDataOk + +`func (o *LogsArchive) GetDataOk() (*LogsArchiveDefinition, bool)` + +GetDataOk returns a tuple with the Data field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetData + +`func (o *LogsArchive) SetData(v LogsArchiveDefinition)` + +SetData sets Data field to given value. + +### HasData + +`func (o *LogsArchive) HasData() bool` + +HasData returns a boolean if a field has been set. + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveAttributes.md b/api/v2/datadog/docs/LogsArchiveAttributes.md new file mode 100644 index 00000000000..6360f17ace7 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveAttributes.md @@ -0,0 +1,129 @@ +# LogsArchiveAttributes + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Destination** | Pointer to [**NullableLogsArchiveDestination**](LogsArchiveDestination.md) | | +**Name** | Pointer to **string** | The archive name. | +**Query** | Pointer to **string** | The archive query/filter. Logs matching this query are included in the archive. | +**State** | Pointer to [**LogsArchiveState**](LogsArchiveState.md) | | [optional] + +## Methods + +### NewLogsArchiveAttributes + +`func NewLogsArchiveAttributes(destination NullableLogsArchiveDestination, name string, query string, ) *LogsArchiveAttributes` + +NewLogsArchiveAttributes instantiates a new LogsArchiveAttributes object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveAttributesWithDefaults + +`func NewLogsArchiveAttributesWithDefaults() *LogsArchiveAttributes` + +NewLogsArchiveAttributesWithDefaults instantiates a new LogsArchiveAttributes object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetDestination + +`func (o *LogsArchiveAttributes) GetDestination() LogsArchiveDestination` + +GetDestination returns the Destination field if non-nil, zero value otherwise. + +### GetDestinationOk + +`func (o *LogsArchiveAttributes) GetDestinationOk() (*LogsArchiveDestination, bool)` + +GetDestinationOk returns a tuple with the Destination field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetDestination + +`func (o *LogsArchiveAttributes) SetDestination(v LogsArchiveDestination)` + +SetDestination sets Destination field to given value. + + +### SetDestinationNil + +`func (o *LogsArchiveAttributes) SetDestinationNil(b bool)` + + SetDestinationNil sets the value for Destination to be an explicit nil + +### UnsetDestination +`func (o *LogsArchiveAttributes) UnsetDestination()` + +UnsetDestination ensures that no value is present for Destination, not even an explicit nil +### GetName + +`func (o *LogsArchiveAttributes) GetName() string` + +GetName returns the Name field if non-nil, zero value otherwise. + +### GetNameOk + +`func (o *LogsArchiveAttributes) GetNameOk() (*string, bool)` + +GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetName + +`func (o *LogsArchiveAttributes) SetName(v string)` + +SetName sets Name field to given value. + + +### GetQuery + +`func (o *LogsArchiveAttributes) GetQuery() string` + +GetQuery returns the Query field if non-nil, zero value otherwise. + +### GetQueryOk + +`func (o *LogsArchiveAttributes) GetQueryOk() (*string, bool)` + +GetQueryOk returns a tuple with the Query field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetQuery + +`func (o *LogsArchiveAttributes) SetQuery(v string)` + +SetQuery sets Query field to given value. + + +### GetState + +`func (o *LogsArchiveAttributes) GetState() LogsArchiveState` + +GetState returns the State field if non-nil, zero value otherwise. + +### GetStateOk + +`func (o *LogsArchiveAttributes) GetStateOk() (*LogsArchiveState, bool)` + +GetStateOk returns a tuple with the State field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetState + +`func (o *LogsArchiveAttributes) SetState(v LogsArchiveState)` + +SetState sets State field to given value. + +### HasState + +`func (o *LogsArchiveAttributes) HasState() bool` + +HasState returns a boolean if a field has been set. + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveCreateRequest.md b/api/v2/datadog/docs/LogsArchiveCreateRequest.md new file mode 100644 index 00000000000..19bc65c2465 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveCreateRequest.md @@ -0,0 +1,56 @@ +# LogsArchiveCreateRequest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Data** | Pointer to [**LogsArchiveCreateRequestDefinition**](LogsArchiveCreateRequestDefinition.md) | | [optional] + +## Methods + +### NewLogsArchiveCreateRequest + +`func NewLogsArchiveCreateRequest() *LogsArchiveCreateRequest` + +NewLogsArchiveCreateRequest instantiates a new LogsArchiveCreateRequest object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveCreateRequestWithDefaults + +`func NewLogsArchiveCreateRequestWithDefaults() *LogsArchiveCreateRequest` + +NewLogsArchiveCreateRequestWithDefaults instantiates a new LogsArchiveCreateRequest object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetData + +`func (o *LogsArchiveCreateRequest) GetData() LogsArchiveCreateRequestDefinition` + +GetData returns the Data field if non-nil, zero value otherwise. + +### GetDataOk + +`func (o *LogsArchiveCreateRequest) GetDataOk() (*LogsArchiveCreateRequestDefinition, bool)` + +GetDataOk returns a tuple with the Data field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetData + +`func (o *LogsArchiveCreateRequest) SetData(v LogsArchiveCreateRequestDefinition)` + +SetData sets Data field to given value. + +### HasData + +`func (o *LogsArchiveCreateRequest) HasData() bool` + +HasData returns a boolean if a field has been set. + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveCreateRequestAttributes.md b/api/v2/datadog/docs/LogsArchiveCreateRequestAttributes.md new file mode 100644 index 00000000000..e3464a38091 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveCreateRequestAttributes.md @@ -0,0 +1,93 @@ +# LogsArchiveCreateRequestAttributes + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Destination** | Pointer to [**LogsArchiveCreateRequestDestination**](LogsArchiveCreateRequestDestination.md) | | +**Name** | Pointer to **string** | The archive name. | +**Query** | Pointer to **string** | The archive query/filter. Logs matching this query are included in the archive. | + +## Methods + +### NewLogsArchiveCreateRequestAttributes + +`func NewLogsArchiveCreateRequestAttributes(destination LogsArchiveCreateRequestDestination, name string, query string, ) *LogsArchiveCreateRequestAttributes` + +NewLogsArchiveCreateRequestAttributes instantiates a new LogsArchiveCreateRequestAttributes object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveCreateRequestAttributesWithDefaults + +`func NewLogsArchiveCreateRequestAttributesWithDefaults() *LogsArchiveCreateRequestAttributes` + +NewLogsArchiveCreateRequestAttributesWithDefaults instantiates a new LogsArchiveCreateRequestAttributes object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetDestination + +`func (o *LogsArchiveCreateRequestAttributes) GetDestination() LogsArchiveCreateRequestDestination` + +GetDestination returns the Destination field if non-nil, zero value otherwise. + +### GetDestinationOk + +`func (o *LogsArchiveCreateRequestAttributes) GetDestinationOk() (*LogsArchiveCreateRequestDestination, bool)` + +GetDestinationOk returns a tuple with the Destination field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetDestination + +`func (o *LogsArchiveCreateRequestAttributes) SetDestination(v LogsArchiveCreateRequestDestination)` + +SetDestination sets Destination field to given value. + + +### GetName + +`func (o *LogsArchiveCreateRequestAttributes) GetName() string` + +GetName returns the Name field if non-nil, zero value otherwise. + +### GetNameOk + +`func (o *LogsArchiveCreateRequestAttributes) GetNameOk() (*string, bool)` + +GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetName + +`func (o *LogsArchiveCreateRequestAttributes) SetName(v string)` + +SetName sets Name field to given value. + + +### GetQuery + +`func (o *LogsArchiveCreateRequestAttributes) GetQuery() string` + +GetQuery returns the Query field if non-nil, zero value otherwise. + +### GetQueryOk + +`func (o *LogsArchiveCreateRequestAttributes) GetQueryOk() (*string, bool)` + +GetQueryOk returns a tuple with the Query field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetQuery + +`func (o *LogsArchiveCreateRequestAttributes) SetQuery(v string)` + +SetQuery sets Query field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveCreateRequestDefinition.md b/api/v2/datadog/docs/LogsArchiveCreateRequestDefinition.md new file mode 100644 index 00000000000..7711a4ec426 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveCreateRequestDefinition.md @@ -0,0 +1,77 @@ +# LogsArchiveCreateRequestDefinition + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Attributes** | Pointer to [**LogsArchiveCreateRequestAttributes**](LogsArchiveCreateRequestAttributes.md) | | [optional] +**Type** | Pointer to **string** | The type of the resource. The value should always be archives. | [default to "archives"] + +## Methods + +### NewLogsArchiveCreateRequestDefinition + +`func NewLogsArchiveCreateRequestDefinition(type_ string, ) *LogsArchiveCreateRequestDefinition` + +NewLogsArchiveCreateRequestDefinition instantiates a new LogsArchiveCreateRequestDefinition object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveCreateRequestDefinitionWithDefaults + +`func NewLogsArchiveCreateRequestDefinitionWithDefaults() *LogsArchiveCreateRequestDefinition` + +NewLogsArchiveCreateRequestDefinitionWithDefaults instantiates a new LogsArchiveCreateRequestDefinition object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetAttributes + +`func (o *LogsArchiveCreateRequestDefinition) GetAttributes() LogsArchiveCreateRequestAttributes` + +GetAttributes returns the Attributes field if non-nil, zero value otherwise. + +### GetAttributesOk + +`func (o *LogsArchiveCreateRequestDefinition) GetAttributesOk() (*LogsArchiveCreateRequestAttributes, bool)` + +GetAttributesOk returns a tuple with the Attributes field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetAttributes + +`func (o *LogsArchiveCreateRequestDefinition) SetAttributes(v LogsArchiveCreateRequestAttributes)` + +SetAttributes sets Attributes field to given value. + +### HasAttributes + +`func (o *LogsArchiveCreateRequestDefinition) HasAttributes() bool` + +HasAttributes returns a boolean if a field has been set. + +### GetType + +`func (o *LogsArchiveCreateRequestDefinition) GetType() string` + +GetType returns the Type field if non-nil, zero value otherwise. + +### GetTypeOk + +`func (o *LogsArchiveCreateRequestDefinition) GetTypeOk() (*string, bool)` + +GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetType + +`func (o *LogsArchiveCreateRequestDefinition) SetType(v string)` + +SetType sets Type field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveCreateRequestDestination.md b/api/v2/datadog/docs/LogsArchiveCreateRequestDestination.md new file mode 100644 index 00000000000..3c5f9bff2de --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveCreateRequestDestination.md @@ -0,0 +1,187 @@ +# LogsArchiveCreateRequestDestination + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Container** | Pointer to **string** | The container where the archive will be stored. | +**Integration** | Pointer to [**LogsArchiveIntegrationS3**](LogsArchiveIntegrationS3.md) | | +**Path** | Pointer to **string** | The archive path. | [optional] +**Region** | Pointer to **string** | The region where the archive will be stored. | [optional] +**StorageAccount** | Pointer to **string** | The associated storage account. | +**Type** | Pointer to [**LogsArchiveDestinationS3Type**](LogsArchiveDestinationS3Type.md) | | [default to "s3"] +**Bucket** | Pointer to **string** | The bucket where the archive will be stored. | + +## Methods + +### NewLogsArchiveCreateRequestDestination + +`func NewLogsArchiveCreateRequestDestination(container string, integration LogsArchiveIntegrationS3, storageAccount string, type_ LogsArchiveDestinationS3Type, bucket string, ) *LogsArchiveCreateRequestDestination` + +NewLogsArchiveCreateRequestDestination instantiates a new LogsArchiveCreateRequestDestination object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveCreateRequestDestinationWithDefaults + +`func NewLogsArchiveCreateRequestDestinationWithDefaults() *LogsArchiveCreateRequestDestination` + +NewLogsArchiveCreateRequestDestinationWithDefaults instantiates a new LogsArchiveCreateRequestDestination object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetContainer + +`func (o *LogsArchiveCreateRequestDestination) GetContainer() string` + +GetContainer returns the Container field if non-nil, zero value otherwise. + +### GetContainerOk + +`func (o *LogsArchiveCreateRequestDestination) GetContainerOk() (*string, bool)` + +GetContainerOk returns a tuple with the Container field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetContainer + +`func (o *LogsArchiveCreateRequestDestination) SetContainer(v string)` + +SetContainer sets Container field to given value. + + +### GetIntegration + +`func (o *LogsArchiveCreateRequestDestination) GetIntegration() LogsArchiveIntegrationS3` + +GetIntegration returns the Integration field if non-nil, zero value otherwise. + +### GetIntegrationOk + +`func (o *LogsArchiveCreateRequestDestination) GetIntegrationOk() (*LogsArchiveIntegrationS3, bool)` + +GetIntegrationOk returns a tuple with the Integration field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetIntegration + +`func (o *LogsArchiveCreateRequestDestination) SetIntegration(v LogsArchiveIntegrationS3)` + +SetIntegration sets Integration field to given value. + + +### GetPath + +`func (o *LogsArchiveCreateRequestDestination) GetPath() string` + +GetPath returns the Path field if non-nil, zero value otherwise. + +### GetPathOk + +`func (o *LogsArchiveCreateRequestDestination) GetPathOk() (*string, bool)` + +GetPathOk returns a tuple with the Path field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetPath + +`func (o *LogsArchiveCreateRequestDestination) SetPath(v string)` + +SetPath sets Path field to given value. + +### HasPath + +`func (o *LogsArchiveCreateRequestDestination) HasPath() bool` + +HasPath returns a boolean if a field has been set. + +### GetRegion + +`func (o *LogsArchiveCreateRequestDestination) GetRegion() string` + +GetRegion returns the Region field if non-nil, zero value otherwise. + +### GetRegionOk + +`func (o *LogsArchiveCreateRequestDestination) GetRegionOk() (*string, bool)` + +GetRegionOk returns a tuple with the Region field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetRegion + +`func (o *LogsArchiveCreateRequestDestination) SetRegion(v string)` + +SetRegion sets Region field to given value. + +### HasRegion + +`func (o *LogsArchiveCreateRequestDestination) HasRegion() bool` + +HasRegion returns a boolean if a field has been set. + +### GetStorageAccount + +`func (o *LogsArchiveCreateRequestDestination) GetStorageAccount() string` + +GetStorageAccount returns the StorageAccount field if non-nil, zero value otherwise. + +### GetStorageAccountOk + +`func (o *LogsArchiveCreateRequestDestination) GetStorageAccountOk() (*string, bool)` + +GetStorageAccountOk returns a tuple with the StorageAccount field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetStorageAccount + +`func (o *LogsArchiveCreateRequestDestination) SetStorageAccount(v string)` + +SetStorageAccount sets StorageAccount field to given value. + + +### GetType + +`func (o *LogsArchiveCreateRequestDestination) GetType() LogsArchiveDestinationS3Type` + +GetType returns the Type field if non-nil, zero value otherwise. + +### GetTypeOk + +`func (o *LogsArchiveCreateRequestDestination) GetTypeOk() (*LogsArchiveDestinationS3Type, bool)` + +GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetType + +`func (o *LogsArchiveCreateRequestDestination) SetType(v LogsArchiveDestinationS3Type)` + +SetType sets Type field to given value. + + +### GetBucket + +`func (o *LogsArchiveCreateRequestDestination) GetBucket() string` + +GetBucket returns the Bucket field if non-nil, zero value otherwise. + +### GetBucketOk + +`func (o *LogsArchiveCreateRequestDestination) GetBucketOk() (*string, bool)` + +GetBucketOk returns a tuple with the Bucket field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetBucket + +`func (o *LogsArchiveCreateRequestDestination) SetBucket(v string)` + +SetBucket sets Bucket field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDefinition.md b/api/v2/datadog/docs/LogsArchiveDefinition.md new file mode 100644 index 00000000000..ed28d4118e1 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDefinition.md @@ -0,0 +1,103 @@ +# LogsArchiveDefinition + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Attributes** | Pointer to [**LogsArchiveAttributes**](LogsArchiveAttributes.md) | | [optional] +**Id** | Pointer to **string** | The archive ID. | [optional] [readonly] +**Type** | Pointer to **string** | The type of the resource. The value should always be archives. | [readonly] [default to "archives"] + +## Methods + +### NewLogsArchiveDefinition + +`func NewLogsArchiveDefinition(type_ string, ) *LogsArchiveDefinition` + +NewLogsArchiveDefinition instantiates a new LogsArchiveDefinition object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveDefinitionWithDefaults + +`func NewLogsArchiveDefinitionWithDefaults() *LogsArchiveDefinition` + +NewLogsArchiveDefinitionWithDefaults instantiates a new LogsArchiveDefinition object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetAttributes + +`func (o *LogsArchiveDefinition) GetAttributes() LogsArchiveAttributes` + +GetAttributes returns the Attributes field if non-nil, zero value otherwise. + +### GetAttributesOk + +`func (o *LogsArchiveDefinition) GetAttributesOk() (*LogsArchiveAttributes, bool)` + +GetAttributesOk returns a tuple with the Attributes field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetAttributes + +`func (o *LogsArchiveDefinition) SetAttributes(v LogsArchiveAttributes)` + +SetAttributes sets Attributes field to given value. + +### HasAttributes + +`func (o *LogsArchiveDefinition) HasAttributes() bool` + +HasAttributes returns a boolean if a field has been set. + +### GetId + +`func (o *LogsArchiveDefinition) GetId() string` + +GetId returns the Id field if non-nil, zero value otherwise. + +### GetIdOk + +`func (o *LogsArchiveDefinition) GetIdOk() (*string, bool)` + +GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetId + +`func (o *LogsArchiveDefinition) SetId(v string)` + +SetId sets Id field to given value. + +### HasId + +`func (o *LogsArchiveDefinition) HasId() bool` + +HasId returns a boolean if a field has been set. + +### GetType + +`func (o *LogsArchiveDefinition) GetType() string` + +GetType returns the Type field if non-nil, zero value otherwise. + +### GetTypeOk + +`func (o *LogsArchiveDefinition) GetTypeOk() (*string, bool)` + +GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetType + +`func (o *LogsArchiveDefinition) SetType(v string)` + +SetType sets Type field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDestination.md b/api/v2/datadog/docs/LogsArchiveDestination.md new file mode 100644 index 00000000000..4120b8886fa --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDestination.md @@ -0,0 +1,187 @@ +# LogsArchiveDestination + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Container** | Pointer to **string** | The container where the archive will be stored. | +**Integration** | Pointer to [**LogsArchiveIntegrationS3**](LogsArchiveIntegrationS3.md) | | +**Path** | Pointer to **string** | The archive path. | [optional] +**Region** | Pointer to **string** | The region where the archive will be stored. | [optional] +**StorageAccount** | Pointer to **string** | The associated storage account. | +**Type** | Pointer to [**LogsArchiveDestinationS3Type**](LogsArchiveDestinationS3Type.md) | | [default to "s3"] +**Bucket** | Pointer to **string** | The bucket where the archive will be stored. | + +## Methods + +### NewLogsArchiveDestination + +`func NewLogsArchiveDestination(container string, integration LogsArchiveIntegrationS3, storageAccount string, type_ LogsArchiveDestinationS3Type, bucket string, ) *LogsArchiveDestination` + +NewLogsArchiveDestination instantiates a new LogsArchiveDestination object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveDestinationWithDefaults + +`func NewLogsArchiveDestinationWithDefaults() *LogsArchiveDestination` + +NewLogsArchiveDestinationWithDefaults instantiates a new LogsArchiveDestination object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetContainer + +`func (o *LogsArchiveDestination) GetContainer() string` + +GetContainer returns the Container field if non-nil, zero value otherwise. + +### GetContainerOk + +`func (o *LogsArchiveDestination) GetContainerOk() (*string, bool)` + +GetContainerOk returns a tuple with the Container field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetContainer + +`func (o *LogsArchiveDestination) SetContainer(v string)` + +SetContainer sets Container field to given value. + + +### GetIntegration + +`func (o *LogsArchiveDestination) GetIntegration() LogsArchiveIntegrationS3` + +GetIntegration returns the Integration field if non-nil, zero value otherwise. + +### GetIntegrationOk + +`func (o *LogsArchiveDestination) GetIntegrationOk() (*LogsArchiveIntegrationS3, bool)` + +GetIntegrationOk returns a tuple with the Integration field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetIntegration + +`func (o *LogsArchiveDestination) SetIntegration(v LogsArchiveIntegrationS3)` + +SetIntegration sets Integration field to given value. + + +### GetPath + +`func (o *LogsArchiveDestination) GetPath() string` + +GetPath returns the Path field if non-nil, zero value otherwise. + +### GetPathOk + +`func (o *LogsArchiveDestination) GetPathOk() (*string, bool)` + +GetPathOk returns a tuple with the Path field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetPath + +`func (o *LogsArchiveDestination) SetPath(v string)` + +SetPath sets Path field to given value. + +### HasPath + +`func (o *LogsArchiveDestination) HasPath() bool` + +HasPath returns a boolean if a field has been set. + +### GetRegion + +`func (o *LogsArchiveDestination) GetRegion() string` + +GetRegion returns the Region field if non-nil, zero value otherwise. + +### GetRegionOk + +`func (o *LogsArchiveDestination) GetRegionOk() (*string, bool)` + +GetRegionOk returns a tuple with the Region field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetRegion + +`func (o *LogsArchiveDestination) SetRegion(v string)` + +SetRegion sets Region field to given value. + +### HasRegion + +`func (o *LogsArchiveDestination) HasRegion() bool` + +HasRegion returns a boolean if a field has been set. + +### GetStorageAccount + +`func (o *LogsArchiveDestination) GetStorageAccount() string` + +GetStorageAccount returns the StorageAccount field if non-nil, zero value otherwise. + +### GetStorageAccountOk + +`func (o *LogsArchiveDestination) GetStorageAccountOk() (*string, bool)` + +GetStorageAccountOk returns a tuple with the StorageAccount field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetStorageAccount + +`func (o *LogsArchiveDestination) SetStorageAccount(v string)` + +SetStorageAccount sets StorageAccount field to given value. + + +### GetType + +`func (o *LogsArchiveDestination) GetType() LogsArchiveDestinationS3Type` + +GetType returns the Type field if non-nil, zero value otherwise. + +### GetTypeOk + +`func (o *LogsArchiveDestination) GetTypeOk() (*LogsArchiveDestinationS3Type, bool)` + +GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetType + +`func (o *LogsArchiveDestination) SetType(v LogsArchiveDestinationS3Type)` + +SetType sets Type field to given value. + + +### GetBucket + +`func (o *LogsArchiveDestination) GetBucket() string` + +GetBucket returns the Bucket field if non-nil, zero value otherwise. + +### GetBucketOk + +`func (o *LogsArchiveDestination) GetBucketOk() (*string, bool)` + +GetBucketOk returns a tuple with the Bucket field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetBucket + +`func (o *LogsArchiveDestination) SetBucket(v string)` + +SetBucket sets Bucket field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDestinationAzure.md b/api/v2/datadog/docs/LogsArchiveDestinationAzure.md new file mode 100644 index 00000000000..2e26eae4334 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDestinationAzure.md @@ -0,0 +1,166 @@ +# LogsArchiveDestinationAzure + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Container** | Pointer to **string** | The container where the archive will be stored. | +**Integration** | Pointer to [**LogsArchiveIntegrationAzure**](LogsArchiveIntegrationAzure.md) | | +**Path** | Pointer to **string** | The archive path. | [optional] +**Region** | Pointer to **string** | The region where the archive will be stored. | [optional] +**StorageAccount** | Pointer to **string** | The associated storage account. | +**Type** | Pointer to [**LogsArchiveDestinationAzureType**](LogsArchiveDestinationAzureType.md) | | [default to "azure"] + +## Methods + +### NewLogsArchiveDestinationAzure + +`func NewLogsArchiveDestinationAzure(container string, integration LogsArchiveIntegrationAzure, storageAccount string, type_ LogsArchiveDestinationAzureType, ) *LogsArchiveDestinationAzure` + +NewLogsArchiveDestinationAzure instantiates a new LogsArchiveDestinationAzure object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveDestinationAzureWithDefaults + +`func NewLogsArchiveDestinationAzureWithDefaults() *LogsArchiveDestinationAzure` + +NewLogsArchiveDestinationAzureWithDefaults instantiates a new LogsArchiveDestinationAzure object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetContainer + +`func (o *LogsArchiveDestinationAzure) GetContainer() string` + +GetContainer returns the Container field if non-nil, zero value otherwise. + +### GetContainerOk + +`func (o *LogsArchiveDestinationAzure) GetContainerOk() (*string, bool)` + +GetContainerOk returns a tuple with the Container field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetContainer + +`func (o *LogsArchiveDestinationAzure) SetContainer(v string)` + +SetContainer sets Container field to given value. + + +### GetIntegration + +`func (o *LogsArchiveDestinationAzure) GetIntegration() LogsArchiveIntegrationAzure` + +GetIntegration returns the Integration field if non-nil, zero value otherwise. + +### GetIntegrationOk + +`func (o *LogsArchiveDestinationAzure) GetIntegrationOk() (*LogsArchiveIntegrationAzure, bool)` + +GetIntegrationOk returns a tuple with the Integration field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetIntegration + +`func (o *LogsArchiveDestinationAzure) SetIntegration(v LogsArchiveIntegrationAzure)` + +SetIntegration sets Integration field to given value. + + +### GetPath + +`func (o *LogsArchiveDestinationAzure) GetPath() string` + +GetPath returns the Path field if non-nil, zero value otherwise. + +### GetPathOk + +`func (o *LogsArchiveDestinationAzure) GetPathOk() (*string, bool)` + +GetPathOk returns a tuple with the Path field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetPath + +`func (o *LogsArchiveDestinationAzure) SetPath(v string)` + +SetPath sets Path field to given value. + +### HasPath + +`func (o *LogsArchiveDestinationAzure) HasPath() bool` + +HasPath returns a boolean if a field has been set. + +### GetRegion + +`func (o *LogsArchiveDestinationAzure) GetRegion() string` + +GetRegion returns the Region field if non-nil, zero value otherwise. + +### GetRegionOk + +`func (o *LogsArchiveDestinationAzure) GetRegionOk() (*string, bool)` + +GetRegionOk returns a tuple with the Region field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetRegion + +`func (o *LogsArchiveDestinationAzure) SetRegion(v string)` + +SetRegion sets Region field to given value. + +### HasRegion + +`func (o *LogsArchiveDestinationAzure) HasRegion() bool` + +HasRegion returns a boolean if a field has been set. + +### GetStorageAccount + +`func (o *LogsArchiveDestinationAzure) GetStorageAccount() string` + +GetStorageAccount returns the StorageAccount field if non-nil, zero value otherwise. + +### GetStorageAccountOk + +`func (o *LogsArchiveDestinationAzure) GetStorageAccountOk() (*string, bool)` + +GetStorageAccountOk returns a tuple with the StorageAccount field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetStorageAccount + +`func (o *LogsArchiveDestinationAzure) SetStorageAccount(v string)` + +SetStorageAccount sets StorageAccount field to given value. + + +### GetType + +`func (o *LogsArchiveDestinationAzure) GetType() LogsArchiveDestinationAzureType` + +GetType returns the Type field if non-nil, zero value otherwise. + +### GetTypeOk + +`func (o *LogsArchiveDestinationAzure) GetTypeOk() (*LogsArchiveDestinationAzureType, bool)` + +GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetType + +`func (o *LogsArchiveDestinationAzure) SetType(v LogsArchiveDestinationAzureType)` + +SetType sets Type field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDestinationAzureType.md b/api/v2/datadog/docs/LogsArchiveDestinationAzureType.md new file mode 100644 index 00000000000..d14850c2510 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDestinationAzureType.md @@ -0,0 +1,11 @@ +# LogsArchiveDestinationAzureType + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDestinationGCS.md b/api/v2/datadog/docs/LogsArchiveDestinationGCS.md new file mode 100644 index 00000000000..135943fb89f --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDestinationGCS.md @@ -0,0 +1,119 @@ +# LogsArchiveDestinationGCS + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Bucket** | Pointer to **string** | The bucket where the archive will be stored. | +**Integration** | Pointer to [**LogsArchiveIntegrationGCS**](LogsArchiveIntegrationGCS.md) | | +**Path** | Pointer to **string** | The archive path. | [optional] +**Type** | Pointer to [**LogsArchiveDestinationGCSType**](LogsArchiveDestinationGCSType.md) | | [default to "gcs"] + +## Methods + +### NewLogsArchiveDestinationGCS + +`func NewLogsArchiveDestinationGCS(bucket string, integration LogsArchiveIntegrationGCS, type_ LogsArchiveDestinationGCSType, ) *LogsArchiveDestinationGCS` + +NewLogsArchiveDestinationGCS instantiates a new LogsArchiveDestinationGCS object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveDestinationGCSWithDefaults + +`func NewLogsArchiveDestinationGCSWithDefaults() *LogsArchiveDestinationGCS` + +NewLogsArchiveDestinationGCSWithDefaults instantiates a new LogsArchiveDestinationGCS object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetBucket + +`func (o *LogsArchiveDestinationGCS) GetBucket() string` + +GetBucket returns the Bucket field if non-nil, zero value otherwise. + +### GetBucketOk + +`func (o *LogsArchiveDestinationGCS) GetBucketOk() (*string, bool)` + +GetBucketOk returns a tuple with the Bucket field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetBucket + +`func (o *LogsArchiveDestinationGCS) SetBucket(v string)` + +SetBucket sets Bucket field to given value. + + +### GetIntegration + +`func (o *LogsArchiveDestinationGCS) GetIntegration() LogsArchiveIntegrationGCS` + +GetIntegration returns the Integration field if non-nil, zero value otherwise. + +### GetIntegrationOk + +`func (o *LogsArchiveDestinationGCS) GetIntegrationOk() (*LogsArchiveIntegrationGCS, bool)` + +GetIntegrationOk returns a tuple with the Integration field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetIntegration + +`func (o *LogsArchiveDestinationGCS) SetIntegration(v LogsArchiveIntegrationGCS)` + +SetIntegration sets Integration field to given value. + + +### GetPath + +`func (o *LogsArchiveDestinationGCS) GetPath() string` + +GetPath returns the Path field if non-nil, zero value otherwise. + +### GetPathOk + +`func (o *LogsArchiveDestinationGCS) GetPathOk() (*string, bool)` + +GetPathOk returns a tuple with the Path field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetPath + +`func (o *LogsArchiveDestinationGCS) SetPath(v string)` + +SetPath sets Path field to given value. + +### HasPath + +`func (o *LogsArchiveDestinationGCS) HasPath() bool` + +HasPath returns a boolean if a field has been set. + +### GetType + +`func (o *LogsArchiveDestinationGCS) GetType() LogsArchiveDestinationGCSType` + +GetType returns the Type field if non-nil, zero value otherwise. + +### GetTypeOk + +`func (o *LogsArchiveDestinationGCS) GetTypeOk() (*LogsArchiveDestinationGCSType, bool)` + +GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetType + +`func (o *LogsArchiveDestinationGCS) SetType(v LogsArchiveDestinationGCSType)` + +SetType sets Type field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDestinationGCSType.md b/api/v2/datadog/docs/LogsArchiveDestinationGCSType.md new file mode 100644 index 00000000000..d1944d90dd7 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDestinationGCSType.md @@ -0,0 +1,11 @@ +# LogsArchiveDestinationGCSType + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDestinationS3.md b/api/v2/datadog/docs/LogsArchiveDestinationS3.md new file mode 100644 index 00000000000..e7c21fd9477 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDestinationS3.md @@ -0,0 +1,119 @@ +# LogsArchiveDestinationS3 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Bucket** | Pointer to **string** | The bucket where the archive will be stored. | +**Integration** | Pointer to [**LogsArchiveIntegrationS3**](LogsArchiveIntegrationS3.md) | | +**Path** | Pointer to **string** | The archive path. | [optional] +**Type** | Pointer to [**LogsArchiveDestinationS3Type**](LogsArchiveDestinationS3Type.md) | | [default to "s3"] + +## Methods + +### NewLogsArchiveDestinationS3 + +`func NewLogsArchiveDestinationS3(bucket string, integration LogsArchiveIntegrationS3, type_ LogsArchiveDestinationS3Type, ) *LogsArchiveDestinationS3` + +NewLogsArchiveDestinationS3 instantiates a new LogsArchiveDestinationS3 object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveDestinationS3WithDefaults + +`func NewLogsArchiveDestinationS3WithDefaults() *LogsArchiveDestinationS3` + +NewLogsArchiveDestinationS3WithDefaults instantiates a new LogsArchiveDestinationS3 object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetBucket + +`func (o *LogsArchiveDestinationS3) GetBucket() string` + +GetBucket returns the Bucket field if non-nil, zero value otherwise. + +### GetBucketOk + +`func (o *LogsArchiveDestinationS3) GetBucketOk() (*string, bool)` + +GetBucketOk returns a tuple with the Bucket field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetBucket + +`func (o *LogsArchiveDestinationS3) SetBucket(v string)` + +SetBucket sets Bucket field to given value. + + +### GetIntegration + +`func (o *LogsArchiveDestinationS3) GetIntegration() LogsArchiveIntegrationS3` + +GetIntegration returns the Integration field if non-nil, zero value otherwise. + +### GetIntegrationOk + +`func (o *LogsArchiveDestinationS3) GetIntegrationOk() (*LogsArchiveIntegrationS3, bool)` + +GetIntegrationOk returns a tuple with the Integration field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetIntegration + +`func (o *LogsArchiveDestinationS3) SetIntegration(v LogsArchiveIntegrationS3)` + +SetIntegration sets Integration field to given value. + + +### GetPath + +`func (o *LogsArchiveDestinationS3) GetPath() string` + +GetPath returns the Path field if non-nil, zero value otherwise. + +### GetPathOk + +`func (o *LogsArchiveDestinationS3) GetPathOk() (*string, bool)` + +GetPathOk returns a tuple with the Path field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetPath + +`func (o *LogsArchiveDestinationS3) SetPath(v string)` + +SetPath sets Path field to given value. + +### HasPath + +`func (o *LogsArchiveDestinationS3) HasPath() bool` + +HasPath returns a boolean if a field has been set. + +### GetType + +`func (o *LogsArchiveDestinationS3) GetType() LogsArchiveDestinationS3Type` + +GetType returns the Type field if non-nil, zero value otherwise. + +### GetTypeOk + +`func (o *LogsArchiveDestinationS3) GetTypeOk() (*LogsArchiveDestinationS3Type, bool)` + +GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetType + +`func (o *LogsArchiveDestinationS3) SetType(v LogsArchiveDestinationS3Type)` + +SetType sets Type field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveDestinationS3Type.md b/api/v2/datadog/docs/LogsArchiveDestinationS3Type.md new file mode 100644 index 00000000000..54936bb8baf --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveDestinationS3Type.md @@ -0,0 +1,11 @@ +# LogsArchiveDestinationS3Type + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveIntegrationAzure.md b/api/v2/datadog/docs/LogsArchiveIntegrationAzure.md new file mode 100644 index 00000000000..a884216c877 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveIntegrationAzure.md @@ -0,0 +1,72 @@ +# LogsArchiveIntegrationAzure + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**ClientId** | Pointer to **string** | A client ID. | +**TenantId** | Pointer to **string** | A tenant ID. | + +## Methods + +### NewLogsArchiveIntegrationAzure + +`func NewLogsArchiveIntegrationAzure(clientId string, tenantId string, ) *LogsArchiveIntegrationAzure` + +NewLogsArchiveIntegrationAzure instantiates a new LogsArchiveIntegrationAzure object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveIntegrationAzureWithDefaults + +`func NewLogsArchiveIntegrationAzureWithDefaults() *LogsArchiveIntegrationAzure` + +NewLogsArchiveIntegrationAzureWithDefaults instantiates a new LogsArchiveIntegrationAzure object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetClientId + +`func (o *LogsArchiveIntegrationAzure) GetClientId() string` + +GetClientId returns the ClientId field if non-nil, zero value otherwise. + +### GetClientIdOk + +`func (o *LogsArchiveIntegrationAzure) GetClientIdOk() (*string, bool)` + +GetClientIdOk returns a tuple with the ClientId field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetClientId + +`func (o *LogsArchiveIntegrationAzure) SetClientId(v string)` + +SetClientId sets ClientId field to given value. + + +### GetTenantId + +`func (o *LogsArchiveIntegrationAzure) GetTenantId() string` + +GetTenantId returns the TenantId field if non-nil, zero value otherwise. + +### GetTenantIdOk + +`func (o *LogsArchiveIntegrationAzure) GetTenantIdOk() (*string, bool)` + +GetTenantIdOk returns a tuple with the TenantId field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetTenantId + +`func (o *LogsArchiveIntegrationAzure) SetTenantId(v string)` + +SetTenantId sets TenantId field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveIntegrationGCS.md b/api/v2/datadog/docs/LogsArchiveIntegrationGCS.md new file mode 100644 index 00000000000..ca85a0a3944 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveIntegrationGCS.md @@ -0,0 +1,72 @@ +# LogsArchiveIntegrationGCS + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**ClientEmail** | Pointer to **string** | A client email. | +**ProjectId** | Pointer to **string** | A project ID. | + +## Methods + +### NewLogsArchiveIntegrationGCS + +`func NewLogsArchiveIntegrationGCS(clientEmail string, projectId string, ) *LogsArchiveIntegrationGCS` + +NewLogsArchiveIntegrationGCS instantiates a new LogsArchiveIntegrationGCS object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveIntegrationGCSWithDefaults + +`func NewLogsArchiveIntegrationGCSWithDefaults() *LogsArchiveIntegrationGCS` + +NewLogsArchiveIntegrationGCSWithDefaults instantiates a new LogsArchiveIntegrationGCS object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetClientEmail + +`func (o *LogsArchiveIntegrationGCS) GetClientEmail() string` + +GetClientEmail returns the ClientEmail field if non-nil, zero value otherwise. + +### GetClientEmailOk + +`func (o *LogsArchiveIntegrationGCS) GetClientEmailOk() (*string, bool)` + +GetClientEmailOk returns a tuple with the ClientEmail field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetClientEmail + +`func (o *LogsArchiveIntegrationGCS) SetClientEmail(v string)` + +SetClientEmail sets ClientEmail field to given value. + + +### GetProjectId + +`func (o *LogsArchiveIntegrationGCS) GetProjectId() string` + +GetProjectId returns the ProjectId field if non-nil, zero value otherwise. + +### GetProjectIdOk + +`func (o *LogsArchiveIntegrationGCS) GetProjectIdOk() (*string, bool)` + +GetProjectIdOk returns a tuple with the ProjectId field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetProjectId + +`func (o *LogsArchiveIntegrationGCS) SetProjectId(v string)` + +SetProjectId sets ProjectId field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveIntegrationS3.md b/api/v2/datadog/docs/LogsArchiveIntegrationS3.md new file mode 100644 index 00000000000..2454ae76ac9 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveIntegrationS3.md @@ -0,0 +1,72 @@ +# LogsArchiveIntegrationS3 + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**AccountId** | Pointer to **string** | The account ID for the integration. | +**RoleName** | Pointer to **string** | The path of the integration. | + +## Methods + +### NewLogsArchiveIntegrationS3 + +`func NewLogsArchiveIntegrationS3(accountId string, roleName string, ) *LogsArchiveIntegrationS3` + +NewLogsArchiveIntegrationS3 instantiates a new LogsArchiveIntegrationS3 object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchiveIntegrationS3WithDefaults + +`func NewLogsArchiveIntegrationS3WithDefaults() *LogsArchiveIntegrationS3` + +NewLogsArchiveIntegrationS3WithDefaults instantiates a new LogsArchiveIntegrationS3 object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetAccountId + +`func (o *LogsArchiveIntegrationS3) GetAccountId() string` + +GetAccountId returns the AccountId field if non-nil, zero value otherwise. + +### GetAccountIdOk + +`func (o *LogsArchiveIntegrationS3) GetAccountIdOk() (*string, bool)` + +GetAccountIdOk returns a tuple with the AccountId field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetAccountId + +`func (o *LogsArchiveIntegrationS3) SetAccountId(v string)` + +SetAccountId sets AccountId field to given value. + + +### GetRoleName + +`func (o *LogsArchiveIntegrationS3) GetRoleName() string` + +GetRoleName returns the RoleName field if non-nil, zero value otherwise. + +### GetRoleNameOk + +`func (o *LogsArchiveIntegrationS3) GetRoleNameOk() (*string, bool)` + +GetRoleNameOk returns a tuple with the RoleName field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetRoleName + +`func (o *LogsArchiveIntegrationS3) SetRoleName(v string)` + +SetRoleName sets RoleName field to given value. + + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchiveState.md b/api/v2/datadog/docs/LogsArchiveState.md new file mode 100644 index 00000000000..5ddebd99551 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchiveState.md @@ -0,0 +1,11 @@ +# LogsArchiveState + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchives.md b/api/v2/datadog/docs/LogsArchives.md new file mode 100644 index 00000000000..1ff65b7856d --- /dev/null +++ b/api/v2/datadog/docs/LogsArchives.md @@ -0,0 +1,56 @@ +# LogsArchives + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Data** | Pointer to [**[]LogsArchiveDefinition**](LogsArchiveDefinition.md) | A list of archives. | [optional] + +## Methods + +### NewLogsArchives + +`func NewLogsArchives() *LogsArchives` + +NewLogsArchives instantiates a new LogsArchives object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewLogsArchivesWithDefaults + +`func NewLogsArchivesWithDefaults() *LogsArchives` + +NewLogsArchivesWithDefaults instantiates a new LogsArchives object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetData + +`func (o *LogsArchives) GetData() []LogsArchiveDefinition` + +GetData returns the Data field if non-nil, zero value otherwise. + +### GetDataOk + +`func (o *LogsArchives) GetDataOk() (*[]LogsArchiveDefinition, bool)` + +GetDataOk returns a tuple with the Data field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetData + +`func (o *LogsArchives) SetData(v []LogsArchiveDefinition)` + +SetData sets Data field to given value. + +### HasData + +`func (o *LogsArchives) HasData() bool` + +HasData returns a boolean if a field has been set. + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/docs/LogsArchivesApi.md b/api/v2/datadog/docs/LogsArchivesApi.md new file mode 100644 index 00000000000..6c8dfee8066 --- /dev/null +++ b/api/v2/datadog/docs/LogsArchivesApi.md @@ -0,0 +1,667 @@ +# \LogsArchivesApi + +All URIs are relative to *https://api.datadoghq.com* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**AddReadRoleToArchive**](LogsArchivesApi.md#AddReadRoleToArchive) | **Post** /api/v2/logs/config/archives/{archive_id}/readers | Grant role to an archive +[**CreateLogsArchive**](LogsArchivesApi.md#CreateLogsArchive) | **Post** /api/v2/logs/config/archives | Create an archive +[**DeleteLogsArchive**](LogsArchivesApi.md#DeleteLogsArchive) | **Delete** /api/v2/logs/config/archives/{archive_id} | Delete an archive +[**GetLogsArchive**](LogsArchivesApi.md#GetLogsArchive) | **Get** /api/v2/logs/config/archives/{archive_id} | Get an archive +[**ListArchiveReadRoles**](LogsArchivesApi.md#ListArchiveReadRoles) | **Get** /api/v2/logs/config/archives/{archive_id}/readers | List read roles for an archive +[**ListLogsArchives**](LogsArchivesApi.md#ListLogsArchives) | **Get** /api/v2/logs/config/archives | Get all archives +[**RemoveRoleFromArchive**](LogsArchivesApi.md#RemoveRoleFromArchive) | **Delete** /api/v2/logs/config/archives/{archive_id}/readers | Revoke role from an archive +[**UpdateLogsArchive**](LogsArchivesApi.md#UpdateLogsArchive) | **Put** /api/v2/logs/config/archives/{archive_id} | Update an archive + + + +## AddReadRoleToArchive + +> AddReadRoleToArchive(ctx, archiveId).Body(body).Execute() + +Grant role to an archive + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + archiveId := "archiveId_example" // string | The ID of the archive. + body := datadog.RelationshipToRole{Data: datadog.RelationshipToRoleData{Id: "Id_example", Type: datadog.RolesType{}}} // RelationshipToRole | (optional) + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.AddReadRoleToArchive(ctx, archiveId).Body(body).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.AddReadRoleToArchive``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } +} +``` + +### Path Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- +**ctx** | **context.Context** | context for authentication, logging, cancellation, deadlines, tracing, etc. +**archiveId** | **string** | The ID of the archive. | + +### Other Parameters + +Other parameters are passed through a pointer to a apiAddReadRoleToArchiveRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + + **body** | [**RelationshipToRole**](RelationshipToRole.md) | | + +### Return type + + (empty response body) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + + +## CreateLogsArchive + +> LogsArchive CreateLogsArchive(ctx).Body(body).Execute() + +Create an archive + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + body := datadog.LogsArchiveCreateRequest{Data: datadog.LogsArchiveCreateRequestDefinition{Attributes: datadog.LogsArchiveCreateRequestAttributes{Destination: datadog.LogsArchiveCreateRequestDestination{Container: "Container_example", Integration: datadog.LogsArchiveIntegrationS3{AccountId: "AccountId_example", RoleName: "RoleName_example"}, Path: "Path_example", Region: "Region_example", StorageAccount: "StorageAccount_example", Type: datadog.LogsArchiveDestinationS3Type{}, Bucket: "Bucket_example"}, Name: "Name_example", Query: "Query_example"}, Type: "Type_example"}} // LogsArchiveCreateRequest | The definition of the new archive. + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.CreateLogsArchive(ctx, body).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.CreateLogsArchive``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } + // response from `CreateLogsArchive`: LogsArchive + fmt.Fprintf(os.Stdout, "Response from `LogsArchivesApi.CreateLogsArchive`: %v\n", resp) +} +``` + +### Path Parameters + + + +### Other Parameters + +Other parameters are passed through a pointer to a apiCreateLogsArchiveRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**LogsArchiveCreateRequest**](LogsArchiveCreateRequest.md) | The definition of the new archive. | + +### Return type + +[**LogsArchive**](LogsArchive.md) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + + +## DeleteLogsArchive + +> DeleteLogsArchive(ctx, archiveId).Execute() + +Delete an archive + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + archiveId := "archiveId_example" // string | The ID of the archive. + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.DeleteLogsArchive(ctx, archiveId).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.DeleteLogsArchive``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } +} +``` + +### Path Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- +**ctx** | **context.Context** | context for authentication, logging, cancellation, deadlines, tracing, etc. +**archiveId** | **string** | The ID of the archive. | + +### Other Parameters + +Other parameters are passed through a pointer to a apiDeleteLogsArchiveRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + + +### Return type + + (empty response body) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + + +## GetLogsArchive + +> LogsArchive GetLogsArchive(ctx, archiveId).Execute() + +Get an archive + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + archiveId := "archiveId_example" // string | The ID of the archive. + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.GetLogsArchive(ctx, archiveId).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.GetLogsArchive``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } + // response from `GetLogsArchive`: LogsArchive + fmt.Fprintf(os.Stdout, "Response from `LogsArchivesApi.GetLogsArchive`: %v\n", resp) +} +``` + +### Path Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- +**ctx** | **context.Context** | context for authentication, logging, cancellation, deadlines, tracing, etc. +**archiveId** | **string** | The ID of the archive. | + +### Other Parameters + +Other parameters are passed through a pointer to a apiGetLogsArchiveRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + + +### Return type + +[**LogsArchive**](LogsArchive.md) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + + +## ListArchiveReadRoles + +> RolesResponse ListArchiveReadRoles(ctx, archiveId).Execute() + +List read roles for an archive + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + archiveId := "archiveId_example" // string | The ID of the archive. + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.ListArchiveReadRoles(ctx, archiveId).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.ListArchiveReadRoles``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } + // response from `ListArchiveReadRoles`: RolesResponse + fmt.Fprintf(os.Stdout, "Response from `LogsArchivesApi.ListArchiveReadRoles`: %v\n", resp) +} +``` + +### Path Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- +**ctx** | **context.Context** | context for authentication, logging, cancellation, deadlines, tracing, etc. +**archiveId** | **string** | The ID of the archive. | + +### Other Parameters + +Other parameters are passed through a pointer to a apiListArchiveReadRolesRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + + +### Return type + +[**RolesResponse**](RolesResponse.md) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + + +## ListLogsArchives + +> LogsArchives ListLogsArchives(ctx).Execute() + +Get all archives + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.ListLogsArchives(ctx).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.ListLogsArchives``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } + // response from `ListLogsArchives`: LogsArchives + fmt.Fprintf(os.Stdout, "Response from `LogsArchivesApi.ListLogsArchives`: %v\n", resp) +} +``` + +### Path Parameters + +This endpoint does not need any parameter. + +### Other Parameters + +Other parameters are passed through a pointer to a apiListLogsArchivesRequest struct via the builder pattern + + +### Return type + +[**LogsArchives**](LogsArchives.md) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + + +## RemoveRoleFromArchive + +> RemoveRoleFromArchive(ctx, archiveId).Body(body).Execute() + +Revoke role from an archive + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + archiveId := "archiveId_example" // string | The ID of the archive. + body := datadog.RelationshipToRole{Data: datadog.RelationshipToRoleData{Id: "Id_example", Type: datadog.RolesType{}}} // RelationshipToRole | (optional) + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.RemoveRoleFromArchive(ctx, archiveId).Body(body).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.RemoveRoleFromArchive``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } +} +``` + +### Path Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- +**ctx** | **context.Context** | context for authentication, logging, cancellation, deadlines, tracing, etc. +**archiveId** | **string** | The ID of the archive. | + +### Other Parameters + +Other parameters are passed through a pointer to a apiRemoveRoleFromArchiveRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + + **body** | [**RelationshipToRole**](RelationshipToRole.md) | | + +### Return type + + (empty response body) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + + +## UpdateLogsArchive + +> LogsArchive UpdateLogsArchive(ctx, archiveId).Body(body).Execute() + +Update an archive + + + +### Example + +```go +package main + +import ( + "context" + "fmt" + "os" + datadog "github.com/DataDog/datadog-api-client-go/api/v2/datadog" +) + +func main() { + ctx := context.WithValue( + context.Background(), + datadog.ContextAPIKeys, + map[string]datadog.APIKey{ + "apiKeyAuth": { + Key: os.Getenv("DD_CLIENT_API_KEY"), + }, + "appKeyAuth": { + Key: os.Getenv("DD_CLIENT_APP_KEY"), + }, + }, + ) + + archiveId := "archiveId_example" // string | The ID of the archive. + body := datadog.LogsArchiveCreateRequest{Data: datadog.LogsArchiveCreateRequestDefinition{Attributes: datadog.LogsArchiveCreateRequestAttributes{Destination: datadog.LogsArchiveCreateRequestDestination{Container: "Container_example", Integration: datadog.LogsArchiveIntegrationS3{AccountId: "AccountId_example", RoleName: "RoleName_example"}, Path: "Path_example", Region: "Region_example", StorageAccount: "StorageAccount_example", Type: datadog.LogsArchiveDestinationS3Type{}, Bucket: "Bucket_example"}, Name: "Name_example", Query: "Query_example"}, Type: "Type_example"}} // LogsArchiveCreateRequest | New definition of the archive. + + configuration := datadog.NewConfiguration() + api_client := datadog.NewAPIClient(configuration) + resp, r, err := api_client.LogsArchivesApi.UpdateLogsArchive(ctx, archiveId, body).Execute() + if err != nil { + fmt.Fprintf(os.Stderr, "Error when calling `LogsArchivesApi.UpdateLogsArchive``: %v\n", err) + fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r) + } + // response from `UpdateLogsArchive`: LogsArchive + fmt.Fprintf(os.Stdout, "Response from `LogsArchivesApi.UpdateLogsArchive`: %v\n", resp) +} +``` + +### Path Parameters + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- +**ctx** | **context.Context** | context for authentication, logging, cancellation, deadlines, tracing, etc. +**archiveId** | **string** | The ID of the archive. | + +### Other Parameters + +Other parameters are passed through a pointer to a apiUpdateLogsArchiveRequest struct via the builder pattern + + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + + **body** | [**LogsArchiveCreateRequest**](LogsArchiveCreateRequest.md) | New definition of the archive. | + +### Return type + +[**LogsArchive**](LogsArchive.md) + +### Authorization + +[apiKeyAuth](../README.md#apiKeyAuth), [appKeyAuth](../README.md#appKeyAuth) + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) +[[Back to Model list]](../README.md#documentation-for-models) +[[Back to README]](../README.md) + diff --git a/api/v2/datadog/docs/RelationshipToRole.md b/api/v2/datadog/docs/RelationshipToRole.md new file mode 100644 index 00000000000..8978d0ed3ba --- /dev/null +++ b/api/v2/datadog/docs/RelationshipToRole.md @@ -0,0 +1,56 @@ +# RelationshipToRole + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**Data** | Pointer to [**RelationshipToRoleData**](RelationshipToRoleData.md) | | [optional] + +## Methods + +### NewRelationshipToRole + +`func NewRelationshipToRole() *RelationshipToRole` + +NewRelationshipToRole instantiates a new RelationshipToRole object +This constructor will assign default values to properties that have it defined, +and makes sure properties required by API are set, but the set of arguments +will change when the set of required properties is changed + +### NewRelationshipToRoleWithDefaults + +`func NewRelationshipToRoleWithDefaults() *RelationshipToRole` + +NewRelationshipToRoleWithDefaults instantiates a new RelationshipToRole object +This constructor will only assign default values to properties that have it defined, +but it doesn't guarantee that properties required by API are set + +### GetData + +`func (o *RelationshipToRole) GetData() RelationshipToRoleData` + +GetData returns the Data field if non-nil, zero value otherwise. + +### GetDataOk + +`func (o *RelationshipToRole) GetDataOk() (*RelationshipToRoleData, bool)` + +GetDataOk returns a tuple with the Data field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### SetData + +`func (o *RelationshipToRole) SetData(v RelationshipToRoleData)` + +SetData sets Data field to given value. + +### HasData + +`func (o *RelationshipToRole) HasData() bool` + +HasData returns a boolean if a field has been set. + + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/api/v2/datadog/model_logs_archive.go b/api/v2/datadog/model_logs_archive.go new file mode 100644 index 00000000000..057dc7929ae --- /dev/null +++ b/api/v2/datadog/model_logs_archive.go @@ -0,0 +1,111 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchive The logs archive. +type LogsArchive struct { + Data *LogsArchiveDefinition `json:"data,omitempty"` +} + +// NewLogsArchive instantiates a new LogsArchive object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchive() *LogsArchive { + this := LogsArchive{} + return &this +} + +// NewLogsArchiveWithDefaults instantiates a new LogsArchive object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveWithDefaults() *LogsArchive { + this := LogsArchive{} + return &this +} + +// GetData returns the Data field value if set, zero value otherwise. +func (o *LogsArchive) GetData() LogsArchiveDefinition { + if o == nil || o.Data == nil { + var ret LogsArchiveDefinition + return ret + } + return *o.Data +} + +// GetDataOk returns a tuple with the Data field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchive) GetDataOk() (*LogsArchiveDefinition, bool) { + if o == nil || o.Data == nil { + return nil, false + } + return o.Data, true +} + +// HasData returns a boolean if a field has been set. +func (o *LogsArchive) HasData() bool { + if o != nil && o.Data != nil { + return true + } + + return false +} + +// SetData gets a reference to the given LogsArchiveDefinition and assigns it to the Data field. +func (o *LogsArchive) SetData(v LogsArchiveDefinition) { + o.Data = &v +} + +func (o LogsArchive) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if o.Data != nil { + toSerialize["data"] = o.Data + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchive struct { + value *LogsArchive + isSet bool +} + +func (v NullableLogsArchive) Get() *LogsArchive { + return v.value +} + +func (v *NullableLogsArchive) Set(val *LogsArchive) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchive) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchive) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchive(val *LogsArchive) *NullableLogsArchive { + return &NullableLogsArchive{value: val, isSet: true} +} + +func (v NullableLogsArchive) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchive) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_attributes.go b/api/v2/datadog/model_logs_archive_attributes.go new file mode 100644 index 00000000000..25e9144a5e0 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_attributes.go @@ -0,0 +1,202 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveAttributes The attributes associated with the archive. +type LogsArchiveAttributes struct { + Destination NullableLogsArchiveDestination `json:"destination"` + // The archive name. + Name string `json:"name"` + // The archive query/filter. Logs matching this query are included in the archive. + Query string `json:"query"` + State *LogsArchiveState `json:"state,omitempty"` +} + +// NewLogsArchiveAttributes instantiates a new LogsArchiveAttributes object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveAttributes(destination NullableLogsArchiveDestination, name string, query string) *LogsArchiveAttributes { + this := LogsArchiveAttributes{} + this.Destination = destination + this.Name = name + this.Query = query + return &this +} + +// NewLogsArchiveAttributesWithDefaults instantiates a new LogsArchiveAttributes object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveAttributesWithDefaults() *LogsArchiveAttributes { + this := LogsArchiveAttributes{} + return &this +} + +// GetDestination returns the Destination field value +// If the value is explicit nil, the zero value for LogsArchiveDestination will be returned +func (o *LogsArchiveAttributes) GetDestination() LogsArchiveDestination { + if o == nil || o.Destination.Get() == nil { + var ret LogsArchiveDestination + return ret + } + + return *o.Destination.Get() +} + +// GetDestinationOk returns a tuple with the Destination field value +// and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned +func (o *LogsArchiveAttributes) GetDestinationOk() (*LogsArchiveDestination, bool) { + if o == nil { + return nil, false + } + return o.Destination.Get(), o.Destination.IsSet() +} + +// SetDestination sets field value +func (o *LogsArchiveAttributes) SetDestination(v LogsArchiveDestination) { + o.Destination.Set(&v) +} + +// GetName returns the Name field value +func (o *LogsArchiveAttributes) GetName() string { + if o == nil { + var ret string + return ret + } + + return o.Name +} + +// GetNameOk returns a tuple with the Name field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveAttributes) GetNameOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Name, true +} + +// SetName sets field value +func (o *LogsArchiveAttributes) SetName(v string) { + o.Name = v +} + +// GetQuery returns the Query field value +func (o *LogsArchiveAttributes) GetQuery() string { + if o == nil { + var ret string + return ret + } + + return o.Query +} + +// GetQueryOk returns a tuple with the Query field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveAttributes) GetQueryOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Query, true +} + +// SetQuery sets field value +func (o *LogsArchiveAttributes) SetQuery(v string) { + o.Query = v +} + +// GetState returns the State field value if set, zero value otherwise. +func (o *LogsArchiveAttributes) GetState() LogsArchiveState { + if o == nil || o.State == nil { + var ret LogsArchiveState + return ret + } + return *o.State +} + +// GetStateOk returns a tuple with the State field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveAttributes) GetStateOk() (*LogsArchiveState, bool) { + if o == nil || o.State == nil { + return nil, false + } + return o.State, true +} + +// HasState returns a boolean if a field has been set. +func (o *LogsArchiveAttributes) HasState() bool { + if o != nil && o.State != nil { + return true + } + + return false +} + +// SetState gets a reference to the given LogsArchiveState and assigns it to the State field. +func (o *LogsArchiveAttributes) SetState(v LogsArchiveState) { + o.State = &v +} + +func (o LogsArchiveAttributes) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["destination"] = o.Destination.Get() + } + if true { + toSerialize["name"] = o.Name + } + if true { + toSerialize["query"] = o.Query + } + if o.State != nil { + toSerialize["state"] = o.State + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveAttributes struct { + value *LogsArchiveAttributes + isSet bool +} + +func (v NullableLogsArchiveAttributes) Get() *LogsArchiveAttributes { + return v.value +} + +func (v *NullableLogsArchiveAttributes) Set(val *LogsArchiveAttributes) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveAttributes) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveAttributes) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveAttributes(val *LogsArchiveAttributes) *NullableLogsArchiveAttributes { + return &NullableLogsArchiveAttributes{value: val, isSet: true} +} + +func (v NullableLogsArchiveAttributes) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveAttributes) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_create_request.go b/api/v2/datadog/model_logs_archive_create_request.go new file mode 100644 index 00000000000..b447aa48fb7 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_create_request.go @@ -0,0 +1,111 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveCreateRequest The logs archive. +type LogsArchiveCreateRequest struct { + Data *LogsArchiveCreateRequestDefinition `json:"data,omitempty"` +} + +// NewLogsArchiveCreateRequest instantiates a new LogsArchiveCreateRequest object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveCreateRequest() *LogsArchiveCreateRequest { + this := LogsArchiveCreateRequest{} + return &this +} + +// NewLogsArchiveCreateRequestWithDefaults instantiates a new LogsArchiveCreateRequest object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveCreateRequestWithDefaults() *LogsArchiveCreateRequest { + this := LogsArchiveCreateRequest{} + return &this +} + +// GetData returns the Data field value if set, zero value otherwise. +func (o *LogsArchiveCreateRequest) GetData() LogsArchiveCreateRequestDefinition { + if o == nil || o.Data == nil { + var ret LogsArchiveCreateRequestDefinition + return ret + } + return *o.Data +} + +// GetDataOk returns a tuple with the Data field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveCreateRequest) GetDataOk() (*LogsArchiveCreateRequestDefinition, bool) { + if o == nil || o.Data == nil { + return nil, false + } + return o.Data, true +} + +// HasData returns a boolean if a field has been set. +func (o *LogsArchiveCreateRequest) HasData() bool { + if o != nil && o.Data != nil { + return true + } + + return false +} + +// SetData gets a reference to the given LogsArchiveCreateRequestDefinition and assigns it to the Data field. +func (o *LogsArchiveCreateRequest) SetData(v LogsArchiveCreateRequestDefinition) { + o.Data = &v +} + +func (o LogsArchiveCreateRequest) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if o.Data != nil { + toSerialize["data"] = o.Data + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveCreateRequest struct { + value *LogsArchiveCreateRequest + isSet bool +} + +func (v NullableLogsArchiveCreateRequest) Get() *LogsArchiveCreateRequest { + return v.value +} + +func (v *NullableLogsArchiveCreateRequest) Set(val *LogsArchiveCreateRequest) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveCreateRequest) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveCreateRequest) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveCreateRequest(val *LogsArchiveCreateRequest) *NullableLogsArchiveCreateRequest { + return &NullableLogsArchiveCreateRequest{value: val, isSet: true} +} + +func (v NullableLogsArchiveCreateRequest) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveCreateRequest) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_create_request_attributes.go b/api/v2/datadog/model_logs_archive_create_request_attributes.go new file mode 100644 index 00000000000..9545c497919 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_create_request_attributes.go @@ -0,0 +1,164 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveCreateRequestAttributes The attributes associated with the archive. +type LogsArchiveCreateRequestAttributes struct { + Destination LogsArchiveCreateRequestDestination `json:"destination"` + // The archive name. + Name string `json:"name"` + // The archive query/filter. Logs matching this query are included in the archive. + Query string `json:"query"` +} + +// NewLogsArchiveCreateRequestAttributes instantiates a new LogsArchiveCreateRequestAttributes object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveCreateRequestAttributes(destination LogsArchiveCreateRequestDestination, name string, query string) *LogsArchiveCreateRequestAttributes { + this := LogsArchiveCreateRequestAttributes{} + this.Destination = destination + this.Name = name + this.Query = query + return &this +} + +// NewLogsArchiveCreateRequestAttributesWithDefaults instantiates a new LogsArchiveCreateRequestAttributes object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveCreateRequestAttributesWithDefaults() *LogsArchiveCreateRequestAttributes { + this := LogsArchiveCreateRequestAttributes{} + return &this +} + +// GetDestination returns the Destination field value +func (o *LogsArchiveCreateRequestAttributes) GetDestination() LogsArchiveCreateRequestDestination { + if o == nil { + var ret LogsArchiveCreateRequestDestination + return ret + } + + return o.Destination +} + +// GetDestinationOk returns a tuple with the Destination field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveCreateRequestAttributes) GetDestinationOk() (*LogsArchiveCreateRequestDestination, bool) { + if o == nil { + return nil, false + } + return &o.Destination, true +} + +// SetDestination sets field value +func (o *LogsArchiveCreateRequestAttributes) SetDestination(v LogsArchiveCreateRequestDestination) { + o.Destination = v +} + +// GetName returns the Name field value +func (o *LogsArchiveCreateRequestAttributes) GetName() string { + if o == nil { + var ret string + return ret + } + + return o.Name +} + +// GetNameOk returns a tuple with the Name field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveCreateRequestAttributes) GetNameOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Name, true +} + +// SetName sets field value +func (o *LogsArchiveCreateRequestAttributes) SetName(v string) { + o.Name = v +} + +// GetQuery returns the Query field value +func (o *LogsArchiveCreateRequestAttributes) GetQuery() string { + if o == nil { + var ret string + return ret + } + + return o.Query +} + +// GetQueryOk returns a tuple with the Query field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveCreateRequestAttributes) GetQueryOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Query, true +} + +// SetQuery sets field value +func (o *LogsArchiveCreateRequestAttributes) SetQuery(v string) { + o.Query = v +} + +func (o LogsArchiveCreateRequestAttributes) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["destination"] = o.Destination + } + if true { + toSerialize["name"] = o.Name + } + if true { + toSerialize["query"] = o.Query + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveCreateRequestAttributes struct { + value *LogsArchiveCreateRequestAttributes + isSet bool +} + +func (v NullableLogsArchiveCreateRequestAttributes) Get() *LogsArchiveCreateRequestAttributes { + return v.value +} + +func (v *NullableLogsArchiveCreateRequestAttributes) Set(val *LogsArchiveCreateRequestAttributes) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveCreateRequestAttributes) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveCreateRequestAttributes) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveCreateRequestAttributes(val *LogsArchiveCreateRequestAttributes) *NullableLogsArchiveCreateRequestAttributes { + return &NullableLogsArchiveCreateRequestAttributes{value: val, isSet: true} +} + +func (v NullableLogsArchiveCreateRequestAttributes) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveCreateRequestAttributes) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_create_request_definition.go b/api/v2/datadog/model_logs_archive_create_request_definition.go new file mode 100644 index 00000000000..816e13f27f5 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_create_request_definition.go @@ -0,0 +1,143 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveCreateRequestDefinition The definition of an archive. +type LogsArchiveCreateRequestDefinition struct { + Attributes *LogsArchiveCreateRequestAttributes `json:"attributes,omitempty"` + // The type of the resource. The value should always be archives. + Type string `json:"type"` +} + +// NewLogsArchiveCreateRequestDefinition instantiates a new LogsArchiveCreateRequestDefinition object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveCreateRequestDefinition(type_ string) *LogsArchiveCreateRequestDefinition { + this := LogsArchiveCreateRequestDefinition{} + this.Type = type_ + return &this +} + +// NewLogsArchiveCreateRequestDefinitionWithDefaults instantiates a new LogsArchiveCreateRequestDefinition object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveCreateRequestDefinitionWithDefaults() *LogsArchiveCreateRequestDefinition { + this := LogsArchiveCreateRequestDefinition{} + var type_ string = "archives" + this.Type = type_ + return &this +} + +// GetAttributes returns the Attributes field value if set, zero value otherwise. +func (o *LogsArchiveCreateRequestDefinition) GetAttributes() LogsArchiveCreateRequestAttributes { + if o == nil || o.Attributes == nil { + var ret LogsArchiveCreateRequestAttributes + return ret + } + return *o.Attributes +} + +// GetAttributesOk returns a tuple with the Attributes field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveCreateRequestDefinition) GetAttributesOk() (*LogsArchiveCreateRequestAttributes, bool) { + if o == nil || o.Attributes == nil { + return nil, false + } + return o.Attributes, true +} + +// HasAttributes returns a boolean if a field has been set. +func (o *LogsArchiveCreateRequestDefinition) HasAttributes() bool { + if o != nil && o.Attributes != nil { + return true + } + + return false +} + +// SetAttributes gets a reference to the given LogsArchiveCreateRequestAttributes and assigns it to the Attributes field. +func (o *LogsArchiveCreateRequestDefinition) SetAttributes(v LogsArchiveCreateRequestAttributes) { + o.Attributes = &v +} + +// GetType returns the Type field value +func (o *LogsArchiveCreateRequestDefinition) GetType() string { + if o == nil { + var ret string + return ret + } + + return o.Type +} + +// GetTypeOk returns a tuple with the Type field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveCreateRequestDefinition) GetTypeOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Type, true +} + +// SetType sets field value +func (o *LogsArchiveCreateRequestDefinition) SetType(v string) { + o.Type = v +} + +func (o LogsArchiveCreateRequestDefinition) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if o.Attributes != nil { + toSerialize["attributes"] = o.Attributes + } + if true { + toSerialize["type"] = o.Type + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveCreateRequestDefinition struct { + value *LogsArchiveCreateRequestDefinition + isSet bool +} + +func (v NullableLogsArchiveCreateRequestDefinition) Get() *LogsArchiveCreateRequestDefinition { + return v.value +} + +func (v *NullableLogsArchiveCreateRequestDefinition) Set(val *LogsArchiveCreateRequestDefinition) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveCreateRequestDefinition) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveCreateRequestDefinition) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveCreateRequestDefinition(val *LogsArchiveCreateRequestDefinition) *NullableLogsArchiveCreateRequestDefinition { + return &NullableLogsArchiveCreateRequestDefinition{value: val, isSet: true} +} + +func (v NullableLogsArchiveCreateRequestDefinition) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveCreateRequestDefinition) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_create_request_destination.go b/api/v2/datadog/model_logs_archive_create_request_destination.go new file mode 100644 index 00000000000..4bb30f6c263 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_create_request_destination.go @@ -0,0 +1,164 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" + "fmt" +) + +// LogsArchiveCreateRequestDestination - An archive's destination. +type LogsArchiveCreateRequestDestination struct { + LogsArchiveDestinationAzure *LogsArchiveDestinationAzure + LogsArchiveDestinationGCS *LogsArchiveDestinationGCS + LogsArchiveDestinationS3 *LogsArchiveDestinationS3 +} + +// LogsArchiveDestinationAzureAsLogsArchiveCreateRequestDestination is a convenience function that returns LogsArchiveDestinationAzure wrapped in LogsArchiveCreateRequestDestination +func LogsArchiveDestinationAzureAsLogsArchiveCreateRequestDestination(v *LogsArchiveDestinationAzure) LogsArchiveCreateRequestDestination { + return LogsArchiveCreateRequestDestination{LogsArchiveDestinationAzure: v} +} + +// LogsArchiveDestinationGCSAsLogsArchiveCreateRequestDestination is a convenience function that returns LogsArchiveDestinationGCS wrapped in LogsArchiveCreateRequestDestination +func LogsArchiveDestinationGCSAsLogsArchiveCreateRequestDestination(v *LogsArchiveDestinationGCS) LogsArchiveCreateRequestDestination { + return LogsArchiveCreateRequestDestination{LogsArchiveDestinationGCS: v} +} + +// LogsArchiveDestinationS3AsLogsArchiveCreateRequestDestination is a convenience function that returns LogsArchiveDestinationS3 wrapped in LogsArchiveCreateRequestDestination +func LogsArchiveDestinationS3AsLogsArchiveCreateRequestDestination(v *LogsArchiveDestinationS3) LogsArchiveCreateRequestDestination { + return LogsArchiveCreateRequestDestination{LogsArchiveDestinationS3: v} +} + +// Unmarshal JSON data into one of the pointers in the struct +func (dst *LogsArchiveCreateRequestDestination) UnmarshalJSON(data []byte) error { + var err error + match := 0 + // try to unmarshal data into LogsArchiveDestinationAzure + err = json.Unmarshal(data, &dst.LogsArchiveDestinationAzure) + if err == nil { + jsonLogsArchiveDestinationAzure, _ := json.Marshal(dst.LogsArchiveDestinationAzure) + if string(jsonLogsArchiveDestinationAzure) == "{}" { // empty struct + dst.LogsArchiveDestinationAzure = nil + } else { + match++ + } + } else { + dst.LogsArchiveDestinationAzure = nil + } + + // try to unmarshal data into LogsArchiveDestinationGCS + err = json.Unmarshal(data, &dst.LogsArchiveDestinationGCS) + if err == nil { + jsonLogsArchiveDestinationGCS, _ := json.Marshal(dst.LogsArchiveDestinationGCS) + if string(jsonLogsArchiveDestinationGCS) == "{}" { // empty struct + dst.LogsArchiveDestinationGCS = nil + } else { + match++ + } + } else { + dst.LogsArchiveDestinationGCS = nil + } + + // try to unmarshal data into LogsArchiveDestinationS3 + err = json.Unmarshal(data, &dst.LogsArchiveDestinationS3) + if err == nil { + jsonLogsArchiveDestinationS3, _ := json.Marshal(dst.LogsArchiveDestinationS3) + if string(jsonLogsArchiveDestinationS3) == "{}" { // empty struct + dst.LogsArchiveDestinationS3 = nil + } else { + match++ + } + } else { + dst.LogsArchiveDestinationS3 = nil + } + + if match > 1 { // more than 1 match + // reset to nil + dst.LogsArchiveDestinationAzure = nil + dst.LogsArchiveDestinationGCS = nil + dst.LogsArchiveDestinationS3 = nil + + return fmt.Errorf("Data matches more than one schema in oneOf(LogsArchiveCreateRequestDestination)") + } else if match == 1 { + return nil // exactly one match + } else { // no match + return fmt.Errorf("Data failed to match schemas in oneOf(LogsArchiveCreateRequestDestination)") + } +} + +// Marshal data from the first non-nil pointers in the struct to JSON +func (src LogsArchiveCreateRequestDestination) MarshalJSON() ([]byte, error) { + if src.LogsArchiveDestinationAzure != nil { + return json.Marshal(&src.LogsArchiveDestinationAzure) + } + + if src.LogsArchiveDestinationGCS != nil { + return json.Marshal(&src.LogsArchiveDestinationGCS) + } + + if src.LogsArchiveDestinationS3 != nil { + return json.Marshal(&src.LogsArchiveDestinationS3) + } + + return nil, nil // no data in oneOf schemas +} + +// Get the actual instance +func (obj *LogsArchiveCreateRequestDestination) GetActualInstance() interface{} { + if obj.LogsArchiveDestinationAzure != nil { + return obj.LogsArchiveDestinationAzure + } + + if obj.LogsArchiveDestinationGCS != nil { + return obj.LogsArchiveDestinationGCS + } + + if obj.LogsArchiveDestinationS3 != nil { + return obj.LogsArchiveDestinationS3 + } + + // all schemas are nil + return nil +} + +type NullableLogsArchiveCreateRequestDestination struct { + value *LogsArchiveCreateRequestDestination + isSet bool +} + +func (v NullableLogsArchiveCreateRequestDestination) Get() *LogsArchiveCreateRequestDestination { + return v.value +} + +func (v *NullableLogsArchiveCreateRequestDestination) Set(val *LogsArchiveCreateRequestDestination) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveCreateRequestDestination) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveCreateRequestDestination) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveCreateRequestDestination(val *LogsArchiveCreateRequestDestination) *NullableLogsArchiveCreateRequestDestination { + return &NullableLogsArchiveCreateRequestDestination{value: val, isSet: true} +} + +func (v NullableLogsArchiveCreateRequestDestination) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveCreateRequestDestination) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_definition.go b/api/v2/datadog/model_logs_archive_definition.go new file mode 100644 index 00000000000..006d3fba6d2 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_definition.go @@ -0,0 +1,180 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveDefinition The definition of an archive. +type LogsArchiveDefinition struct { + Attributes *LogsArchiveAttributes `json:"attributes,omitempty"` + // The archive ID. + Id *string `json:"id,omitempty"` + // The type of the resource. The value should always be archives. + Type string `json:"type"` +} + +// NewLogsArchiveDefinition instantiates a new LogsArchiveDefinition object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveDefinition(type_ string) *LogsArchiveDefinition { + this := LogsArchiveDefinition{} + this.Type = type_ + return &this +} + +// NewLogsArchiveDefinitionWithDefaults instantiates a new LogsArchiveDefinition object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveDefinitionWithDefaults() *LogsArchiveDefinition { + this := LogsArchiveDefinition{} + var type_ string = "archives" + this.Type = type_ + return &this +} + +// GetAttributes returns the Attributes field value if set, zero value otherwise. +func (o *LogsArchiveDefinition) GetAttributes() LogsArchiveAttributes { + if o == nil || o.Attributes == nil { + var ret LogsArchiveAttributes + return ret + } + return *o.Attributes +} + +// GetAttributesOk returns a tuple with the Attributes field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveDefinition) GetAttributesOk() (*LogsArchiveAttributes, bool) { + if o == nil || o.Attributes == nil { + return nil, false + } + return o.Attributes, true +} + +// HasAttributes returns a boolean if a field has been set. +func (o *LogsArchiveDefinition) HasAttributes() bool { + if o != nil && o.Attributes != nil { + return true + } + + return false +} + +// SetAttributes gets a reference to the given LogsArchiveAttributes and assigns it to the Attributes field. +func (o *LogsArchiveDefinition) SetAttributes(v LogsArchiveAttributes) { + o.Attributes = &v +} + +// GetId returns the Id field value if set, zero value otherwise. +func (o *LogsArchiveDefinition) GetId() string { + if o == nil || o.Id == nil { + var ret string + return ret + } + return *o.Id +} + +// GetIdOk returns a tuple with the Id field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveDefinition) GetIdOk() (*string, bool) { + if o == nil || o.Id == nil { + return nil, false + } + return o.Id, true +} + +// HasId returns a boolean if a field has been set. +func (o *LogsArchiveDefinition) HasId() bool { + if o != nil && o.Id != nil { + return true + } + + return false +} + +// SetId gets a reference to the given string and assigns it to the Id field. +func (o *LogsArchiveDefinition) SetId(v string) { + o.Id = &v +} + +// GetType returns the Type field value +func (o *LogsArchiveDefinition) GetType() string { + if o == nil { + var ret string + return ret + } + + return o.Type +} + +// GetTypeOk returns a tuple with the Type field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDefinition) GetTypeOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Type, true +} + +// SetType sets field value +func (o *LogsArchiveDefinition) SetType(v string) { + o.Type = v +} + +func (o LogsArchiveDefinition) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if o.Attributes != nil { + toSerialize["attributes"] = o.Attributes + } + if o.Id != nil { + toSerialize["id"] = o.Id + } + if true { + toSerialize["type"] = o.Type + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveDefinition struct { + value *LogsArchiveDefinition + isSet bool +} + +func (v NullableLogsArchiveDefinition) Get() *LogsArchiveDefinition { + return v.value +} + +func (v *NullableLogsArchiveDefinition) Set(val *LogsArchiveDefinition) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDefinition) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDefinition) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDefinition(val *LogsArchiveDefinition) *NullableLogsArchiveDefinition { + return &NullableLogsArchiveDefinition{value: val, isSet: true} +} + +func (v NullableLogsArchiveDefinition) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDefinition) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_destination.go b/api/v2/datadog/model_logs_archive_destination.go new file mode 100644 index 00000000000..0527064d632 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_destination.go @@ -0,0 +1,164 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" + "fmt" +) + +// LogsArchiveDestination - An archive's destination. +type LogsArchiveDestination struct { + LogsArchiveDestinationAzure *LogsArchiveDestinationAzure + LogsArchiveDestinationGCS *LogsArchiveDestinationGCS + LogsArchiveDestinationS3 *LogsArchiveDestinationS3 +} + +// LogsArchiveDestinationAzureAsLogsArchiveDestination is a convenience function that returns LogsArchiveDestinationAzure wrapped in LogsArchiveDestination +func LogsArchiveDestinationAzureAsLogsArchiveDestination(v *LogsArchiveDestinationAzure) LogsArchiveDestination { + return LogsArchiveDestination{LogsArchiveDestinationAzure: v} +} + +// LogsArchiveDestinationGCSAsLogsArchiveDestination is a convenience function that returns LogsArchiveDestinationGCS wrapped in LogsArchiveDestination +func LogsArchiveDestinationGCSAsLogsArchiveDestination(v *LogsArchiveDestinationGCS) LogsArchiveDestination { + return LogsArchiveDestination{LogsArchiveDestinationGCS: v} +} + +// LogsArchiveDestinationS3AsLogsArchiveDestination is a convenience function that returns LogsArchiveDestinationS3 wrapped in LogsArchiveDestination +func LogsArchiveDestinationS3AsLogsArchiveDestination(v *LogsArchiveDestinationS3) LogsArchiveDestination { + return LogsArchiveDestination{LogsArchiveDestinationS3: v} +} + +// Unmarshal JSON data into one of the pointers in the struct +func (dst *LogsArchiveDestination) UnmarshalJSON(data []byte) error { + var err error + match := 0 + // try to unmarshal data into LogsArchiveDestinationAzure + err = json.Unmarshal(data, &dst.LogsArchiveDestinationAzure) + if err == nil { + jsonLogsArchiveDestinationAzure, _ := json.Marshal(dst.LogsArchiveDestinationAzure) + if string(jsonLogsArchiveDestinationAzure) == "{}" { // empty struct + dst.LogsArchiveDestinationAzure = nil + } else { + match++ + } + } else { + dst.LogsArchiveDestinationAzure = nil + } + + // try to unmarshal data into LogsArchiveDestinationGCS + err = json.Unmarshal(data, &dst.LogsArchiveDestinationGCS) + if err == nil { + jsonLogsArchiveDestinationGCS, _ := json.Marshal(dst.LogsArchiveDestinationGCS) + if string(jsonLogsArchiveDestinationGCS) == "{}" { // empty struct + dst.LogsArchiveDestinationGCS = nil + } else { + match++ + } + } else { + dst.LogsArchiveDestinationGCS = nil + } + + // try to unmarshal data into LogsArchiveDestinationS3 + err = json.Unmarshal(data, &dst.LogsArchiveDestinationS3) + if err == nil { + jsonLogsArchiveDestinationS3, _ := json.Marshal(dst.LogsArchiveDestinationS3) + if string(jsonLogsArchiveDestinationS3) == "{}" { // empty struct + dst.LogsArchiveDestinationS3 = nil + } else { + match++ + } + } else { + dst.LogsArchiveDestinationS3 = nil + } + + if match > 1 { // more than 1 match + // reset to nil + dst.LogsArchiveDestinationAzure = nil + dst.LogsArchiveDestinationGCS = nil + dst.LogsArchiveDestinationS3 = nil + + return fmt.Errorf("Data matches more than one schema in oneOf(LogsArchiveDestination)") + } else if match == 1 { + return nil // exactly one match + } else { // no match + return fmt.Errorf("Data failed to match schemas in oneOf(LogsArchiveDestination)") + } +} + +// Marshal data from the first non-nil pointers in the struct to JSON +func (src LogsArchiveDestination) MarshalJSON() ([]byte, error) { + if src.LogsArchiveDestinationAzure != nil { + return json.Marshal(&src.LogsArchiveDestinationAzure) + } + + if src.LogsArchiveDestinationGCS != nil { + return json.Marshal(&src.LogsArchiveDestinationGCS) + } + + if src.LogsArchiveDestinationS3 != nil { + return json.Marshal(&src.LogsArchiveDestinationS3) + } + + return nil, nil // no data in oneOf schemas +} + +// Get the actual instance +func (obj *LogsArchiveDestination) GetActualInstance() interface{} { + if obj.LogsArchiveDestinationAzure != nil { + return obj.LogsArchiveDestinationAzure + } + + if obj.LogsArchiveDestinationGCS != nil { + return obj.LogsArchiveDestinationGCS + } + + if obj.LogsArchiveDestinationS3 != nil { + return obj.LogsArchiveDestinationS3 + } + + // all schemas are nil + return nil +} + +type NullableLogsArchiveDestination struct { + value *LogsArchiveDestination + isSet bool +} + +func (v NullableLogsArchiveDestination) Get() *LogsArchiveDestination { + return v.value +} + +func (v *NullableLogsArchiveDestination) Set(val *LogsArchiveDestination) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDestination) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDestination) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDestination(val *LogsArchiveDestination) *NullableLogsArchiveDestination { + return &NullableLogsArchiveDestination{value: val, isSet: true} +} + +func (v NullableLogsArchiveDestination) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDestination) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_destination_azure.go b/api/v2/datadog/model_logs_archive_destination_azure.go new file mode 100644 index 00000000000..ecf713f80a1 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_destination_azure.go @@ -0,0 +1,269 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveDestinationAzure The Azure archive destination. +type LogsArchiveDestinationAzure struct { + // The container where the archive will be stored. + Container string `json:"container"` + Integration LogsArchiveIntegrationAzure `json:"integration"` + // The archive path. + Path *string `json:"path,omitempty"` + // The region where the archive will be stored. + Region *string `json:"region,omitempty"` + // The associated storage account. + StorageAccount string `json:"storage_account"` + Type LogsArchiveDestinationAzureType `json:"type"` +} + +// NewLogsArchiveDestinationAzure instantiates a new LogsArchiveDestinationAzure object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveDestinationAzure(container string, integration LogsArchiveIntegrationAzure, storageAccount string, type_ LogsArchiveDestinationAzureType) *LogsArchiveDestinationAzure { + this := LogsArchiveDestinationAzure{} + this.Container = container + this.Integration = integration + this.StorageAccount = storageAccount + this.Type = type_ + return &this +} + +// NewLogsArchiveDestinationAzureWithDefaults instantiates a new LogsArchiveDestinationAzure object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveDestinationAzureWithDefaults() *LogsArchiveDestinationAzure { + this := LogsArchiveDestinationAzure{} + var type_ LogsArchiveDestinationAzureType = "azure" + this.Type = type_ + return &this +} + +// GetContainer returns the Container field value +func (o *LogsArchiveDestinationAzure) GetContainer() string { + if o == nil { + var ret string + return ret + } + + return o.Container +} + +// GetContainerOk returns a tuple with the Container field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationAzure) GetContainerOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Container, true +} + +// SetContainer sets field value +func (o *LogsArchiveDestinationAzure) SetContainer(v string) { + o.Container = v +} + +// GetIntegration returns the Integration field value +func (o *LogsArchiveDestinationAzure) GetIntegration() LogsArchiveIntegrationAzure { + if o == nil { + var ret LogsArchiveIntegrationAzure + return ret + } + + return o.Integration +} + +// GetIntegrationOk returns a tuple with the Integration field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationAzure) GetIntegrationOk() (*LogsArchiveIntegrationAzure, bool) { + if o == nil { + return nil, false + } + return &o.Integration, true +} + +// SetIntegration sets field value +func (o *LogsArchiveDestinationAzure) SetIntegration(v LogsArchiveIntegrationAzure) { + o.Integration = v +} + +// GetPath returns the Path field value if set, zero value otherwise. +func (o *LogsArchiveDestinationAzure) GetPath() string { + if o == nil || o.Path == nil { + var ret string + return ret + } + return *o.Path +} + +// GetPathOk returns a tuple with the Path field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationAzure) GetPathOk() (*string, bool) { + if o == nil || o.Path == nil { + return nil, false + } + return o.Path, true +} + +// HasPath returns a boolean if a field has been set. +func (o *LogsArchiveDestinationAzure) HasPath() bool { + if o != nil && o.Path != nil { + return true + } + + return false +} + +// SetPath gets a reference to the given string and assigns it to the Path field. +func (o *LogsArchiveDestinationAzure) SetPath(v string) { + o.Path = &v +} + +// GetRegion returns the Region field value if set, zero value otherwise. +func (o *LogsArchiveDestinationAzure) GetRegion() string { + if o == nil || o.Region == nil { + var ret string + return ret + } + return *o.Region +} + +// GetRegionOk returns a tuple with the Region field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationAzure) GetRegionOk() (*string, bool) { + if o == nil || o.Region == nil { + return nil, false + } + return o.Region, true +} + +// HasRegion returns a boolean if a field has been set. +func (o *LogsArchiveDestinationAzure) HasRegion() bool { + if o != nil && o.Region != nil { + return true + } + + return false +} + +// SetRegion gets a reference to the given string and assigns it to the Region field. +func (o *LogsArchiveDestinationAzure) SetRegion(v string) { + o.Region = &v +} + +// GetStorageAccount returns the StorageAccount field value +func (o *LogsArchiveDestinationAzure) GetStorageAccount() string { + if o == nil { + var ret string + return ret + } + + return o.StorageAccount +} + +// GetStorageAccountOk returns a tuple with the StorageAccount field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationAzure) GetStorageAccountOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.StorageAccount, true +} + +// SetStorageAccount sets field value +func (o *LogsArchiveDestinationAzure) SetStorageAccount(v string) { + o.StorageAccount = v +} + +// GetType returns the Type field value +func (o *LogsArchiveDestinationAzure) GetType() LogsArchiveDestinationAzureType { + if o == nil { + var ret LogsArchiveDestinationAzureType + return ret + } + + return o.Type +} + +// GetTypeOk returns a tuple with the Type field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationAzure) GetTypeOk() (*LogsArchiveDestinationAzureType, bool) { + if o == nil { + return nil, false + } + return &o.Type, true +} + +// SetType sets field value +func (o *LogsArchiveDestinationAzure) SetType(v LogsArchiveDestinationAzureType) { + o.Type = v +} + +func (o LogsArchiveDestinationAzure) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["container"] = o.Container + } + if true { + toSerialize["integration"] = o.Integration + } + if o.Path != nil { + toSerialize["path"] = o.Path + } + if o.Region != nil { + toSerialize["region"] = o.Region + } + if true { + toSerialize["storage_account"] = o.StorageAccount + } + if true { + toSerialize["type"] = o.Type + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveDestinationAzure struct { + value *LogsArchiveDestinationAzure + isSet bool +} + +func (v NullableLogsArchiveDestinationAzure) Get() *LogsArchiveDestinationAzure { + return v.value +} + +func (v *NullableLogsArchiveDestinationAzure) Set(val *LogsArchiveDestinationAzure) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDestinationAzure) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDestinationAzure) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDestinationAzure(val *LogsArchiveDestinationAzure) *NullableLogsArchiveDestinationAzure { + return &NullableLogsArchiveDestinationAzure{value: val, isSet: true} +} + +func (v NullableLogsArchiveDestinationAzure) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDestinationAzure) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_destination_azure_type.go b/api/v2/datadog/model_logs_archive_destination_azure_type.go new file mode 100644 index 00000000000..f99301bfa8c --- /dev/null +++ b/api/v2/datadog/model_logs_archive_destination_azure_type.go @@ -0,0 +1,80 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" + "fmt" +) + +// LogsArchiveDestinationAzureType Type of the Azure archive destination. +type LogsArchiveDestinationAzureType string + +// List of LogsArchiveDestinationAzureType +const ( + LOGSARCHIVEDESTINATIONAZURETYPE_AZURE LogsArchiveDestinationAzureType = "azure" +) + +func (v *LogsArchiveDestinationAzureType) UnmarshalJSON(src []byte) error { + var value string + err := json.Unmarshal(src, &value) + if err != nil { + return err + } + enumTypeValue := LogsArchiveDestinationAzureType(value) + for _, existing := range []LogsArchiveDestinationAzureType{"azure"} { + if existing == enumTypeValue { + *v = enumTypeValue + return nil + } + } + + return fmt.Errorf("%+v is not a valid LogsArchiveDestinationAzureType", *v) +} + +// Ptr returns reference to LogsArchiveDestinationAzureType value +func (v LogsArchiveDestinationAzureType) Ptr() *LogsArchiveDestinationAzureType { + return &v +} + +type NullableLogsArchiveDestinationAzureType struct { + value *LogsArchiveDestinationAzureType + isSet bool +} + +func (v NullableLogsArchiveDestinationAzureType) Get() *LogsArchiveDestinationAzureType { + return v.value +} + +func (v *NullableLogsArchiveDestinationAzureType) Set(val *LogsArchiveDestinationAzureType) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDestinationAzureType) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDestinationAzureType) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDestinationAzureType(val *LogsArchiveDestinationAzureType) *NullableLogsArchiveDestinationAzureType { + return &NullableLogsArchiveDestinationAzureType{value: val, isSet: true} +} + +func (v NullableLogsArchiveDestinationAzureType) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDestinationAzureType) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_destination_gcs.go b/api/v2/datadog/model_logs_archive_destination_gcs.go new file mode 100644 index 00000000000..840dad6968c --- /dev/null +++ b/api/v2/datadog/model_logs_archive_destination_gcs.go @@ -0,0 +1,202 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveDestinationGCS The GCS archive destination. +type LogsArchiveDestinationGCS struct { + // The bucket where the archive will be stored. + Bucket string `json:"bucket"` + Integration LogsArchiveIntegrationGCS `json:"integration"` + // The archive path. + Path *string `json:"path,omitempty"` + Type LogsArchiveDestinationGCSType `json:"type"` +} + +// NewLogsArchiveDestinationGCS instantiates a new LogsArchiveDestinationGCS object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveDestinationGCS(bucket string, integration LogsArchiveIntegrationGCS, type_ LogsArchiveDestinationGCSType) *LogsArchiveDestinationGCS { + this := LogsArchiveDestinationGCS{} + this.Bucket = bucket + this.Integration = integration + this.Type = type_ + return &this +} + +// NewLogsArchiveDestinationGCSWithDefaults instantiates a new LogsArchiveDestinationGCS object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveDestinationGCSWithDefaults() *LogsArchiveDestinationGCS { + this := LogsArchiveDestinationGCS{} + var type_ LogsArchiveDestinationGCSType = "gcs" + this.Type = type_ + return &this +} + +// GetBucket returns the Bucket field value +func (o *LogsArchiveDestinationGCS) GetBucket() string { + if o == nil { + var ret string + return ret + } + + return o.Bucket +} + +// GetBucketOk returns a tuple with the Bucket field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationGCS) GetBucketOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Bucket, true +} + +// SetBucket sets field value +func (o *LogsArchiveDestinationGCS) SetBucket(v string) { + o.Bucket = v +} + +// GetIntegration returns the Integration field value +func (o *LogsArchiveDestinationGCS) GetIntegration() LogsArchiveIntegrationGCS { + if o == nil { + var ret LogsArchiveIntegrationGCS + return ret + } + + return o.Integration +} + +// GetIntegrationOk returns a tuple with the Integration field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationGCS) GetIntegrationOk() (*LogsArchiveIntegrationGCS, bool) { + if o == nil { + return nil, false + } + return &o.Integration, true +} + +// SetIntegration sets field value +func (o *LogsArchiveDestinationGCS) SetIntegration(v LogsArchiveIntegrationGCS) { + o.Integration = v +} + +// GetPath returns the Path field value if set, zero value otherwise. +func (o *LogsArchiveDestinationGCS) GetPath() string { + if o == nil || o.Path == nil { + var ret string + return ret + } + return *o.Path +} + +// GetPathOk returns a tuple with the Path field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationGCS) GetPathOk() (*string, bool) { + if o == nil || o.Path == nil { + return nil, false + } + return o.Path, true +} + +// HasPath returns a boolean if a field has been set. +func (o *LogsArchiveDestinationGCS) HasPath() bool { + if o != nil && o.Path != nil { + return true + } + + return false +} + +// SetPath gets a reference to the given string and assigns it to the Path field. +func (o *LogsArchiveDestinationGCS) SetPath(v string) { + o.Path = &v +} + +// GetType returns the Type field value +func (o *LogsArchiveDestinationGCS) GetType() LogsArchiveDestinationGCSType { + if o == nil { + var ret LogsArchiveDestinationGCSType + return ret + } + + return o.Type +} + +// GetTypeOk returns a tuple with the Type field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationGCS) GetTypeOk() (*LogsArchiveDestinationGCSType, bool) { + if o == nil { + return nil, false + } + return &o.Type, true +} + +// SetType sets field value +func (o *LogsArchiveDestinationGCS) SetType(v LogsArchiveDestinationGCSType) { + o.Type = v +} + +func (o LogsArchiveDestinationGCS) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["bucket"] = o.Bucket + } + if true { + toSerialize["integration"] = o.Integration + } + if o.Path != nil { + toSerialize["path"] = o.Path + } + if true { + toSerialize["type"] = o.Type + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveDestinationGCS struct { + value *LogsArchiveDestinationGCS + isSet bool +} + +func (v NullableLogsArchiveDestinationGCS) Get() *LogsArchiveDestinationGCS { + return v.value +} + +func (v *NullableLogsArchiveDestinationGCS) Set(val *LogsArchiveDestinationGCS) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDestinationGCS) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDestinationGCS) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDestinationGCS(val *LogsArchiveDestinationGCS) *NullableLogsArchiveDestinationGCS { + return &NullableLogsArchiveDestinationGCS{value: val, isSet: true} +} + +func (v NullableLogsArchiveDestinationGCS) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDestinationGCS) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_destination_gcs_type.go b/api/v2/datadog/model_logs_archive_destination_gcs_type.go new file mode 100644 index 00000000000..e83913c3a43 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_destination_gcs_type.go @@ -0,0 +1,80 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" + "fmt" +) + +// LogsArchiveDestinationGCSType Type of the GCS archive destination. +type LogsArchiveDestinationGCSType string + +// List of LogsArchiveDestinationGCSType +const ( + LOGSARCHIVEDESTINATIONGCSTYPE_GCS LogsArchiveDestinationGCSType = "gcs" +) + +func (v *LogsArchiveDestinationGCSType) UnmarshalJSON(src []byte) error { + var value string + err := json.Unmarshal(src, &value) + if err != nil { + return err + } + enumTypeValue := LogsArchiveDestinationGCSType(value) + for _, existing := range []LogsArchiveDestinationGCSType{"gcs"} { + if existing == enumTypeValue { + *v = enumTypeValue + return nil + } + } + + return fmt.Errorf("%+v is not a valid LogsArchiveDestinationGCSType", *v) +} + +// Ptr returns reference to LogsArchiveDestinationGCSType value +func (v LogsArchiveDestinationGCSType) Ptr() *LogsArchiveDestinationGCSType { + return &v +} + +type NullableLogsArchiveDestinationGCSType struct { + value *LogsArchiveDestinationGCSType + isSet bool +} + +func (v NullableLogsArchiveDestinationGCSType) Get() *LogsArchiveDestinationGCSType { + return v.value +} + +func (v *NullableLogsArchiveDestinationGCSType) Set(val *LogsArchiveDestinationGCSType) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDestinationGCSType) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDestinationGCSType) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDestinationGCSType(val *LogsArchiveDestinationGCSType) *NullableLogsArchiveDestinationGCSType { + return &NullableLogsArchiveDestinationGCSType{value: val, isSet: true} +} + +func (v NullableLogsArchiveDestinationGCSType) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDestinationGCSType) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_destination_s3.go b/api/v2/datadog/model_logs_archive_destination_s3.go new file mode 100644 index 00000000000..6465a294b7e --- /dev/null +++ b/api/v2/datadog/model_logs_archive_destination_s3.go @@ -0,0 +1,202 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveDestinationS3 The S3 archive destination. +type LogsArchiveDestinationS3 struct { + // The bucket where the archive will be stored. + Bucket string `json:"bucket"` + Integration LogsArchiveIntegrationS3 `json:"integration"` + // The archive path. + Path *string `json:"path,omitempty"` + Type LogsArchiveDestinationS3Type `json:"type"` +} + +// NewLogsArchiveDestinationS3 instantiates a new LogsArchiveDestinationS3 object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveDestinationS3(bucket string, integration LogsArchiveIntegrationS3, type_ LogsArchiveDestinationS3Type) *LogsArchiveDestinationS3 { + this := LogsArchiveDestinationS3{} + this.Bucket = bucket + this.Integration = integration + this.Type = type_ + return &this +} + +// NewLogsArchiveDestinationS3WithDefaults instantiates a new LogsArchiveDestinationS3 object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveDestinationS3WithDefaults() *LogsArchiveDestinationS3 { + this := LogsArchiveDestinationS3{} + var type_ LogsArchiveDestinationS3Type = "s3" + this.Type = type_ + return &this +} + +// GetBucket returns the Bucket field value +func (o *LogsArchiveDestinationS3) GetBucket() string { + if o == nil { + var ret string + return ret + } + + return o.Bucket +} + +// GetBucketOk returns a tuple with the Bucket field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationS3) GetBucketOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.Bucket, true +} + +// SetBucket sets field value +func (o *LogsArchiveDestinationS3) SetBucket(v string) { + o.Bucket = v +} + +// GetIntegration returns the Integration field value +func (o *LogsArchiveDestinationS3) GetIntegration() LogsArchiveIntegrationS3 { + if o == nil { + var ret LogsArchiveIntegrationS3 + return ret + } + + return o.Integration +} + +// GetIntegrationOk returns a tuple with the Integration field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationS3) GetIntegrationOk() (*LogsArchiveIntegrationS3, bool) { + if o == nil { + return nil, false + } + return &o.Integration, true +} + +// SetIntegration sets field value +func (o *LogsArchiveDestinationS3) SetIntegration(v LogsArchiveIntegrationS3) { + o.Integration = v +} + +// GetPath returns the Path field value if set, zero value otherwise. +func (o *LogsArchiveDestinationS3) GetPath() string { + if o == nil || o.Path == nil { + var ret string + return ret + } + return *o.Path +} + +// GetPathOk returns a tuple with the Path field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationS3) GetPathOk() (*string, bool) { + if o == nil || o.Path == nil { + return nil, false + } + return o.Path, true +} + +// HasPath returns a boolean if a field has been set. +func (o *LogsArchiveDestinationS3) HasPath() bool { + if o != nil && o.Path != nil { + return true + } + + return false +} + +// SetPath gets a reference to the given string and assigns it to the Path field. +func (o *LogsArchiveDestinationS3) SetPath(v string) { + o.Path = &v +} + +// GetType returns the Type field value +func (o *LogsArchiveDestinationS3) GetType() LogsArchiveDestinationS3Type { + if o == nil { + var ret LogsArchiveDestinationS3Type + return ret + } + + return o.Type +} + +// GetTypeOk returns a tuple with the Type field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveDestinationS3) GetTypeOk() (*LogsArchiveDestinationS3Type, bool) { + if o == nil { + return nil, false + } + return &o.Type, true +} + +// SetType sets field value +func (o *LogsArchiveDestinationS3) SetType(v LogsArchiveDestinationS3Type) { + o.Type = v +} + +func (o LogsArchiveDestinationS3) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["bucket"] = o.Bucket + } + if true { + toSerialize["integration"] = o.Integration + } + if o.Path != nil { + toSerialize["path"] = o.Path + } + if true { + toSerialize["type"] = o.Type + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveDestinationS3 struct { + value *LogsArchiveDestinationS3 + isSet bool +} + +func (v NullableLogsArchiveDestinationS3) Get() *LogsArchiveDestinationS3 { + return v.value +} + +func (v *NullableLogsArchiveDestinationS3) Set(val *LogsArchiveDestinationS3) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDestinationS3) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDestinationS3) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDestinationS3(val *LogsArchiveDestinationS3) *NullableLogsArchiveDestinationS3 { + return &NullableLogsArchiveDestinationS3{value: val, isSet: true} +} + +func (v NullableLogsArchiveDestinationS3) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDestinationS3) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_destination_s3_type.go b/api/v2/datadog/model_logs_archive_destination_s3_type.go new file mode 100644 index 00000000000..564c0dfe229 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_destination_s3_type.go @@ -0,0 +1,80 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" + "fmt" +) + +// LogsArchiveDestinationS3Type Type of the S3 archive destination. +type LogsArchiveDestinationS3Type string + +// List of LogsArchiveDestinationS3Type +const ( + LOGSARCHIVEDESTINATIONS3TYPE_S3 LogsArchiveDestinationS3Type = "s3" +) + +func (v *LogsArchiveDestinationS3Type) UnmarshalJSON(src []byte) error { + var value string + err := json.Unmarshal(src, &value) + if err != nil { + return err + } + enumTypeValue := LogsArchiveDestinationS3Type(value) + for _, existing := range []LogsArchiveDestinationS3Type{"s3"} { + if existing == enumTypeValue { + *v = enumTypeValue + return nil + } + } + + return fmt.Errorf("%+v is not a valid LogsArchiveDestinationS3Type", *v) +} + +// Ptr returns reference to LogsArchiveDestinationS3Type value +func (v LogsArchiveDestinationS3Type) Ptr() *LogsArchiveDestinationS3Type { + return &v +} + +type NullableLogsArchiveDestinationS3Type struct { + value *LogsArchiveDestinationS3Type + isSet bool +} + +func (v NullableLogsArchiveDestinationS3Type) Get() *LogsArchiveDestinationS3Type { + return v.value +} + +func (v *NullableLogsArchiveDestinationS3Type) Set(val *LogsArchiveDestinationS3Type) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveDestinationS3Type) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveDestinationS3Type) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveDestinationS3Type(val *LogsArchiveDestinationS3Type) *NullableLogsArchiveDestinationS3Type { + return &NullableLogsArchiveDestinationS3Type{value: val, isSet: true} +} + +func (v NullableLogsArchiveDestinationS3Type) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveDestinationS3Type) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_integration_azure.go b/api/v2/datadog/model_logs_archive_integration_azure.go new file mode 100644 index 00000000000..c30abed4f71 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_integration_azure.go @@ -0,0 +1,135 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveIntegrationAzure The Azure archive's integration destination. +type LogsArchiveIntegrationAzure struct { + // A client ID. + ClientId string `json:"client_id"` + // A tenant ID. + TenantId string `json:"tenant_id"` +} + +// NewLogsArchiveIntegrationAzure instantiates a new LogsArchiveIntegrationAzure object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveIntegrationAzure(clientId string, tenantId string) *LogsArchiveIntegrationAzure { + this := LogsArchiveIntegrationAzure{} + this.ClientId = clientId + this.TenantId = tenantId + return &this +} + +// NewLogsArchiveIntegrationAzureWithDefaults instantiates a new LogsArchiveIntegrationAzure object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveIntegrationAzureWithDefaults() *LogsArchiveIntegrationAzure { + this := LogsArchiveIntegrationAzure{} + return &this +} + +// GetClientId returns the ClientId field value +func (o *LogsArchiveIntegrationAzure) GetClientId() string { + if o == nil { + var ret string + return ret + } + + return o.ClientId +} + +// GetClientIdOk returns a tuple with the ClientId field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveIntegrationAzure) GetClientIdOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.ClientId, true +} + +// SetClientId sets field value +func (o *LogsArchiveIntegrationAzure) SetClientId(v string) { + o.ClientId = v +} + +// GetTenantId returns the TenantId field value +func (o *LogsArchiveIntegrationAzure) GetTenantId() string { + if o == nil { + var ret string + return ret + } + + return o.TenantId +} + +// GetTenantIdOk returns a tuple with the TenantId field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveIntegrationAzure) GetTenantIdOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.TenantId, true +} + +// SetTenantId sets field value +func (o *LogsArchiveIntegrationAzure) SetTenantId(v string) { + o.TenantId = v +} + +func (o LogsArchiveIntegrationAzure) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["client_id"] = o.ClientId + } + if true { + toSerialize["tenant_id"] = o.TenantId + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveIntegrationAzure struct { + value *LogsArchiveIntegrationAzure + isSet bool +} + +func (v NullableLogsArchiveIntegrationAzure) Get() *LogsArchiveIntegrationAzure { + return v.value +} + +func (v *NullableLogsArchiveIntegrationAzure) Set(val *LogsArchiveIntegrationAzure) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveIntegrationAzure) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveIntegrationAzure) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveIntegrationAzure(val *LogsArchiveIntegrationAzure) *NullableLogsArchiveIntegrationAzure { + return &NullableLogsArchiveIntegrationAzure{value: val, isSet: true} +} + +func (v NullableLogsArchiveIntegrationAzure) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveIntegrationAzure) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_integration_gcs.go b/api/v2/datadog/model_logs_archive_integration_gcs.go new file mode 100644 index 00000000000..b093df702a9 --- /dev/null +++ b/api/v2/datadog/model_logs_archive_integration_gcs.go @@ -0,0 +1,135 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveIntegrationGCS The GCS archive's integration destination. +type LogsArchiveIntegrationGCS struct { + // A client email. + ClientEmail string `json:"client_email"` + // A project ID. + ProjectId string `json:"project_id"` +} + +// NewLogsArchiveIntegrationGCS instantiates a new LogsArchiveIntegrationGCS object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveIntegrationGCS(clientEmail string, projectId string) *LogsArchiveIntegrationGCS { + this := LogsArchiveIntegrationGCS{} + this.ClientEmail = clientEmail + this.ProjectId = projectId + return &this +} + +// NewLogsArchiveIntegrationGCSWithDefaults instantiates a new LogsArchiveIntegrationGCS object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveIntegrationGCSWithDefaults() *LogsArchiveIntegrationGCS { + this := LogsArchiveIntegrationGCS{} + return &this +} + +// GetClientEmail returns the ClientEmail field value +func (o *LogsArchiveIntegrationGCS) GetClientEmail() string { + if o == nil { + var ret string + return ret + } + + return o.ClientEmail +} + +// GetClientEmailOk returns a tuple with the ClientEmail field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveIntegrationGCS) GetClientEmailOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.ClientEmail, true +} + +// SetClientEmail sets field value +func (o *LogsArchiveIntegrationGCS) SetClientEmail(v string) { + o.ClientEmail = v +} + +// GetProjectId returns the ProjectId field value +func (o *LogsArchiveIntegrationGCS) GetProjectId() string { + if o == nil { + var ret string + return ret + } + + return o.ProjectId +} + +// GetProjectIdOk returns a tuple with the ProjectId field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveIntegrationGCS) GetProjectIdOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.ProjectId, true +} + +// SetProjectId sets field value +func (o *LogsArchiveIntegrationGCS) SetProjectId(v string) { + o.ProjectId = v +} + +func (o LogsArchiveIntegrationGCS) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["client_email"] = o.ClientEmail + } + if true { + toSerialize["project_id"] = o.ProjectId + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveIntegrationGCS struct { + value *LogsArchiveIntegrationGCS + isSet bool +} + +func (v NullableLogsArchiveIntegrationGCS) Get() *LogsArchiveIntegrationGCS { + return v.value +} + +func (v *NullableLogsArchiveIntegrationGCS) Set(val *LogsArchiveIntegrationGCS) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveIntegrationGCS) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveIntegrationGCS) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveIntegrationGCS(val *LogsArchiveIntegrationGCS) *NullableLogsArchiveIntegrationGCS { + return &NullableLogsArchiveIntegrationGCS{value: val, isSet: true} +} + +func (v NullableLogsArchiveIntegrationGCS) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveIntegrationGCS) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_integration_s3.go b/api/v2/datadog/model_logs_archive_integration_s3.go new file mode 100644 index 00000000000..db0b8325fcb --- /dev/null +++ b/api/v2/datadog/model_logs_archive_integration_s3.go @@ -0,0 +1,135 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchiveIntegrationS3 The S3 Archive's integration destination. +type LogsArchiveIntegrationS3 struct { + // The account ID for the integration. + AccountId string `json:"account_id"` + // The path of the integration. + RoleName string `json:"role_name"` +} + +// NewLogsArchiveIntegrationS3 instantiates a new LogsArchiveIntegrationS3 object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchiveIntegrationS3(accountId string, roleName string) *LogsArchiveIntegrationS3 { + this := LogsArchiveIntegrationS3{} + this.AccountId = accountId + this.RoleName = roleName + return &this +} + +// NewLogsArchiveIntegrationS3WithDefaults instantiates a new LogsArchiveIntegrationS3 object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchiveIntegrationS3WithDefaults() *LogsArchiveIntegrationS3 { + this := LogsArchiveIntegrationS3{} + return &this +} + +// GetAccountId returns the AccountId field value +func (o *LogsArchiveIntegrationS3) GetAccountId() string { + if o == nil { + var ret string + return ret + } + + return o.AccountId +} + +// GetAccountIdOk returns a tuple with the AccountId field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveIntegrationS3) GetAccountIdOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.AccountId, true +} + +// SetAccountId sets field value +func (o *LogsArchiveIntegrationS3) SetAccountId(v string) { + o.AccountId = v +} + +// GetRoleName returns the RoleName field value +func (o *LogsArchiveIntegrationS3) GetRoleName() string { + if o == nil { + var ret string + return ret + } + + return o.RoleName +} + +// GetRoleNameOk returns a tuple with the RoleName field value +// and a boolean to check if the value has been set. +func (o *LogsArchiveIntegrationS3) GetRoleNameOk() (*string, bool) { + if o == nil { + return nil, false + } + return &o.RoleName, true +} + +// SetRoleName sets field value +func (o *LogsArchiveIntegrationS3) SetRoleName(v string) { + o.RoleName = v +} + +func (o LogsArchiveIntegrationS3) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if true { + toSerialize["account_id"] = o.AccountId + } + if true { + toSerialize["role_name"] = o.RoleName + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchiveIntegrationS3 struct { + value *LogsArchiveIntegrationS3 + isSet bool +} + +func (v NullableLogsArchiveIntegrationS3) Get() *LogsArchiveIntegrationS3 { + return v.value +} + +func (v *NullableLogsArchiveIntegrationS3) Set(val *LogsArchiveIntegrationS3) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveIntegrationS3) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveIntegrationS3) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveIntegrationS3(val *LogsArchiveIntegrationS3) *NullableLogsArchiveIntegrationS3 { + return &NullableLogsArchiveIntegrationS3{value: val, isSet: true} +} + +func (v NullableLogsArchiveIntegrationS3) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveIntegrationS3) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archive_state.go b/api/v2/datadog/model_logs_archive_state.go new file mode 100644 index 00000000000..8465ed02d0e --- /dev/null +++ b/api/v2/datadog/model_logs_archive_state.go @@ -0,0 +1,83 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" + "fmt" +) + +// LogsArchiveState The state of the archive. +type LogsArchiveState string + +// List of LogsArchiveState +const ( + LOGSARCHIVESTATE_UNKNOWN LogsArchiveState = "UNKNOWN" + LOGSARCHIVESTATE_WORKING LogsArchiveState = "WORKING" + LOGSARCHIVESTATE_FAILING LogsArchiveState = "FAILING" + LOGSARCHIVESTATE_WORKING_AUTH_LEGACY LogsArchiveState = "WORKING_AUTH_LEGACY" +) + +func (v *LogsArchiveState) UnmarshalJSON(src []byte) error { + var value string + err := json.Unmarshal(src, &value) + if err != nil { + return err + } + enumTypeValue := LogsArchiveState(value) + for _, existing := range []LogsArchiveState{"UNKNOWN", "WORKING", "FAILING", "WORKING_AUTH_LEGACY"} { + if existing == enumTypeValue { + *v = enumTypeValue + return nil + } + } + + return fmt.Errorf("%+v is not a valid LogsArchiveState", *v) +} + +// Ptr returns reference to LogsArchiveState value +func (v LogsArchiveState) Ptr() *LogsArchiveState { + return &v +} + +type NullableLogsArchiveState struct { + value *LogsArchiveState + isSet bool +} + +func (v NullableLogsArchiveState) Get() *LogsArchiveState { + return v.value +} + +func (v *NullableLogsArchiveState) Set(val *LogsArchiveState) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchiveState) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchiveState) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchiveState(val *LogsArchiveState) *NullableLogsArchiveState { + return &NullableLogsArchiveState{value: val, isSet: true} +} + +func (v NullableLogsArchiveState) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchiveState) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_logs_archives.go b/api/v2/datadog/model_logs_archives.go new file mode 100644 index 00000000000..63ce4f803a6 --- /dev/null +++ b/api/v2/datadog/model_logs_archives.go @@ -0,0 +1,112 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// LogsArchives The available archives. +type LogsArchives struct { + // A list of archives. + Data *[]LogsArchiveDefinition `json:"data,omitempty"` +} + +// NewLogsArchives instantiates a new LogsArchives object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewLogsArchives() *LogsArchives { + this := LogsArchives{} + return &this +} + +// NewLogsArchivesWithDefaults instantiates a new LogsArchives object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewLogsArchivesWithDefaults() *LogsArchives { + this := LogsArchives{} + return &this +} + +// GetData returns the Data field value if set, zero value otherwise. +func (o *LogsArchives) GetData() []LogsArchiveDefinition { + if o == nil || o.Data == nil { + var ret []LogsArchiveDefinition + return ret + } + return *o.Data +} + +// GetDataOk returns a tuple with the Data field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LogsArchives) GetDataOk() (*[]LogsArchiveDefinition, bool) { + if o == nil || o.Data == nil { + return nil, false + } + return o.Data, true +} + +// HasData returns a boolean if a field has been set. +func (o *LogsArchives) HasData() bool { + if o != nil && o.Data != nil { + return true + } + + return false +} + +// SetData gets a reference to the given []LogsArchiveDefinition and assigns it to the Data field. +func (o *LogsArchives) SetData(v []LogsArchiveDefinition) { + o.Data = &v +} + +func (o LogsArchives) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if o.Data != nil { + toSerialize["data"] = o.Data + } + return json.Marshal(toSerialize) +} + +type NullableLogsArchives struct { + value *LogsArchives + isSet bool +} + +func (v NullableLogsArchives) Get() *LogsArchives { + return v.value +} + +func (v *NullableLogsArchives) Set(val *LogsArchives) { + v.value = val + v.isSet = true +} + +func (v NullableLogsArchives) IsSet() bool { + return v.isSet +} + +func (v *NullableLogsArchives) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableLogsArchives(val *LogsArchives) *NullableLogsArchives { + return &NullableLogsArchives{value: val, isSet: true} +} + +func (v NullableLogsArchives) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableLogsArchives) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/api/v2/datadog/model_relationship_to_role.go b/api/v2/datadog/model_relationship_to_role.go new file mode 100644 index 00000000000..3dbb2be638f --- /dev/null +++ b/api/v2/datadog/model_relationship_to_role.go @@ -0,0 +1,111 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package datadog + +import ( + "encoding/json" +) + +// RelationshipToRole Relationship to role. +type RelationshipToRole struct { + Data *RelationshipToRoleData `json:"data,omitempty"` +} + +// NewRelationshipToRole instantiates a new RelationshipToRole object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewRelationshipToRole() *RelationshipToRole { + this := RelationshipToRole{} + return &this +} + +// NewRelationshipToRoleWithDefaults instantiates a new RelationshipToRole object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewRelationshipToRoleWithDefaults() *RelationshipToRole { + this := RelationshipToRole{} + return &this +} + +// GetData returns the Data field value if set, zero value otherwise. +func (o *RelationshipToRole) GetData() RelationshipToRoleData { + if o == nil || o.Data == nil { + var ret RelationshipToRoleData + return ret + } + return *o.Data +} + +// GetDataOk returns a tuple with the Data field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RelationshipToRole) GetDataOk() (*RelationshipToRoleData, bool) { + if o == nil || o.Data == nil { + return nil, false + } + return o.Data, true +} + +// HasData returns a boolean if a field has been set. +func (o *RelationshipToRole) HasData() bool { + if o != nil && o.Data != nil { + return true + } + + return false +} + +// SetData gets a reference to the given RelationshipToRoleData and assigns it to the Data field. +func (o *RelationshipToRole) SetData(v RelationshipToRoleData) { + o.Data = &v +} + +func (o RelationshipToRole) MarshalJSON() ([]byte, error) { + toSerialize := map[string]interface{}{} + if o.Data != nil { + toSerialize["data"] = o.Data + } + return json.Marshal(toSerialize) +} + +type NullableRelationshipToRole struct { + value *RelationshipToRole + isSet bool +} + +func (v NullableRelationshipToRole) Get() *RelationshipToRole { + return v.value +} + +func (v *NullableRelationshipToRole) Set(val *RelationshipToRole) { + v.value = val + v.isSet = true +} + +func (v NullableRelationshipToRole) IsSet() bool { + return v.isSet +} + +func (v *NullableRelationshipToRole) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableRelationshipToRole(val *RelationshipToRole) *NullableRelationshipToRole { + return &NullableRelationshipToRole{value: val, isSet: true} +} + +func (v NullableRelationshipToRole) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableRelationshipToRole) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/tests/api/v2/datadog/api_logs_archives_test.go b/tests/api/v2/datadog/api_logs_archives_test.go new file mode 100644 index 00000000000..57f974e7417 --- /dev/null +++ b/tests/api/v2/datadog/api_logs_archives_test.go @@ -0,0 +1,227 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package test + +import ( + "context" + "fmt" + "testing" + + "github.com/DataDog/datadog-api-client-go/api/v2/datadog" + "github.com/DataDog/datadog-api-client-go/tests" + "gopkg.in/h2non/gock.v1" +) + +// This test uses mocking because: 1) it relies on private data. 2) It relies on external services + +func TestLogsArchivesCreate(t *testing.T) { + testCases := []struct { + archiveType string + archive datadog.LogsArchiveCreateRequest + }{ + { + archiveType: "s3", + archive: datadog.LogsArchiveCreateRequest{ + Data: &datadog.LogsArchiveCreateRequestDefinition{ + Attributes: &datadog.LogsArchiveCreateRequestAttributes{ + Destination: datadog.LogsArchiveCreateRequestDestination{ + LogsArchiveDestinationS3: &datadog.LogsArchiveDestinationS3{ + Bucket: "dd-logs-test-datadog-api-client-go", + Integration: datadog.LogsArchiveIntegrationS3{ + AccountId: "711111111111", + RoleName: "DatadogGoClientTestIntegrationRole", + }, + Path: datadog.PtrString("/path/blou"), + Type: "s3", + }, + }, + Name: "datadog-api-client-go Tests Archive", + Query: "service:toto", + }, + Type: "archives", + }, + }, + }, + { + archiveType: "azure", + archive: datadog.LogsArchiveCreateRequest{ + Data: &datadog.LogsArchiveCreateRequestDefinition{ + Attributes: &datadog.LogsArchiveCreateRequestAttributes{ + Destination: datadog.LogsArchiveCreateRequestDestination{ + LogsArchiveDestinationAzure: &datadog.LogsArchiveDestinationAzure{ + Container: "my-container", + Integration: datadog.LogsArchiveIntegrationAzure{ + ClientId: "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", + TenantId: "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", + }, + Path: datadog.PtrString("/path/blou"), + Region: datadog.PtrString("my-region"), + StorageAccount: "storageAccount", + Type: "azure", + }, + }, + Name: "datadog-api-client-go Tests Archive", + Query: "service:toto", + }, + Type: "archives", + }, + }, + }, + { + archiveType: "gcs", + archive: datadog.LogsArchiveCreateRequest{ + Data: &datadog.LogsArchiveCreateRequestDefinition{ + Attributes: &datadog.LogsArchiveCreateRequestAttributes{ + Destination: datadog.LogsArchiveCreateRequestDestination{ + LogsArchiveDestinationGCS: &datadog.LogsArchiveDestinationGCS{ + Bucket: "dd-logs-test-datadog-api-client-go", + Integration: datadog.LogsArchiveIntegrationGCS{ + ClientEmail: "email@email.com", + ProjectId: "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", + }, + Path: datadog.PtrString("/path/blou"), + Type: "gcs", + }, + }, + Name: "datadog-api-client-go Tests Archive", + Query: "service:toto", + }, + Type: "archives", + }, + }, + }, + } + for _, tc := range testCases { + t.Run(tc.archiveType, func(t *testing.T) { + ctx, finish := WithClient(WithFakeAuth(context.Background()), t) + defer finish() + + client := Client(ctx) + assert := tests.Assert(ctx, t) + + outputArchiveStr := readFixture(t, fmt.Sprintf("fixtures/logs/archives/%s/out/%s.json", tc.archiveType, "create")) + outputArchive := datadog.NullableLogsArchive{} + outputArchive.UnmarshalJSON([]byte(outputArchiveStr)) + + URL, err := client.GetConfig().ServerURLWithContext(ctx, "LogsArchivesApiService.CreateLogsArchive") + assert.NoError(err) + + gock.New(URL).Post("/api/v2/logs/config/archives").MatchType("json").JSON(tc.archive).Reply(200).Type("json").BodyString(outputArchiveStr) + defer gock.Off() + + result, httpresp, err := client.LogsArchivesApi.CreateLogsArchive(ctx).Body(tc.archive).Execute() + assert.NoError(err) + assert.Equal(httpresp.StatusCode, 200) + assert.Equal(result, *outputArchive.Get()) + }) + } +} + +func TestLogsArchivesUpdate(t *testing.T) { + ctx, finish := WithClient(WithFakeAuth(context.Background()), t) + defer finish() + assert := tests.Assert(ctx, t) + client := Client(ctx) + archiveType := "s3" + action := "update" + inputArchive := datadog.LogsArchiveCreateRequest{ + Data: &datadog.LogsArchiveCreateRequestDefinition{ + Attributes: &datadog.LogsArchiveCreateRequestAttributes{ + Destination: datadog.LogsArchiveCreateRequestDestination{ + LogsArchiveDestinationS3: &datadog.LogsArchiveDestinationS3{ + Bucket: "dd-logs-test-datadog-api-client-go", + Integration: datadog.LogsArchiveIntegrationS3{ + AccountId: "711111111111", + RoleName: "DatadogGoClientTestIntegrationRole", + }, + Path: datadog.PtrString("/path/blou"), + Type: "s3", + }, + }, + Name: "datadog-api-client-go Tests Archive", + Query: "service:toto", + }, + Type: "archives", + }, + } + outputArchiveStr := readFixture(t, fmt.Sprintf("fixtures/logs/archives/%s/out/%s.json", archiveType, action)) + outputArchive := datadog.NullableLogsArchive{} + outputArchive.UnmarshalJSON([]byte(outputArchiveStr)) + URL, err := client.GetConfig().ServerURLWithContext(ctx, "LogsArchivesApiService.UpdateLogsArchive") + assert.NoError(err) + id := "FOObartotO" + gock.New(URL).Put(fmt.Sprintf("/api/v2/logs/config/archives/%s", id)).MatchType("json").JSON(inputArchive).Reply(200).Type("json").BodyString(outputArchiveStr) + defer gock.Off() + result, httpresp, err := client.LogsArchivesApi.UpdateLogsArchive(ctx, id).Body(inputArchive).Execute() + assert.Equal(httpresp.StatusCode, 200) + assert.Equal(result, *outputArchive.Get()) +} + +func TestLogsArchivesGetByID(t *testing.T) { + ctx, finish := WithClient(WithFakeAuth(context.Background()), t) + defer finish() + assert := tests.Assert(ctx, t) + client := Client(ctx) + id := "FOObartotO" + action := "getbyid" + archiveType := "s3" + outputArchiveStr := readFixture(t, fmt.Sprintf("fixtures/logs/archives/%s/out/%s.json", archiveType, action)) + outputArchive := datadog.NullableLogsArchive{} + outputArchive.UnmarshalJSON([]byte(outputArchiveStr)) + URL, err := client.GetConfig().ServerURLWithContext(ctx, "LogsArchivesApiService.GetLogsArchive") + assert.NoError(err) + gock.New(URL).Get(fmt.Sprintf("/api/v2/logs/config/archives/%s", id)).Reply(200).Type("json").BodyString(outputArchiveStr) + defer gock.Off() + result, httpresp, err := client.LogsArchivesApi.GetLogsArchive(ctx, id).Execute() + assert.Equal(httpresp.StatusCode, 200) + assert.Equal(result, *outputArchive.Get()) +} + +func TestLogsArchivesDelete(t *testing.T) { + ctx, finish := WithClient(WithFakeAuth(context.Background()), t) + defer finish() + assert := tests.Assert(ctx, t) + id := "FOObartotO" + client := Client(ctx) + URL, err := client.GetConfig().ServerURLWithContext(ctx, "LogsArchivesApiService.DeleteLogsArchive") + assert.NoError(err) + gock.New(URL).Delete(fmt.Sprintf("/api/v2/logs/config/archives/%s", id)).Reply(204) + defer gock.Off() + httpresp, err := client.LogsArchivesApi.DeleteLogsArchive(ctx, id).Execute() + assert.NoError(err) + assert.Equal(httpresp.StatusCode, 204) +} + +func TestLogsArchivesGetAll(t *testing.T) { + ctx, finish := WithClient(WithFakeAuth(context.Background()), t) + defer finish() + client := Client(ctx) + assert := tests.Assert(ctx, t) + action := "getall" + archiveType := "s3" + outputArchivesStr := readFixture(t, fmt.Sprintf("fixtures/logs/archives/%s/out/%s.json", archiveType, action)) + outputArchives := datadog.NullableLogsArchives{} + outputArchives.UnmarshalJSON([]byte(outputArchivesStr)) + URL, err := Client(ctx).GetConfig().ServerURLWithContext(ctx, "LogsArchivesApiService.ListLogsArchives") + assert.NoError(err) + gock.New(URL).Get("/api/v2/logs/config/archives").Reply(200).Type("json").JSON(outputArchivesStr) + defer gock.Off() + result, httpresp, err := client.LogsArchivesApi.ListLogsArchives(ctx).Execute() + assert.NoError(err) + assert.Equal(httpresp.StatusCode, 200) + assert.True(len(*result.Data) > 0) + assert.Equal(*outputArchives.Get(), result) +} + +func readFixture(t *testing.T, path string) string { + t.Helper() + res, err := tests.ReadFixture(path) + if err != nil { + t.Fatalf("Failed to read fixture: %s", err) + } + return res +} diff --git a/tests/api/v2/datadog/fixtures/logs/archives/azure/out/create.json b/tests/api/v2/datadog/fixtures/logs/archives/azure/out/create.json new file mode 100644 index 00000000000..b86384edfca --- /dev/null +++ b/tests/api/v2/datadog/fixtures/logs/archives/azure/out/create.json @@ -0,0 +1 @@ +{"data":{"attributes":{"destination":{"container":"my-container","integration":{"client_id":"aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa","tenant_id":"aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"},"path":"/path/blou","region":"my-region","storage_account":"storageAccount","type":"azure"},"name":"datadog-api-client-go Tests Archive","query":"service:toto"},"id":"FOObartotO","type":"archives"}} diff --git a/tests/api/v2/datadog/fixtures/logs/archives/gcs/out/create.json b/tests/api/v2/datadog/fixtures/logs/archives/gcs/out/create.json new file mode 100644 index 00000000000..974bb7fd053 --- /dev/null +++ b/tests/api/v2/datadog/fixtures/logs/archives/gcs/out/create.json @@ -0,0 +1 @@ +{"data":{"attributes":{"destination":{"bucket":"dd-logs-test-datadog-api-client-go","integration":{"client_email":"email@email.com","project_id":"aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"},"path":"/path/blou","type":"gcs"},"name":"datadog-api-client-go Tests Archive","query":"service:toto"},"id":"FOObartotO","type":"archives"}} diff --git a/tests/api/v2/datadog/fixtures/logs/archives/s3/out/create.json b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/create.json new file mode 100644 index 00000000000..0de28cdd41c --- /dev/null +++ b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/create.json @@ -0,0 +1 @@ +{"data":{"attributes":{"destination":{"bucket":"dd-logs-test-datadog-api-client-go","integration":{"account_id":"711111111111","role_name":"DatadogGoClientTestIntegrationRole"},"path":"/path/blou","type":"s3"},"name":"datadog-api-client-go Tests Archive","query":"service:toto"},"id":"XVlBzgbaiC","type":"archives"}} diff --git a/tests/api/v2/datadog/fixtures/logs/archives/s3/out/getall.json b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/getall.json new file mode 100644 index 00000000000..ea40bdbde3d --- /dev/null +++ b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/getall.json @@ -0,0 +1 @@ +{"data":[{"attributes":{"destination":{"bucket":"dd-logs-test-datadog-api-client-go","integration":{"account_id":"711111111111","role_name":"DatadogGoClientTestIntegrationRole"},"path":"/path/blou","type":"s3"},"name":"datadog-api-client-go Tests Archive","query":"source:tata"},"id":"FOObartotO","type":"archives"}]} diff --git a/tests/api/v2/datadog/fixtures/logs/archives/s3/out/getbyid.json b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/getbyid.json new file mode 100644 index 00000000000..abe709eeade --- /dev/null +++ b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/getbyid.json @@ -0,0 +1 @@ +{"data":{"attributes":{"destination":{"bucket":"dd-logs-test-datadog-api-client-go","integration":{"account_id":"711111111111","role_name":"DatadogGoClientTestIntegrationRole"},"path":"/path/blou","type":"s3"},"name":"datadog-api-client-go Tests Archive","query":"source:tata"},"id":"FOObartotO","type":"archives"}} diff --git a/tests/api/v2/datadog/fixtures/logs/archives/s3/out/update.json b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/update.json new file mode 100644 index 00000000000..09024c05517 --- /dev/null +++ b/tests/api/v2/datadog/fixtures/logs/archives/s3/out/update.json @@ -0,0 +1 @@ +{"data":{"attributes":{"destination":{"bucket":"dd-logs-test-datadog-api-client-go","integration":{"account_id":"711111111111","role_name":"DatadogGoClientTestIntegrationRole"},"path":"/path/toto","type":"s3"},"name":"datadog-api-client-go Tests Archive","query":"service:toto"},"id":"FOObartotO","type":"archives"}}