Skip to content
  • sdk
  • cli
  • api

Upgrading to samva 0.28 and the CLI 0.26

samva 0.28 replaces unsubscribe groups with topics, types query values, and adds campaign run reports. CLI releases now ship native downloads.

Search your code for the old names below, then let the type checker find the rest. Each package's full notes are on its GitHub release.

What you need to do

  1. Topics replace unsubscribe groups. Use samva.topics, audience.topicId on campaigns, and topicId on confirmation requests. Set a contact's status per topic and channel with topics.setSubscriptions. Existing opt-outs carry over. Subscription webhooks carry topicId, topicName, and channel, and samva subscriptions subscribe takes --topic-id. See Manage topics and subscriptions.
  2. Query values. Pass numbers and booleans where you passed strings, such as limit: 20 and isActive: false, in both SDKs and @samva/mailbox.
  3. Template build failures. Saving, opening, publishing, or restoring a workspace whose source fails to build throws TemplateSourceError (HTTP 422) with the compiler's diagnostics, where it threw ConflictError. Catch the new error to read the findings.
  4. Bulk contact calls. contacts.bulkDelete, contacts.bulkUpdateTags, contacts.bulkUpdateStatus, conversations.addContacts, conversations.removeContacts, and the ids filter of contacts.export take at most 1,000 contact ids per request.
  5. Usage. Organization usage drops standardGranted, standardRemaining, and standardResetsAt. Read AI credits from includedAiCredits, usedAiCredits, aiPackCredits, and aiResetsAt.

Preview · Available to selected organizations.

List import. contacts.bulkImport is removed. Plan an import with contacts.planImport, start it with contacts.startImport, and follow the background job with contacts.getImportJob. See Import a reader list.

Preview · Available to selected organizations.

Agents. Remove approvalPolicy from agent definitions. Every Google Calendar booking, change, and cancellation waits for a person to approve it.

Also new

  • Campaign run reports. campaigns.getRunReport and samva campaigns report return a run's delivery outcomes, replies, topic unsubscribes, and skipped recipients.
  • Personalized campaigns. Campaign templates merge each contact's profile and custom fields. Render a campaign as a contact with campaigns.preview, and send yourself a copy with campaigns.sendTest.
  • Campaign replies. A reply to a campaign message carries campaign: { campaignId, runId } in mailbox reads and webhooks.
  • Brand return link. Set footer.websiteUrl on a brand to choose the link on its hosted recipient pages.
  • Source and downloads on GitHub. The SDK's source is public at SamvaHQ/samva-typescript and the CLI's at SamvaHQ/samva-cli, both updated with each release. Each CLI release there includes the native samva executable for macOS and Linux with a SHA256SUMS file.

Links

Related

All changelog entries