ID da região
O REGION_ID
é um código abreviado que o Google atribui
com base na região que você selecionou ao criar o aplicativo. O código não
corresponde a um país ou estado, ainda que alguns IDs de região sejam semelhantes
aos códigos de país e estado geralmente usados. Para apps criados após
fevereiro de 2020, o REGION_ID.r
está incluído nos
URLs do App Engine. Para apps existentes criados antes dessa data, o
ID da região é opcional no URL.
Saiba mais sobre IDs de região.
Use a API App Engine Admin do Google para criar aplicativos do App Engine de maneira programática em novos projetos do Google Cloud. Com a API Admin e a API Cloud Resource Manager, é possível gerenciar projetos do Google Cloud e aplicativos do App Engine de maneira programática.
Criar um aplicativo do App Engine cria um
recurso Application
para um projeto de destino do Google Cloud no local
especificado.
Para criar manualmente um aplicativo do App Engine em um projeto do Google Cloud, consulte o tópico Como gerenciar projetos, aplicativos e faturamento para seu idioma no ambiente padrão ou ambiente flexível.
Antes de começar
É preciso atender aos seguintes pré-requisitos, antes de criar um aplicativo do App Engine usando a API Admin:
- É necessário criar ou ter um projeto do Google Cloud.
- Você precisa ser o proprietário do projeto do Google Cloud de destino.
- É preciso que você tenha permissão para acessar a API Admin.
Antes que qualquer outra conta de usuário possa executar tarefas em um aplicativo do App Engine,
o proprietário do projeto do Google Cloud precisa primeiro criar o
recurso Application
. Por exemplo, primeiro você precisa criar o aplicativo do App Engine para que uma conta de usuário com o papel de Implantador do App Engine possa implantar
um aplicativo usando uma conta
de serviço.
Para criar um projeto do Google Cloud:
API
Para criar um projeto do Google Cloud de maneira programática, use a API Cloud Resource Manager. Para saber mais, consulte Como criar um novo projeto. Veja um breve exemplo.
Console
Para criar um projeto do Google Cloud usando o console do Google Cloud:
gcloud
Depois de instalar a Google Cloud CLI, execute o seguinte comando da CLI gcloud para criar um projeto do Google Cloud:
gcloud projects create
Como criar um novo projeto do Google Cloud com a API Cloud Resource Manager
Antes de enviar solicitações com o Google Cloud Resource Manager, é preciso ativar essa API no projeto do Google Cloud em que você quer criar outros projetos do Cloud. Ativar a API Cloud Resource Manager no console do Google Cloud
Envie uma solicitação HTTP
POST
usando seu token de acesso:POST https://cloudresourcemanager.googleapis.com/v1/projects/ { "projectId": "[MY_PROJECT_ID]", "name": "[MY_PROJECT_NAME]" }
Exemplo de comando cURL:
curl -X POST -d "{ 'projectId': '[MY_PROJECT_ID]', 'name': '[MY_PROJECT_NAME]' }" -H "Content-Type: application/json" -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://cloudresourcemanager.googleapis.com/v1/projects/
Para mais informações, consulte o tópico Como criar um novo projeto do Cloud Resource Manager.
Se você optar por usar um projeto que já existe no Google Cloud, certifique-se de que
ele não contenha o recurso Application
porque os projetos
são compatíveis com apenas um aplicativo do App Engine. Para verificar se o
projeto do Google Cloud já contém o recurso Application
, use o
método apps.get
ou
execute o
comando gcloud app describe
.
Como criar um aplicativo do App Engine
Para criar um aplicativo do App Engine com a API Admin:
Autorize suas solicitações HTTP, por exemplo, receba um token de acesso.
É possível autorizar o acesso à API Admin usando diferentes fluxos do OAuth, dependendo das necessidades do aplicativo de API. Para mais informações, consulte Como acessar a API.
Envie uma solicitação HTTP
POST
usando seu token de acesso e a API Admin para criar um aplicativo do App Engine.Você define o recurso
Application
e segmenta o projeto do Google Cloud na solicitação HTTPPOST
, por exemplo:POST https://appengine.googleapis.com/v1/apps { "id": "[MY_PROJECT_ID]", "locationId": "[MY_APP_LOCATION]" }
Campos de solicitação HTTP obrigatórios:
id
: o ID do projeto de destino do Google Cloud em que você quer criar um aplicativo do App Engine.locationId
: o nome da região geográfica em que o aplicativo do App Engine está localizado, conforme listado nos Locais do App Engine, por exemplo,us-east1
.Para ver uma lista completa de locais compatíveis, use o método
apps.locations.list
.Exemplo: autorize e execute essa solicitação de exemplo no APIs Explorer para visualizar uma lista atual de locais compatíveis.
Para uma lista completa de opções de campo, consulte o recurso
Application
.Exemplo de comando cURL:
curl -X POST -d "{ 'id': '[MY_PROJECT_ID]', 'locationId': '[MY_APP_LOCATION]' }" -H "Content-Type: application/json" -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps
Em que:
[MY_PROJECT_ID]
é o código do projeto de destino em que você quer criar o aplicativo do App Engine.[MY_APP_LOCATION]
é o local em que você quer criar o aplicativo do App Engine.[MY_ACCESS_TOKEN]
é o token de acesso que você recebeu para autorizar suas solicitações HTTP.
Exemplo de resposta:
{ "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f", "metadata": { "@type": "type.googleapis.com/google.appengine.v1.OperationMetadataV1", "method": "google.appengine.v1.Applications.CreateApplication", "insertTime": "2016-10-03T20:48:02.099Z", "user": "me@example.com", "target": "apps/[MY_PROJECT_ID]" } }
Verifique se o aplicativo do App Engine foi criado:
Veja o status da operação de criação real:
A solicitação HTTP
POST
usada na etapa anterior retornou o nome da operação no camponame
, que você usa com o métodoGET
da coleçãoapps.operations
para verificar o status da operação de criação.Por exemplo, se o campo
name
da resposta for:"name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f"
Você enviará a seguinte solicitação HTTP
GET
:GET https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f
Exemplo de comando cURL:
curl -X GET -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f
Em que
[MY_ACCESS_TOKEN]
é seu token de acesso e[MY_PROJECT_ID]
é o código do projeto de destino.Exemplo de resposta:
{ "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f", "metadata": { "@type": "type.googleapis.com/google.appengine.v1.OperationMetadataV1", "method": "google.appengine.v1.Applications.CreateApplication", "insertTime": "2016-10-03T20:48:02.099Z", "endTime": "2016-10-03T20:48:18.272Z", "user": "me@example.com", "target": "apps/[MY_PROJECT_ID]" }, "done": true, "response": { "@type": "type.googleapis.com/google.appengine.v1.Application", "id": "[MY_PROJECT_ID]", "locationId": "[MY_APP_LOCATION]" } }
Verifique se o aplicativo do App Engine foi criado no projeto:
Para visualizar detalhes sobre a versão, use o método
GET
da coleçãoapps
. É preciso especificar qual projeto você implantou na solicitação HTTPGET
, por exemplo:GET https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]
Exemplo de comando cURL:
curl -X GET -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/
Em que
[MY_ACCESS_TOKEN]
é seu token de acesso e[MY_PROJECT_ID]
é o código do projeto de destino.Exemplo de resposta:
{ "name": "apps/[MY_PROJECT_ID]", "id": "[MY_PROJECT_ID]", "authDomain": "gmail.com", "locationId": "us-central", "defaultHostname": "[MY_PROJECT_ID].[REGION_ID].r.appspot.com", "defaultBucket": "[MY_PROJECT_ID].[REGION_ID].r.appspot.com" }
O
REGION_ID
é um código abreviado que o Google atribui com base na região que você selecionou ao criar o aplicativo. O código não corresponde a um país ou estado, ainda que alguns IDs de região sejam semelhantes aos códigos de país e estado geralmente usados. Para apps criados após fevereiro de 2020, oREGION_ID.r
está incluído nos URLs do App Engine. Para apps existentes criados antes dessa data, o ID da região é opcional no URL.