Google Cloud Platform (GCP)

Operations using Google Cloud Platform (GCP)

Add a GCP cloud account

post/api/cloudaccounts/gcp

Provided valid authorization and GCP OIDC configuration details, adds the GCP cloud account to the Trend Micro Cloud One account.

SecuritycloudOneAPIKey
Request
header Parameters
Api-Version
required
string

The API version used in this request.

Value: "v1"
Request Body schema: application/json
alias
string

The friendly identifier of the cloud account

description
string

The description of the GCP project

oidcProviderID
required
string

The ID of the Trend Micro Cloud One OIDC Provider created in the workload identity pool within the GCP project

projectNumber
required
string

The Project number of the GCP project that contains the OIDC configuration

serviceAccountID
required
string

The unique ID of the service account that will be impersonated by Trend Micro Cloud One

workloadIdentityPoolID
required
string

The ID of the workload identity pool created in the GCP project

Responses
201

GCP Cloud account created

400

Bad Request + specific error message

401

Valid authentication was not provided

403

Unauthorized

409

This indicates a request conflict with the current state of the target resource

429

You have made too many requests too quickly. Check the Retry-After header for an indication of when you might be able to try again.

500

Internal server error

503

The service is temporarily unavailable, likely due to maintenance. It should be available soon, check the Retry-After header for an indication of when you might be able to try again.

Request samples
application/json
{
  • "workloadIdentityPoolID": "cloud-one-workload-identity-pool",
  • "oidcProviderID": "cloud-one-oidc-provider",
  • "serviceAccountID": "123456789012345678901",
  • "projectNumber": "123456789012",
  • "alias": "production account",
  • "description": "Production Project #1"
}
Response samples
application/json
{
  • "workloadIdentityPoolID": "cloud-one-workload-identity-pool",
  • "oidcProviderID": "cloud-one-oidc-provider",
  • "projectNumber": "012345678910",
  • "serviceAccountID": "123456789012345678901",
  • "projectCount": "1",
  • "created": "2020-07-10T07:02:10Z",
  • "lastModified": "2020-07-10T07:02:10Z",
  • "alias": "production account",
  • "description": "Corp ABC production account",
  • "state": "managed"
}

List all GCP cloud accounts managed by Trend Micro Cloud One

get/api/cloudaccounts/gcp

Provided valid authorization, lists all GCP cloud accounts managed by Trend Micro Cloud One

SecuritycloudOneAPIKey
Request
query Parameters
cursor
string

An encoded value used to retrieve the next set of results for a query that returns more results than the provided limit. It uses the next value from the previous response.

Example: cursor=eyJrIjoiMXVLa2lsb3B2RnhsS0FuYUU0bThqUmVjZDdCIiwibiI6IkJUY2hRU2pOVDBSUjc0cHUifQ.EilR0MPcmh9JdsQ1omPx1cJQvh_RjDwI_AnHAWu-G1YSN9ZTjoKswEhDObUaefE8nf97AlccfogXrvrcjfpE7gDJCz4oI-6rfM43E9T_Or3uyOG3OgHoK9eyUX-qv8WTYwnf1tzwVN1e1D4B0Kr81yQBi2Y-MdeIH60rkOFI42w6I9fEJRDnPRoFqRn2Hw70ehjrCRpkeRKS9emduCL_YNZmjNEst1i6heg5-sqtkBYrYaqWecKJ5rqskQN_apfrX-BEfh6Ph2j7hYKJ6s32j3dOGR9paTFikewtKWMXBcy6kW5uZqGwO05sVW1Wy6HavxpNm5ha50WKotoEndvzuW0RasT9YLbCry1qRYt3X8NKybpERt2u7lRHNSY3DuVtbXbeR9oUzsO1Br31ywH0dBkn3WsfPYFOaEt0htVo0_DlDZh-0oH4PdzvCkzDQn-EM8u9PCxzvxSMGtQ_UXcDxEZcUgfgnLQy4Fu2AHumF136tXZyTh8GAd-mLqC6xtvOXJTDF7s0TxQ7A57d9C1EDrEJOBuq
limit
integer

The maximum numbers of records to return. It accepts an integer ranging from 1 to 25. Otherwise, the request will be rejected.

Example: limit=25
header Parameters
Api-Version
required
string

The API version used in this request.

Value: "v1"
Responses
200

List of GCP cloud accounts

400

Bad Request + specific error message

401

Valid authentication was not provided

403

Unauthorized

429

You have made too many requests too quickly. Check the Retry-After header for an indication of when you might be able to try again.

500

Internal server error

503

The service is temporarily unavailable, likely due to maintenance. It should be available soon, check the Retry-After header for an indication of when you might be able to try again.

Response samples
application/json
{
  • "cloudAccounts": [
    ],
  • "next": "dGhpcyB2YWx1ZSBpcyBvcGFxdWUsIGRlY29kaW5nIGl0IHdvbid0IGJlIHVzZWZ1bAo="
}

Modify a GCP cloud account

post/api/cloudaccounts/gcp/{serviceAccountID}

Provided valid authorization and GCP cloud account details, modifies the GCP cloud account details stored in the Trend Micro Cloud One account.

SecuritycloudOneAPIKey
Request
path Parameters
serviceAccountID
required
string

The unique ID of the service account that will be impersonated by Trend Micro Cloud One

