Google Workspace 관리자 설정 API

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

Google Workspace 관리자 설정 API를 사용하면 Google Workspace 도메인의 관리자가 도메인 설정을 Google Data API 피드 형식으로 검색하고 변경할 수 있습니다.

이러한 도메인 설정에는 Google Workspace 관리 콘솔에서 사용할 수 있는 많은 기능이 포함되어 있습니다. 이 API를 사용하는 예로는 맞춤 제어판을 만들거나 Google Workspace 도메인을 기존 기존 환경에 통합하는 경우를 들 수 있습니다.

Admin Settings API는 Google Data API 프로토콜을 구현합니다. Google Data API는 Atom게시 프로토콜 (AtomPub) 게시 및 수정 모델을 준수합니다. AtomPub HTTP 요청은 웹 서비스에 대한 표현 방식 전송 (RESTful) 디자인 접근 방식을 사용합니다. 자세한 내용은 Google 데이터 개발자 가이드를 참고하세요.

대상

이 문서는 Google Workspace 도메인에 대한 정보를 수정하고 검색할 수 있는 클라이언트 애플리케이션을 작성하려는 개발자를 대상으로 합니다. 원시 XML 및 HTTP를 사용하는 기본적인 Admin Settings API 상호작용의 예를 제공합니다.

이 문서에서는 사용자가 Google Data API 프로토콜에 대한 일반적인 개념을 이해하고 있으며 Google Workspace 관리 콘솔에 익숙하다고 가정합니다. 관리 콘솔에 대한 자세한 내용은 관리 콘솔 사용하기를 참고하세요.

시작하기

계정 만들기

Google Workspace 계정에 Google Workspace Admin Settings API가 사용 설정되었습니다. 테스트 목적으로 Google Workspace 계정에 가입합니다. 관리자 설정 서비스는 Google 계정을 사용하므로 이미 Google Workspace 도메인에 계정이 있는 경우 모든 준비가 완료된 것입니다.

관리자 설정 피드 유형 정보

Admin Settings API를 사용하면 다음과 같은 카테고리의 도메인 설정을 관리할 수 있습니다.

싱글 사인온(SSO) 설정

SAML 기반 싱글 사인온 (SSO)을 사용하면 Google Workspace 호스팅 서비스 및 조직에서 호스팅하고 있는 다른 서비스에 동일한 로그인 및 비밀번호를 사용할 수 있습니다. SSO를 사용하면 Google Workspace와 같은 호스팅된 웹 애플리케이션이 사용자를 로그인할 때 사용자를 인증하기 위해 조직의 ID 공급업체로 리디렉션합니다. 자세한 내용은 Google Workspace용 SAML 기반 SSO 이해하기를 참고하세요.

SSO를 구성하려면 Google Workspace 서비스에 사용자 로그인 정보를 저장하는 ID 공급업체와 통신하는 데 필요한 정보를 입력해야 하며 로그인, 로그아웃, 비밀번호 변경을 위해 사용자에게 전송할 링크를 설정해야 합니다. Admin Settings API를 사용하면 이러한 설정을 프로그래매틱 방식으로 업데이트하고 가져올 수 있습니다. Google은 생성된 공개 키를 사용하여 ID 공급업체에 이 SSO 요청을 확인하고, 네트워크 전송 중에 비공개 키 SAML 응답이 수정되지 않았는지 확인합니다.

SSO 설정을 사용하는 간단한 API 관련 요약을 보려면 ID 공급업체에서 공개 키 인증서를 받아 Google에 공개 키를 등록하고 SAML 기반 SSO 쿼리 설정을 설정합니다. 오류 메시지는 SSO 문제 해결을 참고하세요.

  • 키 생성 -- ID 공급업체에서 DSA 또는 RSA 알고리즘을 사용하여 공개 및 비공개 키 집합을 생성합니다. 공개 키는 X.509 형식의 인증서에 있습니다. SAML 기반 싱글 사인온(SSO) 키에 대한 자세한 내용은 Google Workspace 싱글 사인온(SSO) 서비스용 키 및 인증서 생성하기를 참고하세요.
  • Google에 등록 -- API의 싱글 사인온(SSO) 설정을 사용하여 공개 키 인증서를 Google에 등록합니다.
  • SSO 설정 -- API의 싱글 사인온(SSO) 설정을 사용하여 도메인의 ID 공급업체 서버와 통신하는 데 사용되는 설정을 구성합니다.

