---
title: "Setup"
description: "We will setup a Verifier service inside of a tenant. If you don't have a tenant yet, you can learn how to create one here."
stack: "Enterprise Stack (commercial) — version 0.21.0"
stack_version: "0.21.0"
stack_comparison: https://docs.walt.id/community-vs-enterprise.md
canonical_url: https://docs.walt.id/enterprise-stack/services/verifier-service/setup
generated: 2026-07-20
---
# Setup

We will setup a Verifier service inside of a tenant. If you don't have a tenant yet, you can learn
how to create one [here](https://docs.walt.id/enterprise-stack/administration/tenants/create.md).

**Option: CURL**

Endpoint: `/v1/{target}/resource-api/services/create` | [API Reference](https://enterprise.sandbox.walt.id/swagger/index.html#/Service%20%7C%20Resource/post_v1__target__resource_api_services_create)

**Example Request**

```bash
curl -X 'POST' \
  'https://{orgID}.enterprise-sandbox.waltid.dev/v1/{target}/resource-api/services/create' \
  -H 'accept: */*' \
  -H 'Authorization: Bearer {yourToken}' \
  -H 'Content-Type: application/json' \
  -d '{
  "type": "verifier",
  "baseUrl": "http://localhost:3000",
  "metadataConfig": {
    "name": "walt.id Enterprise Verifier",
    "logoUri": "https://cdn.walt.id/verifier/logo.png"
  }
}'
```

**Body**

```json
{
  "type": "verifier",
  "baseUrl": "http://localhost:3000",
  "metadataConfig": {
    "name": "walt.id Enterprise Verifier",
    "logoUri": "https://cdn.walt.id/verifier/logo.png"
  }
}
```

**Path Parameters**

- `orgID`: - When performing operations within an organization, it is essential to use the organization's Base URL or
  another valid host alias. For example, if your organization is named `test`, your default Base URL will
  be `test.enterprise-sandbox.walt.dev` when using the sandbox environment.
- `target`: _resourceIdentifier_ - The target indicates the organization + tenant in which to create the new Verifier
  service
  and the service's
  ID (`{organizationID}.{tenantID}.[NewVerifierServiceID]`), e.g. `waltid.tenant1.verifier1`

**Body Parameters**

- `type`: _serviceType_ - Specifies the type of service to create. In our case `verifier`
- `baseUrl`: _String_ - This URL will be included in the generated OIDC4VC offer, allowing the wallet to know how to
  reach the verifier. It should reflect your organization's base URL. The general format for this URL
  is `https://{orgID}.yourEnterpriseStackUrl.com`.
  For example, if your organization is named **myorg** and the Enterprise Stack is hosted at the domain
  **enterprise-stack.com**, your base URL would be:
  https://myorg.enterprise-stack.com.
- `metadataConfig`: _Object_ - Verifier metadata config. Can be used to edit e.g. externally exposed human-readable verifier
  name and logo. Learn more in general [here](https://docs.walt.id/enterprise-stack/services/verifier-service/configurations/openid-metadata.md) or expand below to see object property options.
 
  <br/>
  <br/>

   <details><summary>Expand to learn more about metadata config object properties</summary>
  
   **Metadata Config Object**
    
   ```json
    "metadataConfig": {
      "name": "walt.id Enterprise Verifier",
      "logoUri": "https://cdn.walt.id/verifier/logo.png"
    }
   ```

  - `name` (optional) _String_: Human-readable string name of the verifier.
  - `logoUri` (optional) _String_: URL string that references a logo for the verifier.
   </details>

---

**Response Codes**

- `201` - Service created successfully.
