SmartSuite
App · Project Management · 47 actions
Work with SmartSuite solutions, tables, records, comments and schema.
Actions
| Action | What it does |
|---|---|
| Add comment | Comment on a record. |
| Add field | Add a field to a Table. |
| Add fields in bulk | Add several fields to a Table. |
| Assign record | Assign members to a record. |
| Attach file from URL | Attach a file to a record's file field by URL, letting SmartSuite fetch it. |
| Check solution name is free | Check whether a Solution name is unique in the workspace before creating it. |
| Count records | Count the records matching a filter. |
| Create or update record | Update the record whose match field equals the given value, or create it if there isn't one. |
| Create record | Create a new record in a table. |
| Create records in bulk | Create up to 25 records in one request. |
| Create solution | Create a new Solution in the workspace. |
| Create table | Create a Table in a Solution. |
| Create team | Create a team. |
| Create view | Create a view on a table. |
| Create webhook | Subscribe to record changes. |
| Delete field | Delete a field from a Table. |
| Delete record | Move a record to the SmartSuite trash. |
| Delete records in bulk | Delete up to 25 records in one request. |
| Delete webhook | Delete a webhook. |
| Duplicate solution | Copy a Solution, optionally into a different workspace and optionally without its records. |
| Find record | Find the first record where a field matches a value. |
| Get file URL | Return a public URL for a stored file, given the file handle from a record's file field. |
| Get record | Retrieve a single record by id. |
| Get solution | Retrieve one SmartSuite Solution and its summary counts. |
| Get table | Retrieve a Table including its full field schema. |
| Get webhook | Retrieve a webhook's configuration and status. |
| Link records | Point a linked-record field at one or more records in another table. |
| List comments | List comments on a record, table or solution. |
| List deleted records | List the records in a Solution's trash. |
| List fields | List a table's fields with their slugs. |
| List members | List the workspace's members. |
| List records | Retrieve records from a table, with optional filtering, sorting and pagination. |
| List records in a view | Return a view's records with its own filters and sort applied. |
| List solutions | Retrieve every SmartSuite Solution in the workspace. |
| List tables | Retrieve the Tables in a Solution. |
| List teams | List the workspace's teams. |
| List webhook events | Fetch the record changes a webhook has recorded. |
| List webhooks | List the webhooks configured on a Solution. |
| Reply to comment | Reply to an existing comment on a record. |
| Restore deleted record | Restore a record from the trash. |
| Set record status | Set a status field on a record. |
| Update field | Change a field's label, type or settings. |
| Update member | Update a member's profile. |
| Update record | Update fields on an existing record. |
| Update records in bulk | Update up to 25 records in one request. |
| Update webhook | Change which events a webhook watches and over what scope. |
| Upload file | Upload a file into a record's file field. |
Add comment
Comment on a record.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- Comment
commenttextRequired - The comment text. Basic HTML is supported.
- Assign to
assigned_totext - Optionally assign the comment to a member.
Outputs
created_ontext- Creation time
idtext- Comment id
recordtext- Record id
Example output
{
"created_on": "2026-03-20T12:49:05.832000Z",
"id": "64185642174d214da05fa9c2",
"record": "645109df887911e1871054b7"
}Add field
Add a field to a Table. SmartSuite expects the caller to invent the field's slug; one is generated when you leave it blank.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Field name
labeltextRequired - The label shown for the field.
- Field type
field_typetextRequired - A SmartSuite field type. See the field types reference at developers.smartsuite.com for the full list of 46.
- Field settings
paramsobject - Type-specific settings, such as the choices for a select field. Leave blank for defaults.
- Field slug
slugtext - A 10-character identifier for the field. Generated when left blank.
- Place after
prev_sibling_slugtext - Slug of the field this one should follow on the record layout.
Outputs
field_typetext- Field type
labeltext- Field label
slugtext- The new field's slug
Example output
{
"field_type": "singleselectfield",
"label": "Priority",
"slug": "s7f3a91cd2"
}Add fields in bulk
Add several fields to a Table. SmartSuite's bulk endpoint builds a file field as a text field, so each is added singly, in the order given.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Fields
fieldslistRequired - Field objects, each with at least 'label' and 'field_type'. Slugs are generated where absent.
Outputs
fieldslist- The added fields
Example output
{
"fields": [
{
"field_type": "singleselectfield",
"label": "Priority",
"slug": "s7f3a91cd2"
}
]
}Assign record
Assign members to a record. Accepts member ids or email addresses; emails are resolved to ids automatically.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- Assignees
assigneeslistRequired - Members to assign, by id or email address.
- Assignee field
assigned_fieldtext - Which assignee field to set.Default:
assigned_to.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}Attach file from URL
Attach a file to a record's file field by URL, letting SmartSuite fetch it.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- File field
field_slugtextRequired - The file field to attach to.
- File URL
file_urltextRequired - A publicly reachable URL for SmartSuite to fetch.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}Check solution name is free
Check whether a Solution name is unique in the workspace before creating it.
Inputs
- Proposed name
nametextRequired - The Solution name to check.
Outputs
is_uniquetrue/false- True if no Solution already uses the name
nametext- The name checked
Example output
{
"is_unique": true,
"name": "Q3 Launch"
}Count records
Count the records matching a filter. Uses a single request whatever the table's size.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Filter field
filter_fieldtext - The field to filter on. Leave blank to return everything.
- Comparison
filter_comparisontext - How to compare. These six work on most field types; for type-specific comparisons such as is_greater_than on a number, use the Advanced filter instead.One of:
is,is_not(is not),contains,not_contains(does not contain),is_empty(is empty),is_not_empty(is not empty). Default:is. - Filter value
filter_valuetext - The value to compare against. Leave blank for is_empty / is_not_empty.
Outputs
totalnumber- Number of matching records
Example output
{
"total": 42
}Create or update record
Update the record whose match field equals the given value, or create it if there isn't one.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Match field
match_fieldtextRequired - The field that identifies an existing record.
- Match value
match_valuetextRequired - The value to look for in the match field.
- Field values
fieldsobjectRequired - The value to set for each field, keyed by field slug. Computed fields (formula, rollup, auto number, created/updated, record id, count, vote) cannot be written and are not offered.
Outputs
createdtrue/false- True if a new record was created
recordobject- The resulting record
Example output
{
"created": false,
"record": {
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}
}Create record
Create a new record in a table.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Field values
fieldsobjectRequired - The value to set for each field, keyed by field slug. Computed fields (formula, rollup, auto number, created/updated, record id, count, vote) cannot be written and are not offered.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}Create records in bulk
Create up to 25 records in one request. SmartSuite does not enforce required fields on this endpoint, so a row missing one is accepted rather than rejected.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Records
itemslistRequired - Up to 25 records, each an object keyed by field slug.
Outputs
countnumber- How many were created
recordslist- The created records
Example output
{
"count": 1,
"records": [
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}
]
}Create solution
Create a new Solution in the workspace. SmartSuite puts a Table called 'Table 1' inside it automatically.
Inputs
- Solution name
nametextRequired - The name for the new Solution.
- Icon
logo_icontext - A Material Design icon name, such as 'calendar'.Default:
grid. - Colour
logo_colortext - Hex colour for the icon. SmartSuite expects one of its own palette values.One of:
#3A86FF(Blue),#4ECCFD(Light blue),#3EAC40(Green),#FF5757(Red),#FF9210(Orange),#FFB938(Yellow),#883CD0(Purple),#EC506E(Pink),#17C4C4(Teal),#6A849B(Grey). Default:#3A86FF.
Outputs
idtext- New solution id
nametext- Solution name
Example output
{
"id": "6480fce848b4ebb6f17a8fd1",
"name": "Q3 Launch"
}Create table
Create a Table in a Solution. SmartSuite builds it from its own template of eleven starter fields; the primary one is renamed to the label you give.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table name
nametextRequired - The name for the new Table.
- Title field name
primary_field_labeltext - Label for the table's primary field. SmartSuite calls it Title; any other label is applied in a second call.Default:
Title.
Outputs
idtext- New table id
nametext- Table name
solutiontext- Solution id
Example output
{
"id": "6451093119bcf22befaed847",
"name": "Tasks",
"solution": "6480fce848b4ebb6f17a8fd1"
}Create team
Create a team. The name must be unique in the workspace.
Inputs
- Team name
nametextRequired - A unique name for the team.
- Owners
ownerslistRequired - Members who will own the team. At least one.
- Members
memberslist - Members to add to the team.
- Colour
colortext - Hex colour for the team.Default:
#0C41F3.
Outputs
idtext- New team id
nametext- Team name
Example output
{
"id": "65ce93e5e6bd79eeaf37045d",
"name": "Launch Crew"
}Create view
Create a view on a table.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- View name
labeltextRequired - The name for the new view.
- View type
view_modetext - How the view displays records.One of:
grid,kanban,calendar,timeline,card,map. Default:grid. - Visible fields
visible_fieldslist - Fields to show. Defaults to the table's title field.
- Description
descriptiontext - Optional description for the view.
Outputs
idtext- View id
labeltext- View name
view_modetext- View type
Example output
{
"id": "6493681eba09b400816eb754",
"label": "Open tasks",
"view_mode": "grid"
}Create webhook
Subscribe to record changes. SmartSuite's notification carries no event data, only the webhook id, so pair this with 'List webhook events' to read what changed. This feature is in beta at SmartSuite, and a webhook is disabled after 7 days with no call to List webhook events.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Notification URL
notification_urltextRequired - Where SmartSuite should POST when something changes.
- Event types
kindslist - Which record events to receive. All three if left unset.One or more of:
RECORD_CREATED(Record created),RECORD_UPDATED(Record updated),RECORD_DELETED(Record deleted). - Limit to tables
table_idslist - Only watch these tables. Leave blank to watch the whole Solution.
- Limit to fields in table
field_table_idtext - To watch specific fields, name the table they belong to.
- Limit to fields
field_slugslist - Only watch these fields.
Outputs
webhook_idtext- New webhook id
Example output
{
"webhook_id": "2f7cc6e0-b709-4b04-964a-3706c89c78e3"
}Delete field
Delete a field from a Table. This also removes every value stored in that field.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Field
slugtextRequired - The field to delete.
Outputs
deletedtrue/false- Always true
slugtext- The deleted field slug
Example output
{
"deleted": true,
"slug": "s7f3a91cd2"
}Delete record
Move a record to the SmartSuite trash.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
Outputs
deletedtrue/false- Always true
record_idtext- The deleted record's id
Example output
{
"deleted": true,
"record_id": "645109df887911e1871054b7"
}Delete records in bulk
Delete up to 25 records in one request.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record IDs
record_idslistRequired - Up to 25 record ids to delete.
Outputs
countnumber- How many were deleted
deletedlist- The deleted records
Example output
{
"count": 1,
"deleted": [
{
"id": "645109df887911e1871054b7"
}
]
}Delete webhook
Delete a webhook. Its stored events are deleted with it.
Inputs
- Webhook ID
webhook_idtextRequired - The id returned when the webhook was created.
Outputs
deletedtrue/false- Always true
webhook_idtext- The deleted webhook id
Example output
{
"deleted": true,
"webhook_id": "2f7cc6e0-b709-4b04-964a-3706c89c78e3"
}Duplicate solution
Copy a Solution, optionally into a different workspace and optionally without its records.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- New name
nametextRequired - The name for the copy.
- Copy records
copy_recordstrue/false - Copy the records too, rather than the structure only.Default:
true. - Copy comments
copy_commentstrue/false - Copy record comments as well.Default:
false. - Target workspace
to_workspacetext - Workspace id to copy into. Defaults to the connected workspace.
- Source workspace
from_workspacetext - Workspace id to copy from. Defaults to the connected workspace.
Outputs
idtext- New solution id
nametext- New solution name
Example output
{
"id": "6480fce848b4ebb6f17a8fd2",
"name": "Q3 Launch copy"
}Find record
Find the first record where a field matches a value. Returns found=false rather than failing when nothing matches.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Search field
filter_fieldtextRequired - The field to match on.
- Comparison
filter_comparisontext - How to compare. These six work on most field types; for type-specific comparisons such as is_greater_than on a number, use the Advanced filter instead.One of:
is,is_not(is not),contains,not_contains(does not contain),is_empty(is empty),is_not_empty(is not empty). Default:is. - Filter value
filter_valuetext - The value to compare against. Leave blank for is_empty / is_not_empty.
- Return readable values
hydratedtrue/false - Return labels instead of internal ids for select, status, assignee, tag and lookup fields. On by default.Default:
true.
Outputs
foundtrue/false- Whether a matching record was found
recordobject- The matching record, or null when found is false
Example output
{
"found": true,
"record": {
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}
}Get file URL
Return a public URL for a stored file, given the file handle from a record's file field.
Inputs
- File handle
file_handletextRequired - The 'handle' value from a file field on a record.
Outputs
urltext- Public URL for the file
Example output
{
"url": "https://smartsuite-media.s3.amazonaws.com/..."
}Get record
Retrieve a single record by id.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- Return readable values
hydratedtrue/false - Return labels instead of internal ids for select, status, assignee, tag and lookup fields. On by default.Default:
true.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}Get solution
Retrieve one SmartSuite Solution and its summary counts.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
Outputs
applications_countnumber- Table count
idtext- Solution id
nametext- Solution name
records_countnumber- Record count
statustext- Solution status
Example output
{
"applications_count": 4,
"id": "6480fce848b4ebb6f17a8fd1",
"name": "Product Roadmap",
"records_count": 128,
"status": "in_development"
}Get table
Retrieve a Table including its full field schema.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
Outputs
idtext- Table id
nametext- Table name
primary_fieldtext- Slug of the title field
solutiontext- Solution id
structurelist- Field definitions
Example output
{
"id": "6451093119bcf22befaed847",
"name": "Tasks",
"primary_field": "title",
"solution": "6480fce848b4ebb6f17a8fd1",
"structure": [
{
"field_type": "textfield",
"label": "Title",
"slug": "title"
},
{
"field_type": "statusfield",
"label": "Status",
"slug": "status"
}
]
}Get webhook
Retrieve a webhook's configuration and status.
Inputs
- Webhook ID
webhook_idtextRequired - The id returned when the webhook was created.
Outputs
kindslist- Subscribed event types
webhook_idtext- Webhook id
Example output
{
"kinds": [
"RECORD_CREATED"
],
"webhook_id": "2f7cc6e0-b709-4b04-964a-3706c89c78e3"
}Link records
Point a linked-record field at one or more records in another table.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- Linked record field
link_fieldtextRequired - The linked-record field to set.
- Records to link
linked_record_idslistRequired - Ids of the records to link to.
- Mode
modetext - Replace the existing links, or add to them.One of:
replace(Replace existing links),append(Add to existing links). Default:replace.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}List comments
List comments on a record, table or solution. At least one scope is required.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtext - Limit to comments on this table.
- Record
record_idtext - Limit to comments on this record.
Outputs
commentslist- The comments
countnumber- How many were found
Example output
{
"comments": [
{
"created_on": "2026-03-20T12:49:05.832000Z",
"id": "64185642174d214da05fa9c2",
"member": "63a1f65723aaf6bcb564b1f1",
"message": {
"preview": "Looks good to me"
},
"record": "645109df887911e1871054b7"
}
],
"count": 1
}List deleted records
List the records in a Solution's trash.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Summary only
previewtrue/false - Return a reduced set of fields including who deleted the record and when.Default:
true.
Outputs
countnumber- How many were found
recordslist- The deleted records
Example output
{
"count": 1,
"records": [
{
"application_id": "6451093119bcf22befaed847",
"deleted_by": "63a1f65723aaf6bcb564b1f1",
"id": "66be7b5fb8b730607ea959f4",
"title": "Old task"
}
]
}List fields
List a table's fields with their slugs. SmartSuite identifies fields by an opaque slug rather than their label, so this is how you find the key to use when reading or writing a field.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Include computed fields
include_readonlytrue/false - Include fields that cannot be written, such as formulas and rollups.Default:
true.
Outputs
List of fields
Example output
[
{
"field_type": "textfield",
"label": "Title",
"read_only": false,
"slug": "title"
},
{
"field_type": "daterangefield",
"label": "Due Date",
"read_only": false,
"slug": "sef1a6a113"
},
{
"field_type": "autonumberfield",
"label": "Auto Number",
"read_only": true,
"slug": "autonumber"
}
]List members
List the workspace's members. Useful for turning an email address into the member id an assignee field needs.
Inputs
- Maximum members
limitnumber - How many members to return, up to 1000.From 1 to 1000.
- Offset
offsetnumber - Skip this many members.At least 0.
Outputs
itemslist- The members
totalnumber- Total members
Example output
{
"items": [
{
"email": [
"jane@example.com"
],
"full_name": {
"sys_root": "Jane Cole"
},
"id": "63a1f65723aaf6bcb564b1f1"
}
],
"total": 1
}List records
Retrieve records from a table, with optional filtering, sorting and pagination.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Maximum records
limitnumber - How many records to return, up to 1000.From 1 to 1000.
- Offset
offsetnumber - Skip this many records. Use with Maximum records to page through a large table.At least 0.
- Filter field
filter_fieldtext - The field to filter on. Leave blank to return everything.
- Comparison
filter_comparisontext - How to compare. These six work on most field types; for type-specific comparisons such as is_greater_than on a number, use the Advanced filter instead.One of:
is,is_not(is not),contains,not_contains(does not contain),is_empty(is empty),is_not_empty(is not empty). Default:is. - Filter value
filter_valuetext - The value to compare against. Leave blank for is_empty / is_not_empty.
- Advanced filter
filterobject - A full SmartSuite filter object, for multiple conditions or an 'or' operator: {"operator": "and", "fields": [{"field": "status", "comparison": "is_not", "value": "Complete"}]}. Takes precedence over the guided filter fields above.
- Sort by
sort_fieldtext - Field to sort on.
- Sort direction
sort_directiontext - Ascending or descending.One of:
asc(Ascending),desc(Descending). Default:asc. - Return readable values
hydratedtrue/false - Return labels instead of internal ids for select, status, assignee, tag and lookup fields. On by default.Default:
true. - Include deleted records
include_deletedtrue/false - Also return records that are in the trash.Default:
false.
Outputs
itemslist- The records
limitnumber- Current limit
offsetnumber- Current offset
totalnumber- Total records matching the filter
Example output
{
"items": [
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}
],
"limit": 100,
"offset": 0,
"total": 1
}List records in a view
Return a view's records with its own filters and sort applied. SmartSuite documents no endpoint that lists views, so the view id has to be copied from the view's URL in SmartSuite.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- View ID
view_idtextRequired - The view's id, from its URL in SmartSuite.
- Include empty fields
with_empty_valuestrue/false - SmartSuite omits empty values by default; turn this on to include them.Default:
false.
Outputs
fieldslist- Field slugs visible in the view
recordslist- Records as the view returns them
Example output
{
"fields": [
"title",
"status",
"due_date"
],
"records": [
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}
]
}List solutions
Retrieve every SmartSuite Solution in the workspace.
Inputs
None.
Outputs
List of solutions
Example output
[
{
"applications_count": 4,
"id": "6480fce848b4ebb6f17a8fd1",
"name": "Product Roadmap",
"records_count": 128
}
]List tables
Retrieve the Tables in a Solution. SmartSuite calls these Apps in its API paths.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
Outputs
List of tables
Example output
[
{
"id": "6451093119bcf22befaed847",
"name": "Tasks",
"primary_field": "title",
"solution": "6480fce848b4ebb6f17a8fd1"
}
]List teams
List the workspace's teams.
Inputs
- Maximum teams
limitnumber - How many teams to return, up to 1000.From 1 to 1000.
- Offset
offsetnumber - Skip this many teams.At least 0.
Outputs
itemslist- The teams
totalnumber- Total teams
Example output
{
"items": [
{
"id": "65ce93e5e6bd79eeaf37045d",
"members": [
"63a1f65723aaf6bcb564b1f1"
],
"name": "Website Project"
}
],
"total": 1
}List webhook events
Fetch the record changes a webhook has recorded. This is the only place the event data lives, and calling it also keeps the webhook alive; SmartSuite disables one after 7 days without a call.
Inputs
- Webhook ID
webhook_idtextRequired - The id returned when the webhook was created.
- Page size
page_sizenumber - How many results to return per page.From 1 to 1000.
- Page token
page_tokentext - The next_page_token from a previous call, to fetch the next page.
Outputs
eventslist- The recorded events
next_page_tokentext- Pass as page_token to fetch the next page
Example output
{
"events": [
{
"event_at": "2026-06-21T21:14:06.263Z",
"event_id": "2f7cc6e0-b709-4b04-964a-3706c89c78e3.994",
"kind": "RECORD_CREATED",
"record_event_data": {
"record_id": "6493681eba09b400816eb754"
}
}
],
"next_page_token": "8991625"
}List webhooks
List the webhooks configured on a Solution.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Page size
page_sizenumber - How many results to return per page.From 1 to 1000.
- Page token
page_tokentext - The next_page_token from a previous call, to fetch the next page.
Outputs
next_page_tokentext- Pass as page_token to fetch the next page
webhookslist- The webhooks
Example output
{
"next_page_token": "",
"webhooks": [
{
"kinds": [
"RECORD_CREATED"
],
"webhook_id": "2f7cc6e0-b709-4b04-964a-3706c89c78e3"
}
]
}Reply to comment
Reply to an existing comment on a record.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- Comment to reply to
parent_commenttextRequired - The id of the comment being replied to.
- Reply
commenttextRequired - The reply text. Basic HTML is supported.
- Assign to
assigned_totext - Optionally assign the reply to a member.
Outputs
idtext- Reply comment id
parent_commenttext- The comment replied to
Example output
{
"id": "64185642174d214da05fa9c3",
"parent_comment": "64185642174d214da05fa9c2"
}Restore deleted record
Restore a record from the trash. SmartSuite appends '(Restored)' to its title.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record ID
record_idtextRequired - The deleted record's id, from List deleted records.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}Set record status
Set a status field on a record. Accepts either the status label shown in SmartSuite or its internal value.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- Status field
status_fieldtext - Which status field to set.Default:
status. - Status
status_valuetextRequired - The status to set.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}Update field
Change a field's label, type or settings.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Field
slugtextRequired - The field to update.
- Field name
labeltextRequired - The field's label.
- Field type
field_typetextRequired - The field's type. SmartSuite requires this on every update, so pass the existing type when it is unchanged.
- Field settings
paramsobject - Type-specific settings.
Outputs
labeltext- Field label
slugtext- Field slug
Example output
{
"label": "Priority level",
"slug": "s7f3a91cd2"
}Update member
Update a member's profile. Fields you leave out keep their current values.
Inputs
- Member
member_idtextRequired - The member to update.
- Profile values
fieldsobjectRequired - Member fields to set, such as job_title, department, timezone or language.
Outputs
idtext- Member id
job_titletext- Job title
Example output
{
"full_name": {
"sys_root": "Jane Cole"
},
"id": "63a1f65723aaf6bcb564b1f1",
"job_title": "Product Lead"
}Update record
Update fields on an existing record. Fields you leave out keep their current values.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- Field values
fieldsobjectRequired - The value to set for each field, keyed by field slug. Computed fields (formula, rollup, auto number, created/updated, record id, count, vote) cannot be written and are not offered.
Outputs
A SmartSuite record. Keys are field slugs; empty values are omitted.
application_idtext- Table id
idtext- Record id
titletext- The record's primary field
Example output
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}Update records in bulk
Update up to 25 records in one request. Every item must include the id of the record it updates.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Records
itemslistRequired - Up to 25 records, each keyed by field slug and including an 'id'.
Outputs
countnumber- How many were updated
recordslist- The updated records
Example output
{
"count": 1,
"records": [
{
"application_id": "6451093119bcf22befaed847",
"assigned_to": [
"5dd812b9d8b7863532d3ddd2"
],
"due_date": {
"from_date": {
"date": "2026-02-01T00:00:00Z",
"include_time": false
},
"is_overdue": false,
"to_date": {
"date": "2026-02-14T00:00:00Z",
"include_time": false
}
},
"id": "645109df887911e1871054b7",
"status": {
"label": "In Progress",
"value": "in_progress"
},
"title": "Website redesign"
}
]
}Update webhook
Change which events a webhook watches and over what scope. Not where it posts: SmartSuite ignores that on an update, so changing the URL or stopping a webhook means deleting it and creating another.
Inputs
- Webhook ID
webhook_idtextRequired - The id returned when the webhook was created.
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Event types
kindslist - Which record events to receive. All three if left unset.One or more of:
RECORD_CREATED(Record created),RECORD_UPDATED(Record updated),RECORD_DELETED(Record deleted). - Limit to tables
table_idslist - Only watch these tables.
- Limit to fields in table
field_table_idtext - The table whose fields should be watched.
- Limit to fields
field_slugslist - Only watch these fields.
Outputs
webhook_idtext- Webhook id
Example output
{
"webhook_id": "2f7cc6e0-b709-4b04-964a-3706c89c78e3"
}Upload file
Upload a file into a record's file field.
Inputs
- Solution
solution_idtextRequired - The SmartSuite Solution that holds the table.
- Table
table_idtextRequired - The SmartSuite Table (App) to work with.
- Record
record_idtextRequired - The record to act on. Pick one from the list, or supply an id from an earlier step.
- File field
field_slugtextRequired - The file field to upload into.
- File to upload
file_pathtextRequired - The file to upload: upload one, or pick a file from an earlier step. To attach a file from a link, use Attach file from URL.
- File name
file_nametext - Name to store the file under. Defaults to the uploaded file's own name.
Outputs
The updated record, including the stored file metadata
Example output
{
"id": "645109df887911e1871054b7",
"safa1e3a3e": [
{
"handle": "gR3sd5PITEqlK9GMaXXj",
"metadata": {
"filename": "contract.pdf",
"mimetype": "application/pdf",
"size": 53736
}
}
]
}