---
title: "Overview"
description: "Learn about credential profiles in the Issuer2 API."
stack: "Community Stack (open source) — 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/community-stack/issuer2/credential-profiles/overview
generated: 2026-07-08
---
# Overview

**Credential Profiles** are the foundation of the Issuer2 API's profile-based architecture. A profile defines all the default values needed to issue a specific type of credential, making it easy to create consistent credential offers without repeating configuration.

## What is a Credential Profile?

A credential profile is a reusable configuration that contains:

- **Credential Configuration ID** – The type of credential this profile issues (must match a supported credential type in your issuer metadata)
- **Issuer Identity** – The DID, key, and/or X.509 certificate chain used to sign credentials
- **Credential Data** – Default data template for the credential
- **Data Mapping** – Dynamic data functions for populating credential fields
- **ID Token Claims Mapping** – Mapping from external IdP claims to credential data (for authorization code flow)
- **mDoc Data Mapping** – Type conversions for mDoc/mDL credential fields
- **Selective Disclosure** – Selective disclosure configuration for SD-JWT credentials
- **Notifications** – Webhook settings for issuance events

Profiles are defined in the `issuer2-profiles.conf` configuration file and loaded when the service starts. For the full field reference, examples for every credential format, and how to write and reload the file, see [Issuer Profiles Configuration](https://docs.walt.id/community-stack/issuer2/configurations/config-files/issuer-profiles.md).

**Note:**

The waltid-identity repository ships with a set of ready-to-use default profiles — you don't need to write your own to issue your first credential. See [Credential Issuance](https://docs.walt.id/community-stack/issuer2/credential-issuance/sd-jwt-vc.md) to try one immediately.

## Supported Credential Formats

Profiles can be created for any credential format supported:

| Format | Description |
|--------|-------------|
| `dc+sd-jwt` | IETF SD-JWT Verifiable Credentials |
| `jwt_vc_json` | W3C Verifiable Credentials (JWT) |
| `mso_mdoc` | ISO 18013-5 Mobile Documents (mDL) |

## Reading Profiles via the API

Once configured, profiles are available to read (but not create or edit) via the API:

### List All Profiles

```bash
curl -X GET 'http://localhost:7002/issuer2/profiles'
```

### Get a Specific Profile

```bash
curl -X GET 'http://localhost:7002/issuer2/profiles/{profileId}'
```

Use this to confirm a profile you added to `issuer2-profiles.conf` was picked up correctly after restarting the service.

## Next Steps

- [Issue a Credential](https://docs.walt.id/community-stack/issuer2/credential-issuance/sd-jwt-vc.md) – Try issuing a credential using a ready-made default profile
- [Issuer Profiles Configuration](https://docs.walt.id/community-stack/issuer2/configurations/config-files/issuer-profiles.md) – The full field reference for writing your own profiles
- [Credential Offers](https://docs.walt.id/community-stack/issuer2/credential-offers/overview.md) – Create offers from your profiles