게이트웨이 및 라우팅 설정

이 피드를 사용하면 도메인 관리자가 도메인의 이메일 라우팅을 관리할 수 있습니다.

이메일 라우팅 작업을 사용하면 관리자가 도메인 수준의 이메일 라우팅 설정을 지정할 수 있습니다. 이것은 관리 콘솔의 Gmail 설정에 있는 이메일 라우팅 기능과 유사합니다. 자세한 내용은 이메일 라우팅이메일 라우팅 기능 이중 전송 구성을 참조하세요.

Admin Settings API XML 요청 및 응답 샘플

이 문서에서는 원시 XML 및 HTTP를 사용하는 기본적인 Admin Settings API 요청 및 응답의 코드 예시를 제공합니다. 이 도메인 기본 언어 예시는 각 작업에 공통으로 적용되는 요청 및 응답 항목 본문에 대한 전체 XML 및 HTTP 구문을 보여줍니다.

도메인의 발신 이메일 게이트웨이 설정을 변경하려면 다음과 같이 게이트웨이 피드 URL에 HTTP PUT를 전송합니다.

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

도메인 기본 언어 PUT 요청 AtomPub entry XML:

<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>

작업 관련 속성 및 값을 제외하고 atom:property 요소는 검색 또는 업데이트하려는 속성에 대한 정보가 포함된 단일 키-값 쌍을 나타냅니다. 모든 Admin Settings API 요청 본문에 공통으로 적용됩니다.

도메인 기본 언어 응답 entry 요소는 모든 Admin Settings API 응답 본문에 공통적으로 적용되는 XML 구문과 함께 smartHostsmtpMode 속성을 반환합니다.

<?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>

싱글 사인온(SSO) 설정 관리

Google Workspace 싱글 사인온 (SSO) 기능을 사용하면 사용자가 로그인 및 비밀번호를 한 번만 입력하면 여러 서비스에 로그인할 수 있습니다. 이 비밀번호는 Google Workspace가 아닌 도메인의 ID 공급업체에 의해 저장됩니다. 자세한 내용은 고객센터의 SSO 페이지를 참고하세요. 다음 섹션에서는 싱글 사인온(SSO) 설정에 사용되는 XML 형식을 보여줍니다.

싱글 사인온(SSO) 설정 검색

싱글 사인온(SSO) 설정을 검색하려면 HTTP GET를 SSO 일반 피드 URL에 보내고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다. 오류 메시지는 SSO 문제 해결을 참고하세요.

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

이 작업에는 요청 본문에 매개변수가 없습니다.

성공적인 응답은 HTTP SSO 200 OK 상태 코드와 함께 도메인의 AtomPub 피드를 반환합니다.

GET 응답 XML은 samlSignonUri, samlLogoutUri, changePasswordUri, enableSSO, ssoWhitelist, 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>

속성은 다음과 같습니다.

samlSignonUri
Google Workspace에서 사용자 인증을 위한 SAML 요청을 전송하는 ID 공급업체 URL입니다.
samlLogoutUri
사용자가 웹 애플리케이션에서 로그아웃할 때 사용되는 주소입니다.
changePasswordUri
사용자가 웹 애플리케이션의 SSO 비밀번호를 변경하려고 할 때 전송되는 주소입니다.
SSO 사용 설정
이 도메인에 SAML 기반 SSO를 사용 설정합니다. 이전에 SSO 설정을 구성한 후 enableSSOenableSSO=false로 설정했다면 이전에 입력한 설정은 계속 저장됩니다.
Sso허용 목록
sso허용 목록은 CIDR (클래스 없는 도메인 간 라우팅) 형식의 네트워크 마스크 IP 주소입니다. sso화이트리스트는 SSO를 사용하여 로그인하는 사용자와 Google Workspace 계정 인증 페이지를 사용하여 로그인하는 사용자를 결정합니다. 마스크를 지정하지 않으면 모든 사용자가 SSO를 사용하여 로그인합니다. 자세한 내용은 네트워크 마스크 작동 방식을 참조하세요.
useDomainSpecificIssuer
ID 공급업체에 대한 SAML 요청에서 도메인별 발급기관을 사용할 수 있습니다. 대부분의 SSO 배포에는 이 기능이 필요하지 않지만 이 기능은 단일 ID 공급업체를 통해 여러 하위 도메인으로 전체 조직을 인증하는 대기업에 유용합니다. 특정 도메인 발급기관에 부여할 경우 요청과 연결할 하위 도메인이 결정됩니다. 자세한 내용은 SAML 요청에서 발급기관 요소가 어떻게 작동하나요?를 참고하세요.

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 관한 자세한 내용은 HTTP 상태 코드를 참고하세요.

