Visão geral da API Admin Settings

Com a API Admin Settings, os administradores de domínios do Google Workspace podem recuperar e alterar as configurações dos domínios na forma de feeds da API Google Data.

Essas configurações do domínio incluem muitos dos recursos disponíveis no Admin Console do Google Workspace. Exemplos de usos dessa API incluem a criação de um painel de controle personalizado ou a integração de domínios do Google Workspace a um ambiente legado atual.

A API Admin Settings implementa o protocolo da API Google Data. A API de dados do Google obedece ao modelo de publicação e edição do Atom Publishing Protocol (AtomPub). As solicitações HTTP do AtomPub usam a abordagem de design Representational Set Transfer (RESTful) para serviços da Web. Para mais informações, consulte o Guia do desenvolvedor de dados do Google.

Público-alvo

Este documento é para desenvolvedores que querem criar aplicativos cliente que podem modificar e recuperar informações sobre os domínios do Google Workspace. Ele fornece exemplos das interações básicas da API de configurações de administrador usando XML e HTTP brutos.

Para seguir este documento, você precisa conhecer as ideias gerais do protocolo da API Google Data e conhecer o Admin Console do Google Workspace. Para mais informações sobre o Admin Console, consulte Usar seu Admin Console.

Vamos começar

Como criar uma conta

A API Admin Settings está ativada para contas do Google Workspace. Crie uma conta do Google Workspace para fins de teste. O serviço de configurações de administrador usa as Contas do Google. Portanto, se você já tem uma conta em um domínio do Google Workspace, não precisa fazer mais nada.

Sobre os tipos de feed da API Admin Settings

A API de configurações de administrador permite gerenciar estas categorias de configurações do domínio:

Configurações de Logon único

Com o Logon único (SSO) baseado em SAML, os usuários têm o mesmo login e senha para os serviços hospedados no Google Workspace e em outros serviços que você hospeda na sua organização. Especificamente ao usar o SSO, um aplicativo da Web hospedado, como o Google Workspace, redireciona os usuários ao provedor de identidade da sua organização para autenticá-los no login. Veja informações detalhadas em Noções básicas sobre o SSO baseado em SAML para Google Workspace.

Para configurar o SSO, você precisa inserir as informações necessárias para que o serviço do Google Workspace se comunique com o provedor de identidade que armazena as informações de login dos usuários, além de definir os links que os usuários devem acessar para fazer login, sair e mudar a senha. A API de configurações de administrador permite que você atualize e recupere essas configurações de forma programática. O Google usa a chave pública gerada para verificar essa solicitação de SSO com seu provedor de identidade e se a resposta SAML de chave privada não foi modificada durante a transmissão da rede.

Para ver um breve resumo específico da API sobre como usar as configurações de SSO, consiga o certificado de chave pública do seu provedor de identidade, registre a chave pública no Google e defina as configurações de consulta de SSO baseada em SAML. Para mensagens de erro, consulte Como solucionar problemas de SSO:

  • Gere suas chaves – Com seu provedor de identidade, gere um conjunto de chaves públicas e privadas usando os algoritmos DSA ou RSA. A chave pública está em um certificado no formato X.509. Para mais informações sobre chaves de assinatura de Logon único baseado em SAML, consulte Como gerar chaves e certificados para o serviço de Logon único do Google Workspace.
  • Registrar-se no Google – Use as configurações de Logon único da API de configurações de administrador para registrar o seu certificado de chave pública no Google.
  • Defina suas configurações de SSO – Use as configurações de Logon único da API de configurações de administrador para definir as configurações usadas para a comunicação com os servidores do provedor de identidade do domínio.

Configurações de gateway e roteamento

Com esse feed, os administradores do domínio podem controlar o roteamento de e-mails nos domínios.

As operações de roteamento de e-mail permitem que os administradores especifiquem as configurações de roteamento de e-mail no nível do domínio. Esse recurso é parecido com o roteamento de e-mails nas configurações do Gmail no Admin Console. Para mais informações, consulte Roteamento de e-mail e configuração de entrega dupla do recurso de roteamento de e-mail.

Exemplo de solicitação e resposta XML da API de configurações do administrador

Este documento fornece exemplos de código de solicitações e respostas básicas da API de configurações de administrador usando XML e HTTP brutos. Este exemplo de linguagem padrão de domínio mostra a sintaxe completa de XML e HTTP para o corpo de uma entrada de solicitação e resposta comum a todas as operações:

Para alterar a configuração de gateway de e-mail de saída do domínio, envie um PUT HTTP para o URL de feed de gateway:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/email/gateway

