SmartSuite

App · Project Management · 47 actions

Work with SmartSuite solutions, tables, records, comments and schema.

Actions

ActionWhat it does
Add commentComment on a record.
Add fieldAdd a field to a Table.
Add fields in bulkAdd several fields to a Table.
Assign recordAssign members to a record.
Attach file from URLAttach a file to a record's file field by URL, letting SmartSuite fetch it.
Check solution name is freeCheck whether a Solution name is unique in the workspace before creating it.
Count recordsCount the records matching a filter.
Create or update recordUpdate the record whose match field equals the given value, or create it if there isn't one.
Create recordCreate a new record in a table.
Create records in bulkCreate up to 25 records in one request.
Create solutionCreate a new Solution in the workspace.
Create tableCreate a Table in a Solution.
Create teamCreate a team.
Create viewCreate a view on a table.
Create webhookSubscribe to record changes.
Delete fieldDelete a field from a Table.
Delete recordMove a record to the SmartSuite trash.
Delete records in bulkDelete up to 25 records in one request.
Delete webhookDelete a webhook.
Duplicate solutionCopy a Solution, optionally into a different workspace and optionally without its records.
Find recordFind the first record where a field matches a value.
Get file URLReturn a public URL for a stored file, given the file handle from a record's file field.
Get recordRetrieve a single record by id.
Get solutionRetrieve one SmartSuite Solution and its summary counts.
Get tableRetrieve a Table including its full field schema.
Get webhookRetrieve a webhook's configuration and status.
Link recordsPoint a linked-record field at one or more records in another table.
List commentsList comments on a record, table or solution.
List deleted recordsList the records in a Solution's trash.
List fieldsList a table's fields with their slugs.
List membersList the workspace's members.
List recordsRetrieve records from a table, with optional filtering, sorting and pagination.
List records in a viewReturn a view's records with its own filters and sort applied.
List solutionsRetrieve every SmartSuite Solution in the workspace.
List tablesRetrieve the Tables in a Solution.
List teamsList the workspace's teams.
List webhook eventsFetch the record changes a webhook has recorded.
List webhooksList the webhooks configured on a Solution.
Reply to commentReply to an existing comment on a record.
Restore deleted recordRestore a record from the trash.
Set record statusSet a status field on a record.
Update fieldChange a field's label, type or settings.
Update memberUpdate a member's profile.
Update recordUpdate fields on an existing record.
Update records in bulkUpdate up to 25 records in one request.
Update webhookChange which events a webhook watches and over what scope.
Upload fileUpload a file into a record's file field.

Add comment

Comment on a record.

Inputs

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
CommentcommenttextRequired
The comment text. Basic HTML is supported.
Assign toassigned_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Field namelabeltextRequired
The label shown for the field.
Field typefield_typetextRequired
A SmartSuite field type. See the field types reference at developers.smartsuite.com for the full list of 46.
Field settingsparamsobject
Type-specific settings, such as the choices for a select field. Leave blank for defaults.
Field slugslugtext
A 10-character identifier for the field. Generated when left blank.
Place afterprev_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
FieldsfieldslistRequired
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
AssigneesassigneeslistRequired
Members to assign, by id or email address.
Assignee fieldassigned_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
File fieldfield_slugtextRequired
The file field to attach to.
File URLfile_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 namenametextRequired
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Filter fieldfilter_fieldtext
The field to filter on. Leave blank to return everything.
Comparisonfilter_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 valuefilter_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Match fieldmatch_fieldtextRequired
The field that identifies an existing record.
Match valuematch_valuetextRequired
The value to look for in the match field.
Field valuesfieldsobjectRequired
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Field valuesfieldsobjectRequired
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
RecordsitemslistRequired
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 namenametextRequired
The name for the new Solution.
Iconlogo_icontext
A Material Design icon name, such as 'calendar'.Default: grid.
Colourlogo_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Table namenametextRequired
The name for the new Table.
Title field nameprimary_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 namenametextRequired
A unique name for the team.
OwnersownerslistRequired
Members who will own the team. At least one.
Membersmemberslist
Members to add to the team.
Colourcolortext
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
View namelabeltextRequired
The name for the new view.
View typeview_modetext
How the view displays records.One of: grid, kanban, calendar, timeline, card, map. Default: grid.
Visible fieldsvisible_fieldslist
Fields to show. Defaults to the table's title field.
Descriptiondescriptiontext
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Notification URLnotification_urltextRequired
Where SmartSuite should POST when something changes.
Event typeskindslist
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 tablestable_idslist
Only watch these tables. Leave blank to watch the whole Solution.
Limit to fields in tablefield_table_idtext
To watch specific fields, name the table they belong to.
Limit to fieldsfield_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
FieldslugtextRequired
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Record IDsrecord_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 IDwebhook_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
New namenametextRequired
The name for the copy.
Copy recordscopy_recordstrue/false
Copy the records too, rather than the structure only.Default: true.
Copy commentscopy_commentstrue/false
Copy record comments as well.Default: false.
Target workspaceto_workspacetext
Workspace id to copy into. Defaults to the connected workspace.
Source workspacefrom_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Search fieldfilter_fieldtextRequired
The field to match on.
Comparisonfilter_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 valuefilter_valuetext
The value to compare against. Leave blank for is_empty / is_not_empty.
Return readable valueshydratedtrue/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 handlefile_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
Return readable valueshydratedtrue/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