싱글 사인온(SSO) 설정 업데이트

도메인의 SSO 설정을 업데이트하려면 먼저 싱글 사인온(SSO) 설정 검색 작업을 사용하여 SSO 설정을 검색한 다음 수정하고 PUT 요청을 SSO 피드 URL로 보냅니다. 업데이트된 항목의 <id> 값이 기존 항목의 <id>과 정확하게 일치해야 합니다. 관리자 설정 서비스 인증에 설명된 대로 Authorization 헤더를 포함합니다. 오류 메시지는 SSO 문제 해결하기를 참고하세요.

싱글 사인온(SSO) 설정을 업데이트할 때 HTTP PUT을 SSO 일반 피드 URL로 전송합니다.

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

PUT 요청의 XML 본문은 다음과 같습니다.

<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>

요청에 성공하면 HTTP 200 OK 상태 코드와 SSO 설정이 있는 AtomPub 피드가 반환됩니다.

PUT 응답 XML은 다음과 같습니다.

<?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>

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 관한 자세한 내용은 HTTP 상태 코드를 참고하세요.

싱글 사인온(SSO) 서명 키 검색

싱글 사인온(SSO) 서명 키를 검색하려면 SSO 서명 키 피드 URL에 HTTP GET를 전송하고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다. 오류 메시지는 SSO 문제 해결을 참고하세요.

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

이 작업에는 요청 본문에 매개변수가 없습니다.

요청에 성공하면 서명 키가 있는 AtomPub 피드와 함께 HTTP 200 OK 상태 코드가 반환됩니다.

GET 응답 XML은 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>

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 관한 자세한 내용은 HTTP 상태 코드를 참고하세요.

싱글 사인온(SSO) 서명 키 업데이트

도메인의 SSO 서명 키를 업데이트하려면 먼저 싱글 사인온(SSO) 서명 키 검색 작업을 사용하여 서명 키를 검색하고 수정한 다음 SSO 서명 키 피드 URL로 PUT 요청을 전송합니다. 업데이트된 항목의 <id> 값이 기존 항목의 <id>과 정확하게 일치해야 합니다. SAML 기반 싱글 사인온(SSO) 키에 대한 자세한 내용은 Google Workspace 싱글 사인온(SSO) 서비스용 키 및 인증서 생성하기를 참고하세요.

싱글 사인온(SSO) 서명 키를 업데이트할 때 HTTP PUT를 SSO 서명 키 피드 URL로 보냅니다.

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

PUT 요청 XML은 다음과 같습니다.

<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>

이메일 게이트웨이 및 라우팅 관리

발신 이메일 게이트웨이 섹션에서는 API가 도메인의 사용자가 보낸 발신 메일에 대한 발신 라우팅을 어떻게 지원하는지 보여줍니다. 이메일 라우팅 섹션에서는 메일을 다른 메일 서버로 라우팅하는 방법을 보여줍니다.

발신 이메일 게이트웨이 설정을 가져오는 중

발신 이메일 게이트웨이 설정을 검색하려면 게이트웨이 피드 URL에 HTTP GET를 전송하고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다.

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

이 작업에는 요청 본문에 매개변수가 없습니다.

요청에 응답하면 이메일 게이트웨이 상태 정보가 포함된 AtomPub 피드와 함께 HTTP 200 OK 상태 코드가 반환됩니다.

