POST
Projects.ColumnsUpdate
Update a project board column. Default rows (To Do and similar) can only have their English/Hebrew labels changed. Custom rows can also change the internal column key. Use data_id from Projects.ColumnsList: default_0 for the first default column, or 0 for the first custom column. This matches the dashboard: first row is Edit-only, custom rows are Edit + Delete.
Permissions
- User must be logged in with a valid bearer token.
- The user must be from the same company domain as the request Host (call the API on that account subdomain or allowed custom domain). A token from another company returns success=0, error user_not_in_company.
- Returned or changed records are limited by the user permissions, team access, folder access, and account settings.
Action
- Runs the Projects.ColumnsUpdate function and returns JSON.
Push Service
No push is sent because this function only reads data or returns helper information.
Automation
No automation is run for this function.
Special Instructions
- Send the bearer token on protected calls with Authorization: Bearer YOUR TOKEN.
- On a company subdomain (e.g. https://{user_domain}.bull36.com) the user must match that Host — Login and protected APIs reject another company with success=0, error user_not_in_company. On a main brand host (bull36.com, biz1.co.il, mastrocrm.com, …) the company domain gate is skipped.
- Send parameters as POST body fields exactly as documented.
Required Parameters
| Name | Type | Sample | Explanation |
|---|---|---|---|
name_en_valuepost | string | QA | English column label. |
name_he_valuepost | string | QA | Local-language column label. |
Optional Parameters
| Name | Type | Sample | What it gives |
|---|---|---|---|
column_position_valuepost | int|string | 0 | Custom column JSON index from ColumnsList (0 = first custom column, not To Do). Also accepts default_0 for the first default column. |
data_idpost | int|string | default_0 | Same id returned by ColumnsList. Use default_0 / p_to_do for a default column, or 0 for the first custom column. |
name_forpost | string | p_to_do | Default-column key from ColumnsList, such as p_to_do. |
column_name_valuepost | string | qa | Internal column key for custom columns only. Ignored for default columns. Use English letters, numbers, and underscore. |
color_name_valuepost | string | #2f80ed | Updates column color for custom columns. |
display_afterpost | string | to_do | Updates placement after another column when supported. |
Authentication
Send the bearer token returned by Login in the request header. The user must be from the same company domain as this Host — a token from another company is rejected (user_not_in_company).
Authorization: Bearer YOUR TOKEN
Sample Request
{
"url": "\/app\/Projects.ColumnsUpdate",
"method": "POST",
"body": {
"column_position_value": "0",
"name_en_value": "QA",
"name_he_value": "QA",
"column_name_value": "qa"
},
"headers": {
"Authorization": "Bearer YOUR TOKEN"
},
"url_user": "https:\/\/{user}.bull36.com\/app\/Projects.ColumnsUpdate",
"url_domain": "https:\/\/{domain}\/app\/Projects.ColumnsUpdate"
}Endpoint
POST /app/Projects.ColumnsUpdate
POST https://{user}.bull36.com/app/Projects.ColumnsUpdate
POST https://{domain}/app/Projects.ColumnsUpdateSample Output
{
"success": 1,
"message": "Success",
"data_id": "0",
"column": {
"id": 0,
"source": "custom",
"can_delete": true
}
}JavaScript Example
const token = 'YOUR TOKEN';
const body = new URLSearchParams();
// Custom column (same as before):
body.set('column_position_value', '0');
body.set('name_en_value', 'QA');
body.set('name_he_value', 'QA');
body.set('column_name_value', 'qa');
// Default To Do labels (dashboard first row, Edit only):
// body.set('data_id', 'default_0');
// body.set('name_en_value', 'To Do');
// body.set('name_he_value', 'To Do');
const res = await fetch('/app/Projects.ColumnsUpdate', { method: 'POST', headers: { Authorization: 'Bearer ' + token }, body });
const data = await res.json();
console.log(data);Error Example
{
"success": 0,
"message": "Only use english letter and underscore"
}