---
title: "Create org logo brand resource"
url: "https://docs.signnow.com/docs/organization-branding/operations/post-v2-organizations-organization_id-brands-brand_id-resources-logo"
type: "endpoint"
section: "organization-branding"
slug: "organization-branding/operations/post-v2-organizations-organization_id-brands-brand_id-resources-logo"
method: "POST"
path: "/v2/organizations/{organization_id}/brands/{brand_id}/resources/logo"
operation_id: "post-v2-organizations-organization_id-brands-brand_id-resources-logo"
authorization: "bearer"
---

# Create org logo brand resource

`POST /v2/organizations/{organization_id}/brands/{brand_id}/resources/logo`

This endpoint allows users to create a logo brand resource for an organization. Only an admin or moderator of the organization can perform this action.

Accepts .png, .jpeg, .gif, and .bmp file types. Maximum file size per upload is 2 MB.

## Authorization

bearer

## Path Parameters

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

## Form Data Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `logo` | file | Yes | Logo file with image format |

## Responses

### 204

Success, no content

### 400

* Incorrect or missing token
* Request without logo
* Incorrect logo format
* The logo file is too large
* Brand resource logo already exists for this `brand_id`

**Example** (`Logo is missing`)

```json
{
  "code": 25002047,
  "message": "Brand logo is required."
}
```

**Example** (`Incorrect logo format`)

```json
{
  "code": 25002048,
  "message": "The mime type of the file is invalid (\"text/plain\"). Allowed mime types are \"image/x-ms-bmp\", \"image/gif\", \"image/jpeg\", \"image/png\", \"image/bmp\"."
}
```

**Example** (`Logo file is too large`)

```json
{
  "code": 25002051,
  "message": "The file is too large. Allowed maximum size is 2 MB."
}
```

**Example** (`Brand logo already exists`)

```json
{
  "code": 25002050,
  "message": "Brand logo already exists. Resource name: logo."
}
```

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

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

### 403

* The user is authorized with a token from an app they don’t own.
* The user is neither admin, nor moderator of the organization.
* The brand exists but it is not an organization brand.


**Example** (`Non-organization brand`)

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

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

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

**Example** (`User not admin or moderator`)

```json
{
  "code": 25006002,
  "message": "Insufficient organization rights."
}
```

### 404

* The organization is not found
* The brand is not found
* `brand_id` cannot be null

**Example** (`Brand not found`)

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

**Example** (`brand_id is null`)

```json
{
  "404": "Unable to find a route to match the URI: /v2/organizations/3d73e416095d4734a0e0d8bce4bd33f7b44b7585/brands/resources/logo"
}
```

**Example** (`Organization not found`)

```json
{
  "code": 25006001,
  "message": "Organization not found."
}
```

## Code Examples

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

### cURL

```bash
curl -X POST \
  "https://api.signnow.com/v2/organizations/{organization_id}/brands/{brand_id}/resources/logo" \
  -H "Authorization: Bearer $SIGNNOW_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
```

---
*Full reference: https://docs.signnow.com/docs/organization-branding/operations/post-v2-organizations-organization_id-brands-brand_id-resources-logo*
