# Verify Domain Ownership

{% hint style="info" %}
**Prerequisite:**

* Only contract administrators, owners, and users with `accessAndManageIamResources` privilege can create and manage Identity Providers (IDPs) through the API. You can also set user privileges in the DCD. For more information, see [<mark style="color:blue;">Set User Privileges for Identity and Access Management</mark>](https://docs.ionos.com/sections-test/guides/set-up-ionos-cloud/management/identity-access-management/iam-federation/how-tos/set-user-privileges-iam-dcd).
* The `token` value obtained from the [<mark style="color:blue;">Request Domain Ownership</mark>](https://docs.ionos.com/sections-test/guides/set-up-ionos-cloud/management/identity-access-management/iam-federation/how-tos/set-user-privileges-iam-dcd) API must be added to the `TXT Domain Record` before verifying the domain ownership.
  {% endhint %}

To validate the token is part of the domain which has been already requested for domain ownership, perform a `PUT` request with the `domainId` of the domain.

## Endpoint

Use the following endpoint to create or update an IDP: `https://iam.ionos.com/federation/domains/{domainId}/verify`.

## Request

{% hint style="info" %}
**Note:** The following request contains a sample `domainId`. Replace them with the `domainId` value whose domain ownership must be verified.
{% endhint %}

```bash
curl --location \
--request PUT 'https://iam.ionos.com/federation/domains/f181c212-34f1-5843-9bbb-fc2531c7d928/verify' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJraWQiO' \
--header 'Content-Type: application/json'
```

{% tabs %}
{% tab title="Path Parameters" %}
Below is the list of mandatory path parameter:

| **Body Parameters** | **Type** | **Description**              | **Example**                            |
| ------------------- | -------- | ---------------------------- | -------------------------------------- |
| `domainId`          | string   | The ID (UUID) of the domain. | `f181c212-34f1-5843-9bbb-fc2531c7d928` |
| {% endtab %}        |          |                              |                                        |

{% tab title="Request Header Parameters" %}
To make authenticated requests to the API, the following fields are mandatory in the request header:

| **Header Parameters** | **Required** | **Type** | **Description**                                                                                                                                                                                                                                                                        |
| --------------------- | :----------: | :------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Authorization`       |      yes     |  string  | The Bearer token enables requests to authenticate using a JSON Web Token (JWT). From the DCD, [<mark style="color:blue;">Generate authentication token</mark>](https://docs.ionos.com/sections-test/guides/set-up-ionos-cloud/management/token-manager#generate-authentication-token). |
| `Content-Type`        |      yes     |  string  | Set this to `application/json`.                                                                                                                                                                                                                                                        |
| {% endtab %}          |              |          |                                                                                                                                                                                                                                                                                        |
| {% endtabs %}         |              |          |                                                                                                                                                                                                                                                                                        |

## Response

**201 Successful operation**

```bash
{
  "id": "f181c212-34f1-5843-9bbb-fc2531c7d928",
  "type": "domain",
  "href": "/domains/f181c212-34f1-5843-9bbb-fc2531c7d928",
  "metadata": {
    "createdDate": "2020-12-10T13:37:50+01:00",
    "createdBy": "ionos:identity:::users/87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "createdByUserId": "87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "lastModifiedDate": "2020-12-11T13:37:50+01:00",
    "lastModifiedBy": "ionos:identity:::users/87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "lastModifiedByUserId": "87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "resourceURN": "ionos:<product>:<location>:<contract>:<resource-path>",
    "account": 123456
  },
  "properties": {
    "domain": "yourcompany.com",
    "status": "APPROVED"
  }
}
```
