---
title: "Add and edit email general branding"
url: "https://docs.signnow.com/docs/general-email-branding/operations/put-v2-brands-brand_id_1-resources-email-general"
type: "endpoint"
section: "general-email-branding"
slug: "general-email-branding/operations/put-v2-brands-brand_id_1-resources-email-general"
method: "PUT"
path: "/v2/brands/{brand_id}/resources/email-general"
operation_id: "put-v2-brands-brand_id_1-resources-email-general"
authorization: "bearer"
---

# Add and edit email general branding

`PUT /v2/brands/{brand_id}/resources/email-general`

This endpoint allows users to add and update general branding for all types of emails.

## Authorization

bearer

## Path Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `brand_id` | string | Yes | ID of the brand. Must match the pattern: [a-z0-9]{40}. |

## Header Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `Content-Type` | string | No | application/json |

## Request Body

**Schema**

```json
{
  "type": "object",
  "properties": {
    "ccd": {
      "type": "object",
      "properties": {
        "visibility": {
          "type": "boolean",
          "description": "Whether or not to show the list of CCD emails in the invite emails.\n",
          "x-stoplight": {
            "id": "86yh1r34on57u"
          }
        }
      },
      "description": "CCD section of the invite emails.",
      "x-stoplight": {
        "id": "8k9kk0geq4hlo"
      }
    },
    "logo": {
      "type": "object",
      "properties": {
        "position": {
          "type": "string",
          "description": "Logo position on the page. Possible values: left, middle, right."
        }
      },
      "description": "Logo object in the email."
    },
    "buttons": {
      "type": "object",
      "properties": {
        "color": {
          "type": "string",
          "description": "**View Document** button text color in HEX color code."
        },
        "background": {
          "type": "string",
          "description": "**View Document** button background color in HEX color code."
        }
      },
      "description": "**View Document** button object."
    },
    "sender_email": {
      "type": "string",
      "description": "Email address that will be prefilled in the to field when user clicks the **Contact Sender** button and an email service opens."
    },
    "contact_sender": {
      "type": "object",
      "properties": {
        "visibility": {
          "type": "boolean",
          "description": "Whether or not to show the Contact Sender section in the emails.",
          "x-stoplight": {
            "id": "zhsy7nbyu2ldq"
          }
        }
      },
      "description": "Contact sender section of the emails.",
      "x-stoplight": {
        "id": "wh670iha54nw0"
      }
    },
    "secondary_buttons": {
      "type": "object",
      "properties": {
        "color": {
          "type": "string",
          "description": "**Contact Sender** button text color in HEX color code.",
          "x-stoplight": {
            "id": "p0qa0ixm7g30m"
          }
        },
        "background": {
          "type": "string",
          "description": "**Contact Sender** button background color in HEX color code.",
          "x-stoplight": {
            "id": "fqizk8vnxcw2l"
          }
        }
      },
      "description": "**Contact Sender** button object.",
      "x-stoplight": {
        "id": "82gon73lveei7"
      }
    },
    "signnow_references": {
      "type": "boolean",
      "description": "Whether or not to show links to SignNow mobile apps."
    },
    "hide_download_image": {
      "type": "boolean",
      "description": "When a signer completes a document, whether to show or hide an image instruction on how to download the completed document."
    }
  },
  "x-examples": {
    "Example 1": {
      "logo": {
        "position": "middle"
      },
      "buttons": {
        "color": "#E4F18B",
        "background": "#EB4C7E"
      },
      "sender_email": "sender_email@gmail.com",
      "signnow_references": true,
      "hide_download_image": false
    }
  }
}
```

**Example** (`Example 1`)

```json
{
  "logo": {
    "position": "middle"
  },
  "buttons": {
    "color": "#ffffff",
    "background": "#0777cf"
  },
  "sender_email": "mail@signnow.com",
  "secondary_buttons": {
    "color": "#38424b",
    "background": "#e3e6e9"
  },
  "signnow_references": true,
  "hide_download_image": false
}
```

## Responses

### 204

Success, no content

### 400

* Incorrect or missing token.
* Request body is incorrect or missing.
* Payload contains unexpected attributes.
* Language value is not an array.
* `logo` is not an array.
* `position` is not a string.
* `position` is incorrect.
* `buttons` is not an array.
* `buttons.color` parameter value is not a string.
* `buttons.color` is not a HEX color code.
* `buttons.background` parameter value is not a string.
* `buttons.background` is not a HEX color code.
* `secondary_buttons` is not an array.
* `secondary_buttons.color` parameter value is not a string.
* `secondary_buttons.color` is not a HEX color code.
* `secondary_buttons.background` parameter value is not a string.
* `secondary_buttons.background` is not a HEX color code.
* `sender_email` is not a string.
* `sender_email` is empty.
* `sender_email` is not a correct email address.
* `signnow_references` is not a boolean.
* `hide_download_image` is not a boolean.
* `contact_sender` is not an array.
* `contact_sender.visibility` is not a boolean.
* `ccd` is not an array.
* `ccd.visibility` is not a boolean.

**Example** (`Example 1`)

```json
{
  "code": 25002226,
  "message": "The `contact_sender` field must be an array."
}
```

**Example** (`Logo not array`)