O XML do AtomPub entry do idioma padrão PUT é:

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom'
  xmlns:apps='http://schemas.google.com/apps/2006'>
  <apps:property name='smartHost' value='smtp.out.domain.com' />
  <apps:property name='smtpMode' value='SMTP' />
</atom:entry>

Exceto pelas propriedades e pelos valores específicos da operação, os elementos atom:property representam um único par de chave-valor que contém informações sobre uma propriedade que você quer recuperar ou atualizar. Isso é comum a todos os corpos de solicitação da API de configurações de administrador.

O elemento entry da resposta de idioma padrão do domínio retorna as propriedades smartHost e smtpMode com a sintaxe XML comum a todos os corpos de resposta da API Admin Settings:

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<id>https://apps-apis.google.com/a/feeds/domain/2.0/domainName/email/gateway</id>
<updated>2008-12-17T23:59:23.887Z</updated>
<link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/domain/
  2.0/domainName/email/gateway'/>
<link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/domain/
  2.0/domainName/email/gateway'/>
<apps:property name='smartHost' value='smtp.out.domain.com' />
<apps:property name='smtpMode' value='SMTP' />
</entry>

Como gerenciar configurações de logon único

Com o recurso de Logon único (SSO) do Google Workspace, os usuários precisam digitar o login e a senha apenas uma vez para acessar vários serviços. Essa senha é armazenada pelo provedor de identidade do domínio, não pelo Google Workspace. Para mais informações, consulte a página de SSO da Central de Ajuda. As seções a seguir demonstram o formato XML usado para as configurações de Logon único.

Como recuperar configurações de logon único

Para recuperar as configurações de Logon único, envie um GET HTTP para o URL de feed geral de SSO e inclua um cabeçalho Authorization, conforme descrito em Como autenticar no serviço de configurações de administrador. Para mensagens de erro, consulte Como solucionar problemas de SSO:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/general

Esta operação não tem parâmetros no corpo da solicitação.

Uma resposta bem sucedida retornará um código de status HTTP 200 OK, junto com um feed AtomPub com as configurações de SSO do domínio.

O XML de resposta GET retorna as propriedades samlSignonUri, samlLogoutUri, changePasswordUri, enableSSO, ssoWhitelist e useDomainSpecificIssuer:

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<apps:property name='samlSignonUri' value='http://www.example.com/sso/signon'/>
...
<apps:property name='samlLogoutUri' value='http://www.example.com/sso/logout'/>
<apps:property name='changePasswordUri' value='http://www.example.com/sso/changepassword'/>
<apps:property name='enableSSO' value='true'/>
<apps:property name='ssoWhitelist' value='CIDR formatted IP address'/>
<apps:property name='useDomainSpecificIssuer' value='false'/>
</entry>

As propriedades incluem:

samlSignonUri
O URL do provedor de identidade onde o Google Workspace envia a solicitação SAML para autenticação do usuário.
samlLogoutUri
O endereço para onde os usuários serão direcionados quando sairem do aplicativo da Web.
changePasswordUri
O endereço para onde os usuários serão enviados quando quiserem mudar a senha do SSO do aplicativo da Web.
enableSSO
Ativa o SSO baseado em SAML para este domínio. Se você já tiver definido as configurações de SSO e definir enableSSO como enableSSO=false, as configurações anteriores vão continuar salvas.
ssoWhitelist
Um ssochecklist é um endereço IP de máscara de rede no formato de roteamento entre domínios sem classe (CIDR). A lista de permissões determina quais usuários fazem login com o SSO e quais são usados na página de autenticação de conta do Google Workspace. Se nenhuma máscara for especificada, todos os usuários farão login com SSO. Para mais informações, consulte Como as máscaras de rede funcionam.
useDomainSpecificIssuer
Um emissor específico do domínio pode ser usado na solicitação SAML para o provedor de identidade. Esse recurso não é necessário para a maioria das implantações de SSO, mas é útil em empresas de grande porte que usam um único provedor de identidade para autenticar uma organização inteira com vários subdomínios. Fornecer o emissor do domínio específico determina qual subdomínio associar à solicitação. Para mais informações, consulte Como funciona o elemento emissor na solicitação SAML?.

Se a solicitação falhar por algum motivo, um código de status diferente será retornado. Para mais informações sobre os códigos de status da API Google Data, consulte Códigos de status HTTP.

Como atualizar as configurações de Logon único