GET 응답은 smartHostsmtpMode 속성을 반환합니다. 이러한 속성에 대한 자세한 내용은 발신 이메일 게이트웨이 설정 업데이트하기를 참고하세요.

가능한 응답의 예시는 다음과 같습니다.

<?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>

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 관한 자세한 내용은 HTTP 상태 코드를 참고하세요.

발신 이메일 게이트웨이 설정 업데이트

도메인의 발신 이메일 게이트웨이 설정을 업데이트하려면 게이트웨이 피드 URL에 HTTP PUT 요청을 보냅니다.

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

PUT 요청 XML은 다음과 같습니다.

<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>

요청 속성은 다음과 같습니다.

스마트 호스트
SMTP 서버의 IP 주소 또는 호스트 이름. Google Workspace에서는 발신 메일이 이 서버로 라우팅됩니다.
smtpMode
기본값은 SMTP입니다. SMTP_TLS는 메일을 전송할 때 TLS로 연결을 보호하는 또 다른 값입니다.

요청이 성공하면 HTTP 200 OK 상태 코드와 이메일 게이트웨이 설정 상태가 포함된 AtomPub 피드가 반환됩니다.

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 관한 자세한 내용은 HTTP 상태 코드를 참고하세요.

이메일 라우팅 설정 관리

먼저 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>

요청 속성은 다음과 같습니다.

라우팅 대상
이 대상은 이메일이 라우팅되는 SMTP-In 메일 서버의 호스트 이름 또는 IP 주소입니다. Google의 호스트 이름 또는 IP 주소를 확인해야 합니다. 메일 호스트 이름 해결에 대한 자세한 내용은 이메일 라우팅으로 Google Workspace 파일럿 진행하기를 참고하세요.
routeRewriteTo
true인 경우 메일의 SMTP envelope의 to: 필드가 대상 호스트 이름 (user@destination& 호스트 이름)으로 변경되고 메일이 대상 메일 서버의 이 사용자 주소로 전송됩니다. false인 경우 이메일은 대상 메일 서버의 원본 메일 이메일 주소 (사용자@원본 호스트 이름)로 전송됩니다. 이는 관리 콘솔의 SMTP envelope 변경 설정과 유사합니다. 자세한 내용은 이메일 라우팅을 위한 도메인 설정을 참고하세요.
routeEnabled
true이면 이메일 라우팅 기능이 사용 설정됩니다. false인 경우 기능이 사용 중지됩니다.
반송 알림
true인 경우 전송에 실패할 때 Google Workspace가 발신자에게 반송 알림을 전송하도록 사용 설정됩니다.
계정 취급

이 설정은 도메인의 사용자 유형이 이메일 라우팅의 영향을 받는 방식을 결정합니다.

  • allAccounts -- 모든 목적지를 이 대상으로 전송합니다.
  • provisionedAccounts -- 사용자가 Google Workspace에 있는 경우 이 대상으로 메일을 전송합니다.
  • unknownAccounts -- 사용자가 Google Workspace에 없는 경우 이 대상으로 메일을 전송합니다. 이는 관리 콘솔의 설정과 유사합니다. 기본 요건 및 메일 라우팅 사용 방법에 대한 자세한 내용은 이메일 라우팅용 도메인 설정을 참고하세요. ~ 이 요청을 게시하려면 이메일 라우팅 피드 URL에 HTTP POST를 보내고 관리자 설정 서비스에 인증에 설명된 대로 Authorization 헤더를 포함합니다.

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

성공적인 응답은 HTTP 200 OK 상태 코드와 함께 AtomPub 피드 및 보관 정보를 반환합니다.

어떤 이유로든 요청이 실패하면 다른 상태 코드가 반환됩니다. Google Data API 상태 코드에 관한 자세한 내용은 HTTP 상태 코드를 참고하세요.

2018년 10월 31일에 엔드포인트 지원 종료

공지사항의 일환으로 다음 엔드포인트에 대한 지원을 중단했습니다. 2018년 10월 31일에 지원이 종료되어 더 이상 이용할 수 없습니다.

  • 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