{
  "batchPath": "batch",
  "servicePath": "",
  "basePath": "",
  "discoveryVersion": "v1",
  "baseUrl": "https://auditmanager.googleapis.com/",
  "parameters": {
    "access_token": {
      "location": "query",
      "type": "string",
      "description": "OAuth access token."
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "type": "string",
      "location": "query"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "type": "string",
      "location": "query"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "type": "string",
      "description": "OAuth 2.0 token for the current user.",
      "location": "query"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "type": "string",
      "location": "query"
    },
    "alt": {
      "description": "Data format for response.",
      "default": "json",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "type": "string",
      "location": "query"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "type": "boolean",
      "description": "Returns response with indentations and line breaks.",
      "default": "true",
      "location": "query"
    },
    "$.xgafv": {
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "enum": [
        "1",
        "2"
      ],
      "location": "query",
      "type": "string",
      "description": "V1 error format."
    }
  },
  "kind": "discovery#restDescription",
  "protocol": "rest",
  "version": "v1",
  "schemas": {
    "Operation": {
      "type": "object",
      "properties": {
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "type": "object",
          "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`."
        },
        "name": {
          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.",
          "type": "string"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any."
        },
        "error": {
          "description": "The error result of the operation in case of failure or cancellation.",
          "$ref": "Status"
        },
        "done": {
          "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.",
          "type": "boolean"
        }
      },
      "id": "Operation",
      "description": "This resource represents a long-running operation that is the result of a network API call."
    },
    "ListLocationsResponse": {
      "description": "The response message for Locations.ListLocations.",
      "id": "ListLocationsResponse",
      "properties": {
        "locations": {
          "type": "array",
          "description": "A list of locations that matches the specified filter in the request.",
          "items": {
            "$ref": "Location"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "The standard List next-page token."
        }
      },
      "type": "object"
    },
    "CancelOperationRequest": {
      "description": "The request message for Operations.CancelOperation.",
      "id": "CancelOperationRequest",
      "type": "object",
      "properties": {}
    },
    "AuditScopeReport": {
      "description": "Audit scope report.",
      "type": "object",
      "id": "AuditScopeReport",
      "properties": {
        "name": {
          "type": "string",
          "description": "Identifier. Name for the audit scope report, in one of the following formats: * `projects/{project}/locations/{location}/auditScopeReports/{audit_scope_report}` * `folders/{folder}/locations/{location}/auditScopeReports/{audit_scope_report}` * `organizations/{organization}/locations/{location}/auditScopeReports/{audit_scope_report}`"
        },
        "scopeReportContents": {
          "format": "byte",
          "type": "string",
          "description": "Audit scope report content in byte format."
        }
      }
    },
    "AuditSchedule": {
      "id": "AuditSchedule",
      "type": "object",
      "properties": {
        "nextRunTime": {
          "description": "Output only. Calculated timestamp for the next scheduled run.",
          "type": "string",
          "format": "google-datetime",
          "readOnly": true
        },
        "lastTriggerTime": {
          "description": "Output only. Timestamp when the audit run was last triggered.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. Timestamp when the schedule was last updated.",
          "type": "string",
          "readOnly": true,
          "format": "google-datetime"
        },
        "name": {
          "description": "Identifier. Unique identifier for the audit schedule. Format: projects/{project}/locations/{location}/auditSchedules/{audit_schedule} folders/{folder}/locations/{location}/auditSchedules/{audit_schedule} organizations/{organization}/locations/{location}/auditSchedules/{audit_schedule}",
          "type": "string"
        },
        "displayName": {
          "description": "Optional. Display name for the audit schedule.",
          "type": "string"
        },
        "state": {
          "enum": [
            "SCHEDULE_STATE_UNSPECIFIED",
            "SCHEDULE_STATE_ACTIVE",
            "SCHEDULE_STATE_PAUSED",
            "SCHEDULE_STATE_COMPLETED",
            "SCHEDULE_STATE_FAILED_SETUP",
            "SCHEDULE_STATE_ERROR",
            "SCHEDULE_STATE_DELETED"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Schedule is active and will trigger runs.",
            "Schedule is paused and will not trigger runs.",
            "Schedule end time has passed.",
            "Schedule setup failed during creation or update.",
            "Schedule is in an error state due to persistent failure to trigger an audit. Manual intervention is required.",
            "Schedule has been marked for deletion by the user."
          ],
          "type": "string",
          "description": "Optional. State of the audit schedule. While most states are managed by the system, you can use UpdateAuditSchedule to start, pause, or delete the schedule."
        },
        "createTime": {
          "type": "string",
          "description": "Output only. Timestamp when the schedule was created.",
          "readOnly": true,
          "format": "google-datetime"
        },
        "complianceFramework": {
          "description": "Required. Framework (set of controls) that the audit scope report is generated against. For example, `NIST_800_53`.",
          "type": "string"
        },
        "errorMessage": {
          "type": "string",
          "description": "Output only. Describes the error if the schedule is in an error state.",
          "readOnly": true
        },
        "scheduleConfig": {
          "description": "Required. Configuration that defines when and how often audit runs are automatically triggered for this schedule.",
          "$ref": "ScheduleConfig"
        },
        "gcsUri": {
          "type": "string",
          "description": "Required. Cloud Storage bucket where Audit Manager can upload the audit report and evidence. The format is `gs://{bucket_name}`."
        },
        "reportFormat": {
          "enum": [
            "AUDIT_REPORT_FORMAT_UNSPECIFIED",
            "AUDIT_REPORT_FORMAT_ODF"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Open Document Format (ODF)."
          ],
          "description": "Required. Format for the audit report.",
          "type": "string"
        }
      },
      "description": "An audit schedule, in one of the following formats: * `projects/{project}/locations/{location}/auditSchedules/{audit_schedule}` * `folders/{folder}/locations/{location}/auditSchedules/{audit_schedule}`"
    },
    "ListOperationsResponse": {
      "type": "object",
      "properties": {
        "operations": {
          "type": "array",
          "items": {
            "$ref": "Operation"
          },
          "description": "A list of operations that matches the specified filter in the request."
        },
        "unreachable": {
          "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "nextPageToken": {
          "type": "string",
          "description": "The standard List next-page token."
        }
      },
      "id": "ListOperationsResponse",
      "description": "The response message for Operations.ListOperations."
    },
    "Status": {
      "properties": {
        "message": {
          "type": "string",
          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client."
        },
        "details": {
          "type": "array",
          "items": {
            "additionalProperties": {
              "type": "any",
              "description": "Properties of the object. Contains field @type with type URL."
            },
            "type": "object"
          },
          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use."
        },
        "code": {
          "type": "integer",
          "format": "int32",
          "description": "The status code, which should be an enum value of google.rpc.Code."
        }
      },
      "id": "Status",
      "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
      "type": "object"
    },
    "Location": {
      "id": "Location",
      "properties": {
        "locationId": {
          "description": "The canonical id for this location. For example: `\"us-east1\"`.",
          "type": "string"
        },
        "displayName": {
          "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".",
          "type": "string"
        },
        "labels": {
          "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata. For example the available capacity at the given location.",
          "type": "object"
        },
        "name": {
          "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`",
          "type": "string"
        }
      },
      "type": "object",
      "description": "A resource that represents a Google Cloud location."
    },
    "ListAuditSchedulesResponse": {
      "id": "ListAuditSchedulesResponse",
      "properties": {
        "nextPageToken": {
          "description": "A token that you can send as the `page_token` in a subsequent request to retrieve the next page of results. If this field is empty, there are no subsequent pages.",
          "type": "string"
        },
        "auditSchedules": {
          "type": "array",
          "description": "List of audit schedules.",
          "items": {
            "$ref": "AuditSchedule"
          }
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Locations that can't be reached."
        }
      },
      "description": "Response message for ListAuditSchedules.",
      "type": "object"
    },
    "ReportSummary": {
      "type": "object",
      "properties": {
        "errorCount": {
          "type": "integer",
          "description": "Number of checks that can't be performed due to errors.",
          "format": "int32"
        },
        "manualReviewNeededCount": {
          "type": "integer",
          "description": "Number of checks that require a manual review.",
          "format": "int32"
        },
        "violationCount": {
          "description": "Number of checks with violations.",
          "type": "integer",
          "format": "int32"
        },
        "compliantCount": {
          "format": "int32",
          "description": "Number of compliant checks.",
          "type": "integer"
        },
        "totalCount": {
          "type": "integer",
          "format": "int32",
          "description": "Total number of evaluated checks."
        }
      },
      "description": "Additional information about the number of checks that were made during an audit operation.",
      "id": "ReportSummary"
    },
    "ReportGenerationProgress": {
      "id": "ReportGenerationProgress",
      "type": "object",
      "properties": {
        "destinationGcsBucket": {
          "description": "Output only. Cloud Storage bucket where the audit report is uploaded to after the evaluation process is completed.",
          "type": "string",
          "readOnly": true
        },
        "reportGenerationPercentComplete": {
          "description": "Report generation progress, defined in terms of percentage complete. Until evaluation is complete, this value is always `0`.",
          "type": "number",
          "format": "double"
        },
        "state": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Current state of execution for report generation.",
          "enum": [
            "OPERATION_STATE_UNSPECIFIED",
            "OPERATION_STATE_NOT_STARTED",
            "OPERATION_STATE_EVALUATION_IN_PROGRESS",
            "OPERATION_STATE_EVALUATION_DONE",
            "OPERATION_STATE_EVIDENCE_REPORT_GENERATION_IN_PROGRESS",
            "OPERATION_STATE_EVIDENCE_REPORT_GENERATION_DONE",
            "OPERATION_STATE_EVIDENCE_UPLOAD_IN_PROGRESS",
            "OPERATION_STATE_DONE",
            "OPERATION_STATE_FAILED"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Audit generation process hasn't started.",
            "Evaluation process is in progress.",
            "Evaluation process is completed.",
            "Report generation process is in progress.",
            "Report generation process is completed.",
            "The audit report and evidence are being uploaded to your bucket.",
            "The audit report and evidence are uploaded to your bucket.",
            "Audit report generation process failed."
          ]
        },
        "reportUploadingPercentComplete": {
          "type": "number",
          "description": "Report uploading progress, defined in terms of percentage complete. Until evaluation and report generation are complete, this value is always `0`.",
          "format": "double"
        },
        "evaluationPercentComplete": {
          "format": "double",
          "description": "Progress of the evaluation process. The progress is defined in terms of percentage complete.",
          "type": "number"
        },
        "failureReason": {
          "type": "string",
          "description": "Output only. Reason for failure during the audit report generation process. This field is set only if the `OperationState` attribute is `OPERATION_STATE_FAILED`.",
          "readOnly": true
        },
        "auditReport": {
          "description": "Output only. Name of the audit report.",
          "type": "string",
          "readOnly": true
        }
      },
      "description": "Details about the current status of the report-generation process."
    },
    "ControlFamily": {
      "description": "Regulatory family of the control.",
      "properties": {
        "familyId": {
          "description": "ID of the regulatory control family. To find the list of supported control families, use the ListControls method and review the `control_family` field in the response.",
          "type": "string"
        },
        "displayName": {
          "description": "Display name of the regulatory control family.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "ControlFamily"
    },
    "EnrollResourceRequest": {
      "type": "object",
      "properties": {
        "destinations": {
          "items": {
            "$ref": "EligibleDestination"
          },
          "description": "Required. Cloud Storage buckets that you can upload your audit reports to during the audit process. When you enroll an organization or folder, you can choose a Cloud Storage bucket from any project in the organization or folder. If you run an audit at the project level using the service agent at the organization or folder level, all the buckets that are associated with the service agent are available.",
          "type": "array"
        },
        "validateOnly": {
          "type": "boolean",
          "description": "Optional. If `true`, only validates the request and does not enroll the resource. This executes standard request validation (such as schema, IAM, and destination checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas."
        }
      },
      "id": "EnrollResourceRequest",
      "description": "Request message for EnrollResource."
    },
    "ListControlsResponse": {
      "properties": {
        "controls": {
          "type": "array",
          "description": "Output only. Controls for a given regulatory standard.",
          "items": {
            "$ref": "Control"
          },
          "readOnly": true
        },
        "nextPageToken": {
          "description": "Output only. A token that you can send as the `page_token` in a subsequent request to retrieve the next page of results. If this field is empty, there are no subsequent pages.",
          "readOnly": true,
          "type": "string"
        }
      },
      "description": "Response message for ListControls.",
      "id": "ListControlsResponse",
      "type": "object"
    },
    "ResourceEnrollmentStatus": {
      "description": "An organization, folder, or project with its enrollment status.",
      "id": "ResourceEnrollmentStatus",
      "properties": {
        "enrolled": {
          "deprecated": true,
          "type": "boolean",
          "readOnly": true,
          "description": "Output only. Deprecated. Whether the organization, folder, or project is enrolled. Use `enrollment_state` instead."
        },
        "enrollment": {
          "$ref": "Enrollment",
          "readOnly": true,
          "description": "Output only. Enrolled destination details for the organization, folder, or project."
        },
        "enrollmentState": {
          "type": "string",
          "readOnly": true,
          "enumDescriptions": [
            "Default value. This value is unused.",
            "The resource isn't enrolled.",
            "The resource isn't enrolled but the parent is enrolled.",
            "The resource is enrolled."
          ],
          "description": "Output only. Enrollment state of the organization, folder, or project.",
          "enum": [
            "RESOURCE_ENROLLMENT_STATE_UNSPECIFIED",
            "NOT_ENROLLED",
            "INHERITED",
            "ENROLLED"
          ]
        },
        "name": {
          "type": "string",
          "description": "Identifier. Name of the resource enrollment status, in one of the following formats: * `folders/{folder}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `projects/{project}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `organizations/{organization}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}`"
        },
        "displayName": {
          "type": "string",
          "description": "Output only. Display name for the organization, folder, or project.",
          "readOnly": true
        }
      },
      "type": "object"
    },
    "GenerateAuditReportRequest": {
      "properties": {
        "reportFormat": {
          "enum": [
            "AUDIT_REPORT_FORMAT_UNSPECIFIED",
            "AUDIT_REPORT_FORMAT_ODF"
          ],
          "description": "Required. Format for the audit report.",
          "type": "string",
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Open Document format."
          ]
        },
        "complianceStandard": {
          "description": "Optional. Deprecated. Compliance standard for the audit report. Use the `compliance_framework` field instead.",
          "deprecated": true,
          "type": "string"
        },
        "validateOnly": {
          "type": "boolean",
          "description": "Optional. If `true`, only validates the request and does not generate the audit report. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without triggering expensive Long-Running Operations (LROs) or consuming resource quotas."
        },
        "gcsUri": {
          "description": "URL for the Cloud Storage bucket where the report and evidence is uploaded. You must select a bucket that was provided during the enrollment process.",
          "type": "string"
        },
        "complianceFramework": {
          "description": "Required. The framework that's used for the audit report. For example, `NIST_800_53`.",
          "type": "string"
        }
      },
      "id": "GenerateAuditReportRequest",
      "description": "Request message for GenerateAuditReport.",
      "type": "object"
    },
    "Control": {
      "type": "object",
      "properties": {
        "googleResponsibilityImplementation": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. A description of how Google implements its responsibility for this control."
        },
        "family": {
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Access control.",
            "Awareness and training.",
            "Audit and accountability.",
            "Certification, accreditation and security assessments.",
            "Configuration management and change control.",
            "Contingency planning and disaster recovery.",
            "Identification and authentication.",
            "Incident response.",
            "Maintenance.",
            "Media protection.",
            "Physical and environmental protection.",
            "Security planning.",
            "Personnel security.",
            "Risk assessment.",
            "System services and acquisition.",
            "System and communications protection.",
            "System and information integrity.",
            "Supply chain risk management."
          ],
          "type": "string",
          "readOnly": true,
          "enum": [
            "FAMILY_UNSPECIFIED",
            "AC",
            "AT",
            "AU",
            "CA",
            "CM",
            "CP",
            "IA",
            "IR",
            "MA",
            "MP",
            "PE",
            "PL",
            "PS",
            "RA",
            "SA",
            "SC",
            "SI",
            "SR"
          ],
          "description": "Output only. Category that the control belongs to."
        },
        "description": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Description of the control."
        },
        "controlFamily": {
          "readOnly": true,
          "description": "Output only. Regulatory family of the control.",
          "$ref": "ControlFamily"
        },
        "customerResponsibilityImplementation": {
          "description": "Output only. A description of how you can implement your responsibility for this control.",
          "type": "string",
          "readOnly": true
        },
        "id": {
          "description": "Output only. Control identifier that's used to fetch the findings. The identifier is the same as the control report name.",
          "type": "string",
          "readOnly": true
        },
        "googleResponsibilityDescription": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. A description of Google's responsibility for this control."
        },
        "customerResponsibilityDescription": {
          "readOnly": true,
          "description": "Output only. A description of your responsibility for this control.",
          "type": "string"
        },
        "responsibilityType": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Who is responsible for implementing this control. Set to one of the following values: `GOOGLE`, `CUSTOMER`, or `SHARED`."
        },
        "displayName": {
          "description": "Output only. Display name of the control.",
          "type": "string",
          "readOnly": true
        }
      },
      "description": "A control.",
      "id": "Control"
    },
    "AuditReport": {
      "type": "object",
      "description": "An audit report.",
      "properties": {
        "scope": {
          "description": "Output only. Organization, folder, or project that the report is generated for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
          "readOnly": true,
          "type": "string"
        },
        "scopeId": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Project number, folder ID, or organization ID that the audit report was generated for."
        },
        "reportGenerationState": {
          "type": "string",
          "enumDescriptions": [
            "Default value. This value is unused.",
            "The process is in progress. The operation can have any state except for `OPERATION_STATE_DONE` or `OPERATION_STATE_FAILED`.",
            "The process is completed. The operation state is `OPERATION_STATE_DONE`.",
            "The process has failed. The operation state is `OPERATION_STATE_FAILED`.",
            "The process completed, but the report summary's status is unknown. This state isn't used for new reports."
          ],
          "readOnly": true,
          "description": "Output only. State of audit report generation.",
          "enum": [
            "REPORT_GENERATION_STATE_UNSPECIFIED",
            "IN_PROGRESS",
            "COMPLETED",
            "FAILED",
            "SUMMARY_UNKNOWN"
          ]
        },
        "createTime": {
          "readOnly": true,
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Creation time of the audit report."
        },
        "operationId": {
          "description": "Output only. Client operation ID for the audit report.",
          "readOnly": true,
          "type": "string"
        },
        "complianceFramework": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Compliance framework to use for the audit report. For example, `CIS_GCP_FOUNDATIONS_V1_2_0`."
        },
        "complianceStandard": {
          "deprecated": true,
          "type": "string",
          "readOnly": true,
          "description": "Output only. Deprecated. Compliance standard to be audited against. Use the `compliance_framework` field instead."
        },
        "reportSummary": {
          "description": "Output only. Report summary that includes information about compliance and violation counts.",
          "readOnly": true,
          "$ref": "ReportSummary"
        },
        "destinationDetails": {
          "description": "Output only. Cloud Storage bucket where the audit report is uploaded to.",
          "readOnly": true,
          "$ref": "DestinationDetails"
        },
        "controlDetails": {
          "description": "Output only. Overall status of the controls.",
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "ControlDetails"
          }
        },
        "name": {
          "description": "Identifier. Name of the audit report, in one of the following formats: * `projects/{project}/locations/{location}/auditReports/{audit_report}` * `folders/{folder}/locations/{location}/auditReports/{audit_report}` * `organizations/{organization}/locations/{location}/auditReports/{audit_report}`",
          "type": "string"
        }
      },
      "id": "AuditReport"
    },
    "Enrollment": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Identifier. Name of the enrollment, in one of the following formats: * `projects/{project}/locations/{location}/enrollments/{enrollment}` * `folders/{folder}/locations/{location}/enrollments/{enrollment}` * `organizations/{organization}/locations/{location}/enrollments/{enrollment}`"
        },
        "destinationDetails": {
          "readOnly": true,
          "description": "Output only. Cloud Storage buckets where you want to upload the audit reports.",
          "items": {
            "$ref": "DestinationDetails"
          },
          "type": "array"
        }
      },
      "id": "Enrollment",
      "description": "Organization, folder, or project to enroll for audit reports."
    },
    "EligibleDestination": {
      "type": "object",
      "id": "EligibleDestination",
      "properties": {
        "eligibleGcsBucket": {
          "type": "string",
          "description": "The location of the Cloud Storage bucket where you want to upload the audit report and evidence during the GenerateAuditReport API call."
        }
      },
      "description": "Details about the bucket where you want to upload the audit report."
    },
    "DestinationDetails": {
      "description": "Cloud Storage bucket where the audit report is uploaded to.",
      "properties": {
        "gcsBucketUri": {
          "type": "string",
          "description": "URI for the Cloud Storage bucket, in the format `gs://{bucket_name}`."
        }
      },
      "type": "object",
      "id": "DestinationDetails"
    },
    "ScheduleConfig": {
      "type": "object",
      "properties": {
        "timeZone": {
          "type": "string",
          "description": "Optional. Time zone for the audit schedule in IANA format (for example, `America/New_York`). The time zone is used to interpret the `start_time` and the `end_time`, and to calculate subsequent run dates. If not specified, the time zone default is UTC."
        },
        "endTime": {
          "format": "google-datetime",
          "description": "Optional. Date that the schedule stops. If not specified, the schedule runs indefinitely.",
          "type": "string"
        },
        "frequency": {
          "enum": [
            "FREQUENCY_UNSPECIFIED",
            "DAILY",
            "WEEKLY",
            "MONTHLY",
            "QUARTERLY",
            "ANNUALLY"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "The audit runs every day.",
            "The audit runs weekly on the same day of the week as `start_time`.",
            "The audit runs monthly on the same day of the month as `start_time`.",
            "The audit runs quarterly (every 3 months) on the same day of the month as `start_time`.",
            "The audit runs annually on the same month and day as `start_time`."
          ],
          "description": "Required. Frequency of audit runs.",
          "type": "string"
        },
        "startTime": {
          "format": "google-datetime",
          "description": "Required. Date and time when the first audit run is triggered. Subsequent runs are based on this time and the chosen frequency.",
          "type": "string"
        }
      },
      "id": "ScheduleConfig",
      "description": "Timing and frequency parameters for recurring audit runs."
    },
    "ControlDetails": {
      "id": "ControlDetails",
      "type": "object",
      "properties": {
        "complianceState": {
          "enum": [
            "COMPLIANCE_STATE_UNSPECIFIED",
            "COMPLIANT",
            "VIOLATION",
            "MANUAL_REVIEW_NEEDED",
            "ERROR",
            "AUDIT_NOT_SUPPORTED"
          ],
          "description": "Output only. Overall status of the findings for the control.",
          "enumDescriptions": [
            "Default value. This value is unused.",
            "The resource is compliant.",
            "The resource isn't compliant.",
            "You must complete a manual review.",
            "An error was encountered during the evaluation or evidence gathering process.",
            "The resource can't be audited."
          ],
          "readOnly": true,
          "type": "string"
        },
        "controlReportSummary": {
          "$ref": "ReportSummary",
          "description": "A control report summary that provides a high-level overview of the compliance controls and the assessment status."
        },
        "control": {
          "description": "Control that the findings are being reported for.",
          "$ref": "Control"
        }
      },
      "description": "Evaluation details for a control."
    },
    "ListResourceEnrollmentStatusesResponse": {
      "properties": {
        "resourceEnrollmentStatuses": {
          "items": {
            "$ref": "ResourceEnrollmentStatus"
          },
          "description": "Resources with their enrollment status.",
          "type": "array"
        },
        "nextPageToken": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. A token that you can send as the `page_token` in a subsequent request to retrieve the next page of results. If this field is empty, there are no subsequent pages."
        }
      },
      "type": "object",
      "description": "Response message for ListResourceEnrollmentStatuses.",
      "id": "ListResourceEnrollmentStatusesResponse"
    },
    "Empty": {
      "type": "object",
      "id": "Empty",
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }",
      "properties": {}
    },
    "GenerateAuditScopeReportRequest": {
      "type": "object",
      "description": "Request message for GenerateAuditScopeReport.",
      "id": "GenerateAuditScopeReportRequest",
      "properties": {
        "validateOnly": {
          "type": "boolean",
          "description": "Optional. If `true`, only validates the request and does not generate the audit scope report. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas."
        },
        "complianceFramework": {
          "description": "Required. Framework (set of controls) that the audit scope report is generated against. For example, `NIST_800_53`.",
          "type": "string"
        },
        "complianceStandard": {
          "description": "Optional. Deprecated. The standard (industry or regulatory requirements) that the audit scope report is run against. Use the `compliance_framework` field instead.",
          "type": "string",
          "deprecated": true
        },
        "reportFormat": {
          "description": "Required. Format for the audit scope report.",
          "type": "string",
          "enum": [
            "AUDIT_SCOPE_REPORT_FORMAT_UNSPECIFIED",
            "AUDIT_SCOPE_REPORT_FORMAT_ODF"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Open Document format."
          ]
        }
      }
    },
    "ListAuditReportsResponse": {
      "id": "ListAuditReportsResponse",
      "properties": {
        "auditReports": {
          "items": {
            "$ref": "AuditReport"
          },
          "description": "Output only. Audit reports.",
          "type": "array",
          "readOnly": true
        },
        "nextPageToken": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. A token that you can send as the `page_token` in a subsequent request to retrieve the next page of results. If this field is empty, there are no subsequent pages."
        }
      },
      "description": "Response message for ListAuditReports.",
      "type": "object"
    },
    "OperationMetadata": {
      "id": "OperationMetadata",
      "description": "Metadata for the long-running operation.",
      "type": "object",
      "properties": {
        "verb": {
          "type": "string",
          "description": "Output only. The name of the verb that was executed by the operation.",
          "readOnly": true
        },
        "target": {
          "readOnly": true,
          "description": "Output only. A server-defined resource path for the target of the operation.",
          "type": "string"
        },
        "apiVersion": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. The API version used to start the operation. For example, `v1`."
        },
        "requestedCancellation": {
          "readOnly": true,
          "description": "Output only. Whether you requested that the operation be cancelled. Operations that were cancelled successfully have an Operation.error value with a status code Code.CANCELLED.",
          "type": "boolean"
        },
        "createTime": {
          "readOnly": true,
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Time that the operation was created."
        },
        "statusMessage": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. A human-readable status of the operation, if any."
        },
        "endTime": {
          "readOnly": true,
          "description": "Output only. Time that the operation finished running.",
          "format": "google-datetime",
          "type": "string"
        }
      }
    }
  },
  "version_module": true,
  "rootUrl": "https://auditmanager.googleapis.com/",
  "revision": "20260908",
  "endpoints": [
    {
      "endpointUrl": "https://auditmanager.us-central1.rep.googleapis.com/",
      "description": "Regional Endpoint",
      "location": "us-central1"
    },
    {
      "endpointUrl": "https://auditmanager.europe-west1.rep.googleapis.com/",
      "location": "europe-west1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://auditmanager.asia-south1.rep.googleapis.com/",
      "location": "asia-south1",
      "description": "Regional Endpoint"
    }
  ],
  "title": "Audit Manager API",
  "ownerDomain": "google.com",
  "fullyEncodeReservedExpansion": true,
  "mtlsRootUrl": "https://auditmanager.mtls.googleapis.com/",
  "ownerName": "Google",
  "documentationLink": "https://cloud.google.com/assured-workloads/docs/audit-manager",
  "name": "auditmanager",
  "description": "The Audit Manager API allows customers to manage compliance audits.",
  "canonicalName": "Cloud Audit Manager",
  "id": "auditmanager:v1",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-auditmanager": {
          "description": "See, edit, configure, and delete your Google Cloud Auditmanager data and see the email address for your Google Account"
        },
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account."
        }
      }
    }
  },
  "resources": {
    "folders": {
      "resources": {
        "locations": {
          "methods": {
            "enrollResource": {
              "parameterOrder": [
                "scope"
              ],
              "flatPath": "v1/folders/{foldersId}/locations/{locationsId}:enrollResource",
              "path": "v1/{+scope}:enrollResource",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-auditmanager",
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "description": "Adds your project, folder, or organization to Audit Manager. This method creates the Audit Manager service agent in your workload and grants required permissions to the service agent. If you make this request on a workload that's already enrolled, then this method overrides the existing set of destinations.",
              "response": {
                "$ref": "Enrollment"
              },
              "id": "auditmanager.folders.locations.enrollResource",
              "request": {
                "$ref": "EnrollResourceRequest"
              },
              "httpMethod": "POST",
              "parameters": {
                "scope": {
                  "required": true,
                  "location": "path",
                  "description": "Required. Organization, folder, or project to enroll in Audit Manager, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                  "pattern": "^folders/[^/]+/locations/[^/]+$",
                  "type": "string"
                }
              }
            }
          },
          "resources": {
            "standards": {
              "resources": {
                "controls": {
                  "methods": {
                    "list": {
                      "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/standards/{standardsId}/controls",
                      "path": "v1/{+parent}/controls",
                      "id": "auditmanager.folders.locations.standards.controls.list",
                      "httpMethod": "GET",
                      "parameters": {
                        "parent": {
                          "description": "Required. Standard to list controls for, in one of the following formats: * `projects/{project}/locations/{location}/standards/{standard}` * `folders/{folder}/locations/{location}/standards/{standard}` * `organizations/{organization}/locations/{location}/standards/{standard}`",
                          "location": "path",
                          "required": true,
                          "type": "string",
                          "pattern": "^folders/[^/]+/locations/[^/]+/standards/[^/]+$"
                        },
                        "pageToken": {
                          "location": "query",
                          "type": "string",
                          "description": "Optional. A page token, received from a previous call, to retrieve the next page of results."
                        },
                        "pageSize": {
                          "location": "query",
                          "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                          "type": "integer",
                          "format": "int32"
                        }
                      },
                      "description": "Lists the controls that you must implement to become compliant to a regulatory standard.",
                      "parameterOrder": [
                        "parent"
                      ],
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-auditmanager",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "response": {
                        "$ref": "ListControlsResponse"
                      }
                    }
                  }
                }
              }
            },
            "operationIds": {
              "methods": {
                "get": {
                  "path": "v1/{+name}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Gets details about the long-running operation to generate audit reports.",
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "auditmanager.folders.locations.operationIds.get",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "required": true,
                      "pattern": "^folders/[^/]+/locations/[^/]+/operationIds/[^/]+$",
                      "location": "path",
                      "description": "The name of the operation resource.",
                      "type": "string"
                    }
                  },
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/operationIds/{operationIdsId}"
                }
              }
            },
            "resourceEnrollmentStatuses": {
              "methods": {
                "list": {
                  "response": {
                    "$ref": "ListResourceEnrollmentStatusesResponse"
                  },
                  "description": "Lists all the folders and projects in an organization or folder, along with their enrollments.",
                  "path": "v1/{+parent}/resourceEnrollmentStatuses",
                  "id": "auditmanager.folders.locations.resourceEnrollmentStatuses.list",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "pageToken": {
                      "location": "query",
                      "type": "string",
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results."
                    },
                    "parent": {
                      "location": "path",
                      "description": "Required. Parent organization or folder to list enrollment statuses for, in one of the following formats: * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "type": "string",
                      "pattern": "^folders/[^/]+/locations/[^/]+$",
                      "required": true
                    },
                    "pageSize": {
                      "location": "query",
                      "type": "integer",
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                      "format": "int32"
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/resourceEnrollmentStatuses"
                },
                "get": {
                  "response": {
                    "$ref": "ResourceEnrollmentStatus"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/resourceEnrollmentStatuses/{resourceEnrollmentStatusesId}",
                  "path": "v1/{+name}",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "pattern": "^folders/[^/]+/locations/[^/]+/resourceEnrollmentStatuses/[^/]+$",
                      "location": "path",
                      "description": "Required. Name of the resource enrollment status, in one of the following formats: * `folders/{folder}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `projects/{project}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `organizations/{organization}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}`",
                      "required": true
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Gets a resource and its enrollment status.",
                  "id": "auditmanager.folders.locations.resourceEnrollmentStatuses.get"
                }
              }
            },
            "auditSchedules": {
              "methods": {
                "patch": {
                  "id": "auditmanager.folders.locations.auditSchedules.patch",
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "httpMethod": "PATCH",
                  "parameters": {
                    "validateOnly": {
                      "type": "boolean",
                      "description": "Optional. If `true`, only validates the request and does not update the audit schedule. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas.",
                      "location": "query"
                    },
                    "name": {
                      "pattern": "^folders/[^/]+/locations/[^/]+/auditSchedules/[^/]+$",
                      "description": "Identifier. Unique identifier for the audit schedule. Format: projects/{project}/locations/{location}/auditSchedules/{audit_schedule} folders/{folder}/locations/{location}/auditSchedules/{audit_schedule} organizations/{organization}/locations/{location}/auditSchedules/{audit_schedule}",
                      "location": "path",
                      "type": "string",
                      "required": true
                    },
                    "updateMask": {
                      "location": "query",
                      "description": "Optional. List of fields to update.",
                      "format": "google-fieldmask",
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "description": "Updates an existing audit schedule.",
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditSchedules/{auditSchedulesId}",
                  "request": {
                    "$ref": "AuditSchedule"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "list": {
                  "description": "Lists audit schedules in a given project and location.",
                  "path": "v1/{+parent}/auditSchedules",
                  "httpMethod": "GET",
                  "parameters": {
                    "parent": {
                      "description": "Required. Parent for the audit schedule, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "pattern": "^folders/[^/]+/locations/[^/]+$",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    },
                    "pageToken": {
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results.",
                      "type": "string",
                      "location": "query"
                    },
                    "pageSize": {
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                      "format": "int32",
                      "type": "integer",
                      "location": "query"
                    }
                  },
                  "response": {
                    "$ref": "ListAuditSchedulesResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "auditmanager.folders.locations.auditSchedules.list",
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditSchedules"
                },
                "get": {
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditSchedules/{auditSchedulesId}",
                  "parameterOrder": [
                    "name"
                  ],
                  "path": "v1/{+name}",
                  "id": "auditmanager.folders.locations.auditSchedules.get",
                  "description": "Gets details of a single audit schedule.",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "description": "Required. Name of the audit schedule to retrieve, in one of the following formats: * `projects/{project}/locations/{location}/auditSchedules/{audit_schedule}` * `folders/{folder}/locations/{location}/auditSchedules/{audit_schedule}` * `organizations/{organization}/locations/{location}/auditSchedules/{audit_schedule}`",
                      "type": "string",
                      "required": true,
                      "pattern": "^folders/[^/]+/locations/[^/]+/auditSchedules/[^/]+$",
                      "location": "path"
                    }
                  },
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "create": {
                  "description": "Creates a new audit schedule in a given project and location.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "httpMethod": "POST",
                  "parameters": {
                    "auditScheduleId": {
                      "description": "Required. ID to use for the audit schedule, which becomes the final component of the audit schedule's resource name.",
                      "location": "query",
                      "type": "string"
                    },
                    "parent": {
                      "pattern": "^folders/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "description": "Required. Project or folder that this audit schedule is for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}`",
                      "location": "path",
                      "required": true
                    },
                    "validateOnly": {
                      "location": "query",
                      "type": "boolean",
                      "description": "Optional. If `true`, only validates the request and does not create the audit schedule. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas."
                    }
                  },
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditSchedules",
                  "parameterOrder": [
                    "parent"
                  ],
                  "request": {
                    "$ref": "AuditSchedule"
                  },
                  "path": "v1/{+parent}/auditSchedules",
                  "id": "auditmanager.folders.locations.auditSchedules.create"
                }
              }
            },
            "auditScopeReports": {
              "methods": {
                "generate": {
                  "response": {
                    "$ref": "AuditScopeReport"
                  },
                  "httpMethod": "POST",
                  "parameters": {
                    "scope": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "pattern": "^folders/[^/]+/locations/[^/]+$",
                      "description": "Required. Project or folder that the audit scope report is generated for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`"
                    }
                  },
                  "id": "auditmanager.folders.locations.auditScopeReports.generate",
                  "parameterOrder": [
                    "scope"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+scope}/auditScopeReports:generate",
                  "description": "Generates an audit scope report for the given standard. The report includes the following: * The technical attributes and constraints that Audit Manager uses to verify your compliance with a framework. * A list of Google Cloud services and resources that are within the scope of the framework.",
                  "request": {
                    "$ref": "GenerateAuditScopeReportRequest"
                  },
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditScopeReports:generate"
                }
              }
            },
            "operationDetails": {
              "methods": {
                "get": {
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "location": "path",
                      "pattern": "^folders/[^/]+/locations/[^/]+/operationDetails/[^/]+$",
                      "required": true,
                      "description": "The name of the operation resource."
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/operationDetails/{operationDetailsId}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "auditmanager.folders.locations.operationDetails.get",
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Gets details about the long-running operation to generate audit reports."
                }
              }
            },
            "auditReports": {
              "methods": {
                "list": {
                  "response": {
                    "$ref": "ListAuditReportsResponse"
                  },
                  "id": "auditmanager.folders.locations.auditReports.list",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Lists the audit reports for the organization, folder, or project that you specify as the parent scope.",
                  "httpMethod": "GET",
                  "parameters": {
                    "pageSize": {
                      "format": "int32",
                      "type": "integer",
                      "location": "query",
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100."
                    },
                    "parent": {
                      "type": "string",
                      "required": true,
                      "pattern": "^folders/[^/]+/locations/[^/]+$",
                      "location": "path",
                      "description": "Required. Parent organization, folder, or project to list reports for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`"
                    },
                    "pageToken": {
                      "location": "query",
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results.",
                      "type": "string"
                    }
                  },
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditReports",
                  "path": "v1/{+parent}/auditReports",
                  "parameterOrder": [
                    "parent"
                  ]
                },
                "get": {
                  "response": {
                    "$ref": "AuditReport"
                  },
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditReports/{auditReportsId}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "location": "path",
                      "pattern": "^folders/[^/]+/locations/[^/]+/auditReports/[^/]+$",
                      "required": true,
                      "description": "Required. Name of the audit report, in one of the following formats: * `projects/{project}/locations/{location}/auditReports/{audit_report}` * `folders/{folder}/locations/{location}/auditReports/{audit_report}` * `organizations/{organization}/locations/{location}/auditReports/{audit_report}`"
                    }
                  },
                  "description": "Gets the full metadata and findings for an audit report.",
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "auditmanager.folders.locations.auditReports.get"
                },
                "generate": {
                  "request": {
                    "$ref": "GenerateAuditReportRequest"
                  },
                  "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/auditReports:generate",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "scope"
                  ],
                  "httpMethod": "POST",
                  "parameters": {
                    "scope": {
                      "type": "string",
                      "required": true,
                      "description": "Required. Organization, folder, or project that the audit applies to, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "location": "path",
                      "pattern": "^folders/[^/]+/locations/[^/]+$"
                    }
                  },
                  "response": {
                    "$ref": "Operation"
                  },
                  "id": "auditmanager.folders.locations.auditReports.generate",
                  "description": "Registers audit report generation requests. This method returns the operation identifier that you can use to track the report generation progress.",
                  "path": "v1/{+scope}/auditReports:generate"
                }
              }
            }
          }
        }
      }
    },
    "projects": {
      "resources": {
        "locations": {
          "methods": {
            "enrollResource": {
              "parameterOrder": [
                "scope"
              ],
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:enrollResource",
              "httpMethod": "POST",
              "parameters": {
                "scope": {
                  "type": "string",
                  "location": "path",
                  "description": "Required. Organization, folder, or project to enroll in Audit Manager, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                  "required": true,
                  "pattern": "^projects/[^/]+/locations/[^/]+$"
                }
              },
              "response": {
                "$ref": "Enrollment"
              },
              "id": "auditmanager.projects.locations.enrollResource",
              "description": "Adds your project, folder, or organization to Audit Manager. This method creates the Audit Manager service agent in your workload and grants required permissions to the service agent. If you make this request on a workload that's already enrolled, then this method overrides the existing set of destinations.",
              "path": "v1/{+scope}:enrollResource",
              "request": {
                "$ref": "EnrollResourceRequest"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-auditmanager",
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Gets information about a location.",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-auditmanager",
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "response": {
                "$ref": "Location"
              },
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}",
              "parameterOrder": [
                "name"
              ],
              "httpMethod": "GET",
              "parameters": {
                "name": {
                  "required": true,
                  "location": "path",
                  "type": "string",
                  "description": "Resource name for the location.",
                  "pattern": "^projects/[^/]+/locations/[^/]+$"
                }
              },
              "path": "v1/{+name}",
              "id": "auditmanager.projects.locations.get"
            },
            "list": {
              "scopes": [
                "https://www.googleapis.com/auth/cloud-auditmanager",
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "id": "auditmanager.projects.locations.list",
              "httpMethod": "GET",
              "parameters": {
                "pageSize": {
                  "format": "int32",
                  "location": "query",
                  "description": "The maximum number of results to return. If not set, the service selects a default.",
                  "type": "integer"
                },
                "filter": {
                  "location": "query",
                  "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).",
                  "type": "string"
                },
                "name": {
                  "type": "string",
                  "pattern": "^projects/[^/]+$",
                  "location": "path",
                  "description": "The resource that owns the locations collection, if applicable.",
                  "required": true
                },
                "extraLocationTypes": {
                  "location": "query",
                  "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.",
                  "type": "string",
                  "repeated": true
                },
                "pageToken": {
                  "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.",
                  "type": "string",
                  "location": "query"
                }
              },
              "response": {
                "$ref": "ListLocationsResponse"
              },
              "path": "v1/{+name}/locations",
              "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.",
              "flatPath": "v1/projects/{projectsId}/locations",
              "parameterOrder": [
                "name"
              ]
            }
          },
          "resources": {
            "operationIds": {
              "methods": {
                "get": {
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operationIds/{operationIdsId}",
                  "id": "auditmanager.projects.locations.operationIds.get",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operationIds/[^/]+$",
                      "type": "string",
                      "location": "path",
                      "required": true
                    }
                  },
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Gets details about the long-running operation to generate audit reports."
                }
              }
            },
            "auditScopeReports": {
              "methods": {
                "generate": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "scope"
                  ],
                  "request": {
                    "$ref": "GenerateAuditScopeReportRequest"
                  },
                  "id": "auditmanager.projects.locations.auditScopeReports.generate",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditScopeReports:generate",
                  "description": "Generates an audit scope report for the given standard. The report includes the following: * The technical attributes and constraints that Audit Manager uses to verify your compliance with a framework. * A list of Google Cloud services and resources that are within the scope of the framework.",
                  "response": {
                    "$ref": "AuditScopeReport"
                  },
                  "httpMethod": "POST",
                  "parameters": {
                    "scope": {
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "description": "Required. Project or folder that the audit scope report is generated for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "required": true,
                      "location": "path"
                    }
                  },
                  "path": "v1/{+scope}/auditScopeReports:generate"
                }
              }
            },
            "standards": {
              "resources": {
                "controls": {
                  "methods": {
                    "list": {
                      "description": "Lists the controls that you must implement to become compliant to a regulatory standard.",
                      "httpMethod": "GET",
                      "parameters": {
                        "pageToken": {
                          "description": "Optional. A page token, received from a previous call, to retrieve the next page of results.",
                          "type": "string",
                          "location": "query"
                        },
                        "pageSize": {
                          "type": "integer",
                          "location": "query",
                          "format": "int32",
                          "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100."
                        },
                        "parent": {
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/standards/[^/]+$",
                          "required": true,
                          "type": "string",
                          "description": "Required. Standard to list controls for, in one of the following formats: * `projects/{project}/locations/{location}/standards/{standard}` * `folders/{folder}/locations/{location}/standards/{standard}` * `organizations/{organization}/locations/{location}/standards/{standard}`"
                        }
                      },
                      "path": "v1/{+parent}/controls",
                      "id": "auditmanager.projects.locations.standards.controls.list",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/standards/{standardsId}/controls",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-auditmanager",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "response": {
                        "$ref": "ListControlsResponse"
                      },
                      "parameterOrder": [
                        "parent"
                      ]
                    }
                  }
                }
              }
            },
            "resourceEnrollmentStatuses": {
              "methods": {
                "get": {
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "required": true,
                      "location": "path",
                      "description": "Required. Name of the resource enrollment status, in one of the following formats: * `folders/{folder}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `projects/{project}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `organizations/{organization}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/resourceEnrollmentStatuses/[^/]+$",
                      "type": "string"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/resourceEnrollmentStatuses/{resourceEnrollmentStatusesId}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "auditmanager.projects.locations.resourceEnrollmentStatuses.get",
                  "description": "Gets a resource and its enrollment status.",
                  "parameterOrder": [
                    "name"
                  ],
                  "response": {
                    "$ref": "ResourceEnrollmentStatus"
                  },
                  "path": "v1/{+name}"
                }
              }
            },
            "auditSchedules": {
              "methods": {
                "create": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "id": "auditmanager.projects.locations.auditSchedules.create",
                  "request": {
                    "$ref": "AuditSchedule"
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "description": "Creates a new audit schedule in a given project and location.",
                  "httpMethod": "POST",
                  "parameters": {
                    "validateOnly": {
                      "location": "query",
                      "description": "Optional. If `true`, only validates the request and does not create the audit schedule. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas.",
                      "type": "boolean"
                    },
                    "auditScheduleId": {
                      "location": "query",
                      "type": "string",
                      "description": "Required. ID to use for the audit schedule, which becomes the final component of the audit schedule's resource name."
                    },
                    "parent": {
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "description": "Required. Project or folder that this audit schedule is for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}`",
                      "location": "path",
                      "type": "string",
                      "required": true
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditSchedules",
                  "path": "v1/{+parent}/auditSchedules"
                },
                "list": {
                  "response": {
                    "$ref": "ListAuditSchedulesResponse"
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "auditmanager.projects.locations.auditSchedules.list",
                  "path": "v1/{+parent}/auditSchedules",
                  "description": "Lists audit schedules in a given project and location.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditSchedules",
                  "httpMethod": "GET",
                  "parameters": {
                    "pageToken": {
                      "location": "query",
                      "type": "string",
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results."
                    },
                    "parent": {
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "location": "path",
                      "description": "Required. Parent for the audit schedule, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "type": "string",
                      "required": true
                    },
                    "pageSize": {
                      "type": "integer",
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                      "location": "query",
                      "format": "int32"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "patch": {
                  "parameterOrder": [
                    "name"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "request": {
                    "$ref": "AuditSchedule"
                  },
                  "path": "v1/{+name}",
                  "description": "Updates an existing audit schedule.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditSchedules/{auditSchedulesId}",
                  "id": "auditmanager.projects.locations.auditSchedules.patch",
                  "httpMethod": "PATCH",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/auditSchedules/[^/]+$",
                      "required": true,
                      "type": "string",
                      "description": "Identifier. Unique identifier for the audit schedule. Format: projects/{project}/locations/{location}/auditSchedules/{audit_schedule} folders/{folder}/locations/{location}/auditSchedules/{audit_schedule} organizations/{organization}/locations/{location}/auditSchedules/{audit_schedule}"
                    },
                    "updateMask": {
                      "location": "query",
                      "type": "string",
                      "description": "Optional. List of fields to update.",
                      "format": "google-fieldmask"
                    },
                    "validateOnly": {
                      "type": "boolean",
                      "description": "Optional. If `true`, only validates the request and does not update the audit schedule. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas.",
                      "location": "query"
                    }
                  }
                },
                "get": {
                  "id": "auditmanager.projects.locations.auditSchedules.get",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditSchedules/{auditSchedulesId}",
                  "description": "Gets details of a single audit schedule.",
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "required": true,
                      "description": "Required. Name of the audit schedule to retrieve, in one of the following formats: * `projects/{project}/locations/{location}/auditSchedules/{audit_schedule}` * `folders/{folder}/locations/{location}/auditSchedules/{audit_schedule}` * `organizations/{organization}/locations/{location}/auditSchedules/{audit_schedule}`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/auditSchedules/[^/]+$",
                      "location": "path"
                    }
                  },
                  "response": {
                    "$ref": "AuditSchedule"
                  }
                }
              }
            },
            "operations": {
              "methods": {
                "cancel": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
                  "httpMethod": "POST",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "description": "The name of the operation resource to be cancelled.",
                      "location": "path",
                      "required": true
                    }
                  },
                  "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "auditmanager.projects.locations.operations.cancel",
                  "response": {
                    "$ref": "Empty"
                  },
                  "path": "v1/{+name}:cancel",
                  "request": {
                    "$ref": "CancelOperationRequest"
                  },
                  "parameterOrder": [
                    "name"
                  ]
                },
                "list": {
                  "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.",
                  "parameterOrder": [
                    "name"
                  ],
                  "path": "v1/{+name}/operations",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "ListOperationsResponse"
                  },
                  "id": "auditmanager.projects.locations.operations.list",
                  "httpMethod": "GET",
                  "parameters": {
                    "filter": {
                      "description": "The standard list filter.",
                      "location": "query",
                      "type": "string"
                    },
                    "name": {
                      "location": "path",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "description": "The name of the operation's parent resource.",
                      "type": "string"
                    },
                    "pageSize": {
                      "description": "The standard list page size.",
                      "format": "int32",
                      "type": "integer",
                      "location": "query"
                    },
                    "returnPartialSuccess": {
                      "type": "boolean",
                      "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.",
                      "location": "query"
                    },
                    "pageToken": {
                      "description": "The standard list page token.",
                      "location": "query",
                      "type": "string"
                    }
                  }
                },
                "get": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "auditmanager.projects.locations.operations.get",
                  "path": "v1/{+name}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service."
                },
                "delete": {
                  "path": "v1/{+name}",
                  "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.",
                  "httpMethod": "DELETE",
                  "parameters": {
                    "name": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "description": "The name of the operation resource to be deleted."
                    }
                  },
                  "response": {
                    "$ref": "Empty"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "parameterOrder": [
                    "name"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "auditmanager.projects.locations.operations.delete"
                }
              }
            },
            "auditReports": {
              "methods": {
                "get": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditReports/{auditReportsId}",
                  "path": "v1/{+name}",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/auditReports/[^/]+$",
                      "location": "path",
                      "description": "Required. Name of the audit report, in one of the following formats: * `projects/{project}/locations/{location}/auditReports/{audit_report}` * `folders/{folder}/locations/{location}/auditReports/{audit_report}` * `organizations/{organization}/locations/{location}/auditReports/{audit_report}`",
                      "required": true
                    }
                  },
                  "id": "auditmanager.projects.locations.auditReports.get",
                  "description": "Gets the full metadata and findings for an audit report.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "name"
                  ],
                  "response": {
                    "$ref": "AuditReport"
                  }
                },
                "list": {
                  "path": "v1/{+parent}/auditReports",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditReports",
                  "parameterOrder": [
                    "parent"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "pageSize": {
                      "format": "int32",
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                      "type": "integer",
                      "location": "query"
                    },
                    "pageToken": {
                      "location": "query",
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results.",
                      "type": "string"
                    },
                    "parent": {
                      "required": true,
                      "location": "path",
                      "description": "Required. Parent organization, folder, or project to list reports for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$"
                    }
                  },
                  "description": "Lists the audit reports for the organization, folder, or project that you specify as the parent scope.",
                  "response": {
                    "$ref": "ListAuditReportsResponse"
                  },
                  "id": "auditmanager.projects.locations.auditReports.list"
                },
                "generate": {
                  "httpMethod": "POST",
                  "parameters": {
                    "scope": {
                      "location": "path",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "description": "Required. Organization, folder, or project that the audit applies to, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`"
                    }
                  },
                  "id": "auditmanager.projects.locations.auditReports.generate",
                  "path": "v1/{+scope}/auditReports:generate",
                  "response": {
                    "$ref": "Operation"
                  },
                  "parameterOrder": [
                    "scope"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/auditReports:generate",
                  "request": {
                    "$ref": "GenerateAuditReportRequest"
                  },
                  "description": "Registers audit report generation requests. This method returns the operation identifier that you can use to track the report generation progress."
                }
              }
            },
            "operationDetails": {
              "methods": {
                "get": {
                  "description": "Gets details about the long-running operation to generate audit reports.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "auditmanager.projects.locations.operationDetails.get",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operationDetails/{operationDetailsId}",
                  "response": {
                    "$ref": "Operation"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "path": "v1/{+name}",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "required": true,
                      "location": "path",
                      "description": "The name of the operation resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operationDetails/[^/]+$",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "organizations": {
      "resources": {
        "locations": {
          "resources": {
            "standards": {
              "resources": {
                "controls": {
                  "methods": {
                    "list": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-auditmanager",
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "id": "auditmanager.organizations.locations.standards.controls.list",
                      "httpMethod": "GET",
                      "parameters": {
                        "pageToken": {
                          "description": "Optional. A page token, received from a previous call, to retrieve the next page of results.",
                          "type": "string",
                          "location": "query"
                        },
                        "parent": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Standard to list controls for, in one of the following formats: * `projects/{project}/locations/{location}/standards/{standard}` * `folders/{folder}/locations/{location}/standards/{standard}` * `organizations/{organization}/locations/{location}/standards/{standard}`",
                          "pattern": "^organizations/[^/]+/locations/[^/]+/standards/[^/]+$"
                        },
                        "pageSize": {
                          "format": "int32",
                          "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                          "location": "query",
                          "type": "integer"
                        }
                      },
                      "response": {
                        "$ref": "ListControlsResponse"
                      },
                      "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/standards/{standardsId}/controls",
                      "path": "v1/{+parent}/controls",
                      "description": "Lists the controls that you must implement to become compliant to a regulatory standard.",
                      "parameterOrder": [
                        "parent"
                      ]
                    }
                  }
                }
              }
            },
            "operationDetails": {
              "methods": {
                "get": {
                  "id": "auditmanager.organizations.locations.operationDetails.get",
                  "path": "v1/{+name}",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "pattern": "^organizations/[^/]+/locations/[^/]+/operationDetails/[^/]+$",
                      "location": "path",
                      "required": true,
                      "description": "The name of the operation resource.",
                      "type": "string"
                    }
                  },
                  "response": {
                    "$ref": "Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/operationDetails/{operationDetailsId}",
                  "description": "Gets details about the long-running operation to generate audit reports.",
                  "parameterOrder": [
                    "name"
                  ]
                }
              }
            },
            "auditSchedules": {
              "methods": {
                "list": {
                  "description": "Lists audit schedules in a given project and location.",
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditSchedules",
                  "httpMethod": "GET",
                  "parameters": {
                    "parent": {
                      "pattern": "^organizations/[^/]+/locations/[^/]+$",
                      "location": "path",
                      "required": true,
                      "description": "Required. Parent for the audit schedule, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "type": "string"
                    },
                    "pageSize": {
                      "type": "integer",
                      "location": "query",
                      "format": "int32",
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100."
                    },
                    "pageToken": {
                      "type": "string",
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results.",
                      "location": "query"
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "ListAuditSchedulesResponse"
                  },
                  "id": "auditmanager.organizations.locations.auditSchedules.list",
                  "path": "v1/{+parent}/auditSchedules"
                },
                "create": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "AuditSchedule"
                  },
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditSchedules",
                  "httpMethod": "POST",
                  "parameters": {
                    "validateOnly": {
                      "location": "query",
                      "type": "boolean",
                      "description": "Optional. If `true`, only validates the request and does not create the audit schedule. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas."
                    },
                    "parent": {
                      "type": "string",
                      "description": "Required. Project or folder that this audit schedule is for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}`",
                      "pattern": "^organizations/[^/]+/locations/[^/]+$",
                      "location": "path",
                      "required": true
                    },
                    "auditScheduleId": {
                      "description": "Required. ID to use for the audit schedule, which becomes the final component of the audit schedule's resource name.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "description": "Creates a new audit schedule in a given project and location.",
                  "parameterOrder": [
                    "parent"
                  ],
                  "path": "v1/{+parent}/auditSchedules",
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "id": "auditmanager.organizations.locations.auditSchedules.create"
                },
                "patch": {
                  "httpMethod": "PATCH",
                  "parameters": {
                    "name": {
                      "pattern": "^organizations/[^/]+/locations/[^/]+/auditSchedules/[^/]+$",
                      "type": "string",
                      "location": "path",
                      "description": "Identifier. Unique identifier for the audit schedule. Format: projects/{project}/locations/{location}/auditSchedules/{audit_schedule} folders/{folder}/locations/{location}/auditSchedules/{audit_schedule} organizations/{organization}/locations/{location}/auditSchedules/{audit_schedule}",
                      "required": true
                    },
                    "updateMask": {
                      "location": "query",
                      "type": "string",
                      "format": "google-fieldmask",
                      "description": "Optional. List of fields to update."
                    },
                    "validateOnly": {
                      "description": "Optional. If `true`, only validates the request and does not update the audit schedule. This executes standard request validation (such as schema, framework existence, scope, and IAM checks) and skips the apply phase. Use this field for the following purposes: * **Infrastructure as Code (IaC)**: Allow tools like Terraform to run dry-run mutations (e.g., `terraform plan`) without creating real resources or incurring costs. * **User Interface Validation**: Enable real-time form and permission validation in custom UIs before submitting requests. * **CI/CD & Automation**: Test your scripts, permissions, and parameters safely without consuming resource quotas.",
                      "type": "boolean",
                      "location": "query"
                    }
                  },
                  "request": {
                    "$ref": "AuditSchedule"
                  },
                  "path": "v1/{+name}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "description": "Updates an existing audit schedule.",
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditSchedules/{auditSchedulesId}",
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "auditmanager.organizations.locations.auditSchedules.patch"
                },
                "get": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "pattern": "^organizations/[^/]+/locations/[^/]+/auditSchedules/[^/]+$",
                      "description": "Required. Name of the audit schedule to retrieve, in one of the following formats: * `projects/{project}/locations/{location}/auditSchedules/{audit_schedule}` * `folders/{folder}/locations/{location}/auditSchedules/{audit_schedule}` * `organizations/{organization}/locations/{location}/auditSchedules/{audit_schedule}`",
                      "type": "string",
                      "location": "path",
                      "required": true
                    }
                  },
                  "description": "Gets details of a single audit schedule.",
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditSchedules/{auditSchedulesId}",
                  "response": {
                    "$ref": "AuditSchedule"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "path": "v1/{+name}",
                  "id": "auditmanager.organizations.locations.auditSchedules.get"
                }
              }
            },
            "resourceEnrollmentStatuses": {
              "methods": {
                "get": {
                  "description": "Gets a resource and its enrollment status.",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "description": "Required. Name of the resource enrollment status, in one of the following formats: * `folders/{folder}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `projects/{project}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}` * `organizations/{organization}/locations/{location}/resourceEnrollmentStatuses/{resource_enrollment_status}`",
                      "required": true,
                      "type": "string",
                      "location": "path",
                      "pattern": "^organizations/[^/]+/locations/[^/]+/resourceEnrollmentStatuses/[^/]+$"
                    }
                  },
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/resourceEnrollmentStatuses/{resourceEnrollmentStatusesId}",
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "auditmanager.organizations.locations.resourceEnrollmentStatuses.get",
                  "response": {
                    "$ref": "ResourceEnrollmentStatus"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}"
                },
                "list": {
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/resourceEnrollmentStatuses",
                  "description": "Lists all the folders and projects in an organization or folder, along with their enrollments.",
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "auditmanager.organizations.locations.resourceEnrollmentStatuses.list",
                  "path": "v1/{+parent}/resourceEnrollmentStatuses",
                  "response": {
                    "$ref": "ListResourceEnrollmentStatusesResponse"
                  },
                  "httpMethod": "GET",
                  "parameters": {
                    "pageSize": {
                      "type": "integer",
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                      "format": "int32",
                      "location": "query"
                    },
                    "parent": {
                      "pattern": "^organizations/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "description": "Required. Parent organization or folder to list enrollment statuses for, in one of the following formats: * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "location": "path",
                      "required": true
                    },
                    "pageToken": {
                      "location": "query",
                      "type": "string",
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results."
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            },
            "operations": {
              "methods": {
                "cancel": {
                  "response": {
                    "$ref": "Empty"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "POST",
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource to be cancelled.",
                      "required": true,
                      "type": "string",
                      "pattern": "^organizations/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "location": "path"
                    }
                  },
                  "id": "auditmanager.organizations.locations.operations.cancel",
                  "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.",
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/operations/{operationsId}:cancel",
                  "path": "v1/{+name}:cancel",
                  "request": {
                    "$ref": "CancelOperationRequest"
                  }
                },
                "list": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "auditmanager.organizations.locations.operations.list",
                  "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.",
                  "response": {
                    "$ref": "ListOperationsResponse"
                  },
                  "path": "v1/{+name}/operations",
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/operations",
                  "httpMethod": "GET",
                  "parameters": {
                    "filter": {
                      "location": "query",
                      "description": "The standard list filter.",
                      "type": "string"
                    },
                    "returnPartialSuccess": {
                      "type": "boolean",
                      "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.",
                      "location": "query"
                    },
                    "pageSize": {
                      "type": "integer",
                      "format": "int32",
                      "location": "query",
                      "description": "The standard list page size."
                    },
                    "pageToken": {
                      "type": "string",
                      "description": "The standard list page token.",
                      "location": "query"
                    },
                    "name": {
                      "location": "path",
                      "pattern": "^organizations/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "description": "The name of the operation's parent resource.",
                      "required": true
                    }
                  }
                },
                "delete": {
                  "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.",
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/operations/{operationsId}",
                  "id": "auditmanager.organizations.locations.operations.delete",
                  "response": {
                    "$ref": "Empty"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "DELETE",
                  "parameters": {
                    "name": {
                      "required": true,
                      "pattern": "^organizations/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "location": "path",
                      "description": "The name of the operation resource to be deleted.",
                      "type": "string"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}"
                },
                "get": {
                  "response": {
                    "$ref": "Operation"
                  },
                  "id": "auditmanager.organizations.locations.operations.get",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource.",
                      "pattern": "^organizations/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/operations/{operationsId}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "name"
                  ],
                  "path": "v1/{+name}"
                }
              }
            },
            "operationIds": {
              "methods": {
                "get": {
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/operationIds/{operationIdsId}",
                  "description": "Gets details about the long-running operation to generate audit reports.",
                  "id": "auditmanager.organizations.locations.operationIds.get",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "required": true,
                      "description": "The name of the operation resource.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^organizations/[^/]+/locations/[^/]+/operationIds/[^/]+$"
                    }
                  },
                  "response": {
                    "$ref": "Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            },
            "auditScopeReports": {
              "methods": {
                "generate": {
                  "id": "auditmanager.organizations.locations.auditScopeReports.generate",
                  "path": "v1/{+scope}/auditScopeReports:generate",
                  "httpMethod": "POST",
                  "parameters": {
                    "scope": {
                      "required": true,
                      "type": "string",
                      "location": "path",
                      "description": "Required. Project or folder that the audit scope report is generated for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "pattern": "^organizations/[^/]+/locations/[^/]+$"
                    }
                  },
                  "request": {
                    "$ref": "GenerateAuditScopeReportRequest"
                  },
                  "response": {
                    "$ref": "AuditScopeReport"
                  },
                  "description": "Generates an audit scope report for the given standard. The report includes the following: * The technical attributes and constraints that Audit Manager uses to verify your compliance with a framework. * A list of Google Cloud services and resources that are within the scope of the framework.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditScopeReports:generate",
                  "parameterOrder": [
                    "scope"
                  ]
                }
              }
            },
            "auditReports": {
              "methods": {
                "generate": {
                  "response": {
                    "$ref": "Operation"
                  },
                  "parameterOrder": [
                    "scope"
                  ],
                  "description": "Registers audit report generation requests. This method returns the operation identifier that you can use to track the report generation progress.",
                  "id": "auditmanager.organizations.locations.auditReports.generate",
                  "request": {
                    "$ref": "GenerateAuditReportRequest"
                  },
                  "httpMethod": "POST",
                  "parameters": {
                    "scope": {
                      "description": "Required. Organization, folder, or project that the audit applies to, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "type": "string",
                      "required": true,
                      "location": "path",
                      "pattern": "^organizations/[^/]+/locations/[^/]+$"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+scope}/auditReports:generate",
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditReports:generate"
                },
                "list": {
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditReports",
                  "description": "Lists the audit reports for the organization, folder, or project that you specify as the parent scope.",
                  "path": "v1/{+parent}/auditReports",
                  "id": "auditmanager.organizations.locations.auditReports.list",
                  "httpMethod": "GET",
                  "parameters": {
                    "pageToken": {
                      "description": "Optional. A page token, received from a previous call, to retrieve the next page of results.",
                      "type": "string",
                      "location": "query"
                    },
                    "parent": {
                      "description": "Required. Parent organization, folder, or project to list reports for, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`",
                      "required": true,
                      "location": "path",
                      "type": "string",
                      "pattern": "^organizations/[^/]+/locations/[^/]+$"
                    },
                    "pageSize": {
                      "description": "Optional. Maximum number of items to return in a single page. The service might return fewer items than this value. If unspecified, the service picks an appropriate default. The maximum value is 100; values above 100 are reduced to 100.",
                      "location": "query",
                      "type": "integer",
                      "format": "int32"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "parent"
                  ],
                  "response": {
                    "$ref": "ListAuditReportsResponse"
                  }
                },
                "get": {
                  "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/auditReports/{auditReportsId}",
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "description": "Required. Name of the audit report, in one of the following formats: * `projects/{project}/locations/{location}/auditReports/{audit_report}` * `folders/{folder}/locations/{location}/auditReports/{audit_report}` * `organizations/{organization}/locations/{location}/auditReports/{audit_report}`",
                      "required": true,
                      "type": "string",
                      "location": "path",
                      "pattern": "^organizations/[^/]+/locations/[^/]+/auditReports/[^/]+$"
                    }
                  },
                  "id": "auditmanager.organizations.locations.auditReports.get",
                  "description": "Gets the full metadata and findings for an audit report.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-auditmanager",
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "AuditReport"
                  },
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ]
                }
              }
            }
          },
          "methods": {
            "enrollResource": {
              "description": "Adds your project, folder, or organization to Audit Manager. This method creates the Audit Manager service agent in your workload and grants required permissions to the service agent. If you make this request on a workload that's already enrolled, then this method overrides the existing set of destinations.",
              "id": "auditmanager.organizations.locations.enrollResource",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-auditmanager",
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "httpMethod": "POST",
              "parameters": {
                "scope": {
                  "required": true,
                  "type": "string",
                  "pattern": "^organizations/[^/]+/locations/[^/]+$",
                  "location": "path",
                  "description": "Required. Organization, folder, or project to enroll in Audit Manager, in one of the following formats: * `projects/{project}/locations/{location}` * `folders/{folder}/locations/{location}` * `organizations/{organization}/locations/{location}`"
                }
              },
              "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}:enrollResource",
              "response": {
                "$ref": "Enrollment"
              },
              "parameterOrder": [
                "scope"
              ],
              "path": "v1/{+scope}:enrollResource",
              "request": {
                "$ref": "EnrollResourceRequest"
              }
            }
          }
        }
      }
    }
  }
}
