featurebase-node 0.13.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 +19 -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.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 +129 -191
- package/resources/feedback/comments.d.mts.map +1 -1
- package/resources/feedback/comments.d.ts +129 -191
- package/resources/feedback/comments.d.ts.map +1 -1
- package/resources/feedback/comments.js +93 -93
- package/resources/feedback/comments.js.map +1 -1
- package/resources/feedback/comments.mjs +93 -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 +187 -260
- package/resources/feedback/posts/posts.d.mts.map +1 -1
- package/resources/feedback/posts/posts.d.ts +187 -260
- package/resources/feedback/posts/posts.d.ts.map +1 -1
- package/resources/feedback/posts/posts.js +75 -75
- package/resources/feedback/posts/posts.js.map +1 -1
- package/resources/feedback/posts/posts.mjs +75 -75
- 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 +599 -705
- package/resources/support/conversations/conversations.d.mts.map +1 -1
- package/resources/support/conversations/conversations.d.ts +599 -705
- package/resources/support/conversations/conversations.d.ts.map +1 -1
- package/resources/support/conversations/conversations.js +289 -288
- package/resources/support/conversations/conversations.js.map +1 -1
- package/resources/support/conversations/conversations.mjs +289 -288
- 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 +116 -157
- package/resources/users/companies/companies.d.mts.map +1 -1
- package/resources/users/companies/companies.d.ts +116 -157
- package/resources/users/companies/companies.d.ts.map +1 -1
- package/resources/users/companies/companies.js +125 -125
- package/resources/users/companies/companies.js.map +1 -1
- package/resources/users/companies/companies.mjs +125 -125
- 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 +196 -235
- package/resources/users/contacts/contacts.d.mts.map +1 -1
- package/resources/users/contacts/contacts.d.ts +196 -235
- package/resources/users/contacts/contacts.d.ts.map +1 -1
- package/resources/users/contacts/contacts.js +186 -184
- package/resources/users/contacts/contacts.js.map +1 -1
- package/resources/users/contacts/contacts.mjs +186 -184
- 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/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 +153 -226
- package/src/resources/feedback/custom-fields.ts +44 -44
- package/src/resources/feedback/feedback.ts +19 -5
- package/src/resources/feedback/index.ts +12 -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 +230 -311
- 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 +723 -850
- 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 +155 -204
- package/src/resources/users/companies/index.ts +2 -2
- package/src/resources/users/contacts/contacts.ts +235 -282
- 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
|
@@ -17,6 +17,91 @@ class Conversations extends resource_1.APIResource {
|
|
|
17
17
|
super(...arguments);
|
|
18
18
|
this.participants = new ParticipantsAPI.Participants(this._client);
|
|
19
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Returns a list of conversations in your organization using cursor-based
|
|
22
|
+
* pagination.
|
|
23
|
+
*
|
|
24
|
+
* ### Query Parameters
|
|
25
|
+
*
|
|
26
|
+
* - `limit` - Number of conversations to return (1-100, default 10)
|
|
27
|
+
* - `cursor` - Cursor from previous response for pagination
|
|
28
|
+
* - `tagIds` - Optional tag filter as a comma-separated list of tag IDs. Matches
|
|
29
|
+
* conversations that contain all of the provided tags.
|
|
30
|
+
*
|
|
31
|
+
* ### Response Format
|
|
32
|
+
*
|
|
33
|
+
* Returns a list object with:
|
|
34
|
+
*
|
|
35
|
+
* - `object` - Always "list"
|
|
36
|
+
* - `data` - Array of conversation objects
|
|
37
|
+
* - `nextCursor` - Cursor for the next page, or null if no more results
|
|
38
|
+
*
|
|
39
|
+
* ### Conversation Object
|
|
40
|
+
*
|
|
41
|
+
* Each conversation includes:
|
|
42
|
+
*
|
|
43
|
+
* - `id` - Unique conversation identifier (short ID)
|
|
44
|
+
* - `title` - Conversation title
|
|
45
|
+
* - `state` - Current state ("open", "closed", or "snoozed")
|
|
46
|
+
* - `priority` - Whether the conversation is marked as priority
|
|
47
|
+
* - `adminAssigneeId` - ID of assigned admin (if any)
|
|
48
|
+
* - `teamAssigneeId` - ID of assigned team (if any)
|
|
49
|
+
* - `tags` - Current tags applied anywhere in the conversation
|
|
50
|
+
* - `participants` - Array of participants
|
|
51
|
+
* - `source` - Information about the first message
|
|
52
|
+
* - `createdAt` - Creation timestamp
|
|
53
|
+
* - `updatedAt` - Last update timestamp
|
|
54
|
+
*
|
|
55
|
+
* ### Example
|
|
56
|
+
*
|
|
57
|
+
* ```json
|
|
58
|
+
* {
|
|
59
|
+
* "object": "list",
|
|
60
|
+
* "data": [
|
|
61
|
+
* {
|
|
62
|
+
* "object": "conversation",
|
|
63
|
+
* "id": "12345",
|
|
64
|
+
* "title": "Question about pricing",
|
|
65
|
+
* "state": "open",
|
|
66
|
+
* "priority": false,
|
|
67
|
+
* "adminAssigneeId": null,
|
|
68
|
+
* "participants": [
|
|
69
|
+
* { "type": "customer", "id": "676f0f6765bdaa7d7d760f88" }
|
|
70
|
+
* ],
|
|
71
|
+
* ...
|
|
72
|
+
* }
|
|
73
|
+
* ],
|
|
74
|
+
* "nextCursor": "eyJpZCI6IjEyMzQ1In0="
|
|
75
|
+
* }
|
|
76
|
+
* ```
|
|
77
|
+
*
|
|
78
|
+
* ### Version Availability
|
|
79
|
+
*
|
|
80
|
+
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```ts
|
|
84
|
+
* // Automatically fetches more pages as needed.
|
|
85
|
+
* for await (const conversation of client.support.conversations.list()) {
|
|
86
|
+
* // ...
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
list(params = {}, options) {
|
|
91
|
+
const { 'Featurebase-Version': featurebaseVersion, ...query } = params ?? {};
|
|
92
|
+
return this._client.getAPIList('/v2/conversations', (pagination_1.CursorPage), {
|
|
93
|
+
query,
|
|
94
|
+
...options,
|
|
95
|
+
headers: (0, headers_1.buildHeaders)([
|
|
96
|
+
{
|
|
97
|
+
...(featurebaseVersion?.toString() != null ?
|
|
98
|
+
{ 'Featurebase-Version': featurebaseVersion?.toString() }
|
|
99
|
+
: undefined),
|
|
100
|
+
},
|
|
101
|
+
options?.headers,
|
|
102
|
+
]),
|
|
103
|
+
});
|
|
104
|
+
}
|
|
20
105
|
/**
|
|
21
106
|
* Creates a new conversation. Supports both contact-initiated (customer/lead) and
|
|
22
107
|
* admin-initiated (outreach) conversations.
|
|
@@ -270,8 +355,57 @@ class Conversations extends resource_1.APIResource {
|
|
|
270
355
|
* ```
|
|
271
356
|
*/
|
|
272
357
|
retrieve(id, params = {}, options) {
|
|
273
|
-
const { 'Featurebase-Version': featurebaseVersion } = params ?? {};
|
|
358
|
+
const { 'Featurebase-Version': featurebaseVersion, ...query } = params ?? {};
|
|
274
359
|
return this._client.get((0, path_1.path) `/v2/conversations/${id}`, {
|
|
360
|
+
query,
|
|
361
|
+
...options,
|
|
362
|
+
headers: (0, headers_1.buildHeaders)([
|
|
363
|
+
{
|
|
364
|
+
...(featurebaseVersion?.toString() != null ?
|
|
365
|
+
{ 'Featurebase-Version': featurebaseVersion?.toString() }
|
|
366
|
+
: undefined),
|
|
367
|
+
},
|
|
368
|
+
options?.headers,
|
|
369
|
+
]),
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
/**
|
|
373
|
+
* Permanently deletes a conversation by its short ID.
|
|
374
|
+
*
|
|
375
|
+
* ### Path Parameters
|
|
376
|
+
*
|
|
377
|
+
* - `id` - The conversation short ID (numeric)
|
|
378
|
+
*
|
|
379
|
+
* ### Response
|
|
380
|
+
*
|
|
381
|
+
* Returns a deletion confirmation object:
|
|
382
|
+
*
|
|
383
|
+
* ```json
|
|
384
|
+
* {
|
|
385
|
+
* "id": "12345",
|
|
386
|
+
* "object": "conversation",
|
|
387
|
+
* "deleted": true
|
|
388
|
+
* }
|
|
389
|
+
* ```
|
|
390
|
+
*
|
|
391
|
+
* ### Caution
|
|
392
|
+
*
|
|
393
|
+
* This operation is **irreversible**. The conversation and all its messages will
|
|
394
|
+
* be permanently deleted.
|
|
395
|
+
*
|
|
396
|
+
* ### Version Availability
|
|
397
|
+
*
|
|
398
|
+
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
399
|
+
*
|
|
400
|
+
* @example
|
|
401
|
+
* ```ts
|
|
402
|
+
* const conversation =
|
|
403
|
+
* await client.support.conversations.delete('12345');
|
|
404
|
+
* ```
|
|
405
|
+
*/
|
|
406
|
+
delete(id, params = {}, options) {
|
|
407
|
+
const { 'Featurebase-Version': featurebaseVersion } = params ?? {};
|
|
408
|
+
return this._client.delete((0, path_1.path) `/v2/conversations/${id}`, {
|
|
275
409
|
...options,
|
|
276
410
|
headers: (0, headers_1.buildHeaders)([
|
|
277
411
|
{
|
|
@@ -303,7 +437,7 @@ class Conversations extends resource_1.APIResource {
|
|
|
303
437
|
* | `adminAssigneeId` | string/null | Admin ID to assign, or null to unassign |
|
|
304
438
|
* | `teamAssigneeId` | string/null | Team ID to assign, or null to unassign |
|
|
305
439
|
* | `title` | string | Conversation title |
|
|
306
|
-
* | `customAttributes` | object | Custom attributes to set on the conversation
|
|
440
|
+
* | `customAttributes` | object | Custom attributes to set on the conversation, keyed by conversation custom attribute ID |
|
|
307
441
|
* | `markAsRead` | object | Mark conversation as read for specific users |
|
|
308
442
|
*
|
|
309
443
|
* ### markAsRead Object
|
|
@@ -363,8 +497,8 @@ class Conversations extends resource_1.APIResource {
|
|
|
363
497
|
* {
|
|
364
498
|
* "title": "Billing Issue - Priority",
|
|
365
499
|
* "customAttributes": {
|
|
366
|
-
* "
|
|
367
|
-
* "
|
|
500
|
+
* "507f1f77bcf86cd799439011": 10,
|
|
501
|
+
* "507f1f77bcf86cd799439012": true
|
|
368
502
|
* }
|
|
369
503
|
* }
|
|
370
504
|
* ```
|
|
@@ -426,172 +560,97 @@ class Conversations extends resource_1.APIResource {
|
|
|
426
560
|
});
|
|
427
561
|
}
|
|
428
562
|
/**
|
|
429
|
-
*
|
|
430
|
-
*
|
|
563
|
+
* Adds a reply to an existing conversation. Supports both contact (customer/lead)
|
|
564
|
+
* and admin replies.
|
|
431
565
|
*
|
|
432
|
-
* ###
|
|
566
|
+
* ### Path Parameters
|
|
433
567
|
*
|
|
434
|
-
* - `
|
|
435
|
-
* - `cursor` - Cursor from previous response for pagination
|
|
436
|
-
* - `tagIds` - Optional tag filter as a comma-separated list of tag IDs. Matches
|
|
437
|
-
* conversations that contain all of the provided tags.
|
|
568
|
+
* - `id` - The conversation ID (short ID)
|
|
438
569
|
*
|
|
439
|
-
* ###
|
|
570
|
+
* ### Request Body
|
|
440
571
|
*
|
|
441
|
-
*
|
|
572
|
+
* The request body varies based on who is sending the reply:
|
|
442
573
|
*
|
|
443
|
-
*
|
|
444
|
-
* - `data` - Array of conversation objects
|
|
445
|
-
* - `nextCursor` - Cursor for the next page, or null if no more results
|
|
574
|
+
* #### Contact Reply (customer/lead)
|
|
446
575
|
*
|
|
447
|
-
*
|
|
576
|
+
* | Field | Type | Required | Description |
|
|
577
|
+
* | ------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
578
|
+
* | `type` | string | Yes | Must be "contact" |
|
|
579
|
+
* | `userId` | string | No\* | External user ID from your system |
|
|
580
|
+
* | `id` | string | No\* | Featurebase contact ID (24-character ObjectId) |
|
|
581
|
+
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
582
|
+
* | `messageType` | string | Yes | Must be "reply" |
|
|
583
|
+
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
448
584
|
*
|
|
449
|
-
*
|
|
585
|
+
* \*At least one of `userId` or `id` is required.
|
|
450
586
|
*
|
|
451
|
-
*
|
|
452
|
-
* - `title` - Conversation title
|
|
453
|
-
* - `state` - Current state ("open", "closed", or "snoozed")
|
|
454
|
-
* - `priority` - Whether the conversation is marked as priority
|
|
455
|
-
* - `adminAssigneeId` - ID of assigned admin (if any)
|
|
456
|
-
* - `teamAssigneeId` - ID of assigned team (if any)
|
|
457
|
-
* - `tags` - Current tags applied anywhere in the conversation
|
|
458
|
-
* - `participants` - Array of participants
|
|
459
|
-
* - `source` - Information about the first message
|
|
460
|
-
* - `createdAt` - Creation timestamp
|
|
461
|
-
* - `updatedAt` - Last update timestamp
|
|
587
|
+
* #### Admin Reply
|
|
462
588
|
*
|
|
463
|
-
*
|
|
589
|
+
* | Field | Type | Required | Description |
|
|
590
|
+
* | ------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
591
|
+
* | `type` | string | Yes | Must be "admin" |
|
|
592
|
+
* | `id` | string | Yes | Featurebase admin ID (24-character ObjectId) |
|
|
593
|
+
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
594
|
+
* | `messageType` | string | Yes | "reply" for customer-visible reply, "note" for internal note |
|
|
595
|
+
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
596
|
+
*
|
|
597
|
+
* ### Response
|
|
598
|
+
*
|
|
599
|
+
* Returns the created conversation part object with a **201 Created** status. The
|
|
600
|
+
* response includes both `bodyHtml` (with signed image URLs) and `bodyMarkdown`
|
|
601
|
+
* fields.
|
|
602
|
+
*
|
|
603
|
+
* ### Example Contact Reply
|
|
464
604
|
*
|
|
465
605
|
* ```json
|
|
466
606
|
* {
|
|
467
|
-
* "
|
|
468
|
-
* "
|
|
469
|
-
*
|
|
470
|
-
*
|
|
471
|
-
* "id": "12345",
|
|
472
|
-
* "title": "Question about pricing",
|
|
473
|
-
* "state": "open",
|
|
474
|
-
* "priority": false,
|
|
475
|
-
* "adminAssigneeId": null,
|
|
476
|
-
* "participants": [
|
|
477
|
-
* { "type": "customer", "id": "676f0f6765bdaa7d7d760f88" }
|
|
478
|
-
* ],
|
|
479
|
-
* ...
|
|
480
|
-
* }
|
|
481
|
-
* ],
|
|
482
|
-
* "nextCursor": "eyJpZCI6IjEyMzQ1In0="
|
|
607
|
+
* "type": "contact",
|
|
608
|
+
* "userId": "user_123",
|
|
609
|
+
* "bodyMarkdown": "Thank you for your help!",
|
|
610
|
+
* "messageType": "reply"
|
|
483
611
|
* }
|
|
484
612
|
* ```
|
|
485
613
|
*
|
|
486
|
-
* ###
|
|
487
|
-
*
|
|
488
|
-
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
614
|
+
* ### Example Admin Reply
|
|
489
615
|
*
|
|
490
|
-
*
|
|
491
|
-
*
|
|
492
|
-
*
|
|
493
|
-
*
|
|
494
|
-
*
|
|
616
|
+
* ```json
|
|
617
|
+
* {
|
|
618
|
+
* "type": "admin",
|
|
619
|
+
* "id": "507f1f77bcf86cd799439011",
|
|
620
|
+
* "bodyMarkdown": "I'm happy to help! Here's what you need to do...",
|
|
621
|
+
* "messageType": "reply"
|
|
495
622
|
* }
|
|
496
623
|
* ```
|
|
497
|
-
*/
|
|
498
|
-
list(params = {}, options) {
|
|
499
|
-
const { 'Featurebase-Version': featurebaseVersion, ...query } = params ?? {};
|
|
500
|
-
return this._client.getAPIList('/v2/conversations', (pagination_1.CursorPage), {
|
|
501
|
-
query,
|
|
502
|
-
...options,
|
|
503
|
-
headers: (0, headers_1.buildHeaders)([
|
|
504
|
-
{
|
|
505
|
-
...(featurebaseVersion?.toString() != null ?
|
|
506
|
-
{ 'Featurebase-Version': featurebaseVersion?.toString() }
|
|
507
|
-
: undefined),
|
|
508
|
-
},
|
|
509
|
-
options?.headers,
|
|
510
|
-
]),
|
|
511
|
-
});
|
|
512
|
-
}
|
|
513
|
-
/**
|
|
514
|
-
* Permanently deletes a conversation by its short ID.
|
|
515
|
-
*
|
|
516
|
-
* ### Path Parameters
|
|
517
|
-
*
|
|
518
|
-
* - `id` - The conversation short ID (numeric)
|
|
519
|
-
*
|
|
520
|
-
* ### Response
|
|
521
624
|
*
|
|
522
|
-
*
|
|
625
|
+
* ### Example Admin Note (Internal)
|
|
523
626
|
*
|
|
524
627
|
* ```json
|
|
525
628
|
* {
|
|
526
|
-
* "
|
|
527
|
-
* "
|
|
528
|
-
* "
|
|
629
|
+
* "type": "admin",
|
|
630
|
+
* "id": "507f1f77bcf86cd799439011",
|
|
631
|
+
* "bodyMarkdown": "Customer seems frustrated, escalating to tier 2.",
|
|
632
|
+
* "messageType": "note"
|
|
529
633
|
* }
|
|
530
634
|
* ```
|
|
531
635
|
*
|
|
532
|
-
* ###
|
|
533
|
-
*
|
|
534
|
-
* This operation is **irreversible**. The conversation and all its messages will
|
|
535
|
-
* be permanently deleted.
|
|
536
|
-
*
|
|
537
|
-
* ### Version Availability
|
|
538
|
-
*
|
|
539
|
-
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
540
|
-
*
|
|
541
|
-
* @example
|
|
542
|
-
* ```ts
|
|
543
|
-
* const conversation =
|
|
544
|
-
* await client.support.conversations.delete('12345');
|
|
545
|
-
* ```
|
|
546
|
-
*/
|
|
547
|
-
delete(id, params = {}, options) {
|
|
548
|
-
const { 'Featurebase-Version': featurebaseVersion } = params ?? {};
|
|
549
|
-
return this._client.delete((0, path_1.path) `/v2/conversations/${id}`, {
|
|
550
|
-
...options,
|
|
551
|
-
headers: (0, headers_1.buildHeaders)([
|
|
552
|
-
{
|
|
553
|
-
...(featurebaseVersion?.toString() != null ?
|
|
554
|
-
{ 'Featurebase-Version': featurebaseVersion?.toString() }
|
|
555
|
-
: undefined),
|
|
556
|
-
},
|
|
557
|
-
options?.headers,
|
|
558
|
-
]),
|
|
559
|
-
});
|
|
560
|
-
}
|
|
561
|
-
/**
|
|
562
|
-
* Attaches a workspace tag to a conversation.
|
|
563
|
-
*
|
|
564
|
-
* This endpoint requires both the tag ID to attach and the `actingAdminId` of the
|
|
565
|
-
* admin on whose behalf the mutation is recorded.
|
|
566
|
-
*
|
|
567
|
-
* ### Path Parameters
|
|
568
|
-
*
|
|
569
|
-
* - `id` - The conversation ID (short ID)
|
|
570
|
-
*
|
|
571
|
-
* ### Request Body
|
|
572
|
-
*
|
|
573
|
-
* | Field | Type | Required | Description |
|
|
574
|
-
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
575
|
-
* | `tagId` | string | Yes | The Featurebase tag ID to attach |
|
|
576
|
-
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
577
|
-
*
|
|
578
|
-
* ### Behavior
|
|
579
|
-
*
|
|
580
|
-
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
581
|
-
* records the tag attachment against that part so audit metadata remains
|
|
582
|
-
* deterministic.
|
|
583
|
-
*
|
|
584
|
-
* ### Response
|
|
585
|
-
*
|
|
586
|
-
* Returns the affected tag plus attachment metadata such as `targetPartId`,
|
|
587
|
-
* `appliedAt`, and `appliedBy`.
|
|
588
|
-
*
|
|
589
|
-
* ### Example Request
|
|
636
|
+
* ### Example Response
|
|
590
637
|
*
|
|
591
638
|
* ```json
|
|
592
639
|
* {
|
|
593
|
-
* "
|
|
594
|
-
* "
|
|
640
|
+
* "object": "conversation_part",
|
|
641
|
+
* "id": "3",
|
|
642
|
+
* "partType": "user_msg",
|
|
643
|
+
* "bodyHtml": "<p>Thank you for your help!</p>",
|
|
644
|
+
* "bodyMarkdown": "Thank you for your help!",
|
|
645
|
+
* "author": {
|
|
646
|
+
* "type": "customer",
|
|
647
|
+
* "id": "676f0f6765bdaa7d7d760f88",
|
|
648
|
+
* "name": "John Doe",
|
|
649
|
+
* "email": "john@example.com"
|
|
650
|
+
* },
|
|
651
|
+
* "channel": "desktop",
|
|
652
|
+
* "createdAt": "2025-01-15T10:40:00.000Z",
|
|
653
|
+
* "updatedAt": "2025-01-15T10:40:00.000Z"
|
|
595
654
|
* }
|
|
596
655
|
* ```
|
|
597
656
|
*
|
|
@@ -601,83 +660,17 @@ class Conversations extends resource_1.APIResource {
|
|
|
601
660
|
*
|
|
602
661
|
* @example
|
|
603
662
|
* ```ts
|
|
604
|
-
* const
|
|
605
|
-
* await client.support.conversations.
|
|
606
|
-
*
|
|
607
|
-
*
|
|
663
|
+
* const conversationPart =
|
|
664
|
+
* await client.support.conversations.reply('12345', {
|
|
665
|
+
* bodyMarkdown: 'Thank you for your help!',
|
|
666
|
+
* messageType: 'reply',
|
|
667
|
+
* type: 'contact',
|
|
608
668
|
* });
|
|
609
669
|
* ```
|
|
610
670
|
*/
|
|
611
|
-
|
|
671
|
+
reply(id, params, options) {
|
|
612
672
|
const { 'Featurebase-Version': featurebaseVersion, ...body } = params;
|
|
613
|
-
return this._client.post((0, path_1.path) `/v2/conversations/${id}/
|
|
614
|
-
body,
|
|
615
|
-
...options,
|
|
616
|
-
headers: (0, headers_1.buildHeaders)([
|
|
617
|
-
{
|
|
618
|
-
...(featurebaseVersion?.toString() != null ?
|
|
619
|
-
{ 'Featurebase-Version': featurebaseVersion?.toString() }
|
|
620
|
-
: undefined),
|
|
621
|
-
},
|
|
622
|
-
options?.headers,
|
|
623
|
-
]),
|
|
624
|
-
});
|
|
625
|
-
}
|
|
626
|
-
/**
|
|
627
|
-
* Removes a workspace tag from a conversation.
|
|
628
|
-
*
|
|
629
|
-
* This endpoint requires the `actingAdminId` of the admin on whose behalf the
|
|
630
|
-
* mutation is recorded.
|
|
631
|
-
*
|
|
632
|
-
* ### Path Parameters
|
|
633
|
-
*
|
|
634
|
-
* - `id` - The conversation ID (short ID)
|
|
635
|
-
* - `tagId` - The Featurebase tag ID to remove
|
|
636
|
-
*
|
|
637
|
-
* ### Request Body
|
|
638
|
-
*
|
|
639
|
-
* | Field | Type | Required | Description |
|
|
640
|
-
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
641
|
-
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
642
|
-
*
|
|
643
|
-
* ### Behavior
|
|
644
|
-
*
|
|
645
|
-
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
646
|
-
* records the tag removal against that part so audit metadata remains
|
|
647
|
-
* deterministic.
|
|
648
|
-
*
|
|
649
|
-
* ### Response
|
|
650
|
-
*
|
|
651
|
-
* Returns the affected tag payload with the most relevant attachment metadata
|
|
652
|
-
* available for that relationship.
|
|
653
|
-
*
|
|
654
|
-
* ### Example Request
|
|
655
|
-
*
|
|
656
|
-
* ```json
|
|
657
|
-
* {
|
|
658
|
-
* "actingAdminId": "507f1f77bcf86cd799439011"
|
|
659
|
-
* }
|
|
660
|
-
* ```
|
|
661
|
-
*
|
|
662
|
-
* ### Version Availability
|
|
663
|
-
*
|
|
664
|
-
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
665
|
-
*
|
|
666
|
-
* @example
|
|
667
|
-
* ```ts
|
|
668
|
-
* const response =
|
|
669
|
-
* await client.support.conversations.detachTag(
|
|
670
|
-
* '67ec1234abcd5678ef901234',
|
|
671
|
-
* {
|
|
672
|
-
* id: '12345',
|
|
673
|
-
* actingAdminId: '507f1f77bcf86cd799439011',
|
|
674
|
-
* },
|
|
675
|
-
* );
|
|
676
|
-
* ```
|
|
677
|
-
*/
|
|
678
|
-
detachTag(tagID, params, options) {
|
|
679
|
-
const { id, 'Featurebase-Version': featurebaseVersion, ...body } = params;
|
|
680
|
-
return this._client.delete((0, path_1.path) `/v2/conversations/${id}/tags/${tagID}`, {
|
|
673
|
+
return this._client.post((0, path_1.path) `/v2/conversations/${id}/reply`, {
|
|
681
674
|
body,
|
|
682
675
|
...options,
|
|
683
676
|
headers: (0, headers_1.buildHeaders)([
|
|
@@ -784,8 +777,10 @@ class Conversations extends resource_1.APIResource {
|
|
|
784
777
|
});
|
|
785
778
|
}
|
|
786
779
|
/**
|
|
787
|
-
*
|
|
788
|
-
*
|
|
780
|
+
* Attaches a workspace tag to a conversation.
|
|
781
|
+
*
|
|
782
|
+
* This endpoint requires both the tag ID to attach and the `actingAdminId` of the
|
|
783
|
+
* admin on whose behalf the mutation is recorded.
|
|
789
784
|
*
|
|
790
785
|
* ### Path Parameters
|
|
791
786
|
*
|
|
@@ -793,88 +788,92 @@ class Conversations extends resource_1.APIResource {
|
|
|
793
788
|
*
|
|
794
789
|
* ### Request Body
|
|
795
790
|
*
|
|
796
|
-
*
|
|
797
|
-
*
|
|
798
|
-
*
|
|
799
|
-
*
|
|
800
|
-
* | Field | Type | Required | Description |
|
|
801
|
-
* | ------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
802
|
-
* | `type` | string | Yes | Must be "contact" |
|
|
803
|
-
* | `userId` | string | No\* | External user ID from your system |
|
|
804
|
-
* | `id` | string | No\* | Featurebase contact ID (24-character ObjectId) |
|
|
805
|
-
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
806
|
-
* | `messageType` | string | Yes | Must be "reply" |
|
|
807
|
-
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
808
|
-
*
|
|
809
|
-
* \*At least one of `userId` or `id` is required.
|
|
791
|
+
* | Field | Type | Required | Description |
|
|
792
|
+
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
793
|
+
* | `tagId` | string | Yes | The Featurebase tag ID to attach |
|
|
794
|
+
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
810
795
|
*
|
|
811
|
-
*
|
|
796
|
+
* ### Behavior
|
|
812
797
|
*
|
|
813
|
-
*
|
|
814
|
-
*
|
|
815
|
-
*
|
|
816
|
-
* | `id` | string | Yes | Featurebase admin ID (24-character ObjectId) |
|
|
817
|
-
* | `bodyMarkdown` | string | Yes | The message content in markdown format. Images referenced by URL or as base64 data URIs will be automatically uploaded and stored. |
|
|
818
|
-
* | `messageType` | string | Yes | "reply" for customer-visible reply, "note" for internal note |
|
|
819
|
-
* | `skipNotifications` | boolean | No | Skip sending notifications (default: false). Useful for bulk imports. |
|
|
798
|
+
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
799
|
+
* records the tag attachment against that part so audit metadata remains
|
|
800
|
+
* deterministic.
|
|
820
801
|
*
|
|
821
802
|
* ### Response
|
|
822
803
|
*
|
|
823
|
-
* Returns the
|
|
824
|
-
*
|
|
825
|
-
* fields.
|
|
804
|
+
* Returns the affected tag plus attachment metadata such as `targetPartId`,
|
|
805
|
+
* `appliedAt`, and `appliedBy`.
|
|
826
806
|
*
|
|
827
|
-
* ### Example
|
|
807
|
+
* ### Example Request
|
|
828
808
|
*
|
|
829
809
|
* ```json
|
|
830
810
|
* {
|
|
831
|
-
* "
|
|
832
|
-
* "
|
|
833
|
-
* "bodyMarkdown": "Thank you for your help!",
|
|
834
|
-
* "messageType": "reply"
|
|
811
|
+
* "tagId": "67ec1234abcd5678ef901234",
|
|
812
|
+
* "actingAdminId": "507f1f77bcf86cd799439011"
|
|
835
813
|
* }
|
|
836
814
|
* ```
|
|
837
815
|
*
|
|
838
|
-
* ###
|
|
816
|
+
* ### Version Availability
|
|
839
817
|
*
|
|
840
|
-
*
|
|
841
|
-
*
|
|
842
|
-
*
|
|
843
|
-
*
|
|
844
|
-
*
|
|
845
|
-
*
|
|
846
|
-
*
|
|
818
|
+
* This endpoint is only available in API version 2026-01-01.nova and newer.
|
|
819
|
+
*
|
|
820
|
+
* @example
|
|
821
|
+
* ```ts
|
|
822
|
+
* const attachedConversationTag =
|
|
823
|
+
* await client.support.conversations.attachTag('12345', {
|
|
824
|
+
* actingAdminId: '507f1f77bcf86cd799439011',
|
|
825
|
+
* tagId: '67ec1234abcd5678ef901234',
|
|
826
|
+
* });
|
|
847
827
|
* ```
|
|
828
|
+
*/
|
|
829
|
+
attachTag(id, params, options) {
|
|
830
|
+
const { 'Featurebase-Version': featurebaseVersion, ...body } = params;
|
|
831
|
+
return this._client.post((0, path_1.path) `/v2/conversations/${id}/tags`, {
|
|
832
|
+
body,
|
|
833
|
+
...options,
|
|
834
|
+
headers: (0, headers_1.buildHeaders)([
|
|
835
|
+
{
|
|
836
|
+
...(featurebaseVersion?.toString() != null ?
|
|
837
|
+
{ 'Featurebase-Version': featurebaseVersion?.toString() }
|
|
838
|
+
: undefined),
|
|
839
|
+
},
|
|
840
|
+
options?.headers,
|
|
841
|
+
]),
|
|
842
|
+
});
|
|
843
|
+
}
|
|
844
|
+
/**
|
|
845
|
+
* Removes a workspace tag from a conversation.
|
|
848
846
|
*
|
|
849
|
-
*
|
|
847
|
+
* This endpoint requires the `actingAdminId` of the admin on whose behalf the
|
|
848
|
+
* mutation is recorded.
|
|
850
849
|
*
|
|
851
|
-
*
|
|
852
|
-
* {
|
|
853
|
-
* "type": "admin",
|
|
854
|
-
* "id": "507f1f77bcf86cd799439011",
|
|
855
|
-
* "bodyMarkdown": "Customer seems frustrated, escalating to tier 2.",
|
|
856
|
-
* "messageType": "note"
|
|
857
|
-
* }
|
|
858
|
-
* ```
|
|
850
|
+
* ### Path Parameters
|
|
859
851
|
*
|
|
860
|
-
*
|
|
852
|
+
* - `id` - The conversation ID (short ID)
|
|
853
|
+
* - `tagId` - The Featurebase tag ID to remove
|
|
854
|
+
*
|
|
855
|
+
* ### Request Body
|
|
856
|
+
*
|
|
857
|
+
* | Field | Type | Required | Description |
|
|
858
|
+
* | --------------- | ------ | -------- | ------------------------------------------------------------------------ |
|
|
859
|
+
* | `actingAdminId` | string | Yes | The admin performing the mutation. Must be a member of the organization. |
|
|
860
|
+
*
|
|
861
|
+
* ### Behavior
|
|
862
|
+
*
|
|
863
|
+
* Featurebase resolves the latest taggable reply/message in the conversation and
|
|
864
|
+
* records the tag removal against that part so audit metadata remains
|
|
865
|
+
* deterministic.
|
|
866
|
+
*
|
|
867
|
+
* ### Response
|
|
868
|
+
*
|
|
869
|
+
* Returns the affected tag payload with the most relevant attachment metadata
|
|
870
|
+
* available for that relationship.
|
|
871
|
+
*
|
|
872
|
+
* ### Example Request
|
|
861
873
|
*
|
|
862
874
|
* ```json
|
|
863
875
|
* {
|
|
864
|
-
* "
|
|
865
|
-
* "id": "3",
|
|
866
|
-
* "partType": "user_msg",
|
|
867
|
-
* "bodyHtml": "<p>Thank you for your help!</p>",
|
|
868
|
-
* "bodyMarkdown": "Thank you for your help!",
|
|
869
|
-
* "author": {
|
|
870
|
-
* "type": "customer",
|
|
871
|
-
* "id": "676f0f6765bdaa7d7d760f88",
|
|
872
|
-
* "name": "John Doe",
|
|
873
|
-
* "email": "john@example.com"
|
|
874
|
-
* },
|
|
875
|
-
* "channel": "desktop",
|
|
876
|
-
* "createdAt": "2025-01-15T10:40:00.000Z",
|
|
877
|
-
* "updatedAt": "2025-01-15T10:40:00.000Z"
|
|
876
|
+
* "actingAdminId": "507f1f77bcf86cd799439011"
|
|
878
877
|
* }
|
|
879
878
|
* ```
|
|
880
879
|
*
|
|
@@ -884,17 +883,19 @@ class Conversations extends resource_1.APIResource {
|
|
|
884
883
|
*
|
|
885
884
|
* @example
|
|
886
885
|
* ```ts
|
|
887
|
-
* const
|
|
888
|
-
* await client.support.conversations.
|
|
889
|
-
*
|
|
890
|
-
*
|
|
891
|
-
*
|
|
892
|
-
*
|
|
886
|
+
* const attachedConversationTag =
|
|
887
|
+
* await client.support.conversations.detachTag(
|
|
888
|
+
* '67ec1234abcd5678ef901234',
|
|
889
|
+
* {
|
|
890
|
+
* id: '12345',
|
|
891
|
+
* actingAdminId: '507f1f77bcf86cd799439011',
|
|
892
|
+
* },
|
|
893
|
+
* );
|
|
893
894
|
* ```
|
|
894
895
|
*/
|
|
895
|
-
|
|
896
|
-
const { 'Featurebase-Version': featurebaseVersion, ...body } = params;
|
|
897
|
-
return this._client.
|
|
896
|
+
detachTag(tagID, params, options) {
|
|
897
|
+
const { id, 'Featurebase-Version': featurebaseVersion, ...body } = params;
|
|
898
|
+
return this._client.delete((0, path_1.path) `/v2/conversations/${id}/tags/${tagID}`, {
|
|
898
899
|
body,
|
|
899
900
|
...options,
|
|
900
901
|
headers: (0, headers_1.buildHeaders)([
|