{"id":26381,"library":"sendbird-platform-sdk-typescript","title":"Sendbird Platform SDK (TypeScript)","description":"OpenAPI-generated TypeScript client for the Sendbird Platform API. Current stable version is 2.1.6, released as a minor/patch cadence. Supports all platform endpoints (users, channels, messages, bots, metadata, push preferences) with full TypeScript types and fetch-based HTTP. Key differentiators: auto-generated from official OpenAPI spec, object-form function calls since v2.0.0 (breaking change from v1), nullable type support, and weekly DND schedules in push preferences.","status":"active","version":"0.0.18","language":"javascript","source_language":"en","source_url":"https://github.com/sendbird/sendbird-platform-sdk-typescript","tags":["javascript","fetch","typescript","openapi-client","openapi-generator"],"install":[{"cmd":"npm install sendbird-platform-sdk-typescript","lang":"bash","label":"npm"},{"cmd":"yarn add sendbird-platform-sdk-typescript","lang":"bash","label":"yarn"},{"cmd":"pnpm add sendbird-platform-sdk-typescript","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"uses browser/Node fetch for HTTP requests","package":"fetch","optional":true}],"imports":[{"note":"SDK is ESM-only, default export is not available. Use named import.","wrong":"const SendbirdPlatformSDK = require('sendbird-platform-sdk-typescript')","symbol":"SendbirdPlatformSDK","correct":"import { SendbirdPlatformSDK } from 'sendbird-platform-sdk-typescript'"},{"note":"All functions are named exports from the package root.","wrong":"import createUser from 'sendbird-platform-sdk-typescript'","symbol":"createUser","correct":"import { createUser } from 'sendbird-platform-sdk-typescript'"},{"note":"Type imports should use `import type` to avoid runtime overhead.","wrong":"import { SendbirdPlatformSDKType } from 'sendbird-platform-sdk-typescript'","symbol":"SendbirdPlatformSDKType","correct":"import type { SendbirdPlatformSDKType } from 'sendbird-platform-sdk-typescript'"}],"quickstart":{"code":"import { SendbirdPlatformSDK } from 'sendbird-platform-sdk-typescript';\n\nconst sdk = new SendbirdPlatformSDK({\n  appId: process.env.SENDBIRD_APP_ID ?? '',\n  apiToken: process.env.SENDBIRD_API_TOKEN ?? '',\n});\n\nasync function main() {\n  const { users } = await sdk.user.listUsers();\n  console.log(users);\n}\n\nmain().catch(console.error);","lang":"typescript","description":"Initializes the SDK with appId and apiToken from environment variables, then lists users."},"warnings":[{"fix":"Update all function calls to pass an options object instead of positional arguments.","message":"v2.0.0 changed function calls to require object form for all parameters.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Use Node.js >=18 or provide a fetch polyfill.","message":"SDK uses fetch which may not be available in older Node.js versions (<18).","severity":"gotcha","affected_versions":"all"},{"fix":"Upgrade to >=2.1.1 which improved nullable type handling.","message":"Type definitions may not match actual API response shape for nullable fields.","severity":"gotcha","affected_versions":"<2.1.1"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run 'npm install sendbird-platform-sdk-typescript' and ensure import is correct: 'import { SendbirdPlatformSDK } from \"sendbird-platform-sdk-typescript\"'.","cause":"Package not installed or import path incorrect.","error":"Cannot find module 'sendbird-platform-sdk-typescript'"},{"fix":"Update to object form: sdk.user.listUsers({}) or check version-specific docs.","cause":"Using v1 syntax (positional arguments) on v2.","error":"TypeError: sdk.user.listUsers is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}