A CrmBoardColumn represents a stage (step) within a CRM board. In the Nexudus UI these are called CRM Stages .
Each stage has two main components:
Auto assignment — controls which opportunities are automatically added to this stage. Enable one of the boolean triggers (e.g. TourRequests, SignUps, Cancellations, ProductPurchased) to auto-populate the stage when the corresponding event occurs.
Auto actions — controls what happens when an opportunity reaches this stage. Assign a message macro (CannedResponseId), a task list (TaskListId), and/or an account action (ActivateAccount, DeactivateAccount, DeleteAccount, ConfirmTour, WinOpportunity, LoseOpportunity).
Stages are ordered by Position within their parent board. Opportunities move through stages either automatically (when conditions are met) or manually.
Authentication
This endpoint requires OAuth2 authentication. Include a valid bearer token in the Authorization header.
The authenticated user must be a full unrestricted administrator or have the CrmBoardColumn-Create role.
Request Body
Required Fields
Stage name (e.g. ‘Contract Signature’, ‘Keys Handout’, ‘Office Tour’).
Display order of this stage within the board (0-based).
Optional Fields
Auto-assign: add anyone completing a tour request form to this stage.
Auto-assign: add anyone confirming a tour to this stage.
Auto-assign: add anyone completing a tour to this stage.
Auto-action: mark opportunity as won when added to this stage.
Auto-action: mark opportunity as lost when added to this stage.
Auto-assign: add anyone completing a sign-up form to this stage.
Auto-assign: add anyone placing a booking to this stage.
Auto-assign: add anyone cancelling their contract to this stage.
Auto-assign: add anyone sent a proposal to this stage.
Auto-assign: add anyone accepting a proposal to this stage.
Auto-assign: add anyone e-signing a document to this stage.
Auto-assign: add anyone registering for an event to this stage.
Auto-assign: add anyone sending a contact message to this stage.
Auto-action: message macro to send when an opportunity reaches this stage.
Auto-action: task list to create when an opportunity reaches this stage.
Assign the task list’s own responsible users instead of the opportunity owner.
Auto-action: activate the account of opportunities added to this stage.
Auto-action: permanently delete the account and all customer details of opportunities added to this stage.
Auto-action: deactivate the account of opportunities added to this stage.
Auto-action: confirm the tour of opportunities added to this stage.
Auto-assign: add anyone purchasing a specific product to this stage. Requires Products list.
Product IDs that trigger auto-assignment when ProductPurchased is enabled.
Auto-assign: add anyone placing a booking for a specific resource to this stage. Requires Resources list.
Resource IDs that trigger auto-assignment when ResourceBooked is enabled.
Auto-assign: add any event attendee who checks in for an event to this stage.
Code Examples
curl -X POST \
"https://spaces.nexudus.com/api/crm/crmboardcolumns" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"CrmBoardId": 0,
"Name": "",
"Position": 0
}'
Response
200
HTTP status code. 200 on success.
A human-readable message confirming the creation.
Contains the Id of the newly created record.
true if the crmboardcolumn was created successfully.
{
"Status" : 200 ,
"Message" : "CrmBoardColumn was successfully created." ,
"Value" : {
"Id" : 87654321
},
"OpenInDialog" : false ,
"OpenInWindow" : false ,
"RedirectURL" : null ,
"JavaScript" : null ,
"UpdatedOn" : "2025-01-15T10:30:00Z" ,
"UpdatedBy" : "admin@example.com" ,
"Errors" : null ,
"WasSuccessful" : true
}
400
A summary of the validation error(s), in the format PropertyName: error message.
null on validation failure.
Array of validation errors. The value that was submitted for the field, or null if missing.
The validation error message.
The name of the property that failed validation.
false when the request fails validation.
{
"Message" : "Name: is a required field" ,
"Value" : null ,
"Errors" : [
{
"AttemptedValue" : null ,
"Message" : "is a required field" ,
"PropertyName" : "Name"
}
],
"WasSuccessful" : false
}