Method: projects.keys.migrate

Migrates an existing key from reCAPTCHA to reCAPTCHA Enterprise. Once a key is migrated, it can be used from either product. SiteVerify requests are billed as CreateAssessment calls. You must be authenticated as one of the current owners of the reCAPTCHA Key, and your user must have the reCAPTCHA Enterprise Admin IAM role in the destination project.

HTTP request


The URL uses gRPC Transcoding syntax.

Path parameters



Required. The name of the key to be migrated, in the format "projects/{project}/keys/{key}".

Request body

The request body contains data with the following structure:

JSON representation
  "skipBillingCheck": boolean


Optional. If true, skips the billing check. A reCAPTCHA Enterprise key or migrated key behaves differently than a reCAPTCHA (non-Enterprise version) key when you reach a quota limit (see To avoid any disruption of your usage, we check that a billing account is present. If your usage of reCAPTCHA is under the free quota, you can safely skip the billing check and proceed with the migration. See

Response body

If successful, the response body contains an instance of Key.

Authorization scopes

Requires the following OAuth scope:


For more information, see the Authentication Overview.

IAM Permissions

Requires the following IAM permission on the name resource:

  • recaptchaenterprise.keys.update

For more information, see the IAM documentation.