Para atualizar as configurações de SSO de um domínio, primeiro recupere essas configurações usando a operação Como recuperar configurações de logon único, modifique-as e envie uma solicitação PUT para o URL do feed de SSO. Verifique se o valor <id> está na entrada atualizada que corresponde exatamente ao <id> da entrada atual. Inclua um cabeçalho Authorization conforme descrito em Como autenticar no serviço da API Admin Settings. Para mensagens de erro, consulte Como solucionar problemas de SSO.

Quando atualizar as configurações de Logon único, envie um HTTP PUT para o URL de feed geral de SSO:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/general

O corpo XML da solicitação PUT é:

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<apps:property name='enableSSO' value='false' />
<apps:property name='samlSignonUri' value='http://www.example.com/sso/signon' />
<apps:property name='samlLogoutUri' value='http://www.example.com/sso/logout' />
<apps:property name='changePasswordUri' value='http://www.example.com/sso/changepassword' />
<apps:property name='ssoWhitelist' value='127.0.0.1/32' />
<apps:property name='useDomainSpecificIssuer' value='false'/>
</atom:entry>

Uma resposta bem sucedida retornará um código de status HTTP 200 OK, junto com um feed AtomPub com as configurações de SSO.

O XML de resposta PUT é:

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
...
<apps:property name='samlSignonUri' value='http://www.example.com/sso/signon'/>
<apps:property name='samlLogoutUri' value='http://www.example.com/sso/logout'/>
<apps:property name='changePasswordUri' value='http://www.example.com/sso/changepassword'/>
<apps:property name='enableSSO' value='false'/>
<apps:property name='ssoWhitelist' value='127.0.0.1/32'/>
<apps:property name='useDomainSpecificIssuer' value='false'/>
</entry>

Se a solicitação falhar por algum motivo, um código de status diferente será retornado. Para mais informações sobre os códigos de status da API Google Data, consulte Códigos de status HTTP.

Como recuperar a chave de assinatura de logon único

Para recuperar a chave de assinatura de logon único, envie um GET HTTP para o URL de feed da chave de assinatura de SSO e inclua um cabeçalho Authorization, conforme descrito em Como autenticar no serviço de configurações de administrador. Para mensagens de erro, consulte Como solucionar problemas de SSO:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/signingkey

Esta operação não tem parâmetros no corpo da solicitação.

Uma resposta bem sucedida retornará um código de status HTTP 200 OK, junto com um feed AtomPub com a chave de assinatura.

O XML de resposta GET retorna a propriedade signingKey:

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
...
<apps:property name='signingKey' value='yourBase64EncodedPublicKey'/>
</entry>

Se a solicitação falhar por algum motivo, um código de status diferente será retornado. Para mais informações sobre os códigos de status da API Google Data, consulte Códigos de status HTTP.

Como atualizar a chave de assinatura de logon único

Para atualizar a chave de assinatura de SSO de um domínio, primeiro recupere a chave de assinatura usando a operação Como recuperar a chave de assinatura de logon único, modifique-a e envie uma solicitação PUT para o URL do feed da chave de assinatura de SSO. Verifique se o valor <id> está na entrada atualizada que corresponde exatamente ao <id> da entrada atual. Para mais informações sobre chaves de assinatura de Logon único baseado em SAML, consulte Como gerar chaves e certificados para o serviço de Logon único do Google Workspace.

Ao atualizar a chave de assinatura de logon único, envie um PUT HTTP para o URL do feed da chave de assinatura de SSO:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/sso/signingkey

O XML da solicitação PUT é:

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps="http://schemas.google.com/apps/2006">
<apps:property name='signingKey' value='yourBase64EncodedPublicKey'/>
</atom:entry>

Como gerenciar o gateway e o roteamento de e-mail

A seção de gateway de e-mail de saída mostra como a API de configurações de administrador oferece suporte ao roteamento de e-mails enviados de usuários no seu domínio. A seção de roteamento de e-mails mostra como rotear mensagens para outro servidor de e-mail.

Como recuperar configurações de gateway de e-mail de saída

Para recuperar as configurações de gateway de e-mail de saída, envie um GET HTTP para o URL de feed do gateway e inclua um cabeçalho Authorization, conforme descrito em Como autenticar no serviço de configurações de administrador:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/email/gateway

Esta operação não tem parâmetros no corpo da solicitação.

Uma resposta bem sucedida retornará um código de status HTTP 200 OK, junto com um feed AtomPub com as informações de status do gateway de e-mail.

A resposta GET retorna as propriedades smartHost e smtpMode. Para mais informações sobre essas propriedades, consulte Como atualizar configurações de gateway de e-mail de saída.

Um exemplo de resposta possível é:

<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
...
<apps:property name='smartHost' value='smtpout.domain.com'/>
<apps:property name='smtpMode' value='SMTP'/>
</entry>

