# OpenSearch

## Example Usage

***

{% tabs %}
{% tab title="Terraform" %}
{% code title="opensearch-integration.tf" %}

```tf
resource "apono_integration" "opensearch-integration" {
  name                     = "OpenSearch"
  type                     = "opensearch"
  connector_id             = "apono-connector-id"
  connected_resource_types = ["opensearch-role"]
  metadata = {
    auth_type = "<Auth Type>"
    url = "<Url>"
    credentials_rotation_period_in_days = "<Credentials rotation period (in days)>"
    credentials_cleanup_period_in_days = "<User cleanup after access is revoked (in days)>"
    sso_url = "<SSO Portal URL>"
  }
}
```

{% endcode %}
{% endtab %}

{% tab title="Terraform V2" %}
{% code title="opensearch-integration.tf" %}

```tf
resource "apono_resource_integration" "opensearch-integration" {
  name                     = "OpenSearch"
  type                     = "opensearch"
  connector_id             = "apono-connector-id"
  connected_resource_types = ["opensearch-role"]
  integration_config = {
    auth_type = "<Auth Type>"
    url = "<Url>"
    credentials_rotation_period_in_days = "<Credentials rotation period (in days)>"
    credentials_cleanup_period_in_days = "<User cleanup after access is revoked (in days)>"
    sso_url = "<SSO Portal URL>"
  }
}
```

{% endcode %}
{% endtab %}

{% tab title="Public API" %}
{% code title="opensearch-integration.json" %}

```json
{
    "opensearch-integration": {
        "name": "OpenSearch",
        "type": "opensearch",
        "connector_id": "apono-connector-id",
        "connected_resource_types": [
            "opensearch-role"
        ],
        "integration_config": {
            "auth_type": "<Auth Type>",
            "url": "<Url>",
            "credentials_rotation_period_in_days": "<Credentials rotation period (in days)>",
            "credentials_cleanup_period_in_days": "<User cleanup after access is revoked (in days)>",
            "sso_url": "<SSO Portal URL>",
        }
    }
}
```

{% endcode %}
{% endtab %}
{% endtabs %}

## Schema

***

* `type` opensearch
* `connected_resource_types` List of resource types to sync.

<details>

<summary>Available resource types you can use</summary>

* opensearch-role
* opensearch-index

</details>

### Integration Config

***

* `auth_type` (Optional | String) Auth Type
  * Default value: `user-password`
  * Possible values: sso-auth, user-password
* `url` (Required | String) Url
* `credentials_rotation_period_in_days` (Optional | String) Credentials rotation period (in days)
* `credentials_cleanup_period_in_days` (Optional | String) User cleanup after access is revoked (in days)
* `sso_url` (Optional | String) SSO Portal URL
