featurebase-node 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/api-promise.d.mts +1 -0
- package/api-promise.d.mts.map +1 -1
- package/api-promise.d.ts +1 -0
- package/api-promise.d.ts.map +1 -1
- package/api-promise.mjs +1 -0
- package/api-promise.mjs.map +1 -1
- package/client.d.mts +9 -3
- package/client.d.mts.map +1 -1
- package/client.d.ts +9 -3
- package/client.d.ts.map +1 -1
- package/client.js +6 -0
- package/client.js.map +1 -1
- package/client.mjs +6 -0
- package/client.mjs.map +1 -1
- package/core/api-promise.d.mts.map +1 -1
- package/core/api-promise.d.ts.map +1 -1
- package/core/api-promise.mjs.map +1 -1
- package/core/error.mjs.map +1 -1
- package/core/pagination.d.mts.map +1 -1
- package/core/pagination.d.ts.map +1 -1
- package/core/pagination.mjs.map +1 -1
- package/core/resource.d.mts.map +1 -1
- package/core/resource.d.ts.map +1 -1
- package/core/uploads.d.mts.map +1 -1
- package/core/uploads.d.ts.map +1 -1
- package/core/uploads.mjs.map +1 -1
- package/error.d.mts +1 -0
- package/error.d.mts.map +1 -1
- package/error.d.ts +1 -0
- package/error.d.ts.map +1 -1
- package/error.mjs +1 -0
- package/error.mjs.map +1 -1
- package/index.d.mts.map +1 -1
- package/index.d.ts.map +1 -1
- package/index.mjs.map +1 -1
- package/internal/detect-platform.mjs.map +1 -1
- package/internal/headers.mjs.map +1 -1
- package/internal/parse.d.mts.map +1 -1
- package/internal/parse.d.ts.map +1 -1
- package/internal/parse.mjs.map +1 -1
- package/internal/qs/formats.d.mts.map +1 -1
- package/internal/qs/formats.d.ts.map +1 -1
- package/internal/qs/index.d.mts +2 -2
- package/internal/qs/index.d.mts.map +1 -1
- package/internal/qs/index.d.ts +2 -2
- package/internal/qs/index.d.ts.map +1 -1
- package/internal/qs/index.mjs.map +1 -1
- package/internal/qs/stringify.d.mts.map +1 -1
- package/internal/qs/stringify.d.ts.map +1 -1
- package/internal/qs/stringify.mjs.map +1 -1
- package/internal/qs/utils.d.mts.map +1 -1
- package/internal/qs/utils.d.ts.map +1 -1
- package/internal/qs/utils.mjs.map +1 -1
- package/internal/request-options.d.mts.map +1 -1
- package/internal/request-options.d.ts.map +1 -1
- package/internal/shims.d.mts +6 -0
- package/internal/shims.d.mts.map +1 -1
- package/internal/shims.d.ts +6 -0
- package/internal/shims.d.ts.map +1 -1
- package/internal/to-file.d.mts.map +1 -1
- package/internal/to-file.d.ts.map +1 -1
- package/internal/to-file.mjs.map +1 -1
- package/internal/types.d.mts +4 -4
- package/internal/types.d.mts.map +1 -1
- package/internal/types.d.ts +4 -4
- package/internal/types.d.ts.map +1 -1
- package/internal/uploads.d.mts.map +1 -1
- package/internal/uploads.d.ts.map +1 -1
- package/internal/uploads.mjs.map +1 -1
- package/internal/utils/base64.mjs.map +1 -1
- package/internal/utils/log.d.mts.map +1 -1
- package/internal/utils/log.d.ts.map +1 -1
- package/internal/utils/log.js +2 -0
- package/internal/utils/log.js.map +1 -1
- package/internal/utils/log.mjs +2 -0
- package/internal/utils/log.mjs.map +1 -1
- package/internal/utils/path.mjs.map +1 -1
- package/internal/utils/query.mjs.map +1 -1
- package/internal/utils/values.mjs.map +1 -1
- package/internal/utils.d.mts.map +1 -1
- package/internal/utils.d.ts.map +1 -1
- package/internal/utils.mjs.map +1 -1
- package/package.json +16 -10
- package/pagination.d.mts +1 -0
- package/pagination.d.mts.map +1 -1
- package/pagination.d.ts +1 -0
- package/pagination.d.ts.map +1 -1
- package/pagination.mjs +1 -0
- package/pagination.mjs.map +1 -1
- package/resource.d.mts +1 -0
- package/resource.d.mts.map +1 -1
- package/resource.d.ts +1 -0
- package/resource.d.ts.map +1 -1
- package/resource.mjs +1 -0
- package/resource.mjs.map +1 -1
- package/resources/changelogs/changelogs.d.mts +106 -106
- package/resources/changelogs/changelogs.d.mts.map +1 -1
- package/resources/changelogs/changelogs.d.ts +106 -106
- package/resources/changelogs/changelogs.d.ts.map +1 -1
- package/resources/changelogs/changelogs.js +74 -74
- package/resources/changelogs/changelogs.js.map +1 -1
- package/resources/changelogs/changelogs.mjs +74 -74
- package/resources/changelogs/changelogs.mjs.map +1 -1
- package/resources/changelogs/index.d.mts +1 -1
- package/resources/changelogs/index.d.mts.map +1 -1
- package/resources/changelogs/index.d.ts +1 -1
- package/resources/changelogs/index.d.ts.map +1 -1
- package/resources/changelogs/index.mjs.map +1 -1
- package/resources/changelogs/subscribers.d.mts.map +1 -1
- package/resources/changelogs/subscribers.d.ts.map +1 -1
- package/resources/changelogs/subscribers.mjs.map +1 -1
- package/resources/changelogs.d.mts.map +1 -1
- package/resources/changelogs.d.ts.map +1 -1
- package/resources/changelogs.mjs.map +1 -1
- package/resources/conversation-attributes.d.mts +117 -0
- package/resources/conversation-attributes.d.mts.map +1 -0
- package/resources/conversation-attributes.d.ts +117 -0
- package/resources/conversation-attributes.d.ts.map +1 -0
- package/resources/conversation-attributes.js +61 -0
- package/resources/conversation-attributes.js.map +1 -0
- package/resources/conversation-attributes.mjs +57 -0
- package/resources/conversation-attributes.mjs.map +1 -0
- package/resources/feedback/boards.d.mts +17 -17
- package/resources/feedback/boards.d.mts.map +1 -1
- package/resources/feedback/boards.d.ts +17 -17
- package/resources/feedback/boards.d.ts.map +1 -1
- package/resources/feedback/boards.js +20 -20
- package/resources/feedback/boards.js.map +1 -1
- package/resources/feedback/boards.mjs +20 -20
- package/resources/feedback/boards.mjs.map +1 -1
- package/resources/feedback/comments.d.mts +400 -123
- package/resources/feedback/comments.d.mts.map +1 -1
- package/resources/feedback/comments.d.ts +400 -123
- package/resources/feedback/comments.d.ts.map +1 -1
- package/resources/feedback/comments.js +253 -93
- package/resources/feedback/comments.js.map +1 -1
- package/resources/feedback/comments.mjs +253 -93
- package/resources/feedback/comments.mjs.map +1 -1
- package/resources/feedback/custom-fields.d.mts +34 -34
- package/resources/feedback/custom-fields.d.mts.map +1 -1
- package/resources/feedback/custom-fields.d.ts +34 -34
- package/resources/feedback/custom-fields.d.ts.map +1 -1
- package/resources/feedback/custom-fields.js +36 -36
- package/resources/feedback/custom-fields.js.map +1 -1
- package/resources/feedback/custom-fields.mjs +36 -36
- package/resources/feedback/custom-fields.mjs.map +1 -1
- package/resources/feedback/feedback.d.mts +7 -7
- package/resources/feedback/feedback.d.mts.map +1 -1
- package/resources/feedback/feedback.d.ts +7 -7
- package/resources/feedback/feedback.d.ts.map +1 -1
- package/resources/feedback/feedback.js.map +1 -1
- package/resources/feedback/feedback.mjs.map +1 -1
- package/resources/feedback/index.d.mts +5 -5
- package/resources/feedback/index.d.mts.map +1 -1
- package/resources/feedback/index.d.ts +5 -5
- package/resources/feedback/index.d.ts.map +1 -1
- package/resources/feedback/index.js.map +1 -1
- package/resources/feedback/index.mjs.map +1 -1
- package/resources/feedback/post-statuses.d.mts +18 -18
- package/resources/feedback/post-statuses.d.mts.map +1 -1
- package/resources/feedback/post-statuses.d.ts +18 -18
- package/resources/feedback/post-statuses.d.ts.map +1 -1
- package/resources/feedback/post-statuses.js +23 -23
- package/resources/feedback/post-statuses.js.map +1 -1
- package/resources/feedback/post-statuses.mjs +23 -23
- package/resources/feedback/post-statuses.mjs.map +1 -1
- package/resources/feedback/posts/index.d.mts +1 -1
- package/resources/feedback/posts/index.d.mts.map +1 -1
- package/resources/feedback/posts/index.d.ts +1 -1
- package/resources/feedback/posts/index.d.ts.map +1 -1
- package/resources/feedback/posts/index.js.map +1 -1
- package/resources/feedback/posts/index.mjs.map +1 -1
- package/resources/feedback/posts/posts.d.mts +238 -284
- package/resources/feedback/posts/posts.d.mts.map +1 -1
- package/resources/feedback/posts/posts.d.ts +238 -284
- package/resources/feedback/posts/posts.d.ts.map +1 -1
- package/resources/feedback/posts/posts.js +122 -96
- package/resources/feedback/posts/posts.js.map +1 -1
- package/resources/feedback/posts/posts.mjs +122 -96
- package/resources/feedback/posts/posts.mjs.map +1 -1
- package/resources/feedback/posts/voters.d.mts.map +1 -1
- package/resources/feedback/posts/voters.d.ts.map +1 -1
- package/resources/feedback/posts/voters.mjs.map +1 -1
- package/resources/feedback/posts.d.mts.map +1 -1
- package/resources/feedback/posts.d.ts.map +1 -1
- package/resources/feedback/posts.mjs.map +1 -1
- package/resources/feedback.d.mts.map +1 -1
- package/resources/feedback.d.ts.map +1 -1
- package/resources/feedback.mjs.map +1 -1
- package/resources/help-center/articles.d.mts +98 -152
- package/resources/help-center/articles.d.mts.map +1 -1
- package/resources/help-center/articles.d.ts +98 -152
- package/resources/help-center/articles.d.ts.map +1 -1
- package/resources/help-center/articles.js +73 -73
- package/resources/help-center/articles.js.map +1 -1
- package/resources/help-center/articles.mjs +73 -73
- package/resources/help-center/articles.mjs.map +1 -1
- package/resources/help-center/collections.d.mts +64 -64
- package/resources/help-center/collections.d.mts.map +1 -1
- package/resources/help-center/collections.d.ts +64 -64
- package/resources/help-center/collections.d.ts.map +1 -1
- package/resources/help-center/collections.js +65 -65
- package/resources/help-center/collections.js.map +1 -1
- package/resources/help-center/collections.mjs +65 -65
- package/resources/help-center/collections.mjs.map +1 -1
- package/resources/help-center/help-center.d.mts +5 -5
- package/resources/help-center/help-center.d.mts.map +1 -1
- package/resources/help-center/help-center.d.ts +5 -5
- package/resources/help-center/help-center.d.ts.map +1 -1
- package/resources/help-center/help-center.js.map +1 -1
- package/resources/help-center/help-center.mjs.map +1 -1
- package/resources/help-center/help-centers.d.mts +43 -43
- package/resources/help-center/help-centers.d.mts.map +1 -1
- package/resources/help-center/help-centers.d.ts +43 -43
- package/resources/help-center/help-centers.d.ts.map +1 -1
- package/resources/help-center/help-centers.js +43 -43
- package/resources/help-center/help-centers.js.map +1 -1
- package/resources/help-center/help-centers.mjs +43 -43
- package/resources/help-center/help-centers.mjs.map +1 -1
- package/resources/help-center/index.d.mts +4 -4
- package/resources/help-center/index.d.mts.map +1 -1
- package/resources/help-center/index.d.ts +4 -4
- package/resources/help-center/index.d.ts.map +1 -1
- package/resources/help-center/index.js.map +1 -1
- package/resources/help-center/index.mjs.map +1 -1
- package/resources/help-center/redirect-rules.d.mts +117 -117
- package/resources/help-center/redirect-rules.d.mts.map +1 -1
- package/resources/help-center/redirect-rules.d.ts +117 -117
- package/resources/help-center/redirect-rules.d.ts.map +1 -1
- package/resources/help-center/redirect-rules.js +112 -112
- package/resources/help-center/redirect-rules.js.map +1 -1
- package/resources/help-center/redirect-rules.mjs +112 -112
- package/resources/help-center/redirect-rules.mjs.map +1 -1
- package/resources/help-center.d.mts.map +1 -1
- package/resources/help-center.d.ts.map +1 -1
- package/resources/help-center.mjs.map +1 -1
- package/resources/index.d.mts +4 -3
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +4 -3
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js +3 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs +1 -0
- package/resources/index.mjs.map +1 -1
- package/resources/organization/admins.d.mts +23 -23
- package/resources/organization/admins.d.mts.map +1 -1
- package/resources/organization/admins.d.ts +23 -23
- package/resources/organization/admins.d.ts.map +1 -1
- package/resources/organization/admins.js +25 -25
- package/resources/organization/admins.js.map +1 -1
- package/resources/organization/admins.mjs +25 -25
- package/resources/organization/admins.mjs.map +1 -1
- package/resources/organization/brands.d.mts +50 -50
- package/resources/organization/brands.d.mts.map +1 -1
- package/resources/organization/brands.d.ts +50 -50
- package/resources/organization/brands.d.ts.map +1 -1
- package/resources/organization/brands.js +54 -54
- package/resources/organization/brands.js.map +1 -1
- package/resources/organization/brands.mjs +54 -54
- package/resources/organization/brands.mjs.map +1 -1
- package/resources/organization/index.d.mts +3 -3
- package/resources/organization/index.d.mts.map +1 -1
- package/resources/organization/index.d.ts +3 -3
- package/resources/organization/index.d.ts.map +1 -1
- package/resources/organization/index.mjs.map +1 -1
- package/resources/organization/organization.d.mts +3 -3
- package/resources/organization/organization.d.mts.map +1 -1
- package/resources/organization/organization.d.ts +3 -3
- package/resources/organization/organization.d.ts.map +1 -1
- package/resources/organization/organization.mjs.map +1 -1
- package/resources/organization/teams.d.mts +45 -45
- package/resources/organization/teams.d.mts.map +1 -1
- package/resources/organization/teams.d.ts +45 -45
- package/resources/organization/teams.d.ts.map +1 -1
- package/resources/organization/teams.js +44 -44
- package/resources/organization/teams.js.map +1 -1
- package/resources/organization/teams.mjs +44 -44
- package/resources/organization/teams.mjs.map +1 -1
- package/resources/organization.d.mts.map +1 -1
- package/resources/organization.d.ts.map +1 -1
- package/resources/organization.mjs.map +1 -1
- package/resources/support/conversation-tags.d.mts +40 -40
- package/resources/support/conversation-tags.d.mts.map +1 -1
- package/resources/support/conversation-tags.d.ts +40 -40
- package/resources/support/conversation-tags.d.ts.map +1 -1
- package/resources/support/conversation-tags.js +32 -32
- package/resources/support/conversation-tags.js.map +1 -1
- package/resources/support/conversation-tags.mjs +32 -32
- package/resources/support/conversation-tags.mjs.map +1 -1
- package/resources/support/conversations/conversations.d.mts +624 -722
- package/resources/support/conversations/conversations.d.mts.map +1 -1
- package/resources/support/conversations/conversations.d.ts +624 -722
- package/resources/support/conversations/conversations.d.ts.map +1 -1
- package/resources/support/conversations/conversations.js +309 -302
- package/resources/support/conversations/conversations.js.map +1 -1
- package/resources/support/conversations/conversations.mjs +309 -302
- package/resources/support/conversations/conversations.mjs.map +1 -1
- package/resources/support/conversations/index.d.mts +1 -1
- package/resources/support/conversations/index.d.mts.map +1 -1
- package/resources/support/conversations/index.d.ts +1 -1
- package/resources/support/conversations/index.d.ts.map +1 -1
- package/resources/support/conversations/index.js.map +1 -1
- package/resources/support/conversations/index.mjs.map +1 -1
- package/resources/support/conversations/participants.d.mts.map +1 -1
- package/resources/support/conversations/participants.d.ts.map +1 -1
- package/resources/support/conversations/participants.mjs.map +1 -1
- package/resources/support/conversations.d.mts.map +1 -1
- package/resources/support/conversations.d.ts.map +1 -1
- package/resources/support/conversations.mjs.map +1 -1
- package/resources/support/index.d.mts +3 -3
- package/resources/support/index.d.mts.map +1 -1
- package/resources/support/index.d.ts +3 -3
- package/resources/support/index.d.ts.map +1 -1
- package/resources/support/index.js.map +1 -1
- package/resources/support/index.mjs.map +1 -1
- package/resources/support/support.d.mts +4 -4
- package/resources/support/support.d.mts.map +1 -1
- package/resources/support/support.d.ts +4 -4
- package/resources/support/support.d.ts.map +1 -1
- package/resources/support/support.js.map +1 -1
- package/resources/support/support.mjs.map +1 -1
- package/resources/support/tickets/categories.d.mts +18 -18
- package/resources/support/tickets/categories.d.mts.map +1 -1
- package/resources/support/tickets/categories.d.ts +18 -18
- package/resources/support/tickets/categories.d.ts.map +1 -1
- package/resources/support/tickets/categories.js +25 -25
- package/resources/support/tickets/categories.js.map +1 -1
- package/resources/support/tickets/categories.mjs +25 -25
- package/resources/support/tickets/categories.mjs.map +1 -1
- package/resources/support/tickets/custom-fields.d.mts +20 -20
- package/resources/support/tickets/custom-fields.d.mts.map +1 -1
- package/resources/support/tickets/custom-fields.d.ts +20 -20
- package/resources/support/tickets/custom-fields.d.ts.map +1 -1
- package/resources/support/tickets/custom-fields.js +19 -19
- package/resources/support/tickets/custom-fields.js.map +1 -1
- package/resources/support/tickets/custom-fields.mjs +19 -19
- package/resources/support/tickets/custom-fields.mjs.map +1 -1
- package/resources/support/tickets/index.d.mts +4 -4
- package/resources/support/tickets/index.d.mts.map +1 -1
- package/resources/support/tickets/index.d.ts +4 -4
- package/resources/support/tickets/index.d.ts.map +1 -1
- package/resources/support/tickets/index.mjs.map +1 -1
- package/resources/support/tickets/statuses.d.mts +17 -17
- package/resources/support/tickets/statuses.d.mts.map +1 -1
- package/resources/support/tickets/statuses.d.ts +17 -17
- package/resources/support/tickets/statuses.d.ts.map +1 -1
- package/resources/support/tickets/statuses.js +21 -21
- package/resources/support/tickets/statuses.js.map +1 -1
- package/resources/support/tickets/statuses.mjs +21 -21
- package/resources/support/tickets/statuses.mjs.map +1 -1
- package/resources/support/tickets/tickets.d.mts +69 -69
- package/resources/support/tickets/tickets.d.mts.map +1 -1
- package/resources/support/tickets/tickets.d.ts +69 -69
- package/resources/support/tickets/tickets.d.ts.map +1 -1
- package/resources/support/tickets/tickets.js +44 -44
- package/resources/support/tickets/tickets.js.map +1 -1
- package/resources/support/tickets/tickets.mjs +44 -44
- package/resources/support/tickets/tickets.mjs.map +1 -1
- package/resources/support/tickets.d.mts.map +1 -1
- package/resources/support/tickets.d.ts.map +1 -1
- package/resources/support/tickets.mjs.map +1 -1
- package/resources/support.d.mts.map +1 -1
- package/resources/support.d.ts.map +1 -1
- package/resources/support.mjs.map +1 -1
- package/resources/surveys.d.mts +41 -41
- package/resources/surveys.d.mts.map +1 -1
- package/resources/surveys.d.ts +41 -41
- package/resources/surveys.d.ts.map +1 -1
- package/resources/surveys.js +44 -44
- package/resources/surveys.js.map +1 -1
- package/resources/surveys.mjs +44 -44
- package/resources/surveys.mjs.map +1 -1
- package/resources/users/companies/companies.d.mts +149 -177
- package/resources/users/companies/companies.d.mts.map +1 -1
- package/resources/users/companies/companies.d.ts +149 -177
- package/resources/users/companies/companies.d.ts.map +1 -1
- package/resources/users/companies/companies.js +153 -142
- package/resources/users/companies/companies.js.map +1 -1
- package/resources/users/companies/companies.mjs +153 -142
- package/resources/users/companies/companies.mjs.map +1 -1
- package/resources/users/companies/contacts.d.mts.map +1 -1
- package/resources/users/companies/contacts.d.ts.map +1 -1
- package/resources/users/companies/contacts.mjs.map +1 -1
- package/resources/users/companies/index.d.mts +1 -1
- package/resources/users/companies/index.d.mts.map +1 -1
- package/resources/users/companies/index.d.ts +1 -1
- package/resources/users/companies/index.d.ts.map +1 -1
- package/resources/users/companies/index.mjs.map +1 -1
- package/resources/users/companies.d.mts.map +1 -1
- package/resources/users/companies.d.ts.map +1 -1
- package/resources/users/companies.mjs.map +1 -1
- package/resources/users/contacts/by-user-id/by-user-id.d.mts.map +1 -1
- package/resources/users/contacts/by-user-id/by-user-id.d.ts.map +1 -1
- package/resources/users/contacts/by-user-id/by-user-id.mjs.map +1 -1
- package/resources/users/contacts/by-user-id/email-preferences.d.mts.map +1 -1
- package/resources/users/contacts/by-user-id/email-preferences.d.ts.map +1 -1
- package/resources/users/contacts/by-user-id/email-preferences.mjs.map +1 -1
- package/resources/users/contacts/by-user-id/index.d.mts.map +1 -1
- package/resources/users/contacts/by-user-id/index.d.ts.map +1 -1
- package/resources/users/contacts/by-user-id/index.mjs.map +1 -1
- package/resources/users/contacts/by-user-id.d.mts.map +1 -1
- package/resources/users/contacts/by-user-id.d.ts.map +1 -1
- package/resources/users/contacts/by-user-id.mjs.map +1 -1
- package/resources/users/contacts/contacts.d.mts +229 -256
- package/resources/users/contacts/contacts.d.mts.map +1 -1
- package/resources/users/contacts/contacts.d.ts +229 -256
- package/resources/users/contacts/contacts.d.ts.map +1 -1
- package/resources/users/contacts/contacts.js +213 -201
- package/resources/users/contacts/contacts.js.map +1 -1
- package/resources/users/contacts/contacts.mjs +213 -201
- package/resources/users/contacts/contacts.mjs.map +1 -1
- package/resources/users/contacts/email-preferences.d.mts.map +1 -1
- package/resources/users/contacts/email-preferences.d.ts.map +1 -1
- package/resources/users/contacts/email-preferences.mjs.map +1 -1
- package/resources/users/contacts/index.d.mts +1 -1
- package/resources/users/contacts/index.d.mts.map +1 -1
- package/resources/users/contacts/index.d.ts +1 -1
- package/resources/users/contacts/index.d.ts.map +1 -1
- package/resources/users/contacts/index.mjs.map +1 -1
- package/resources/users/contacts.d.mts.map +1 -1
- package/resources/users/contacts.d.ts.map +1 -1
- package/resources/users/contacts.mjs.map +1 -1
- package/resources/users/index.d.mts +2 -2
- package/resources/users/index.d.mts.map +1 -1
- package/resources/users/index.d.ts +2 -2
- package/resources/users/index.d.ts.map +1 -1
- package/resources/users/index.mjs.map +1 -1
- package/resources/users/users.d.mts +2 -2
- package/resources/users/users.d.mts.map +1 -1
- package/resources/users/users.d.ts +2 -2
- package/resources/users/users.d.ts.map +1 -1
- package/resources/users/users.mjs.map +1 -1
- package/resources/users.d.mts.map +1 -1
- package/resources/users.d.ts.map +1 -1
- package/resources/users.mjs.map +1 -1
- package/resources/webhooks.d.mts +75 -75
- package/resources/webhooks.d.mts.map +1 -1
- package/resources/webhooks.d.ts +75 -75
- package/resources/webhooks.d.ts.map +1 -1
- package/resources/webhooks.js +77 -77
- package/resources/webhooks.js.map +1 -1
- package/resources/webhooks.mjs +77 -77
- package/resources/webhooks.mjs.map +1 -1
- package/resources.d.mts.map +1 -1
- package/resources.d.ts.map +1 -1
- package/resources.mjs.map +1 -1
- package/src/client.ts +25 -3
- package/src/internal/utils/log.ts +2 -0
- package/src/resources/changelogs/changelogs.ts +170 -170
- package/src/resources/changelogs/index.ts +1 -1
- package/src/resources/conversation-attributes.ts +181 -0
- package/src/resources/feedback/boards.ts +28 -28
- package/src/resources/feedback/comments.ts +464 -141
- package/src/resources/feedback/custom-fields.ts +44 -44
- package/src/resources/feedback/feedback.ts +23 -5
- package/src/resources/feedback/index.ts +14 -5
- package/src/resources/feedback/post-statuses.ts +31 -31
- package/src/resources/feedback/posts/index.ts +7 -1
- package/src/resources/feedback/posts/posts.ts +294 -340
- package/src/resources/help-center/articles.ts +123 -186
- package/src/resources/help-center/collections.ts +84 -84
- package/src/resources/help-center/help-center.ts +7 -5
- package/src/resources/help-center/help-centers.ts +55 -55
- package/src/resources/help-center/index.ts +6 -5
- package/src/resources/help-center/redirect-rules.ts +174 -174
- package/src/resources/index.ts +11 -3
- package/src/resources/organization/admins.ts +33 -33
- package/src/resources/organization/brands.ts +66 -66
- package/src/resources/organization/index.ts +3 -3
- package/src/resources/organization/organization.ts +3 -3
- package/src/resources/organization/teams.ts +52 -52
- package/src/resources/support/conversation-tags.ts +59 -59
- package/src/resources/support/conversations/conversations.ts +748 -867
- package/src/resources/support/conversations/index.ts +11 -6
- package/src/resources/support/index.ts +14 -9
- package/src/resources/support/support.ts +21 -11
- package/src/resources/support/tickets/categories.ts +33 -33
- package/src/resources/support/tickets/custom-fields.ts +27 -27
- package/src/resources/support/tickets/index.ts +4 -4
- package/src/resources/support/tickets/statuses.ts +29 -29
- package/src/resources/support/tickets/tickets.ts +95 -95
- package/src/resources/surveys.ts +58 -58
- package/src/resources/users/companies/companies.ts +193 -223
- package/src/resources/users/companies/index.ts +2 -2
- package/src/resources/users/contacts/contacts.ts +275 -302
- package/src/resources/users/contacts/index.ts +3 -3
- package/src/resources/users/index.ts +5 -5
- package/src/resources/users/users.ts +5 -5
- package/src/resources/webhooks.ts +95 -95
- package/src/version.ts +1 -1
- package/uploads.d.mts +1 -0
- package/uploads.d.mts.map +1 -1
- package/uploads.d.ts +1 -0
- package/uploads.d.ts.map +1 -1
- package/uploads.mjs +1 -0
- package/uploads.mjs.map +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { APIResource } from "../../../core/resource.mjs";
|
|
2
2
|
import * as ConversationsAPI from "./conversations.mjs";
|
|
3
|
+
import * as ConversationAttributesAPI from "../../conversation-attributes.mjs";
|
|
3
4
|
import * as ConversationTagsAPI from "../conversation-tags.mjs";
|
|
5
|
+
import * as PostsAPI from "../../feedback/posts/posts.mjs";
|
|
4
6
|
import * as ParticipantsAPI from "./participants.mjs";
|
|
5
7
|
import { ParticipantAddParams, ParticipantRemoveParams, Participants } from "./participants.mjs";
|
|
6
8
|
import { APIPromise } from "../../../core/api-promise.mjs";
|
|
@@ -11,6 +13,77 @@ import { RequestOptions } from "../../../internal/request-options.mjs";
|
|
|
11
13
|
*/
|
|
12
14
|
export declare class Conversations extends APIResource {
|
|
13
15
|
participants: ParticipantsAPI.Participants;
|
|
16
|
+
/**
|
|
17
|
+
* Returns a list of conversations in your organization using cursor-based
|
|
18
|
+
* pagination.
|
|
19
|
+
*
|
|
20
|
+
* ### Query Parameters
|
|
21
|
+
*
|
|
22
|
+
* - `limit` - Number of conversations to return (1-100, default 10)
|
|
23
|
+
* - `cursor` - Cursor from previous response for pagination
|
|
24
|
+
* - `tagIds` - Optional tag filter as a comma-separated list of tag IDs. Matches
|
|
25
|
+
* conversations that contain all of the provided tags.
|
|
26
|
+
*
|
|
27
|
+
* ### Response Format
|
|
28
|
+
*
|
|
29
|
+
* Returns a list object with:
|
|
30
|
+
*
|
|
31
|
+
* - `object` - Always "list"
|
|
32
|
+
* - `data` - Array of conversation objects
|
|
33
|
+
* - `nextCursor` - Cursor for the next page, or null if no more results
|
|
34
|
+
*
|
|
35
|
+
* ### Conversation Object
|
|
36
|
+
*
|
|
37
|
+
* Each conversation includes:
|
|
38
|
+
*
|
|
39
|
+
* - `id` - Unique conversation identifier (short ID)
|
|
40
|
+
* - `title` - Conversation title
|
|
41
|
+
* - `state` - Current state ("open", "closed", or "snoozed")
|
|
42
|
+
* - `priority` - Whether the conversation is marked as priority
|
|
43
|
+
* - `adminAssigneeId` - ID of assigned admin (if any)
|
|
44
|
+
* - `teamAssigneeId` - ID of assigned team (if any)
|
|
45
|
+
* - `tags` - Current tags applied anywhere in the conversation
|
|
46
|
+
* - `participants` - Array of participants
|
|
47
|
+
* - `source` - Information about the first message
|
|
48
|
+
* - `createdAt` - Creation timestamp
|
|
49
|
+
* - `updatedAt` - Last update timestamp
|
|
50
|
+
*
|
|
51
|
+
* ### Example
|
|
52
|
+
*
|
|
53
|
+
* ```json
|
|
54
|
+
* {
|
|
55
|
+
* "object": "list",
|
|
56
|
+
* "data": [
|
|
57
|
+
* {
|
|
58
|
+
* "object": "conversation",
|
|
59
|
+
* "id": "12345",
|
|
60
|
+
* "title": "Question about pricing",
|
|
61
|
+
* "state": "open",
|
|
62
|
+
* "priority": false,
|
|
63
|
+
* "adminAssigneeId": null,
|
|
64
|
+
* "participants": [
|
|
65
|
+
* { "type": "customer", "id": "676f0f6765bdaa7d7d760f88" }
|
|
66
|
+
* ],
|
|
67
|
+
* ...
|
|
68
|
+
* }
|
|
69
|
+
* ],
|
|
70
|
+
* "nextCursor": "eyJpZCI6IjEyMzQ1In0="
|
|
71
|
+
* }
|
|
72
|
+
* ```
|
|
73
|
+
*
|
|
74
|
+
* ### Version Availability
|
|
75
|
+
*
|
|
76
|
+
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* ```ts
|
|
80
|
+
* // Automatically fetches more pages as needed.
|
|
81
|
+
* for await (const conversation of client.support.conversations.list()) {
|
|
82
|
+
* // ...
|
|
83
|
+
* }
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
list(params?: ConversationListParams | null | undefined, options?: RequestOptions): PagePromise<ConversationsCursorPage, Conversation>;
|
|
14
87
|
/**
|
|
15
88
|
* Creates a new conversation. Supports both contact-initiated (customer/lead) and
|
|
16
89
|
* admin-initiated (outreach) conversations.
|
|
@@ -250,6 +323,41 @@ export declare class Conversations extends APIResource {
|
|
|
250
323
|
* ```
|
|
251
324
|
*/
|
|
252
325
|
retrieve(id: string, params?: ConversationRetrieveParams | null | undefined, options?: RequestOptions): APIPromise<Conversation>;
|
|
326
|
+
/**
|
|
327
|
+
* Permanently deletes a conversation by its short ID.
|
|
328
|
+
*
|
|
329
|
+
* ### Path Parameters
|
|
330
|
+
*
|
|
331
|
+
* - `id` - The conversation short ID (numeric)
|
|
332
|
+
*
|
|
333
|
+
* ### Response
|
|
334
|
+
*
|
|
335
|
+
* Returns a deletion confirmation object:
|
|
336
|
+
*
|
|
337
|
+
* ```json
|
|
338
|
+
* {
|
|
339
|
+
* "id": "12345",
|
|
340
|
+
* "object": "conversation",
|
|
341
|
+
* "deleted": true
|
|
342
|
+
* }
|
|
343
|
+
* ```
|
|
344
|
+
*
|
|
345
|
+
* ### Caution
|
|
346
|
+
*
|
|
347
|
+
* This operation is **irreversible**. The conversation and all its messages will
|
|
348
|
+
* be permanently deleted.
|
|
349
|
+
*
|
|
350
|
+
* ### Version Availability
|
|
351
|
+
*
|
|
352
|
+
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
353
|
+
*
|
|
354
|
+
* @example
|
|
355
|
+
* ```ts
|
|
356
|
+
* const conversation =
|
|
357
|
+
* await client.support.conversations.delete('12345');
|
|
358
|
+
* ```
|
|
359
|
+
*/
|
|
360
|
+
delete(id: string, params?: ConversationDeleteParams | null | undefined, options?: RequestOptions): APIPromise<ConversationDeleteResponse>;
|
|
253
361
|
/**
|
|
254
362
|
* Updates a conversation's properties. Supports partial updates - only provided
|
|
255
363
|
* fields will be updated.
|
|
@@ -270,7 +378,7 @@ export declare class Conversations extends APIResource {
|
|
|
270
378
|
* | `adminAssigneeId` | string/null | Admin ID to assign, or null to unassign |
|
|
271
379
|
* | `teamAssigneeId` | string/null | Team ID to assign, or null to unassign |
|
|
272
380
|
* | `title` | string | Conversation title |
|
|
273
|
-
* | `customAttributes` | object | Custom attributes to set on the conversation
|
|
381
|
+
* | `customAttributes` | object | Custom attributes to set on the conversation, keyed by conversation custom attribute ID |
|
|
274
382
|
* | `markAsRead` | object | Mark conversation as read for specific users |
|
|
275
383
|
*
|
|
276
384
|
* ### markAsRead Object
|
|
@@ -330,8 +438,8 @@ export declare class Conversations extends APIResource {
|
|
|
330
438
|
* {
|
|
331
439
|
* "title": "Billing Issue - Priority",
|
|
332
440
|
* "customAttributes": {
|
|
333
|
-
* "
|
|
334
|
-
* "
|
|
441
|
+
* "507f1f77bcf86cd799439011": 10,
|
|
442
|
+
* "507f1f77bcf86cd799439012": true
|
|
335
443
|
* }
|
|
336
444
|
* }
|
|
337
445
|
* ```
|
|
@@ -379,195 +487,97 @@ export declare class Conversations extends APIResource {
|
|
|
379
487
|
*/
|
|
380
488
|
update(id: string, params: ConversationUpdateParams, options?: RequestOptions): APIPromise<Conversation>;
|
|
381
489
|
/**
|
|
382
|
-
*
|
|
383
|
-
*
|
|
490
|
+
* Adds a reply to an existing conversation. Supports both contact (customer/lead)
|
|
491
|
+
* and admin replies.
|
|
384
492
|
*
|
|
385
|
-
* ###
|
|
493
|
+
* ### Path Parameters
|
|
386
494
|
*
|
|
387
|
-
* - `
|
|
388
|
-
* - `cursor` - Cursor from previous response for pagination
|
|
389
|
-
* - `tagIds` - Optional tag filter as a comma-separated list of tag IDs. Matches
|
|
390
|
-
* conversations that contain all of the provided tags.
|
|
495
|
+
* - `id` - The conversation ID (short ID)
|
|
391
496
|
*
|
|
392
|
-
* ###
|
|
497
|
+
* ### Request Body
|
|
393
498
|
*
|
|
394
|
-
*
|
|
499
|
+
* The request body varies based on who is sending the reply:
|
|
395
500
|
*
|
|
396
|
-
*
|
|
397
|
-
* - `data` - Array of conversation objects
|
|
398
|
-
* - `nextCursor` - Cursor for the next page, or null if no more results
|
|
501
|
+
* #### Contact Reply (customer/lead)
|
|
399
502
|
*
|
|
400
|
-
*
|
|
503
|
+
* | Field | Type | Required | Description |
|
|
504
|
+
* | ------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
505
|
+
* | `type` | string | Yes | Must be "contact" |
|
|
506
|
+
* | `userId` | string | No\* | External user ID from your system |
|
|
507
|
+
* | `id` | string | No\* | Featurebase contact ID (24-character ObjectId) |
|
|
508
|
+
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
509
|
+
* | `messageType` | string | Yes | Must be "reply" |
|
|
510
|
+
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
401
511
|
*
|
|
402
|
-
*
|
|
512
|
+
* \*At least one of `userId` or `id` is required.
|
|
403
513
|
*
|
|
404
|
-
*
|
|
405
|
-
* - `title` - Conversation title
|
|
406
|
-
* - `state` - Current state ("open", "closed", or "snoozed")
|
|
407
|
-
* - `priority` - Whether the conversation is marked as priority
|
|
408
|
-
* - `adminAssigneeId` - ID of assigned admin (if any)
|
|
409
|
-
* - `teamAssigneeId` - ID of assigned team (if any)
|
|
410
|
-
* - `tags` - Current tags applied anywhere in the conversation
|
|
411
|
-
* - `participants` - Array of participants
|
|
412
|
-
* - `source` - Information about the first message
|
|
413
|
-
* - `createdAt` - Creation timestamp
|
|
414
|
-
* - `updatedAt` - Last update timestamp
|
|
514
|
+
* #### Admin Reply
|
|
415
515
|
*
|
|
416
|
-
*
|
|
516
|
+
* | Field | Type | Required | Description |
|
|
517
|
+
* | ------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
518
|
+
* | `type` | string | Yes | Must be "admin" |
|
|
519
|
+
* | `id` | string | Yes | Featurebase admin ID (24-character ObjectId) |
|
|
520
|
+
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
521
|
+
* | `messageType` | string | Yes | "reply" for customer-visible reply, "note" for internal note |
|
|
522
|
+
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
417
523
|
*
|
|
418
|
-
*
|
|
419
|
-
* {
|
|
420
|
-
* "object": "list",
|
|
421
|
-
* "data": [
|
|
422
|
-
* {
|
|
423
|
-
* "object": "conversation",
|
|
424
|
-
* "id": "12345",
|
|
425
|
-
* "title": "Question about pricing",
|
|
426
|
-
* "state": "open",
|
|
427
|
-
* "priority": false,
|
|
428
|
-
* "adminAssigneeId": null,
|
|
429
|
-
* "participants": [
|
|
430
|
-
* { "type": "customer", "id": "676f0f6765bdaa7d7d760f88" }
|
|
431
|
-
* ],
|
|
432
|
-
* ...
|
|
433
|
-
* }
|
|
434
|
-
* ],
|
|
435
|
-
* "nextCursor": "eyJpZCI6IjEyMzQ1In0="
|
|
436
|
-
* }
|
|
437
|
-
* ```
|
|
524
|
+
* ### Response
|
|
438
525
|
*
|
|
439
|
-
*
|
|
526
|
+
* Returns the created conversation part object with a **201 Created** status. The
|
|
527
|
+
* response includes both `bodyHtml` (with signed image URLs) and `bodyMarkdown`
|
|
528
|
+
* fields.
|
|
440
529
|
*
|
|
441
|
-
*
|
|
530
|
+
* ### Example Contact Reply
|
|
442
531
|
*
|
|
443
|
-
*
|
|
444
|
-
*
|
|
445
|
-
*
|
|
446
|
-
*
|
|
447
|
-
*
|
|
532
|
+
* ```json
|
|
533
|
+
* {
|
|
534
|
+
* "type": "contact",
|
|
535
|
+
* "userId": "user_123",
|
|
536
|
+
* "bodyMarkdown": "Thank you for your help!",
|
|
537
|
+
* "messageType": "reply"
|
|
448
538
|
* }
|
|
449
539
|
* ```
|
|
450
|
-
*/
|
|
451
|
-
list(params?: ConversationListParams | null | undefined, options?: RequestOptions): PagePromise<ConversationsCursorPage, Conversation>;
|
|
452
|
-
/**
|
|
453
|
-
* Permanently deletes a conversation by its short ID.
|
|
454
|
-
*
|
|
455
|
-
* ### Path Parameters
|
|
456
|
-
*
|
|
457
|
-
* - `id` - The conversation short ID (numeric)
|
|
458
540
|
*
|
|
459
|
-
* ###
|
|
460
|
-
*
|
|
461
|
-
* Returns a deletion confirmation object:
|
|
541
|
+
* ### Example Admin Reply
|
|
462
542
|
*
|
|
463
543
|
* ```json
|
|
464
544
|
* {
|
|
465
|
-
* "
|
|
466
|
-
* "
|
|
467
|
-
* "
|
|
545
|
+
* "type": "admin",
|
|
546
|
+
* "id": "507f1f77bcf86cd799439011",
|
|
547
|
+
* "bodyMarkdown": "I'm happy to help! Here's what you need to do...",
|
|
548
|
+
* "messageType": "reply"
|
|
468
549
|
* }
|
|
469
550
|
* ```
|
|
470
551
|
*
|
|
471
|
-
* ###
|
|
472
|
-
*
|
|
473
|
-
* This operation is **irreversible**. The conversation and all its messages will
|
|
474
|
-
* be permanently deleted.
|
|
475
|
-
*
|
|
476
|
-
* ### Version Availability
|
|
477
|
-
*
|
|
478
|
-
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
479
|
-
*
|
|
480
|
-
* @example
|
|
481
|
-
* ```ts
|
|
482
|
-
* const conversation =
|
|
483
|
-
* await client.support.conversations.delete('12345');
|
|
484
|
-
* ```
|
|
485
|
-
*/
|
|
486
|
-
delete(id: string, params?: ConversationDeleteParams | null | undefined, options?: RequestOptions): APIPromise<ConversationDeleteResponse>;
|
|
487
|
-
/**
|
|
488
|
-
* Attaches a workspace tag to a conversation.
|
|
489
|
-
*
|
|
490
|
-
* This endpoint requires both the tag ID to attach and the `actingAdminId` of the
|
|
491
|
-
* admin on whose behalf the mutation is recorded.
|
|
492
|
-
*
|
|
493
|
-
* ### Path Parameters
|
|
494
|
-
*
|
|
495
|
-
* - `id` - The conversation ID (short ID)
|
|
496
|
-
*
|
|
497
|
-
* ### Request Body
|
|
498
|
-
*
|
|
499
|
-
* | Field | Type | Required | Description |
|
|
500
|
-
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
501
|
-
* | `tagId` | string | Yes | The Featurebase tag ID to attach |
|
|
502
|
-
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
503
|
-
*
|
|
504
|
-
* ### Behavior
|
|
505
|
-
*
|
|
506
|
-
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
507
|
-
* records the tag attachment against that part so audit metadata remains
|
|
508
|
-
* deterministic.
|
|
509
|
-
*
|
|
510
|
-
* ### Response
|
|
511
|
-
*
|
|
512
|
-
* Returns the affected tag plus attachment metadata such as `targetPartId`,
|
|
513
|
-
* `appliedAt`, and `appliedBy`.
|
|
514
|
-
*
|
|
515
|
-
* ### Example Request
|
|
552
|
+
* ### Example Admin Note (Internal)
|
|
516
553
|
*
|
|
517
554
|
* ```json
|
|
518
555
|
* {
|
|
519
|
-
* "
|
|
520
|
-
* "
|
|
556
|
+
* "type": "admin",
|
|
557
|
+
* "id": "507f1f77bcf86cd799439011",
|
|
558
|
+
* "bodyMarkdown": "Customer seems frustrated, escalating to tier 2.",
|
|
559
|
+
* "messageType": "note"
|
|
521
560
|
* }
|
|
522
561
|
* ```
|
|
523
562
|
*
|
|
524
|
-
* ###
|
|
525
|
-
*
|
|
526
|
-
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
527
|
-
*
|
|
528
|
-
* @example
|
|
529
|
-
* ```ts
|
|
530
|
-
* const response =
|
|
531
|
-
* await client.support.conversations.attachTag('12345', {
|
|
532
|
-
* actingAdminId: '507f1f77bcf86cd799439011',
|
|
533
|
-
* tagId: '67ec1234abcd5678ef901234',
|
|
534
|
-
* });
|
|
535
|
-
* ```
|
|
536
|
-
*/
|
|
537
|
-
attachTag(id: string, params: ConversationAttachTagParams, options?: RequestOptions): APIPromise<ConversationAttachTagResponse>;
|
|
538
|
-
/**
|
|
539
|
-
* Removes a workspace tag from a conversation.
|
|
540
|
-
*
|
|
541
|
-
* This endpoint requires the `actingAdminId` of the admin on whose behalf the
|
|
542
|
-
* mutation is recorded.
|
|
543
|
-
*
|
|
544
|
-
* ### Path Parameters
|
|
545
|
-
*
|
|
546
|
-
* - `id` - The conversation ID (short ID)
|
|
547
|
-
* - `tagId` - The Featurebase tag ID to remove
|
|
548
|
-
*
|
|
549
|
-
* ### Request Body
|
|
550
|
-
*
|
|
551
|
-
* | Field | Type | Required | Description |
|
|
552
|
-
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
553
|
-
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
554
|
-
*
|
|
555
|
-
* ### Behavior
|
|
556
|
-
*
|
|
557
|
-
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
558
|
-
* records the tag removal against that part so audit metadata remains
|
|
559
|
-
* deterministic.
|
|
560
|
-
*
|
|
561
|
-
* ### Response
|
|
562
|
-
*
|
|
563
|
-
* Returns the affected tag payload with the most relevant attachment metadata
|
|
564
|
-
* available for that relationship.
|
|
565
|
-
*
|
|
566
|
-
* ### Example Request
|
|
563
|
+
* ### Example Response
|
|
567
564
|
*
|
|
568
565
|
* ```json
|
|
569
566
|
* {
|
|
570
|
-
* "
|
|
567
|
+
* "object": "conversation_part",
|
|
568
|
+
* "id": "3",
|
|
569
|
+
* "partType": "user_msg",
|
|
570
|
+
* "bodyHtml": "<p>Thank you for your help!</p>",
|
|
571
|
+
* "bodyMarkdown": "Thank you for your help!",
|
|
572
|
+
* "author": {
|
|
573
|
+
* "type": "customer",
|
|
574
|
+
* "id": "676f0f6765bdaa7d7d760f88",
|
|
575
|
+
* "name": "John Doe",
|
|
576
|
+
* "email": "john@example.com"
|
|
577
|
+
* },
|
|
578
|
+
* "channel": "desktop",
|
|
579
|
+
* "createdAt": "2025-01-15T10:40:00.000Z",
|
|
580
|
+
* "updatedAt": "2025-01-15T10:40:00.000Z"
|
|
571
581
|
* }
|
|
572
582
|
* ```
|
|
573
583
|
*
|
|
@@ -577,17 +587,15 @@ export declare class Conversations extends APIResource {
|
|
|
577
587
|
*
|
|
578
588
|
* @example
|
|
579
589
|
* ```ts
|
|
580
|
-
* const
|
|
581
|
-
* await client.support.conversations.
|
|
582
|
-
* '
|
|
583
|
-
*
|
|
584
|
-
*
|
|
585
|
-
*
|
|
586
|
-
* },
|
|
587
|
-
* );
|
|
590
|
+
* const conversationPart =
|
|
591
|
+
* await client.support.conversations.reply('12345', {
|
|
592
|
+
* bodyMarkdown: 'Thank you for your help!',
|
|
593
|
+
* messageType: 'reply',
|
|
594
|
+
* type: 'contact',
|
|
595
|
+
* });
|
|
588
596
|
* ```
|
|
589
597
|
*/
|
|
590
|
-
|
|
598
|
+
reply(id: string, params: ConversationReplyParams, options?: RequestOptions): APIPromise<ConversationPart>;
|
|
591
599
|
/**
|
|
592
600
|
* Redacts a conversation part (message) from a conversation. Redaction permanently
|
|
593
601
|
* removes the message content while preserving the conversation structure.
|
|
@@ -668,8 +676,10 @@ export declare class Conversations extends APIResource {
|
|
|
668
676
|
*/
|
|
669
677
|
redact(params: ConversationRedactParams, options?: RequestOptions): APIPromise<Conversation>;
|
|
670
678
|
/**
|
|
671
|
-
*
|
|
672
|
-
*
|
|
679
|
+
* Attaches a workspace tag to a conversation.
|
|
680
|
+
*
|
|
681
|
+
* This endpoint requires both the tag ID to attach and the `actingAdminId` of the
|
|
682
|
+
* admin on whose behalf the mutation is recorded.
|
|
673
683
|
*
|
|
674
684
|
* ### Path Parameters
|
|
675
685
|
*
|
|
@@ -677,88 +687,78 @@ export declare class Conversations extends APIResource {
|
|
|
677
687
|
*
|
|
678
688
|
* ### Request Body
|
|
679
689
|
*
|
|
680
|
-
*
|
|
681
|
-
*
|
|
682
|
-
*
|
|
683
|
-
*
|
|
684
|
-
* | Field | Type | Required | Description |
|
|
685
|
-
* | ------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
686
|
-
* | `type` | string | Yes | Must be "contact" |
|
|
687
|
-
* | `userId` | string | No\* | External user ID from your system |
|
|
688
|
-
* | `id` | string | No\* | Featurebase contact ID (24-character ObjectId) |
|
|
689
|
-
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
690
|
-
* | `messageType` | string | Yes | Must be "reply" |
|
|
691
|
-
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
692
|
-
*
|
|
693
|
-
* \*At least one of `userId` or `id` is required.
|
|
690
|
+
* | Field | Type | Required | Description |
|
|
691
|
+
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
692
|
+
* | `tagId` | string | Yes | The Featurebase tag ID to attach |
|
|
693
|
+
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
694
694
|
*
|
|
695
|
-
*
|
|
695
|
+
* ### Behavior
|
|
696
696
|
*
|
|
697
|
-
*
|
|
698
|
-
*
|
|
699
|
-
*
|
|
700
|
-
* | `id` | string | Yes | Featurebase admin ID (24-character ObjectId) |
|
|
701
|
-
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
702
|
-
* | `messageType` | string | Yes | "reply" for customer-visible reply, "note" for internal note |
|
|
703
|
-
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
697
|
+
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
698
|
+
* records the tag attachment against that part so audit metadata remains
|
|
699
|
+
* deterministic.
|
|
704
700
|
*
|
|
705
701
|
* ### Response
|
|
706
702
|
*
|
|
707
|
-
* Returns the
|
|
708
|
-
*
|
|
709
|
-
* fields.
|
|
703
|
+
* Returns the affected tag plus attachment metadata such as `targetPartId`,
|
|
704
|
+
* `appliedAt`, and `appliedBy`.
|
|
710
705
|
*
|
|
711
|
-
* ### Example
|
|
706
|
+
* ### Example Request
|
|
712
707
|
*
|
|
713
708
|
* ```json
|
|
714
709
|
* {
|
|
715
|
-
* "
|
|
716
|
-
* "
|
|
717
|
-
* "bodyMarkdown": "Thank you for your help!",
|
|
718
|
-
* "messageType": "reply"
|
|
710
|
+
* "tagId": "67ec1234abcd5678ef901234",
|
|
711
|
+
* "actingAdminId": "507f1f77bcf86cd799439011"
|
|
719
712
|
* }
|
|
720
713
|
* ```
|
|
721
714
|
*
|
|
722
|
-
* ###
|
|
715
|
+
* ### Version Availability
|
|
723
716
|
*
|
|
724
|
-
*
|
|
725
|
-
*
|
|
726
|
-
*
|
|
727
|
-
*
|
|
728
|
-
*
|
|
729
|
-
*
|
|
730
|
-
*
|
|
717
|
+
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
718
|
+
*
|
|
719
|
+
* @example
|
|
720
|
+
* ```ts
|
|
721
|
+
* const attachedConversationTag =
|
|
722
|
+
* await client.support.conversations.attachTag('12345', {
|
|
723
|
+
* actingAdminId: '507f1f77bcf86cd799439011',
|
|
724
|
+
* tagId: '67ec1234abcd5678ef901234',
|
|
725
|
+
* });
|
|
731
726
|
* ```
|
|
727
|
+
*/
|
|
728
|
+
attachTag(id: string, params: ConversationAttachTagParams, options?: RequestOptions): APIPromise<AttachedConversationTag>;
|
|
729
|
+
/**
|
|
730
|
+
* Removes a workspace tag from a conversation.
|
|
732
731
|
*
|
|
733
|
-
*
|
|
732
|
+
* This endpoint requires the `actingAdminId` of the admin on whose behalf the
|
|
733
|
+
* mutation is recorded.
|
|
734
734
|
*
|
|
735
|
-
*
|
|
736
|
-
*
|
|
737
|
-
*
|
|
738
|
-
*
|
|
739
|
-
*
|
|
740
|
-
*
|
|
741
|
-
*
|
|
742
|
-
*
|
|
735
|
+
* ### Path Parameters
|
|
736
|
+
*
|
|
737
|
+
* - `id` - The conversation ID (short ID)
|
|
738
|
+
* - `tagId` - The Featurebase tag ID to remove
|
|
739
|
+
*
|
|
740
|
+
* ### Request Body
|
|
741
|
+
*
|
|
742
|
+
* | Field | Type | Required | Description |
|
|
743
|
+
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
744
|
+
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
745
|
+
*
|
|
746
|
+
* ### Behavior
|
|
747
|
+
*
|
|
748
|
+
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
749
|
+
* records the tag removal against that part so audit metadata remains
|
|
750
|
+
* deterministic.
|
|
751
|
+
*
|
|
752
|
+
* ### Response
|
|
753
|
+
*
|
|
754
|
+
* Returns the affected tag payload with the most relevant attachment metadata
|
|
755
|
+
* available for that relationship.
|
|
743
756
|
*
|
|
744
|
-
* ### Example
|
|
757
|
+
* ### Example Request
|
|
745
758
|
*
|
|
746
759
|
* ```json
|
|
747
760
|
* {
|
|
748
|
-
* "
|
|
749
|
-
* "id": "3",
|
|
750
|
-
* "partType": "user_msg",
|
|
751
|
-
* "bodyHtml": "<p>Thank you for your help!</p>",
|
|
752
|
-
* "bodyMarkdown": "Thank you for your help!",
|
|
753
|
-
* "author": {
|
|
754
|
-
* "type": "customer",
|
|
755
|
-
* "id": "676f0f6765bdaa7d7d760f88",
|
|
756
|
-
* "name": "John Doe",
|
|
757
|
-
* "email": "john@example.com"
|
|
758
|
-
* },
|
|
759
|
-
* "channel": "desktop",
|
|
760
|
-
* "createdAt": "2025-01-15T10:40:00.000Z",
|
|
761
|
-
* "updatedAt": "2025-01-15T10:40:00.000Z"
|
|
761
|
+
* "actingAdminId": "507f1f77bcf86cd799439011"
|
|
762
762
|
* }
|
|
763
763
|
* ```
|
|
764
764
|
*
|
|
@@ -768,15 +768,17 @@ export declare class Conversations extends APIResource {
|
|
|
768
768
|
*
|
|
769
769
|
* @example
|
|
770
770
|
* ```ts
|
|
771
|
-
* const
|
|
772
|
-
* await client.support.conversations.
|
|
773
|
-
*
|
|
774
|
-
*
|
|
775
|
-
*
|
|
776
|
-
*
|
|
771
|
+
* const attachedConversationTag =
|
|
772
|
+
* await client.support.conversations.detachTag(
|
|
773
|
+
* '67ec1234abcd5678ef901234',
|
|
774
|
+
* {
|
|
775
|
+
* id: '12345',
|
|
776
|
+
* actingAdminId: '507f1f77bcf86cd799439011',
|
|
777
|
+
* },
|
|
778
|
+
* );
|
|
777
779
|
* ```
|
|
778
780
|
*/
|
|
779
|
-
|
|
781
|
+
detachTag(tagID: string, params: ConversationDetachTagParams, options?: RequestOptions): APIPromise<AttachedConversationTag>;
|
|
780
782
|
/**
|
|
781
783
|
* Search conversations with a structured filter AST and an optional full-text
|
|
782
784
|
* query.
|
|
@@ -785,7 +787,7 @@ export declare class Conversations extends APIResource {
|
|
|
785
787
|
*
|
|
786
788
|
* - **Filter mode** (`query` set, `search` omitted): structured filtering against
|
|
787
789
|
* indexed conversation fields. Sorted by `lastActivityAt` desc by default; set
|
|
788
|
-
* `sort` to `
|
|
790
|
+
* `sort` to `lastActivityAt:asc` for the inverse.
|
|
789
791
|
* - **Search mode** (`search` set, `query` optional): full-text search across
|
|
790
792
|
* conversation messages, then narrowed by the same `query` AST so the same
|
|
791
793
|
* filters apply. Results are ranked by relevance by default; set `sort` to order
|
|
@@ -804,7 +806,7 @@ export declare class Conversations extends APIResource {
|
|
|
804
806
|
* "value": [
|
|
805
807
|
* { "field": "state", "operator": "=", "value": "open" },
|
|
806
808
|
* {
|
|
807
|
-
* "field": "
|
|
809
|
+
* "field": "adminAssigneeId",
|
|
808
810
|
* "operator": "=",
|
|
809
811
|
* "value": "507f1f77bcf86cd799439011"
|
|
810
812
|
* }
|
|
@@ -817,18 +819,24 @@ export declare class Conversations extends APIResource {
|
|
|
817
819
|
*
|
|
818
820
|
* ### Supported fields and operators
|
|
819
821
|
*
|
|
820
|
-
*
|
|
821
|
-
*
|
|
822
|
-
*
|
|
823
|
-
*
|
|
824
|
-
*
|
|
825
|
-
*
|
|
826
|
-
* |
|
|
827
|
-
* |
|
|
828
|
-
* | `
|
|
829
|
-
* | `
|
|
830
|
-
* | `
|
|
831
|
-
* | `
|
|
822
|
+
* Field names are camelCase, matching the rest of the v2 public API. Snake_case
|
|
823
|
+
* names that this endpoint originally shipped with (`admin_assignee_id`,
|
|
824
|
+
* `team_assignee_id`, `brand_id`, `tag_ids`, `mentioned_admin_ids`, `user_id`,
|
|
825
|
+
* `participant_id`, `company_id`, `created_at`) are still accepted for back-compat
|
|
826
|
+
* but are deprecated — please migrate to camelCase in new code.
|
|
827
|
+
*
|
|
828
|
+
* | Field | Type | Operators |
|
|
829
|
+
* | -------------------------- | --------------------------------------------------------------------------- | ---------------------- |
|
|
830
|
+
* | `state` | enum (`open` / `closed` / `snoozed`) | `=`, `!=`, `IN`, `NIN` |
|
|
831
|
+
* | `priority` | boolean | `=`, `!=` |
|
|
832
|
+
* | `adminAssigneeId` | id or null (unassigned) | `=`, `!=`, `IN`, `NIN` |
|
|
833
|
+
* | `teamAssigneeId` | id or null (unassigned) | `=`, `!=`, `IN`, `NIN` |
|
|
834
|
+
* | `brandId` | id or null | `=`, `!=`, `IN`, `NIN` |
|
|
835
|
+
* | `tagIds` | id (matches any conversation containing this tag) | `=`, `!=`, `IN`, `NIN` |
|
|
836
|
+
* | `userId` / `participantId` | id of a conversation participant | `=`, `!=`, `IN`, `NIN` |
|
|
837
|
+
* | `companyId` | company id (matches conversations whose participants belong to the company) | `=`, `!=`, `IN`, `NIN` |
|
|
838
|
+
* | `mentionedAdminIds` | admin id | `=`, `!=`, `IN`, `NIN` |
|
|
839
|
+
* | `createdAt` | unix seconds | `=`, `>`, `<` |
|
|
832
840
|
*
|
|
833
841
|
* For unbounded fields a query consisting only of `!=` or `NIN` clauses is
|
|
834
842
|
* rejected with `query_too_broad` to prevent full-org scans. Combine the negation
|
|
@@ -879,6 +887,41 @@ export declare class Conversations extends APIResource {
|
|
|
879
887
|
search(params: ConversationSearchParams, options?: RequestOptions): APIPromise<ConversationSearchResponse>;
|
|
880
888
|
}
|
|
881
889
|
export type ConversationsCursorPage = CursorPage<Conversation>;
|
|
890
|
+
export interface AttachedConversationTag {
|
|
891
|
+
/**
|
|
892
|
+
* Unique tag identifier
|
|
893
|
+
*/
|
|
894
|
+
id: string;
|
|
895
|
+
/**
|
|
896
|
+
* Current tag name
|
|
897
|
+
*/
|
|
898
|
+
name: string;
|
|
899
|
+
/**
|
|
900
|
+
* Object type identifier for a tag
|
|
901
|
+
*/
|
|
902
|
+
type: 'tag';
|
|
903
|
+
/**
|
|
904
|
+
* ISO timestamp when the tag was applied
|
|
905
|
+
*/
|
|
906
|
+
appliedAt?: string | null;
|
|
907
|
+
/**
|
|
908
|
+
* Actor that applied the tag
|
|
909
|
+
*/
|
|
910
|
+
appliedBy?: ConversationTagMutationActor | null;
|
|
911
|
+
/**
|
|
912
|
+
* ISO timestamp when the tag was removed, if applicable
|
|
913
|
+
*/
|
|
914
|
+
removedAt?: string | null;
|
|
915
|
+
/**
|
|
916
|
+
* Actor that applied the tag
|
|
917
|
+
*/
|
|
918
|
+
removedBy?: ConversationTagMutationActor | null;
|
|
919
|
+
/**
|
|
920
|
+
* Reply/message ID used as the deterministic attachment target for this
|
|
921
|
+
* conversation tag mutation.
|
|
922
|
+
*/
|
|
923
|
+
targetPartId?: string | null;
|
|
924
|
+
}
|
|
882
925
|
export interface Conversation {
|
|
883
926
|
/**
|
|
884
927
|
* Unique conversation identifier
|
|
@@ -983,6 +1026,19 @@ export interface Conversation {
|
|
|
983
1026
|
* exists.
|
|
984
1027
|
*/
|
|
985
1028
|
csatSummary?: Conversation.CsatSummary;
|
|
1029
|
+
/**
|
|
1030
|
+
* Custom conversation attributes keyed by custom attribute ID. Only org-defined,
|
|
1031
|
+
* non-archived conversation attributes are returned; internal workflow metadata is
|
|
1032
|
+
* omitted.
|
|
1033
|
+
*/
|
|
1034
|
+
customAttributes?: {
|
|
1035
|
+
[key: string]: unknown;
|
|
1036
|
+
};
|
|
1037
|
+
/**
|
|
1038
|
+
* Custom conversation attribute values expanded with definition metadata. Returned
|
|
1039
|
+
* only when `include=customAttributeDefinitions` is provided.
|
|
1040
|
+
*/
|
|
1041
|
+
customAttributeValues?: Array<ConversationAttributeValue>;
|
|
986
1042
|
/**
|
|
987
1043
|
* Whether customer replies are disabled
|
|
988
1044
|
*/
|
|
@@ -996,7 +1052,7 @@ export interface Conversation {
|
|
|
996
1052
|
* infer content access.
|
|
997
1053
|
*/
|
|
998
1054
|
readReceipts?: Array<Conversation.ReadReceipt>;
|
|
999
|
-
source?:
|
|
1055
|
+
source?: MessageSource;
|
|
1000
1056
|
/**
|
|
1001
1057
|
* Conversation title
|
|
1002
1058
|
*/
|
|
@@ -1024,12 +1080,14 @@ export declare namespace Conversation {
|
|
|
1024
1080
|
* ISO timestamp when first-time submissions stop being accepted
|
|
1025
1081
|
*/
|
|
1026
1082
|
lateSubmitWindowEndsAt?: string;
|
|
1083
|
+
slackDelivery?: ConversationsAPI.CsatSlackDelivery;
|
|
1027
1084
|
}
|
|
1028
1085
|
interface CsatHistory {
|
|
1029
1086
|
/**
|
|
1030
|
-
* Channel used for the CSAT request
|
|
1087
|
+
* Channel used for the CSAT request. `desktop` = web messenger, `email` =
|
|
1088
|
+
* follow-up email, `slack` = Block Kit prompt in the conversation thread.
|
|
1031
1089
|
*/
|
|
1032
|
-
channel: 'desktop' | 'email';
|
|
1090
|
+
channel: 'desktop' | 'email' | 'slack';
|
|
1033
1091
|
/**
|
|
1034
1092
|
* Whether this row represents the currently effective CSAT request for the
|
|
1035
1093
|
* conversation
|
|
@@ -1085,6 +1143,7 @@ export declare namespace Conversation {
|
|
|
1085
1143
|
* Submitted score when this request was rated
|
|
1086
1144
|
*/
|
|
1087
1145
|
score?: number;
|
|
1146
|
+
slackDelivery?: ConversationsAPI.CsatSlackDelivery;
|
|
1088
1147
|
workflow?: ConversationsAPI.CsatWorkflowLink;
|
|
1089
1148
|
}
|
|
1090
1149
|
/**
|
|
@@ -1107,7 +1166,7 @@ export declare namespace Conversation {
|
|
|
1107
1166
|
/**
|
|
1108
1167
|
* Channel used for the latest CSAT request when known
|
|
1109
1168
|
*/
|
|
1110
|
-
channel?: 'desktop' | 'email';
|
|
1169
|
+
channel?: 'desktop' | 'email' | 'slack';
|
|
1111
1170
|
/**
|
|
1112
1171
|
* ISO timestamp when the request expired
|
|
1113
1172
|
*/
|
|
@@ -1156,33 +1215,36 @@ export declare namespace Conversation {
|
|
|
1156
1215
|
*/
|
|
1157
1216
|
userType: 'admin' | 'customer' | 'lead';
|
|
1158
1217
|
}
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1218
|
+
}
|
|
1219
|
+
export interface ConversationAttributeValue {
|
|
1220
|
+
/**
|
|
1221
|
+
* Stable machine identifier used as the key in conversation.customAttributes.
|
|
1222
|
+
*/
|
|
1223
|
+
id: string;
|
|
1224
|
+
/**
|
|
1225
|
+
* Storage-level data type used for validation and search.
|
|
1226
|
+
*/
|
|
1227
|
+
dataType: 'string' | 'number' | 'boolean' | 'date' | 'array' | 'object';
|
|
1228
|
+
/**
|
|
1229
|
+
* Conversation field subtype that controls the expected value shape.
|
|
1230
|
+
*/
|
|
1231
|
+
fieldSubType: 'text' | 'number' | 'select' | 'multi-select' | 'checkbox' | 'date';
|
|
1232
|
+
/**
|
|
1233
|
+
* Stable internal identifier for the attribute definition.
|
|
1234
|
+
*/
|
|
1235
|
+
identifier: string;
|
|
1236
|
+
/**
|
|
1237
|
+
* Human-readable attribute name shown in Featurebase.
|
|
1238
|
+
*/
|
|
1239
|
+
name: string;
|
|
1240
|
+
/**
|
|
1241
|
+
* Allowed values for select and multi-select attributes.
|
|
1242
|
+
*/
|
|
1243
|
+
options?: Array<ConversationAttributesAPI.ConversationAttributeOption>;
|
|
1244
|
+
/**
|
|
1245
|
+
* The conversation-specific custom attribute value.
|
|
1246
|
+
*/
|
|
1247
|
+
value?: unknown;
|
|
1186
1248
|
}
|
|
1187
1249
|
/**
|
|
1188
1250
|
* Message from a customer or lead
|
|
@@ -1208,7 +1270,7 @@ export declare namespace ConversationPart {
|
|
|
1208
1270
|
/**
|
|
1209
1271
|
* Channel through which the message was sent
|
|
1210
1272
|
*/
|
|
1211
|
-
channel: 'unknown' | 'desktop' | 'android' | 'ios' | 'email';
|
|
1273
|
+
channel: 'unknown' | 'desktop' | 'android' | 'ios' | 'email' | 'slack';
|
|
1212
1274
|
/**
|
|
1213
1275
|
* ISO timestamp when the part was created
|
|
1214
1276
|
*/
|
|
@@ -1230,6 +1292,11 @@ export declare namespace ConversationPart {
|
|
|
1230
1292
|
* Whether this message has been redacted
|
|
1231
1293
|
*/
|
|
1232
1294
|
redacted?: boolean;
|
|
1295
|
+
/**
|
|
1296
|
+
* Safe Slack message identifiers. Only present for Slack-backed messages while the
|
|
1297
|
+
* organization has Slack integration enabled.
|
|
1298
|
+
*/
|
|
1299
|
+
slack?: ConversationsAPI.SlackMessageDetails;
|
|
1233
1300
|
/**
|
|
1234
1301
|
* Reply-level tag applications and provenance for this conversation part
|
|
1235
1302
|
*/
|
|
@@ -1254,7 +1321,7 @@ export declare namespace ConversationPart {
|
|
|
1254
1321
|
/**
|
|
1255
1322
|
* Channel through which the message was sent
|
|
1256
1323
|
*/
|
|
1257
|
-
channel: 'unknown' | 'desktop' | 'android' | 'ios' | 'email';
|
|
1324
|
+
channel: 'unknown' | 'desktop' | 'android' | 'ios' | 'email' | 'slack';
|
|
1258
1325
|
/**
|
|
1259
1326
|
* ISO timestamp when the part was created
|
|
1260
1327
|
*/
|
|
@@ -1276,6 +1343,11 @@ export declare namespace ConversationPart {
|
|
|
1276
1343
|
* Whether this message has been redacted
|
|
1277
1344
|
*/
|
|
1278
1345
|
redacted?: boolean;
|
|
1346
|
+
/**
|
|
1347
|
+
* Safe Slack message identifiers. Only present for Slack-backed messages while the
|
|
1348
|
+
* organization has Slack integration enabled.
|
|
1349
|
+
*/
|
|
1350
|
+
slack?: ConversationsAPI.SlackMessageDetails;
|
|
1279
1351
|
/**
|
|
1280
1352
|
* Reply-level tag applications and provenance for this conversation part
|
|
1281
1353
|
*/
|
|
@@ -1405,11 +1477,16 @@ export declare namespace ConversationPart {
|
|
|
1405
1477
|
/**
|
|
1406
1478
|
* Channel through which the message was sent
|
|
1407
1479
|
*/
|
|
1408
|
-
channel?: 'unknown' | 'desktop' | 'android' | 'ios' | 'email';
|
|
1480
|
+
channel?: 'unknown' | 'desktop' | 'android' | 'ios' | 'email' | 'slack';
|
|
1409
1481
|
/**
|
|
1410
1482
|
* Whether this message has been redacted
|
|
1411
1483
|
*/
|
|
1412
1484
|
redacted?: boolean;
|
|
1485
|
+
/**
|
|
1486
|
+
* Safe Slack message identifiers. Only present for Slack-backed messages while the
|
|
1487
|
+
* organization has Slack integration enabled.
|
|
1488
|
+
*/
|
|
1489
|
+
slack?: ConversationsAPI.SlackMessageDetails;
|
|
1413
1490
|
/**
|
|
1414
1491
|
* Reply-level tag applications and provenance for this conversation part
|
|
1415
1492
|
*/
|
|
@@ -1546,9 +1623,10 @@ export declare namespace ConversationPart {
|
|
|
1546
1623
|
*/
|
|
1547
1624
|
interface Csat {
|
|
1548
1625
|
/**
|
|
1549
|
-
* Channel used for the CSAT request
|
|
1626
|
+
* Channel used for the CSAT request. `desktop` = web messenger, `email` =
|
|
1627
|
+
* follow-up email, `slack` = Block Kit prompt in the conversation thread.
|
|
1550
1628
|
*/
|
|
1551
|
-
channel: 'desktop' | 'email';
|
|
1629
|
+
channel: 'desktop' | 'email' | 'slack';
|
|
1552
1630
|
/**
|
|
1553
1631
|
* ISO timestamp when the request was created
|
|
1554
1632
|
*/
|
|
@@ -1616,9 +1694,10 @@ export declare namespace ConversationPart {
|
|
|
1616
1694
|
*/
|
|
1617
1695
|
interface Csat {
|
|
1618
1696
|
/**
|
|
1619
|
-
* Channel used for the CSAT request
|
|
1697
|
+
* Channel used for the CSAT request. `desktop` = web messenger, `email` =
|
|
1698
|
+
* follow-up email, `slack` = Block Kit prompt in the conversation thread.
|
|
1620
1699
|
*/
|
|
1621
|
-
channel: 'desktop' | 'email';
|
|
1700
|
+
channel: 'desktop' | 'email' | 'slack';
|
|
1622
1701
|
/**
|
|
1623
1702
|
* ISO timestamp when the customer submitted the rating
|
|
1624
1703
|
*/
|
|
@@ -1854,7 +1933,7 @@ export declare namespace ConversationPart {
|
|
|
1854
1933
|
/**
|
|
1855
1934
|
* Actor that applied the tag
|
|
1856
1935
|
*/
|
|
1857
|
-
actor?:
|
|
1936
|
+
actor?: ConversationsAPI.ConversationTagMutationActor;
|
|
1858
1937
|
/**
|
|
1859
1938
|
* Tag name at the time of the event or the best available current display name
|
|
1860
1939
|
*/
|
|
@@ -1864,25 +1943,6 @@ export declare namespace ConversationPart {
|
|
|
1864
1943
|
*/
|
|
1865
1944
|
targetPartId?: string | null;
|
|
1866
1945
|
}
|
|
1867
|
-
namespace TagUpdate {
|
|
1868
|
-
/**
|
|
1869
|
-
* Actor that applied the tag
|
|
1870
|
-
*/
|
|
1871
|
-
interface Actor {
|
|
1872
|
-
/**
|
|
1873
|
-
* Actor that caused the tag mutation
|
|
1874
|
-
*/
|
|
1875
|
-
type: 'admin' | 'customer' | 'lead' | 'bot' | 'integration' | 'system' | 'workflow';
|
|
1876
|
-
/**
|
|
1877
|
-
* Actor identifier when available
|
|
1878
|
-
*/
|
|
1879
|
-
id?: string | null;
|
|
1880
|
-
/**
|
|
1881
|
-
* Actor display name when available
|
|
1882
|
-
*/
|
|
1883
|
-
name?: string | null;
|
|
1884
|
-
}
|
|
1885
|
-
}
|
|
1886
1946
|
/**
|
|
1887
1947
|
* Represents a workflow wait start, finish, or interruption in the conversation
|
|
1888
1948
|
* thread
|
|
@@ -2062,7 +2122,7 @@ export interface ConversationTagApplication {
|
|
|
2062
2122
|
/**
|
|
2063
2123
|
* Actor that applied the tag
|
|
2064
2124
|
*/
|
|
2065
|
-
appliedBy?:
|
|
2125
|
+
appliedBy?: ConversationTagMutationActor;
|
|
2066
2126
|
/**
|
|
2067
2127
|
* ISO timestamp when the tag was removed from this reply, if it was removed
|
|
2068
2128
|
*/
|
|
@@ -2070,47 +2130,28 @@ export interface ConversationTagApplication {
|
|
|
2070
2130
|
/**
|
|
2071
2131
|
* Actor that applied the tag
|
|
2072
2132
|
*/
|
|
2073
|
-
removedBy?:
|
|
2133
|
+
removedBy?: ConversationTagMutationActor;
|
|
2074
2134
|
/**
|
|
2075
2135
|
* Resolved tag object when the tag still exists in the shared workspace catalog
|
|
2076
2136
|
*/
|
|
2077
2137
|
tag?: ConversationTagsAPI.ConversationTag;
|
|
2078
2138
|
}
|
|
2079
|
-
|
|
2139
|
+
/**
|
|
2140
|
+
* Actor that applied the tag
|
|
2141
|
+
*/
|
|
2142
|
+
export interface ConversationTagMutationActor {
|
|
2080
2143
|
/**
|
|
2081
|
-
* Actor that
|
|
2144
|
+
* Actor that caused the tag mutation
|
|
2082
2145
|
*/
|
|
2083
|
-
|
|
2084
|
-
/**
|
|
2085
|
-
* Actor that caused the tag mutation
|
|
2086
|
-
*/
|
|
2087
|
-
type: 'admin' | 'customer' | 'lead' | 'bot' | 'integration' | 'system' | 'workflow';
|
|
2088
|
-
/**
|
|
2089
|
-
* Actor identifier when available
|
|
2090
|
-
*/
|
|
2091
|
-
id?: string | null;
|
|
2092
|
-
/**
|
|
2093
|
-
* Actor display name when available
|
|
2094
|
-
*/
|
|
2095
|
-
name?: string | null;
|
|
2096
|
-
}
|
|
2146
|
+
type: 'admin' | 'customer' | 'lead' | 'bot' | 'integration' | 'system' | 'workflow';
|
|
2097
2147
|
/**
|
|
2098
|
-
* Actor
|
|
2148
|
+
* Actor identifier when available
|
|
2099
2149
|
*/
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
/**
|
|
2106
|
-
* Actor identifier when available
|
|
2107
|
-
*/
|
|
2108
|
-
id?: string | null;
|
|
2109
|
-
/**
|
|
2110
|
-
* Actor display name when available
|
|
2111
|
-
*/
|
|
2112
|
-
name?: string | null;
|
|
2113
|
-
}
|
|
2150
|
+
id?: string | null;
|
|
2151
|
+
/**
|
|
2152
|
+
* Actor display name when available
|
|
2153
|
+
*/
|
|
2154
|
+
name?: string | null;
|
|
2114
2155
|
}
|
|
2115
2156
|
export interface CsatEmailDelivery {
|
|
2116
2157
|
/**
|
|
@@ -2144,6 +2185,37 @@ export interface CsatRatedAgent {
|
|
|
2144
2185
|
*/
|
|
2145
2186
|
id?: string;
|
|
2146
2187
|
}
|
|
2188
|
+
export interface CsatSlackDelivery {
|
|
2189
|
+
/**
|
|
2190
|
+
* Slack Block Kit prompt delivery status for the CSAT request when the channel is
|
|
2191
|
+
* Slack
|
|
2192
|
+
*/
|
|
2193
|
+
status: 'pending' | 'posted' | 'failed';
|
|
2194
|
+
/**
|
|
2195
|
+
* Slack channel id the CSAT prompt was posted to
|
|
2196
|
+
*/
|
|
2197
|
+
channelId?: string;
|
|
2198
|
+
/**
|
|
2199
|
+
* ISO timestamp when posting the CSAT prompt to Slack failed
|
|
2200
|
+
*/
|
|
2201
|
+
failedAt?: string;
|
|
2202
|
+
/**
|
|
2203
|
+
* Operational failure reason for the Slack CSAT prompt delivery
|
|
2204
|
+
*/
|
|
2205
|
+
failureReason?: string;
|
|
2206
|
+
/**
|
|
2207
|
+
* Slack message timestamp of the posted CSAT prompt
|
|
2208
|
+
*/
|
|
2209
|
+
messageTs?: string;
|
|
2210
|
+
/**
|
|
2211
|
+
* ISO timestamp when the CSAT prompt was enqueued for Slack
|
|
2212
|
+
*/
|
|
2213
|
+
postedAt?: string;
|
|
2214
|
+
/**
|
|
2215
|
+
* Slack workspace (team) the CSAT prompt was posted to
|
|
2216
|
+
*/
|
|
2217
|
+
teamId?: string;
|
|
2218
|
+
}
|
|
2147
2219
|
export interface CsatWorkflowLink {
|
|
2148
2220
|
/**
|
|
2149
2221
|
* Workflow action ID associated with the CSAT request
|
|
@@ -2175,161 +2247,135 @@ export interface EmailRecipients {
|
|
|
2175
2247
|
*/
|
|
2176
2248
|
ids?: Array<string>;
|
|
2177
2249
|
}
|
|
2178
|
-
export interface
|
|
2179
|
-
/**
|
|
2180
|
-
* Unique identifier of the deleted conversation
|
|
2181
|
-
*/
|
|
2182
|
-
id: string;
|
|
2183
|
-
/**
|
|
2184
|
-
* Indicates the resource was deleted
|
|
2185
|
-
*/
|
|
2186
|
-
deleted: true;
|
|
2187
|
-
/**
|
|
2188
|
-
* Object type identifier
|
|
2189
|
-
*/
|
|
2190
|
-
object: 'conversation';
|
|
2191
|
-
}
|
|
2192
|
-
export interface ConversationAttachTagResponse {
|
|
2193
|
-
/**
|
|
2194
|
-
* Unique tag identifier
|
|
2195
|
-
*/
|
|
2196
|
-
id: string;
|
|
2250
|
+
export interface MessageSource {
|
|
2197
2251
|
/**
|
|
2198
|
-
*
|
|
2252
|
+
* Body of the initial message as HTML with signed image URLs
|
|
2199
2253
|
*/
|
|
2200
|
-
|
|
2254
|
+
bodyHtml: string;
|
|
2201
2255
|
/**
|
|
2202
|
-
*
|
|
2256
|
+
* Body of the initial message as markdown
|
|
2203
2257
|
*/
|
|
2204
|
-
|
|
2258
|
+
bodyMarkdown: string;
|
|
2205
2259
|
/**
|
|
2206
|
-
*
|
|
2260
|
+
* Channel through which the conversation was initiated
|
|
2207
2261
|
*/
|
|
2208
|
-
|
|
2262
|
+
channel: 'unknown' | 'desktop' | 'android' | 'ios' | 'email' | 'slack';
|
|
2263
|
+
author?: ConversationParticipant;
|
|
2209
2264
|
/**
|
|
2210
|
-
*
|
|
2265
|
+
* How the conversation was initiated
|
|
2211
2266
|
*/
|
|
2212
|
-
|
|
2267
|
+
deliveredAs?: 'customer_initiated' | 'admin_initiated';
|
|
2213
2268
|
/**
|
|
2214
|
-
*
|
|
2269
|
+
* Safe Slack thread identifiers. Only present for Slack-origin conversations while
|
|
2270
|
+
* the organization has Slack integration enabled.
|
|
2215
2271
|
*/
|
|
2216
|
-
|
|
2272
|
+
slack?: MessageSource.Slack;
|
|
2217
2273
|
/**
|
|
2218
|
-
*
|
|
2274
|
+
* Subject line for email conversations
|
|
2219
2275
|
*/
|
|
2220
|
-
|
|
2276
|
+
subject?: string;
|
|
2221
2277
|
/**
|
|
2222
|
-
*
|
|
2223
|
-
* conversation tag mutation.
|
|
2278
|
+
* URL where the conversation was initiated
|
|
2224
2279
|
*/
|
|
2225
|
-
|
|
2280
|
+
url?: string;
|
|
2226
2281
|
}
|
|
2227
|
-
export declare namespace
|
|
2228
|
-
/**
|
|
2229
|
-
* Actor that applied the tag
|
|
2230
|
-
*/
|
|
2231
|
-
interface AppliedBy {
|
|
2232
|
-
/**
|
|
2233
|
-
* Actor that caused the tag mutation
|
|
2234
|
-
*/
|
|
2235
|
-
type: 'admin' | 'customer' | 'lead' | 'bot' | 'integration' | 'system' | 'workflow';
|
|
2236
|
-
/**
|
|
2237
|
-
* Actor identifier when available
|
|
2238
|
-
*/
|
|
2239
|
-
id?: string | null;
|
|
2240
|
-
/**
|
|
2241
|
-
* Actor display name when available
|
|
2242
|
-
*/
|
|
2243
|
-
name?: string | null;
|
|
2244
|
-
}
|
|
2282
|
+
export declare namespace MessageSource {
|
|
2245
2283
|
/**
|
|
2246
|
-
*
|
|
2284
|
+
* Safe Slack thread identifiers. Only present for Slack-origin conversations while
|
|
2285
|
+
* the organization has Slack integration enabled.
|
|
2247
2286
|
*/
|
|
2248
|
-
interface
|
|
2287
|
+
interface Slack {
|
|
2249
2288
|
/**
|
|
2250
|
-
*
|
|
2289
|
+
* Slack channel ID for the thread
|
|
2251
2290
|
*/
|
|
2252
|
-
|
|
2291
|
+
channelId: string;
|
|
2253
2292
|
/**
|
|
2254
|
-
*
|
|
2293
|
+
* Slack workspace/team ID for the thread
|
|
2255
2294
|
*/
|
|
2256
|
-
|
|
2295
|
+
teamId: string;
|
|
2257
2296
|
/**
|
|
2258
|
-
*
|
|
2297
|
+
* Slack root thread timestamp
|
|
2259
2298
|
*/
|
|
2260
|
-
|
|
2299
|
+
threadTs: string;
|
|
2261
2300
|
}
|
|
2262
2301
|
}
|
|
2263
|
-
|
|
2302
|
+
/**
|
|
2303
|
+
* The customer or lead the conversation is with. Use this for the row identity;
|
|
2304
|
+
* use `matchingPartAuthor` if you specifically want the message author.
|
|
2305
|
+
*/
|
|
2306
|
+
export interface SearchMatchingPartAuthor {
|
|
2264
2307
|
/**
|
|
2265
|
-
*
|
|
2308
|
+
* Author id
|
|
2266
2309
|
*/
|
|
2267
2310
|
id: string;
|
|
2268
2311
|
/**
|
|
2269
|
-
*
|
|
2312
|
+
* Author type
|
|
2270
2313
|
*/
|
|
2271
|
-
|
|
2314
|
+
type: 'admin' | 'customer' | 'lead' | 'bot' | 'guest' | 'integration';
|
|
2272
2315
|
/**
|
|
2273
|
-
*
|
|
2316
|
+
* Companies the author belongs to (customers only)
|
|
2274
2317
|
*/
|
|
2275
|
-
|
|
2318
|
+
companies?: Array<SearchMatchingPartAuthor.Company>;
|
|
2276
2319
|
/**
|
|
2277
|
-
*
|
|
2320
|
+
* Email when known
|
|
2278
2321
|
*/
|
|
2279
|
-
|
|
2322
|
+
email?: string | null;
|
|
2280
2323
|
/**
|
|
2281
|
-
*
|
|
2324
|
+
* Display name when known
|
|
2282
2325
|
*/
|
|
2283
|
-
|
|
2326
|
+
name?: string | null;
|
|
2284
2327
|
/**
|
|
2285
|
-
*
|
|
2328
|
+
* Profile picture URL when known
|
|
2286
2329
|
*/
|
|
2287
|
-
|
|
2330
|
+
profilePicture?: string | null;
|
|
2331
|
+
}
|
|
2332
|
+
export declare namespace SearchMatchingPartAuthor {
|
|
2333
|
+
interface Company {
|
|
2334
|
+
/**
|
|
2335
|
+
* Company id
|
|
2336
|
+
*/
|
|
2337
|
+
id: string;
|
|
2338
|
+
/**
|
|
2339
|
+
* Company name
|
|
2340
|
+
*/
|
|
2341
|
+
name?: string;
|
|
2342
|
+
}
|
|
2343
|
+
}
|
|
2344
|
+
/**
|
|
2345
|
+
* Safe Slack message identifiers. Only present for Slack-backed messages while the
|
|
2346
|
+
* organization has Slack integration enabled.
|
|
2347
|
+
*/
|
|
2348
|
+
export interface SlackMessageDetails {
|
|
2288
2349
|
/**
|
|
2289
|
-
*
|
|
2350
|
+
* Slack channel ID for the message
|
|
2290
2351
|
*/
|
|
2291
|
-
|
|
2352
|
+
channelId: string;
|
|
2292
2353
|
/**
|
|
2293
|
-
*
|
|
2294
|
-
* conversation tag mutation.
|
|
2354
|
+
* Slack message timestamp
|
|
2295
2355
|
*/
|
|
2296
|
-
|
|
2356
|
+
messageTs: string;
|
|
2357
|
+
/**
|
|
2358
|
+
* Slack workspace/team ID for the message
|
|
2359
|
+
*/
|
|
2360
|
+
teamId: string;
|
|
2361
|
+
/**
|
|
2362
|
+
* Slack root thread timestamp when this message belongs to a thread
|
|
2363
|
+
*/
|
|
2364
|
+
threadTs?: string;
|
|
2297
2365
|
}
|
|
2298
|
-
export
|
|
2366
|
+
export interface ConversationDeleteResponse {
|
|
2299
2367
|
/**
|
|
2300
|
-
*
|
|
2368
|
+
* Unique identifier of the deleted conversation
|
|
2301
2369
|
*/
|
|
2302
|
-
|
|
2303
|
-
/**
|
|
2304
|
-
* Actor that caused the tag mutation
|
|
2305
|
-
*/
|
|
2306
|
-
type: 'admin' | 'customer' | 'lead' | 'bot' | 'integration' | 'system' | 'workflow';
|
|
2307
|
-
/**
|
|
2308
|
-
* Actor identifier when available
|
|
2309
|
-
*/
|
|
2310
|
-
id?: string | null;
|
|
2311
|
-
/**
|
|
2312
|
-
* Actor display name when available
|
|
2313
|
-
*/
|
|
2314
|
-
name?: string | null;
|
|
2315
|
-
}
|
|
2370
|
+
id: string;
|
|
2316
2371
|
/**
|
|
2317
|
-
*
|
|
2372
|
+
* Indicates the resource was deleted
|
|
2318
2373
|
*/
|
|
2319
|
-
|
|
2320
|
-
|
|
2321
|
-
|
|
2322
|
-
|
|
2323
|
-
|
|
2324
|
-
/**
|
|
2325
|
-
* Actor identifier when available
|
|
2326
|
-
*/
|
|
2327
|
-
id?: string | null;
|
|
2328
|
-
/**
|
|
2329
|
-
* Actor display name when available
|
|
2330
|
-
*/
|
|
2331
|
-
name?: string | null;
|
|
2332
|
-
}
|
|
2374
|
+
deleted: true;
|
|
2375
|
+
/**
|
|
2376
|
+
* Object type identifier
|
|
2377
|
+
*/
|
|
2378
|
+
object: 'conversation';
|
|
2333
2379
|
}
|
|
2334
2380
|
export interface ConversationSearchResponse {
|
|
2335
2381
|
/**
|
|
@@ -2418,7 +2464,20 @@ export declare namespace ConversationSearchResponse {
|
|
|
2418
2464
|
* The customer or lead the conversation is with. Use this for the row identity;
|
|
2419
2465
|
* use `matchingPartAuthor` if you specifically want the message author.
|
|
2420
2466
|
*/
|
|
2421
|
-
conversationUser?:
|
|
2467
|
+
conversationUser?: ConversationsAPI.SearchMatchingPartAuthor | null;
|
|
2468
|
+
/**
|
|
2469
|
+
* Custom conversation attributes keyed by custom attribute ID. Only org-defined,
|
|
2470
|
+
* non-archived conversation attributes are returned; internal workflow metadata is
|
|
2471
|
+
* omitted.
|
|
2472
|
+
*/
|
|
2473
|
+
customAttributes?: {
|
|
2474
|
+
[key: string]: unknown;
|
|
2475
|
+
};
|
|
2476
|
+
/**
|
|
2477
|
+
* Custom conversation attribute values expanded with definition metadata. Returned
|
|
2478
|
+
* only when `include=customAttributeDefinitions` is provided.
|
|
2479
|
+
*/
|
|
2480
|
+
customAttributeValues?: Array<ConversationsAPI.ConversationAttributeValue>;
|
|
2422
2481
|
/**
|
|
2423
2482
|
* Plain-text / markdown preview of the matching conversation part body (search
|
|
2424
2483
|
* mode only)
|
|
@@ -2433,13 +2492,13 @@ export declare namespace ConversationSearchResponse {
|
|
|
2433
2492
|
* The customer or lead the conversation is with. Use this for the row identity;
|
|
2434
2493
|
* use `matchingPartAuthor` if you specifically want the message author.
|
|
2435
2494
|
*/
|
|
2436
|
-
matchingPartAuthor?:
|
|
2495
|
+
matchingPartAuthor?: ConversationsAPI.SearchMatchingPartAuthor | null;
|
|
2437
2496
|
/**
|
|
2438
2497
|
* Aggregate relevance score for the conversation (search mode only). Higher is
|
|
2439
2498
|
* more relevant.
|
|
2440
2499
|
*/
|
|
2441
2500
|
relevanceScore?: number | null;
|
|
2442
|
-
source?:
|
|
2501
|
+
source?: ConversationsAPI.MessageSource;
|
|
2443
2502
|
/**
|
|
2444
2503
|
* Window of conversation messages around the matching part for lightweight context
|
|
2445
2504
|
* previews. In search mode this is up to 15 messages before plus 15 from the
|
|
@@ -2455,42 +2514,6 @@ export declare namespace ConversationSearchResponse {
|
|
|
2455
2514
|
title?: string;
|
|
2456
2515
|
}
|
|
2457
2516
|
namespace Data {
|
|
2458
|
-
/**
|
|
2459
|
-
* The customer or lead the conversation is with. Use this for the row identity;
|
|
2460
|
-
* use `matchingPartAuthor` if you specifically want the message author.
|
|
2461
|
-
*/
|
|
2462
|
-
interface ConversationUser {
|
|
2463
|
-
/**
|
|
2464
|
-
* Author id
|
|
2465
|
-
*/
|
|
2466
|
-
id: string;
|
|
2467
|
-
/**
|
|
2468
|
-
* Author type
|
|
2469
|
-
*/
|
|
2470
|
-
type: 'admin' | 'customer' | 'lead' | 'bot' | 'guest' | 'integration';
|
|
2471
|
-
/**
|
|
2472
|
-
* Companies the author belongs to (customers only)
|
|
2473
|
-
*/
|
|
2474
|
-
companies?: Array<ConversationUser.Company>;
|
|
2475
|
-
/**
|
|
2476
|
-
* Email when known
|
|
2477
|
-
*/
|
|
2478
|
-
email?: string | null;
|
|
2479
|
-
/**
|
|
2480
|
-
* Display name when known
|
|
2481
|
-
*/
|
|
2482
|
-
name?: string | null;
|
|
2483
|
-
/**
|
|
2484
|
-
* Profile picture URL when known
|
|
2485
|
-
*/
|
|
2486
|
-
profilePicture?: string | null;
|
|
2487
|
-
}
|
|
2488
|
-
namespace ConversationUser {
|
|
2489
|
-
interface Company {
|
|
2490
|
-
id: string;
|
|
2491
|
-
name?: string;
|
|
2492
|
-
}
|
|
2493
|
-
}
|
|
2494
2517
|
/**
|
|
2495
2518
|
* Reference to the conversation part that best matched the search query (search
|
|
2496
2519
|
* mode only)
|
|
@@ -2509,69 +2532,6 @@ export declare namespace ConversationSearchResponse {
|
|
|
2509
2532
|
*/
|
|
2510
2533
|
partType?: string;
|
|
2511
2534
|
}
|
|
2512
|
-
/**
|
|
2513
|
-
* The customer or lead the conversation is with. Use this for the row identity;
|
|
2514
|
-
* use `matchingPartAuthor` if you specifically want the message author.
|
|
2515
|
-
*/
|
|
2516
|
-
interface MatchingPartAuthor {
|
|
2517
|
-
/**
|
|
2518
|
-
* Author id
|
|
2519
|
-
*/
|
|
2520
|
-
id: string;
|
|
2521
|
-
/**
|
|
2522
|
-
* Author type
|
|
2523
|
-
*/
|
|
2524
|
-
type: 'admin' | 'customer' | 'lead' | 'bot' | 'guest' | 'integration';
|
|
2525
|
-
/**
|
|
2526
|
-
* Companies the author belongs to (customers only)
|
|
2527
|
-
*/
|
|
2528
|
-
companies?: Array<MatchingPartAuthor.Company>;
|
|
2529
|
-
/**
|
|
2530
|
-
* Email when known
|
|
2531
|
-
*/
|
|
2532
|
-
email?: string | null;
|
|
2533
|
-
/**
|
|
2534
|
-
* Display name when known
|
|
2535
|
-
*/
|
|
2536
|
-
name?: string | null;
|
|
2537
|
-
/**
|
|
2538
|
-
* Profile picture URL when known
|
|
2539
|
-
*/
|
|
2540
|
-
profilePicture?: string | null;
|
|
2541
|
-
}
|
|
2542
|
-
namespace MatchingPartAuthor {
|
|
2543
|
-
interface Company {
|
|
2544
|
-
id: string;
|
|
2545
|
-
name?: string;
|
|
2546
|
-
}
|
|
2547
|
-
}
|
|
2548
|
-
interface Source {
|
|
2549
|
-
/**
|
|
2550
|
-
* Body of the initial message as HTML with signed image URLs
|
|
2551
|
-
*/
|
|
2552
|
-
bodyHtml: string;
|
|
2553
|
-
/**
|
|
2554
|
-
* Body of the initial message as markdown
|
|
2555
|
-
*/
|
|
2556
|
-
bodyMarkdown: string;
|
|
2557
|
-
/**
|
|
2558
|
-
* Channel through which the conversation was initiated
|
|
2559
|
-
*/
|
|
2560
|
-
channel: 'unknown' | 'desktop' | 'android' | 'ios' | 'email';
|
|
2561
|
-
author?: ConversationsAPI.ConversationParticipant;
|
|
2562
|
-
/**
|
|
2563
|
-
* How the conversation was initiated
|
|
2564
|
-
*/
|
|
2565
|
-
deliveredAs?: 'customer_initiated' | 'admin_initiated';
|
|
2566
|
-
/**
|
|
2567
|
-
* Subject line for email conversations
|
|
2568
|
-
*/
|
|
2569
|
-
subject?: string;
|
|
2570
|
-
/**
|
|
2571
|
-
* URL where the conversation was initiated
|
|
2572
|
-
*/
|
|
2573
|
-
url?: string;
|
|
2574
|
-
}
|
|
2575
2535
|
interface SurroundingConversationPart {
|
|
2576
2536
|
/**
|
|
2577
2537
|
* Conversation part id
|
|
@@ -2589,7 +2549,7 @@ export declare namespace ConversationSearchResponse {
|
|
|
2589
2549
|
* The customer or lead the conversation is with. Use this for the row identity;
|
|
2590
2550
|
* use `matchingPartAuthor` if you specifically want the message author.
|
|
2591
2551
|
*/
|
|
2592
|
-
author?:
|
|
2552
|
+
author?: ConversationsAPI.SearchMatchingPartAuthor | null;
|
|
2593
2553
|
/**
|
|
2594
2554
|
* ISO timestamp when the part was created
|
|
2595
2555
|
*/
|
|
@@ -2599,46 +2559,26 @@ export declare namespace ConversationSearchResponse {
|
|
|
2599
2559
|
*/
|
|
2600
2560
|
partType?: string;
|
|
2601
2561
|
}
|
|
2602
|
-
namespace SurroundingConversationPart {
|
|
2603
|
-
/**
|
|
2604
|
-
* The customer or lead the conversation is with. Use this for the row identity;
|
|
2605
|
-
* use `matchingPartAuthor` if you specifically want the message author.
|
|
2606
|
-
*/
|
|
2607
|
-
interface Author {
|
|
2608
|
-
/**
|
|
2609
|
-
* Author id
|
|
2610
|
-
*/
|
|
2611
|
-
id: string;
|
|
2612
|
-
/**
|
|
2613
|
-
* Author type
|
|
2614
|
-
*/
|
|
2615
|
-
type: 'admin' | 'customer' | 'lead' | 'bot' | 'guest' | 'integration';
|
|
2616
|
-
/**
|
|
2617
|
-
* Companies the author belongs to (customers only)
|
|
2618
|
-
*/
|
|
2619
|
-
companies?: Array<Author.Company>;
|
|
2620
|
-
/**
|
|
2621
|
-
* Email when known
|
|
2622
|
-
*/
|
|
2623
|
-
email?: string | null;
|
|
2624
|
-
/**
|
|
2625
|
-
* Display name when known
|
|
2626
|
-
*/
|
|
2627
|
-
name?: string | null;
|
|
2628
|
-
/**
|
|
2629
|
-
* Profile picture URL when known
|
|
2630
|
-
*/
|
|
2631
|
-
profilePicture?: string | null;
|
|
2632
|
-
}
|
|
2633
|
-
namespace Author {
|
|
2634
|
-
interface Company {
|
|
2635
|
-
id: string;
|
|
2636
|
-
name?: string;
|
|
2637
|
-
}
|
|
2638
|
-
}
|
|
2639
|
-
}
|
|
2640
2562
|
}
|
|
2641
2563
|
}
|
|
2564
|
+
export interface ConversationListParams extends CursorPageParams {
|
|
2565
|
+
/**
|
|
2566
|
+
* Query param: Comma-separated optional expansions. Use
|
|
2567
|
+
* `customAttributeDefinitions` to return `customAttributeValues` with names and
|
|
2568
|
+
* types alongside ID-keyed `customAttributes`.
|
|
2569
|
+
*/
|
|
2570
|
+
include?: string | Array<string>;
|
|
2571
|
+
/**
|
|
2572
|
+
* Query param: Filter conversations by one or more tag IDs using a comma-separated
|
|
2573
|
+
* list. Conversations must contain all provided tags.
|
|
2574
|
+
*/
|
|
2575
|
+
tagIds?: string | Array<string>;
|
|
2576
|
+
/**
|
|
2577
|
+
* Header param: API version for this request. Defaults to your organization's
|
|
2578
|
+
* configured API version if not specified.
|
|
2579
|
+
*/
|
|
2580
|
+
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2581
|
+
}
|
|
2642
2582
|
export interface ConversationCreateParams {
|
|
2643
2583
|
/**
|
|
2644
2584
|
* Body param: The content of the initial message in markdown format. Images
|
|
@@ -2725,6 +2665,19 @@ export declare namespace ConversationCreateParams {
|
|
|
2725
2665
|
}
|
|
2726
2666
|
}
|
|
2727
2667
|
export interface ConversationRetrieveParams {
|
|
2668
|
+
/**
|
|
2669
|
+
* Query param: Comma-separated optional expansions. Use
|
|
2670
|
+
* `customAttributeDefinitions` to return `customAttributeValues` with names and
|
|
2671
|
+
* types alongside ID-keyed `customAttributes`.
|
|
2672
|
+
*/
|
|
2673
|
+
include?: string | Array<string>;
|
|
2674
|
+
/**
|
|
2675
|
+
* Header param: API version for this request. Defaults to your organization's
|
|
2676
|
+
* configured API version if not specified.
|
|
2677
|
+
*/
|
|
2678
|
+
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2679
|
+
}
|
|
2680
|
+
export interface ConversationDeleteParams {
|
|
2728
2681
|
/**
|
|
2729
2682
|
* API version for this request. Defaults to your organization's configured API
|
|
2730
2683
|
* version if not specified.
|
|
@@ -2743,8 +2696,9 @@ export interface ConversationUpdateParams {
|
|
|
2743
2696
|
*/
|
|
2744
2697
|
adminAssigneeId?: string | null;
|
|
2745
2698
|
/**
|
|
2746
|
-
* Body param: Custom attributes to set on the conversation
|
|
2747
|
-
*
|
|
2699
|
+
* Body param: Custom attributes to set on the conversation, keyed by conversation
|
|
2700
|
+
* custom attribute ID. Use the custom attribute definitions for your organization
|
|
2701
|
+
* to map IDs to display names.
|
|
2748
2702
|
*/
|
|
2749
2703
|
customAttributes?: {
|
|
2750
2704
|
[key: string]: unknown;
|
|
@@ -2803,82 +2757,6 @@ export declare namespace ConversationUpdateParams {
|
|
|
2803
2757
|
contactIds?: Array<string>;
|
|
2804
2758
|
}
|
|
2805
2759
|
}
|
|
2806
|
-
export interface ConversationListParams extends CursorPageParams {
|
|
2807
|
-
/**
|
|
2808
|
-
* Query param: Filter conversations by one or more tag IDs using a comma-separated
|
|
2809
|
-
* list. Conversations must contain all provided tags.
|
|
2810
|
-
*/
|
|
2811
|
-
tagIds?: string | Array<string>;
|
|
2812
|
-
/**
|
|
2813
|
-
* Header param: API version for this request. Defaults to your organization's
|
|
2814
|
-
* configured API version if not specified.
|
|
2815
|
-
*/
|
|
2816
|
-
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2817
|
-
}
|
|
2818
|
-
export interface ConversationDeleteParams {
|
|
2819
|
-
/**
|
|
2820
|
-
* API version for this request. Defaults to your organization's configured API
|
|
2821
|
-
* version if not specified.
|
|
2822
|
-
*/
|
|
2823
|
-
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2824
|
-
}
|
|
2825
|
-
export interface ConversationAttachTagParams {
|
|
2826
|
-
/**
|
|
2827
|
-
* Body param: Required admin ID performing this tag attachment. Must be a member
|
|
2828
|
-
* of the organization so the mutation can be attributed to a real admin actor.
|
|
2829
|
-
*/
|
|
2830
|
-
actingAdminId: string;
|
|
2831
|
-
/**
|
|
2832
|
-
* Body param: The Featurebase tag ID to attach to the conversation.
|
|
2833
|
-
*/
|
|
2834
|
-
tagId: string;
|
|
2835
|
-
/**
|
|
2836
|
-
* Header param: API version for this request. Defaults to your organization's
|
|
2837
|
-
* configured API version if not specified.
|
|
2838
|
-
*/
|
|
2839
|
-
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2840
|
-
}
|
|
2841
|
-
export interface ConversationDetachTagParams {
|
|
2842
|
-
/**
|
|
2843
|
-
* Path param: Conversation ID (short ID)
|
|
2844
|
-
*/
|
|
2845
|
-
id: string;
|
|
2846
|
-
/**
|
|
2847
|
-
* Body param: Required admin ID performing this tag removal. Must be a member of
|
|
2848
|
-
* the organization so the mutation can be attributed to a real admin actor.
|
|
2849
|
-
*/
|
|
2850
|
-
actingAdminId: string;
|
|
2851
|
-
/**
|
|
2852
|
-
* Header param: API version for this request. Defaults to your organization's
|
|
2853
|
-
* configured API version if not specified.
|
|
2854
|
-
*/
|
|
2855
|
-
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2856
|
-
}
|
|
2857
|
-
export interface ConversationRedactParams {
|
|
2858
|
-
/**
|
|
2859
|
-
* Body param: The conversation short ID that contains the part to redact
|
|
2860
|
-
*/
|
|
2861
|
-
conversationId: string;
|
|
2862
|
-
/**
|
|
2863
|
-
* Body param: The conversation part short ID to redact
|
|
2864
|
-
*/
|
|
2865
|
-
conversationPartId: string;
|
|
2866
|
-
/**
|
|
2867
|
-
* Body param: The type of item to redact. Currently only "conversation_part" is
|
|
2868
|
-
* supported.
|
|
2869
|
-
*/
|
|
2870
|
-
type: 'conversation_part';
|
|
2871
|
-
/**
|
|
2872
|
-
* Body param: The admin ID performing this action. If not provided, changes are
|
|
2873
|
-
* attributed to the system bot user.
|
|
2874
|
-
*/
|
|
2875
|
-
actingAdminId?: string;
|
|
2876
|
-
/**
|
|
2877
|
-
* Header param: API version for this request. Defaults to your organization's
|
|
2878
|
-
* configured API version if not specified.
|
|
2879
|
-
*/
|
|
2880
|
-
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2881
|
-
}
|
|
2882
2760
|
export type ConversationReplyParams = ConversationReplyParams.ContactReplyBody | ConversationReplyParams.AdminReplyBody;
|
|
2883
2761
|
export declare namespace ConversationReplyParams {
|
|
2884
2762
|
interface ContactReplyBody {
|
|
@@ -2947,22 +2825,87 @@ export declare namespace ConversationReplyParams {
|
|
|
2947
2825
|
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2948
2826
|
}
|
|
2949
2827
|
}
|
|
2828
|
+
export interface ConversationRedactParams {
|
|
2829
|
+
/**
|
|
2830
|
+
* Body param: The conversation short ID that contains the part to redact
|
|
2831
|
+
*/
|
|
2832
|
+
conversationId: string;
|
|
2833
|
+
/**
|
|
2834
|
+
* Body param: The conversation part short ID to redact
|
|
2835
|
+
*/
|
|
2836
|
+
conversationPartId: string;
|
|
2837
|
+
/**
|
|
2838
|
+
* Body param: The type of item to redact. Currently only "conversation_part" is
|
|
2839
|
+
* supported.
|
|
2840
|
+
*/
|
|
2841
|
+
type: 'conversation_part';
|
|
2842
|
+
/**
|
|
2843
|
+
* Body param: The admin ID performing this action. If not provided, changes are
|
|
2844
|
+
* attributed to the system bot user.
|
|
2845
|
+
*/
|
|
2846
|
+
actingAdminId?: string;
|
|
2847
|
+
/**
|
|
2848
|
+
* Header param: API version for this request. Defaults to your organization's
|
|
2849
|
+
* configured API version if not specified.
|
|
2850
|
+
*/
|
|
2851
|
+
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2852
|
+
}
|
|
2853
|
+
export interface ConversationAttachTagParams {
|
|
2854
|
+
/**
|
|
2855
|
+
* Body param: Required admin ID performing this tag attachment. Must be a member
|
|
2856
|
+
* of the organization so the mutation can be attributed to a real admin actor.
|
|
2857
|
+
*/
|
|
2858
|
+
actingAdminId: string;
|
|
2859
|
+
/**
|
|
2860
|
+
* Body param: The Featurebase tag ID to attach to the conversation.
|
|
2861
|
+
*/
|
|
2862
|
+
tagId: string;
|
|
2863
|
+
/**
|
|
2864
|
+
* Header param: API version for this request. Defaults to your organization's
|
|
2865
|
+
* configured API version if not specified.
|
|
2866
|
+
*/
|
|
2867
|
+
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2868
|
+
}
|
|
2869
|
+
export interface ConversationDetachTagParams {
|
|
2870
|
+
/**
|
|
2871
|
+
* Path param: Conversation ID (short ID)
|
|
2872
|
+
*/
|
|
2873
|
+
id: string;
|
|
2874
|
+
/**
|
|
2875
|
+
* Body param: Required admin ID performing this tag removal. Must be a member of
|
|
2876
|
+
* the organization so the mutation can be attributed to a real admin actor.
|
|
2877
|
+
*/
|
|
2878
|
+
actingAdminId: string;
|
|
2879
|
+
/**
|
|
2880
|
+
* Header param: API version for this request. Defaults to your organization's
|
|
2881
|
+
* configured API version if not specified.
|
|
2882
|
+
*/
|
|
2883
|
+
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2884
|
+
}
|
|
2950
2885
|
export interface ConversationSearchParams {
|
|
2951
2886
|
/**
|
|
2952
2887
|
* Body param: An opaque cursor for pagination. Use the nextCursor value from a
|
|
2953
2888
|
* previous response to fetch the next page of results.
|
|
2954
2889
|
*/
|
|
2955
2890
|
cursor?: string;
|
|
2891
|
+
/**
|
|
2892
|
+
* Body param: Optional expansions. Use `customAttributeDefinitions` to return
|
|
2893
|
+
* `customAttributeValues` with names and types alongside ID-keyed
|
|
2894
|
+
* `customAttributes`.
|
|
2895
|
+
*/
|
|
2896
|
+
include?: Array<'customAttributeDefinitions'>;
|
|
2956
2897
|
/**
|
|
2957
2898
|
* Body param: A limit on the number of objects to be returned, between 1 and 100.
|
|
2958
2899
|
*/
|
|
2959
2900
|
limit?: number;
|
|
2960
2901
|
/**
|
|
2961
2902
|
* Body param: Structured filter AST. Either a single filter clause or one
|
|
2962
|
-
* top-level AND group. Use this for filtering by `state`, `
|
|
2963
|
-
* `
|
|
2903
|
+
* top-level AND group. Use this for filtering by `state`, `tagIds`,
|
|
2904
|
+
* `adminAssigneeId`, `customAttributes.<attributeId>`, etc. (Legacy snake_case
|
|
2905
|
+
* names are accepted for back-compat — see the OpenAPI route description for the
|
|
2906
|
+
* full alias map.)
|
|
2964
2907
|
*/
|
|
2965
|
-
query?:
|
|
2908
|
+
query?: PostsAPI.SearchFilter | PostsAPI.SearchFilterGroup;
|
|
2966
2909
|
/**
|
|
2967
2910
|
* Body param: Plain-text full-text search across conversation messages.
|
|
2968
2911
|
* Server-managed - no operators, no field selection.
|
|
@@ -2970,61 +2913,20 @@ export interface ConversationSearchParams {
|
|
|
2970
2913
|
search?: string;
|
|
2971
2914
|
/**
|
|
2972
2915
|
* Body param: Result ordering. When omitted, filter mode defaults to
|
|
2973
|
-
*
|
|
2916
|
+
* `lastActivityAt:desc` and search mode defaults to relevance ranking. When set,
|
|
2974
2917
|
* both modes order by lastActivityAt in the requested direction (so you can ask a
|
|
2975
|
-
* search query to return its hits in chronological order).
|
|
2918
|
+
* search query to return its hits in chronological order). Snake_case
|
|
2919
|
+
* `last_activity_at:*` is accepted for back-compat — prefer camelCase in new code.
|
|
2976
2920
|
*/
|
|
2977
|
-
sort?: 'last_activity_at:desc' | 'last_activity_at:asc';
|
|
2921
|
+
sort?: 'lastActivityAt:desc' | 'lastActivityAt:asc' | 'last_activity_at:desc' | 'last_activity_at:asc';
|
|
2978
2922
|
/**
|
|
2979
2923
|
* Header param: API version for this request. Defaults to your organization's
|
|
2980
2924
|
* configured API version if not specified.
|
|
2981
2925
|
*/
|
|
2982
2926
|
'Featurebase-Version'?: '2026-01-01.nova' | '2025-12-12.clover';
|
|
2983
2927
|
}
|
|
2984
|
-
export declare namespace ConversationSearchParams {
|
|
2985
|
-
interface SearchFilter {
|
|
2986
|
-
/**
|
|
2987
|
-
* Field name to filter on (e.g. `state`, `tag_ids`, `created_at`)
|
|
2988
|
-
*/
|
|
2989
|
-
field: string;
|
|
2990
|
-
/**
|
|
2991
|
-
* Comparison operator
|
|
2992
|
-
*/
|
|
2993
|
-
operator: '=' | '!=' | 'IN' | 'NIN' | '>' | '<' | '>=' | '<=' | '~' | '!~' | '^' | '$';
|
|
2994
|
-
/**
|
|
2995
|
-
* Value to compare against (primitive or array of primitives)
|
|
2996
|
-
*/
|
|
2997
|
-
value: string | number | boolean | Array<string | number> | null;
|
|
2998
|
-
}
|
|
2999
|
-
interface SearchFilterGroup {
|
|
3000
|
-
/**
|
|
3001
|
-
* Group operator: AND (all match) or OR (any match)
|
|
3002
|
-
*/
|
|
3003
|
-
operator: 'AND' | 'OR';
|
|
3004
|
-
/**
|
|
3005
|
-
* Array of filter clauses (1-15 entries)
|
|
3006
|
-
*/
|
|
3007
|
-
value: Array<SearchFilterGroup.Value>;
|
|
3008
|
-
}
|
|
3009
|
-
namespace SearchFilterGroup {
|
|
3010
|
-
interface Value {
|
|
3011
|
-
/**
|
|
3012
|
-
* Field name to filter on (e.g. `state`, `tag_ids`, `created_at`)
|
|
3013
|
-
*/
|
|
3014
|
-
field: string;
|
|
3015
|
-
/**
|
|
3016
|
-
* Comparison operator
|
|
3017
|
-
*/
|
|
3018
|
-
operator: '=' | '!=' | 'IN' | 'NIN' | '>' | '<' | '>=' | '<=' | '~' | '!~' | '^' | '$';
|
|
3019
|
-
/**
|
|
3020
|
-
* Value to compare against (primitive or array of primitives)
|
|
3021
|
-
*/
|
|
3022
|
-
value: string | number | boolean | Array<string | number> | null;
|
|
3023
|
-
}
|
|
3024
|
-
}
|
|
3025
|
-
}
|
|
3026
2928
|
export declare namespace Conversations {
|
|
3027
|
-
export { type Conversation as Conversation, type ConversationPart as ConversationPart, type ConversationPartAuthor as ConversationPartAuthor, type ConversationParticipant as ConversationParticipant, type ConversationTagApplication as ConversationTagApplication, type CsatEmailDelivery as CsatEmailDelivery, type CsatRatedAgent as CsatRatedAgent, type CsatWorkflowLink as CsatWorkflowLink, type EmailRecipients as EmailRecipients, type
|
|
2929
|
+
export { type AttachedConversationTag as AttachedConversationTag, type Conversation as Conversation, type ConversationAttributeValue as ConversationAttributeValue, type ConversationPart as ConversationPart, type ConversationPartAuthor as ConversationPartAuthor, type ConversationParticipant as ConversationParticipant, type ConversationTagApplication as ConversationTagApplication, type ConversationTagMutationActor as ConversationTagMutationActor, type CsatEmailDelivery as CsatEmailDelivery, type CsatRatedAgent as CsatRatedAgent, type CsatSlackDelivery as CsatSlackDelivery, type CsatWorkflowLink as CsatWorkflowLink, type EmailRecipients as EmailRecipients, type MessageSource as MessageSource, type SearchMatchingPartAuthor as SearchMatchingPartAuthor, type SlackMessageDetails as SlackMessageDetails, type ConversationDeleteResponse as ConversationDeleteResponse, type ConversationSearchResponse as ConversationSearchResponse, type ConversationsCursorPage as ConversationsCursorPage, type ConversationListParams as ConversationListParams, type ConversationCreateParams as ConversationCreateParams, type ConversationRetrieveParams as ConversationRetrieveParams, type ConversationDeleteParams as ConversationDeleteParams, type ConversationUpdateParams as ConversationUpdateParams, type ConversationReplyParams as ConversationReplyParams, type ConversationRedactParams as ConversationRedactParams, type ConversationAttachTagParams as ConversationAttachTagParams, type ConversationDetachTagParams as ConversationDetachTagParams, type ConversationSearchParams as ConversationSearchParams, };
|
|
3028
2930
|
export { Participants as Participants, type ParticipantAddParams as ParticipantAddParams, type ParticipantRemoveParams as ParticipantRemoveParams, };
|
|
3029
2931
|
}
|
|
3030
2932
|
//# sourceMappingURL=conversations.d.mts.map
|