# Get brand identity (/docs/api-reference/reseller-identity/getResellerIdentity)

> Read your brand and your custom email server settings. The brand is what your client organizations see: your brand name on their emails, and spoken in their verification calls. Your own emails do not change.

> **Reseller accounts only.** [Request access](https://omnidim.io/contact-us?reason=reseller_api&lock=1).

**GET** `/reseller/identity`

Read your brand and your custom email server settings. The brand
is what your client organizations see: your brand name on their
emails, and spoken in their verification calls. Your own emails
do not change.

Who may call: a key whose user is the owner or an admin of a
reseller organization. Any other user gets `403`.

The response always has the same shape. `has_identity` is `false`
and `identity` is `{}` until the first save. `smtp` never contains
the password. `can_use_brand_identity` is `false` for an account
that cannot hold a brand (for example one that already holds
another organization's configuration). Such an account can read
but every write returns `403`.

Errors: `401` for a missing or invalid key. `403` when the user is
not the owner or an admin of the organization. `500` for a server
error.

```yaml
operationId: getResellerIdentity
responses:
  '200':
    description: The current brand and email server state.
    content:
      application/json:
        schema:
          type: object
          description: Your brand and custom email server state. The SMTP password is never returned.
          properties:
            success:
              type: boolean
            can_use_brand_identity:
              type: boolean
              description: Whether this account may hold a brand. When `false`, every write returns `403`.
            can_use_custom_smtp:
              type: boolean
              description: Whether this account may send clients' emails through its own email server.
            has_identity:
              type: boolean
              description: '`false` until the first save.'
            identity:
              type: object
              description: The saved brand. Empty until the first save. Other branding keys can appear.
              additionalProperties: true
              properties:
                platform_name:
                  type: string
                company_name:
                  type: string
                logo_url:
                  type: string
                primary_color:
                  type: string
                real_email:
                  type: string
            smtp:
              type: object
              properties:
                configured:
                  type: boolean
                  description: A server is saved.
                active:
                  type: boolean
                  description: Clients' emails go out through the saved server now.
                host:
                  type: string
                port:
                  type: integer
                username:
                  type: string
                encryption:
                  type: string
                  enum:
                    - starttls
                    - ssl
                    - none
                from_email:
                  type: string
        example:
          success: true
          can_use_brand_identity: true
          can_use_custom_smtp: true
          has_identity: true
          identity:
            platform_name: Acme Voice
            company_name: Acme Ltd
            logo_url: https://acme.example/logo.png
            primary_color: '#1976d2'
            real_email: hello@acme.example
          smtp:
            configured: true
            active: true
            host: smtp.acme.example
            port: 587
            username: mailer@acme.example
            encryption: starttls
            from_email: hello@acme.example
  '401':
    description: Missing or invalid API key.
  '403':
    description: |
      The key's user is not the owner or an admin of the organization.
    content:
      application/json:
        schema:
          type: object
          properties:
            error:
              type: string
              description: Machine-readable error code.
            error_description:
              type: string
              description: Human-readable explanation.
            code:
              type: string
              description: |
                Stable, specific reason. Present on the newer endpoints (Voice
                cloning, WhatsApp); older endpoints return only `error`.
            request_id:
              type: string
              description: |
                Correlates this response with the server log. Present alongside
                `code`. Also sent as the `X-Request-Id` header.
        example:
          error: forbidden
          error_description: Only an account owner or admin can change brand settings.
  '500':
    description: Server error.
    content:
      application/json:
        schema:
          type: object
          properties:
            error:
              type: string
              description: Machine-readable error code.
            error_description:
              type: string
              description: Human-readable explanation.
            code:
              type: string
              description: |
                Stable, specific reason. Present on the newer endpoints (Voice
                cloning, WhatsApp); older endpoints return only `error`.
            request_id:
              type: string
              description: |
                Correlates this response with the server log. Present alongside
                `code`. Also sent as the `X-Request-Id` header.
        example:
          error: server_error
          error_description: Something went wrong. Please try again.
```

**Python SDK**

```python
from omnidimension import Client
client = Client(api_key)

state = client.reseller.get_identity()["json"]
print(state["has_identity"], state["identity"].get("platform_name"))
```

**cURL**

```bash
curl "https://backend.omnidim.io/api/v1/reseller/identity" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

**curl**

```bash
curl -X GET "https://backend.omnidim.io/api/v1/reseller/identity" \
  -H "Authorization: Bearer $OMNIDIM_API_KEY"
```