# SSO Connection routes: activate, deactivate

URL: /code/api/sso-connection/verbs · Id: `page:code/api/sso-connection/verbs`

> The SSO Connection Verbs activate, deactivate as api.sb routes, with inputs, result, refusals and an example.

Reference for [SSO Connection](/business/nouns/sso-connection), one group of [SSO Connection routes](/code/api/sso-connection).

### SSOConnection.activate
Activate turns an SSO Connection on after a test sign-in passes, so the Tenant’s people sign in through it. [Verb page](/business/nouns/sso-connection/activate?interface=api).

```text
POST /{namespace}/sso-connections/{connection}/activate
```

Path: `connection`. Emits [`SSOConnection.activated`](/business/events/SSOConnection.activated).

**Inputs**

| Input | Type | Required | Description |
| --- | --- | --- | --- |
| `connection` | [SSO Connection](/business/nouns/sso-connection) | Yes | The SSO Connection to turn on. |

**Returns**

| Output | Type | Required | Description |
| --- | --- | --- | --- |
| `connection` | [SSO Connection](/business/nouns/sso-connection) | Yes | The SSO Connection, now active. |

**Refuses when**

| Check | Error | Fix | Then call |
| --- | --- | --- | --- |
| The key is valid, but its scopes do not allow this operation. | [`forbidden`](/code/api/errors/forbidden) | Use a key whose scopes cover the operation, or ask an owner of the namespace to grant them. | None. |

**Example**

```bash
curl -X POST https://api.sb/leaseline.app/sso-connections/sso_gFlPhZJ7A7/activate \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
```

```json
{
  "api": "https://api.sb/leaseline.app",
  "connection": {
    "$id": "https://api.sb/leaseline.app/sso-connections/sso_gFlPhZJ7A7",
    "$type": "SSOConnection",
    "protocol": "saml",
    "state": "draft"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "SSOConnection.activate",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}
```

### SSOConnection.deactivate
Deactivate turns an SSO Connection off, so nobody signs in through it; its configuration is kept. [Verb page](/business/nouns/sso-connection/deactivate?interface=api).

```text
POST /{namespace}/sso-connections/{connection}/deactivate
```

Path: `connection`. Emits [`SSOConnection.deactivated`](/business/events/SSOConnection.deactivated).

**Inputs**

| Input | Type | Required | Description |
| --- | --- | --- | --- |
| `connection` | [SSO Connection](/business/nouns/sso-connection) | Yes | The SSO Connection to turn off. |

**Returns**

| Output | Type | Required | Description |
| --- | --- | --- | --- |
| `connection` | [SSO Connection](/business/nouns/sso-connection) | Yes | The SSO Connection, now `inactive`. |

**Refuses when**

| Check | Error | Fix | Then call |
| --- | --- | --- | --- |
| The key is valid, but its scopes do not allow this operation. | [`forbidden`](/code/api/errors/forbidden) | Use a key whose scopes cover the operation, or ask an owner of the namespace to grant them. | None. |

**Example**

```bash
curl -X POST https://api.sb/leaseline.app/sso-connections/sso_gFlPhZJ7A7/deactivate \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
```

```json
{
  "api": "https://api.sb/leaseline.app",
  "connection": {
    "$id": "https://api.sb/leaseline.app/sso-connections/sso_gFlPhZJ7A7",
    "$type": "SSOConnection",
    "protocol": "saml",
    "state": "draft"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "SSOConnection.deactivate",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}
```