Se a solicitação falhar por algum motivo, um código de status diferente será retornado. Para mais informações sobre os códigos de status da API Google Data, consulte Códigos de status HTTP.

Atualizando configurações de gateway de e-mail de saída

Para atualizar a configuração de gateway de e-mail de saída de um domínio, envie uma solicitação PUT HTTP para o URL do feed de gateway:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/email/gateway

O XML da solicitação PUT é:

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps="http://schemas.google.com/apps/2006">
<apps:property name='smartHost' value='smtp.out.domain.com' />
<apps:property name='smtpMode' value='SMTP' />
</atom:entry>

As propriedades da solicitação são:

smartHost
O endereço IP ou o nome do host do servidor SMTP. O Google Workspace encaminha os e-mails de saída para esse servidor.
smtpMode
O valor padrão é SMTP. Outro valor, SMTP_TLS, protege uma conexão com TLS ao entregar a mensagem.

Uma resposta bem sucedida retornará um código de status HTTP 200 OK, junto com o feed AtomPub com o status de configurações do gateway de e-mail.

Se a solicitação falhar por algum motivo, um código de status diferente será retornado. Para mais informações sobre os códigos de status da API Google Data, consulte Códigos de status HTTP.

Gerenciar configurações de roteamento de e-mail

Primeiro, crie uma solicitação XML:

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps="http://schemas.google.com/apps/2006">
<apps:property name='routeDestination' value='route-smtp.domain.com'/>
<apps:property name='routeRewriteTo' value='true'/>
<apps:property name='routeEnabled' value='true'/>
<apps:property name='bounceNotifications' value='true'/>
<apps:property name='accountHandling' value='can be either allAccounts | provisionedAccounts | unknownAccounts'/>
</atom:entry>

As propriedades da solicitação são:

routeDestination
Este destino é o nome do host ou o endereço IP do servidor de e-mail SMTP para onde o e-mail está sendo roteado. O nome do host ou o endereço IP deve ser resolvido para o Google. Veja mais detalhes sobre como resolver nomes de host de e-mail em Piloto do Google Workspace com roteamento de e-mail.
routeRewriteTo
Se verdadeiro, o campo to: do envelope SMTP da mensagem será alterado para o nome do host de destino (nome do host de usuário@destino) e a mensagem será entregue para esse endereço de usuário no servidor de e-mail de destino. Se false, o e-mail será entregue ao endereço de e-mail to: da mensagem original (usuário@nome do host original) no servidor de e-mail de destino. É semelhante à configuração "Alterar envelope SMTP" do Admin Console. Veja mais informações em Configurações do domínio para roteamento de e-mail.
routeEnabled
Se true, a funcionalidade de roteamento de e-mails estará ativada. Se for false, a funcionalidade será desativada.
bounceNotifications
Se true, o Google Workspace está ativado para enviar notificações de devolução ao remetente quando uma entrega falha.
accountHandling

Esta configuração determina como diferentes tipos de usuários no domínio são afetados pelo roteamento de e-mails:

  • allAccounts: entrega todos os e-mails para este destino.
  • provisionedAccounts: entrega e-mails para este destino se o usuário existir no Google Workspace.
  • unknownAccounts: envia e-mails para esse destino se o usuário não existir no Google Workspace. É parecido com a configuração "E-mail de entrega para" do Admin Console. Para mais informações sobre os pré-requisitos e como usar o roteamento de e-mail, consulte Configurações do domínio para roteamento de e-mail. ~ Para publicar essa solicitação, envie um POST HTTP para o URL de feed de roteamento de e-mail e inclua um cabeçalho Authorization, conforme descrito em Como autenticar no serviço de configurações de administrador:

https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/emailrouting

Uma resposta bem sucedida retornará um código de status HTTP 200 OK, junto com um feed AtomPub com as informações de arquivo.

Se a solicitação falhar por algum motivo, um código de status diferente será retornado. Para mais informações sobre os códigos de status da API Google Data, consulte Códigos de status HTTP.

Desativação dos endpoints em 31 de outubro de 2018

Como parte deste aviso, suspendemos o uso dos endpoints a seguir. Elas foram desativadas em 31 de outubro de 2018 e não estão mais disponíveis.

  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/defaultLanguage
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/organizationName
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/currentNumberOfUsers
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/general/maximumNumberOfUsers
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/supportPIN
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/customerPIN
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/adminSecondaryEmail
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/edition
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/creationTime
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/accountInformation/countryCode
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/appearance/customLogo
  • https://apps-apis.google.com/a/feeds/domain/2.0/{domainName}/verification/mx