OS Config API

OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.

Service: osconfig.googleapis.com

To call this service, we recommend that you use the Google-provided client libraries. If your application needs to use your own libraries to call this service, use the following information when you make the API requests.

Discovery document

A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery documents:

Service endpoint

A service endpoint is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:

  • https://osconfig.googleapis.com

REST Resource: v1beta.projects.guestPolicies

Methods
create POST /v1beta/{parent=projects/*}/guestPolicies
Create an OS Config guest policy.
delete DELETE /v1beta/{name=projects/*/guestPolicies/*}
Delete an OS Config guest policy.
get GET /v1beta/{name=projects/*/guestPolicies/*}
Get an OS Config guest policy.
list GET /v1beta/{parent=projects/*}/guestPolicies
Get a page of OS Config guest policies.
patch PATCH /v1beta/{guestPolicy.name=projects/*/guestPolicies/*}
Update an OS Config guest policy.

REST Resource: v1beta.projects.patchDeployments

Methods
create POST /v1beta/{parent=projects/*}/patchDeployments
Create an OS Config patch deployment.
delete DELETE /v1beta/{name=projects/*/patchDeployments/*}
Delete an OS Config patch deployment.
get GET /v1beta/{name=projects/*/patchDeployments/*}
Get an OS Config patch deployment.
list GET /v1beta/{parent=projects/*}/patchDeployments
Get a page of OS Config patch deployments.
patch PATCH /v1beta/{patchDeployment.name=projects/*/patchDeployments/*}
Update an OS Config patch deployment.
pause POST /v1beta/{name=projects/*/patchDeployments/*}:pause
Change state of patch deployment to "PAUSED".
resume POST /v1beta/{name=projects/*/patchDeployments/*}:resume
Change state of patch deployment back to "ACTIVE".

REST Resource: v1beta.projects.patchJobs

Methods
cancel POST /v1beta/{name=projects/*/patchJobs/*}:cancel
Cancel a patch job.
execute POST /v1beta/{parent=projects/*}/patchJobs:execute
Patch VM instances by creating and running a patch job.
get GET /v1beta/{name=projects/*/patchJobs/*}
Get the patch job.
list GET /v1beta/{parent=projects/*}/patchJobs
Get a list of patch jobs.

REST Resource: v1beta.projects.patchJobs.instanceDetails

Methods
list GET /v1beta/{parent=projects/*/patchJobs/*}/instanceDetails
Get a list of instance details for a given patch job.

REST Resource: v1beta.projects.zones.instances

Methods
lookupEffectiveGuestPolicy POST /v1beta/{instance=projects/*/zones/*/instances/*}:lookupEffectiveGuestPolicy
Lookup the effective guest policy that applies to a VM instance.

REST Resource: v1alpha.projects.locations.instanceOSPoliciesCompliances

Methods
get
(deprecated)
GET /v1alpha/{name=projects/*/locations/*/instanceOSPoliciesCompliances/*}
Get OS policies compliance data for the specified Compute Engine VM instance.
list
(deprecated)
GET /v1alpha/{parent=projects/*/locations/*}/instanceOSPoliciesCompliances
List OS policies compliance data for all Compute Engine VM instances in the specified zone.

REST Resource: v1alpha.projects.locations.instances.inventories

Methods
get GET /v1alpha/{name=projects/*/locations/*/instances/*/inventory}
Get inventory data for the specified VM instance.
list GET /v1alpha/{parent=projects/*/locations/*/instances/*}/inventories
List inventory data for all VM instances in the specified zone.

REST Resource: v1alpha.projects.locations.instances.osPolicyAssignments.reports

Methods
get GET /v1alpha/{name=projects/*/locations/*/instances/*/osPolicyAssignments/*/report}
Get the OS policy assignment report for the specified Compute Engine VM instance.
list GET /v1alpha/{parent=projects/*/locations/*/instances/*/osPolicyAssignments/*}/reports
List OS policy assignment reports for all Compute Engine VM instances in the specified zone.

REST Resource: v1alpha.projects.locations.instances.vulnerabilityReports

Methods
get GET /v1alpha/{name=projects/*/locations/*/instances/*/vulnerabilityReport}
Gets the vulnerability report for the specified VM instance.
list GET /v1alpha/{parent=projects/*/locations/*/instances/*}/vulnerabilityReports
List vulnerability reports for all VM instances in the specified zone.

REST Resource: v1alpha.projects.locations.osPolicyAssignments

Methods
create POST /v1alpha/{parent=projects/*/locations/*}/osPolicyAssignments
Create an OS policy assignment.
delete DELETE /v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}
Delete the OS policy assignment.
get GET /v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}
Retrieve an existing OS policy assignment.
list GET /v1alpha/{parent=projects/*/locations/*}/osPolicyAssignments
List the OS policy assignments under the parent resource.
listRevisions GET /v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}:listRevisions
List the OS policy assignment revisions for a given OS policy assignment.
patch PATCH /v1alpha/{osPolicyAssignment.name=projects/*/locations/*/osPolicyAssignments/*}
Update an existing OS policy assignment.

REST Resource: v1alpha.projects.locations.osPolicyAssignments.operations

Methods
cancel POST /v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*/operations/*}:cancel
Starts asynchronous cancellation on a long-running operation.
get GET /v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*/operations/*}
Gets the latest state of a long-running operation.

REST Resource: v1.projects.locations.instances.inventories

Methods
get GET /v1/{name=projects/*/locations/*/instances/*/inventory}
Get inventory data for the specified VM instance.
list GET /v1/{parent=projects/*/locations/*/instances/*}/inventories
List inventory data for all VM instances in the specified zone.

REST Resource: v1.projects.locations.instances.osPolicyAssignments.reports

Methods
get GET /v1/{name=projects/*/locations/*/instances/*/osPolicyAssignments/*/report}
Get the OS policy assignment report for the specified Compute Engine VM instance.
list GET /v1/{parent=projects/*/locations/*/instances/*/osPolicyAssignments/*}/reports
List OS policy assignment reports for all Compute Engine VM instances in the specified zone.

REST Resource: v1.projects.locations.instances.vulnerabilityReports

Methods
get GET /v1/{name=projects/*/locations/*/instances/*/vulnerabilityReport}
Gets the vulnerability report for the specified VM instance.
list GET /v1/{parent=projects/*/locations/*/instances/*}/vulnerabilityReports
List vulnerability reports for all VM instances in the specified zone.

REST Resource: v1.projects.locations.osPolicyAssignments

Methods
create POST /v1/{parent=projects/*/locations/*}/osPolicyAssignments
Create an OS policy assignment.
delete DELETE /v1/{name=projects/*/locations/*/osPolicyAssignments/*}
Delete the OS policy assignment.
get GET /v1/{name=projects/*/locations/*/osPolicyAssignments/*}
Retrieve an existing OS policy assignment.
list GET /v1/{parent=projects/*/locations/*}/osPolicyAssignments
List the OS policy assignments under the parent resource.
listRevisions GET /v1/{name=projects/*/locations/*/osPolicyAssignments/*}:listRevisions
List the OS policy assignment revisions for a given OS policy assignment.
patch PATCH /v1/{osPolicyAssignment.name=projects/*/locations/*/osPolicyAssignments/*}
Update an existing OS policy assignment.

REST Resource: v1.projects.locations.osPolicyAssignments.operations

Methods
cancel POST /v1/{name=projects/*/locations/*/osPolicyAssignments/*/operations/*}:cancel
Starts asynchronous cancellation on a long-running operation.
get GET /v1/{name=projects/*/locations/*/osPolicyAssignments/*/operations/*}
Gets the latest state of a long-running operation.

REST Resource: v1.projects.patchDeployments

Methods
create POST /v1/{parent=projects/*}/patchDeployments
Create an OS Config patch deployment.
delete DELETE /v1/{name=projects/*/patchDeployments/*}
Delete an OS Config patch deployment.
get GET /v1/{name=projects/*/patchDeployments/*}
Get an OS Config patch deployment.
list GET /v1/{parent=projects/*}/patchDeployments
Get a page of OS Config patch deployments.
patch PATCH /v1/{patchDeployment.name=projects/*/patchDeployments/*}
Update an OS Config patch deployment.
pause POST /v1/{name=projects/*/patchDeployments/*}:pause
Change state of patch deployment to "PAUSED".
resume POST /v1/{name=projects/*/patchDeployments/*}:resume
Change state of patch deployment back to "ACTIVE".

REST Resource: v1.projects.patchJobs

Methods
cancel POST /v1/{name=projects/*/patchJobs/*}:cancel
Cancel a patch job.
execute POST /v1/{parent=projects/*}/patchJobs:execute
Patch VM instances by creating and running a patch job.
get GET /v1/{name=projects/*/patchJobs/*}
Get the patch job.
list GET /v1/{parent=projects/*}/patchJobs
Get a list of patch jobs.

REST Resource: v1.projects.patchJobs.instanceDetails

Methods
list GET /v1/{parent=projects/*/patchJobs/*}/instanceDetails
Get a list of instance details for a given patch job.