> For the complete documentation index, see [llms.txt](https://cloudforet.gitbook.io/cloudforet-apis/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cloudforet.gitbook.io/cloudforet-apis/content/en/identity/v2/externalauth.md).

# ExternalAuth

> **Package : spaceone.api.identity.v2**

\ <br>

## ExternalAuth

**ExternalAuth Methods:**

| Method                                                                                                                | Request                                                                                                                                             | Response                                                                                                                                |
| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| [**set**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#set)     | [SetExternalAuthRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#setexternalauthrequest) | [ExternalAuthInfo](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#externalauthinfo) |
| [**unset**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#unset) | [ExternalAuthRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#externalauthrequest)       | [ExternalAuthInfo](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#externalauthinfo) |
| [**get**](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#get)     | [ExternalAuthRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#externalauthrequest)       | [ExternalAuthInfo](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#externalauthinfo) |

<br>

### set

Google OAuth2, Keycloak OIDC, SAML are supported as external authentication.

> **POST** /identity/v2/external-auth/set

{{< tabs " set " >}}

{{< tab "Request Example" >}}

[SetExternalAuthRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#setexternalauthrequest)

* **plugin\_info** (PluginRequest) `Required`

{{< highlight json >}} { "plugin\_id": "plugin-googleoauth2-identity-auth", "upgrade\_mode": "AUTO", "options": { "client\_id": "client\_id", "protocol": "oauth2", "identity\_provider": "google", "validator": "gmail.com" } } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

[ExternalAuthInfo](#EXTERNALAUTHINFO)

* **domain\_id** (string) `Required`
* **state** (State) `Required`
* **plugin\_info** (PluginInfo) `Required`
* **updated\_at** (string) `Required`

{{< highlight json >}} { "domain\_id": "domain-123456", "plugin\_info": { "metadata": { "authorization\_endpoint": "<https://www.googleapis.com>", "client\_id": "client\_id", "identity\_provider": "google", "protocol": "oauth2", "token\_endpoint": "<https://www.googleapis.com/oauth2/v2/tokeninfo>", "userinfo\_endpoint": "<https://www.googleapis.com/oauth2/v3/userinfo>", "validator": "gmail.com" }, "options": { "client\_id": "client\_id", "identity\_provider": "google", "protocol": "oauth2", "validator": "gmail.com" }, "plugin\_id": "plugin-googleoauth2-identity-auth", "upgrade\_mode": "AUTO", "version": "1.1.3" } } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

<br>

### unset

Unset external authentication information.

> **POST** /identity/v2/external-auth/unset

{{< tabs " unset " >}}

{{< tab "Request Example" >}}

[ExternalAuthRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#externalauthrequest)

{{< highlight json >}} { } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

[ExternalAuthInfo](#EXTERNALAUTHINFO)

* **domain\_id** (string) `Required`
* **state** (State) `Required`
* **plugin\_info** (PluginInfo) `Required`
* **updated\_at** (string) `Required`

{{< highlight json >}} { "domain\_id": "domain-123456", "plugin\_info": { "metadata": { "authorization\_endpoint": "<https://www.googleapis.com>", "client\_id": "client\_id", "identity\_provider": "google", "protocol": "oauth2", "token\_endpoint": "<https://www.googleapis.com/oauth2/v2/tokeninfo>", "userinfo\_endpoint": "<https://www.googleapis.com/oauth2/v3/userinfo>", "validator": "gmail.com" }, "options": { "client\_id": "client\_id", "identity\_provider": "google", "protocol": "oauth2", "validator": "gmail.com" }, "plugin\_id": "plugin-googleoauth2-identity-auth", "upgrade\_mode": "AUTO", "version": "1.1.3" } } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

<br>

### get

Get external authentication information.

> **POST** /identity/v2/external-auth/get

{{< tabs " get " >}}

{{< tab "Request Example" >}}

[ExternalAuthRequest](https://github.com/cloudforet-io/api-doc/blob/master/content/en/identity/v2/ExternalAuth/README.md#externalauthrequest)

{{< highlight json >}} { } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

[ExternalAuthInfo](#EXTERNALAUTHINFO)

* **domain\_id** (string) `Required`
* **state** (State) `Required`
* **plugin\_info** (PluginInfo) `Required`
* **updated\_at** (string) `Required`

{{< highlight json >}} { "domain\_id": "domain-123456", "plugin\_info": { "metadata": { "authorization\_endpoint": "<https://www.googleapis.com>", "client\_id": "client\_id", "identity\_provider": "google", "protocol": "oauth2", "token\_endpoint": "<https://www.googleapis.com/oauth2/v2/tokeninfo>", "userinfo\_endpoint": "<https://www.googleapis.com/oauth2/v3/userinfo>", "validator": "gmail.com" }, "options": { "client\_id": "client\_id", "identity\_provider": "google", "protocol": "oauth2", "validator": "gmail.com" }, "plugin\_id": "plugin-googleoauth2-identity-auth", "upgrade\_mode": "AUTO", "version": "1.1.3" } } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

\ <br>

## Message

### ExternalAuthInfo

* **domain\_id** (string) `Required`
* **state** (State) `Required`
* **plugin\_info** (PluginInfo) `Required`
* **updated\_at** (string) `Required`

  <br>

### ExternalAuthRequest<br>

### SetExternalAuthRequest

* **plugin\_info** (PluginRequest) `Required`

  <br>