```json
{
  "code": 25002092,
  "message": "The 'logo' attribute must be an array."
}
```

**Example** (`ccd is not array`)

```json
{
  "code": 25002228,
  "message": "The `ccd` field must be an array."
}
```

**Example** (`buttons not array`)

```json
{
  "code": 25002091,
  "message": "The 'buttons' attribute must be an array."
}
```

**Example** (`Empty sender_email`)

```json
{
  "code": 25002058,
  "message": "The 'sender_email' must not be an empty string."
}
```

**Example** (`Incorrect position`)

```json
{
  "code": 25002048,
  "message": "The 'position' attribute is invalid, allowed values: left, middle, right."
}
```

**Example** (`Language not array`)

```json
{
  "code": 25002093,
  "message": "Invalid payload. Expected pair of languages with their settings."
}
```

**Example** (`Unexpected attributes`)

```json
{
  "code": 25002139,
  "message": "The {{ field }} field was not expected."
}
```

**Example** (`position is not string`)

```json
{
  "code": 25002047,
  "message": "The 'position' attribute must be a string."
}
```

**Example** (`sender_email not string`)

```json
{
  "code": 25002056,
  "message": "The 'sender_email' attribute must be a string."
}
```

**Example** (`buttons.color not string`)

```json
{
  "code": 25002006,
  "message": "The 'color' attribute must be a string."
}
```

**Example** (`contact_sender not array`)

```json
{
  "code": 25002226,
  "message": "The `contact_sender` field must be an array."
}
```

**Example** (`Incorrect or missing token`)

```json
{
  "code": 1537,
  "error": "invalid_token"
}
```

**Example** (`ccd.visibility not boolean`)

```json
{
  "code": 25002229,
  "message": "The `ccd.visibility` field must be a boolean."
}
```

**Example** (`secondary_buttons not array`)

```json
{
  "code": 25002090,
  "message": "The 'secondary_buttons' attribute must be an array."
}
```

**Example** (`buttons.background not string`)

```json
{
  "code": 25002004,
  "message": "The 'background' attribute must be a string."
}
```

**Example** (`signnow_references not boolean`)

```json
{
  "code": 25002055,
  "message": "The 'signnow_references' attribute must be a boolean."
}
```

**Example** (`hide_download_image not boolean`)

```json
{
  "code": 25002084,
  "message": "The 'hide_download_image' attribute must be a boolean."
}
```

**Example** (`buttons.color not HEX color code`)

```json
{
  "code": 25002007,
  "message": "The 'color' attribute format is invalid."
}
```

**Example** (`Request body incorrect or missing`)

```json
{
  "code": 25002002,
  "message": "Invalid payload given."
}
```

**Example** (`sender_email not an email address`)

```json
{
  "code": 25002057,
  "message": "The 'sender_email' attribute must be a valid email address."
}
```

**Example** (`secondary_buttons.color not string`)

```json
{
  "code": 25002088,
  "message": "The 'secondary_buttons.color' attribute must be a string."
}
```

**Example** (`buttons.background not HEX color code`)

```json
{
  "code": 25002005,
  "message": "The 'background' attribute format is invalid."
}
```

**Example** (`contact_sender.visibility not boolean`)

```json
{
  "code": 25002227,
  "message": "The `contact_sender.visibility` field must be a boolean."
}
```

**Example** (`secondary_buttons.background not string`)

```json
{
  "code": 25002086,
  "message": "The 'secondary_buttons.background' attribute must be a string."
}
```

**Example** (`secondary_buttons.color not HEX color code`)

```json
{
  "code": 25002089,
  "message": "The 'secondary_buttons.color' attribute format is invalid."
}
```

**Example** (`secondary_buttons.background not HEX color code`)

```json
{
  "code": 25002087,
  "message": "The 'secondary_buttons.background' attribute format is invalid."
}
```

### 403

* Request with a valid bearer token from another user logged in.
* The user is authorized with a token from an app they don’t own.

**Example** (`Another user's token`)

```json
{
  "code": 25002030,
  "message": "No access to the brand."
}
```

**Example** (`User doesn't own the app`)

```json
{
  "code": 25002001,
  "message": "Brand action not allowed"
}
```

### 404

* Brand with this `brand_id` doesn't exist
* Missing or incorrect `brand_id`

**Example** (`Brand doesn't exist`)

```json
{
  "code": 25002016,
  "message": "Brand not found."
}
```

**Example** (`Missing or incorrect brand_id`)

```json
{
  "404": "Unable to find a route to match the URI: v2/brand/null/email-general"
}
```

## Code Examples

> Replace `$SIGNNOW_ACCESS_TOKEN` and any `{placeholder}` values before running.

### cURL

```bash
curl -X PUT \
  "https://api.signnow.com/v2/brands/{brand_id}/resources/email-general" \
  -H "Authorization: Bearer $SIGNNOW_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"logo": {"position": "middle"}, "buttons": {"color": "#ffffff", "background": "#0777cf"}, "sender_email": "mail@signnow.com", "secondary_buttons": {"color": "#38424b", "background": "#e3e6e9"}, "signnow_references": true, "hide_download_image": false}'
```

---
*Full reference: https://docs.signnow.com/docs/general-email-branding/operations/put-v2-brands-brand_id_1-resources-email-general*