Example: 123456789012345678901
header Parameters
Api-Version
required
string

The API version used in this request.

Value: "v1"
Request Body schema: application/json
alias
string

The friendly identifier of the cloud account

description
string

The description of the GCP project

Responses
200

GCP cloud account modified

400

Bad Request + specific error message

401

Valid authentication was not provided

403

Unauthorized

404

Not Found

429

You have made too many requests too quickly. Check the Retry-After header for an indication of when you might be able to try again.

500

Internal server error

503

The service is temporarily unavailable, likely due to maintenance. It should be available soon, check the Retry-After header for an indication of when you might be able to try again.

Request samples
application/json
{
  • "alias": "production account",
  • "description": "Production Project #1"
}
Response samples
application/json
{
  • "workloadIdentityPoolID": "cloud-one-workload-identity-pool",
  • "oidcProviderID": "cloud-one-oidc-provider",
  • "projectNumber": "012345678910",
  • "serviceAccountID": "123456789012345678901",
  • "projectCount": "1",
  • "created": "2020-07-10T07:02:10Z",
  • "lastModified": "2020-07-10T07:02:10Z",
  • "alias": "production account",
  • "description": "Corp ABC production account",
  • "state": "managed"
}

Remove a GCP cloud account

delete/api/cloudaccounts/gcp/{serviceAccountID}

Provided valid authorization and the GCP Service Account ID, removes the GCP cloud account from the Trend Micro Cloud One account.

SecuritycloudOneAPIKey
Request
path Parameters
serviceAccountID
required
string

The unique ID of the service account that will be impersonated by Trend Micro Cloud One

Example: 123456789012345678901
header Parameters
Api-Version
required
string

The API version used in this request.

Value: "v1"
Responses
204

GCP cloud account deleted

400

Bad Request + specific error message

401

Valid authentication was not provided

403

Unauthorized

429

You have made too many requests too quickly. Check the Retry-After header for an indication of when you might be able to try again.

500

Internal server error

503

The service is temporarily unavailable, likely due to maintenance. It should be available soon, check the Retry-After header for an indication of when you might be able to try again.

Response samples
application/json
{
  • "code": "invalid-feature",
  • "message": "There was a problem with your request. Review the indicated field for more details.",
  • "fields": {
    }
}

Describe GCP project

get/api/cloudaccounts/gcp-projects/{projectID}

Provided valid authorization and a GCP project ID describe the given project

SecuritycloudOneAPIKey
Request
path Parameters
projectID
required
string

The GCP project ID

Example: gcp-project-1
header Parameters
Api-Version
required
string

The API version used in this request.

Value: "v1"
Responses
200

Details of the GCP project

400

Bad Request + specific error message

401

Valid authentication was not provided

403

Unauthorized

404

Not Found

429

You have made too many requests too quickly. Check the Retry-After header for an indication of when you might be able to try again.

500

Internal server error

503

The service is temporarily unavailable, likely due to maintenance. It should be available soon, check the Retry-After header for an indication of when you might be able to try again.

Response samples
application/json
{
  • "projectID": "gcp-project-1",
  • "serviceAccountEmail": "service-account@project-id.iam.gserviceaccount.com"
}

Get GCP Deployment Terraform Template

get/api/cloudaccounts/gcp/templates

Provided valid authorization, returns the GCP Deployment Terraform Template. The Deployment Terraform Template is needed to deploy the resources required for Trend Micro Cloud One to access your GCP resources.

SecuritycloudOneAPIKey
Request
header Parameters
Api-Version
required
string

The API version used in this request.

Value: "v1"
Responses
200

The details for creating the GCP Deployment Terraform Template

400

Bad Request + specific error message

401

Valid authentication was not provided

403

Unauthorized

404

Not Found

429

You have made too many requests too quickly. Check the Retry-After header for an indication of when you might be able to try again.

500

Internal server error

503

The service is temporarily unavailable, likely due to maintenance. It should be available soon, check the Retry-After header for an indication of when you might be able to try again.

Response samples
application/json
{
  • "code": "invalid-feature",
  • "message": "There was a problem with your request. Review the indicated field for more details.",
  • "fields": {
    }
}

List all GCP projects managed by Trend Micro Cloud One

get/api/cloudaccounts/gcp/{serviceAccountID}/projects

Provided valid authorization, lists all GCP projects associated with a GCP cloud account

SecuritycloudOneAPIKey
Request
path Parameters
serviceAccountID
required
string

The unique ID of the service account that will be impersonated by Trend Micro Cloud One

Example: 123456789012345678901
header Parameters
Api-Version
required
string

The API version used in this request.

Value: "v1"
Responses
200

GCP projects associated with the GCP cloud account

400

Bad Request + specific error message

401

Valid authentication was not provided

403

Unauthorized

404

Not Found

429

You have made too many requests too quickly. Check the Retry-After header for an indication of when you might be able to try again.

500

Internal server error

503

The service is temporarily unavailable, likely due to maintenance. It should be available soon, check the Retry-After header for an indication of when you might be able to try again.

Response samples
application/json
{
  • "projects": [
    ],
  • "next": "dGhpcyB2YWx1ZSBpcyBvcGFxdWUsIGRlY29kaW5nIGl0IHdvbid0IGJlIHVzZWZ1bAo="
}