Integrate the SDK › Implementation

Prerequisites and technical requirements

Before you write a line of code, the workspace has to hold what the integration will name, and your stack has to meet a few technical requirements. Access to the Speechineer service is either unauthenticated or authenticated, and the prerequisites and technical requirements differ accordingly — the items that apply to one of them only say so.

UnauthenticatedAuthenticated
Fitpublic pages and developmentanything behind a login
Who can use Speechineer in your formanyone who can open the formonly users your backend issues a token to
API keyModeUnsignedSigned
Locationyour frontend — the client passes it in its apiKey optionyour backend — the token carries it in its api_key claim
AccountLocationyour frontend — the client names it in its account optionyour backend — the token carries it in its account_key claim
Signing keynot neededneeded — its private half signs every token

Prerequisites

Warning

The workspace Settings page on its Security tab, reached from Workspaces in the sidebar, with the Require signed account JWT switch highlighted
Workspaces › Settings › Security › Require signed account JWT — off for an unauthenticated form.
For an unauthenticated form, the workspace's Require signed account JWT setting has to be off, or every unsigned request is refused.

Technical requirements

  • Compatible frontend framework:
    • React: 18 or newer.
    • Angular: 17 or newer.
    • JavaScript: any, with a bundler that handles ES modules.
  • Node.js 18 or newer — to install the package.
  • A secure origin — the page served over HTTPS (or localhost), since browsers only hand out the microphone there.
  • A backend that signs tokens (authenticated only) — one your users already log in to, since the token endpoint sits behind that login, with a library that signs PS256 tokens: jose in Node.js, PyJWT with the cryptography extra in Python, or your platform's equivalent.
  • The package for your framework:
bash
npm install @speechineer/react