Solutionsolution_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_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 IDwebhook_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"
}

Point a linked-record field at one or more records in another table.

Inputs

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
Linked record fieldlink_fieldtextRequired
The linked-record field to set.
Records to linklinked_record_idslistRequired
Ids of the records to link to.
Modemodetext
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtext
Limit to comments on this table.
Recordrecord_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Summary onlypreviewtrue/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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Include computed fieldsinclude_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 memberslimitnumber
How many members to return, up to 1000.From 1 to 1000.
Offsetoffsetnumber
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Maximum recordslimitnumber
How many records to return, up to 1000.From 1 to 1000.
Offsetoffsetnumber
Skip this many records. Use with Maximum records to page through a large table.At least 0.
Filter fieldfilter_fieldtext
The field to filter on. Leave blank to return everything.
Comparisonfilter_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 valuefilter_valuetext
The value to compare against. Leave blank for is_empty / is_not_empty.
Advanced filterfilterobject
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 bysort_fieldtext
Field to sort on.
Sort directionsort_directiontext
Ascending or descending.One of: asc (Ascending), desc (Descending). Default: asc.
Return readable valueshydratedtrue/false
Return labels instead of internal ids for select, status, assignee, tag and lookup fields. On by default.Default: true.
Include deleted recordsinclude_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
View IDview_idtextRequired
The view's id, from its URL in SmartSuite.
Include empty fieldswith_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

Solutionsolution_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 teamslimitnumber
How many teams to return, up to 1000.From 1 to 1000.
Offsetoffsetnumber
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 IDwebhook_idtextRequired
The id returned when the webhook was created.
Page sizepage_sizenumber
How many results to return per page.From 1 to 1000.
Page tokenpage_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Page sizepage_sizenumber
How many results to return per page.From 1 to 1000.
Page tokenpage_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
Comment to reply toparent_commenttextRequired
The id of the comment being replied to.
ReplycommenttextRequired
The reply text. Basic HTML is supported.
Assign toassigned_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Record IDrecord_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
Status fieldstatus_fieldtext
Which status field to set.Default: status.
Statusstatus_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
FieldslugtextRequired
The field to update.
Field namelabeltextRequired
The field's label.
Field typefield_typetextRequired
The field's type. SmartSuite requires this on every update, so pass the existing type when it is unchanged.
Field settingsparamsobject
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

Membermember_idtextRequired
The member to update.
Profile valuesfieldsobjectRequired
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
Field valuesfieldsobjectRequired
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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
RecordsitemslistRequired
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 IDwebhook_idtextRequired
The id returned when the webhook was created.
Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Event typeskindslist
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 tablestable_idslist
Only watch these tables.
Limit to fields in tablefield_table_idtext
The table whose fields should be watched.
Limit to fieldsfield_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

Solutionsolution_idtextRequired
The SmartSuite Solution that holds the table.
Tabletable_idtextRequired
The SmartSuite Table (App) to work with.
Recordrecord_idtextRequired
The record to act on. Pick one from the list, or supply an id from an earlier step.
File fieldfield_slugtextRequired
The file field to upload into.
File to uploadfile_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 namefile_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
      }
    }
  ]
}

On this page