# How to Show Custom Form Fields with Branding

BoldSign supports displaying custom form fields to users when creating templates or documents with a brand that has custom fields configured. This article will guide you on how to display custom form fields using branding via the API.

To display the custom form fields, set `ShowSharedCustomFields` to `true` when updating branding via the API.

Below are a few code examples demonstrating how to display custom form fields using branding.


## Code snippet
{% codetab %}
cURL
```shell 
curl -X POST 'https://api.boldsign.com/v1/brand/edit?brandId=18779cd3-xxxx-xxxx-883e-4d9ead5c699a' \
      -H 'X-API-KEY: {Your API Key}' \
      -F 'brandName=BoldSign' \
      -F 'brandLogo={Your Brand logo}' \
      -F 'backgroundColor=red' \
      -F 'buttonColor=green' \
      -F 'buttonTextColor=white' \
      -F 'emailDisplayName={SenderName} from BoldSign' \
      -F 'redirectUrl=https://www.syncfusion.com/' \
      -F 'isDefault=true' \
      -F 'canHideTagLine=false' \
      -F 'combineAuditTrail=true' \
      -F 'hideDecline=false' \
      -F 'hideSave=false'\
      -F 'showBuiltInFormFields=true' \
      -F 'allowCustomFieldCreation=true' \
      -F 'showSharedCustomFields=true' \

```
C#

```C#
using BoldSign.Api;
using BoldSign.Model;

var apiClient = new ApiClient("https://api.boldsign.com", "{Your API Key}");
var brandingClient = new BrandingClient(apiClient);
var editbrand = new BrandSettings()
{
  BrandName = "BoldSign",
  BrandLogo = new ImageFileBytes()
  {
      ContentType = "image/png",
      FileBytes = File.ReadAllBytes("{Your file path}"),
  },

  BackgroundColor = "red",
  ButtonColor = "Green",
  ButtonTextColor = "White",
  EmailDisplayName = "{SenderName} from BoldSign",
  RedirectUrl = " https://www.syncfusion.com/ ",
  IsDefault = true,
  CanHideTagLine = false,
  CombineAuditTrail = true,
  HideDecline = false,
  HideSave = false,
  ShowBuiltInFormFields = true,
  AllowCustomFieldCreation = true,
  ShowSharedCustomFields = true,
};

BrandingData brandingData = await brandingClient.EditBrandAsync("18779cd3-xxxx-xxxx-883e-4d9ead5c699a", editbrand).ConfigureAwait(false);
string brandId = brandingData.BrandId;
Console.WriteLine(brandId);

```

Python

```python

import requests

url = "https://api.boldsign.com/v1/brand/edit?brandId=8b115d45-0xxc-4d69-axxc-cfdbb308e095"

payload={
'brandName': '{Your Brand Name}',
'ShowBuiltInFormFields':'true',
'AllowCustomFieldCreation':'true',
'ShowSharedCustomFields':'true',
'emailDisplayName': '{Your email display name}',
'isDefault': 'true',
'canHideTagLine': 'false',
'combineAuditTrail': 'true'
files=[
  ('brandLogo',('file',open('filepath','rb'),'application/jpg'))
]
headers = {
  'X-API-KEY': '{Your API Key}'
}

response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
```

NodeJS

```js

const axios = require('axios'); 
const FormData = require('form-data'); 
const fs = require('fs'); 
const form = new FormData(); 
form.append('brandName', '{Your brand name}');
form.append('brandLogo', fs.createReadStream('{your file path}')); 
form.append('emailDisplayName', '{Your email display name}'); 
form.append('isDefault', 'true'); 
form.append('canHideTagLine', 'false'); 
form.append('combineAuditTrail', 'false'); 
form.append('ShowBuiltInFormFields', 'false'); 
form.append('ShowSharedCustomFields', 'true'); 
form.append('AllowCustomFieldCreation', 'true');

async function GetData(){
  try{
const response = await axios.post( 
    'https://api.boldsign.com/v1/brand/edit', 

    form, 
    { 
        params: { 
            'brandId': '8b115d45-095c-4xx9-axxc-cfdbb308e095' 
        }, 

        headers: { 
            ...form.getHeaders(), 
            'X-API-KEY': '{Your API Key}' 
        } 
    } 
); 
console.log(JSON.stringify(response.data));
  return response;
}
catch (error) {
  console.error('Error:', error.message);
  throw error; 
} 
}
GetData();

```

{% /codetab %}

Replace `brandId` with the ID of the existing brand to be used for sending the document. Update `brandname`,`emailDisplayName` and `brandlogo` according to your brand's details. After executing the code, custom form fields will be displayed when a user creates templates or documents using the updated brand.
