{"query":"JavaScript and TypeScript SDK Quickstart","corpusVersion":"local","generatedAt":"2026-11-02T05:36:46.879Z","results":[{"blockId":"sdks.typescript#javascript-and-typescript-sdk-quickstart","pageId":"sdks.typescript","title":"JavaScript and TypeScript SDK Quickstart","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#javascript-and-typescript-sdk-quickstart","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"javascript-and-typescript-sdk-quickstart","kind":"quickstart","productArea":"developer_tools","score":4676.873681262337,"reasons":["search_match","exact_match","title_match","term_match","prefix_or_fuzzy_match"],"markdown":"# JavaScript and TypeScript SDK Quickstart"},{"blockId":"sdks.typescript#related-reference-pages","pageId":"sdks.typescript","title":"Related reference pages","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#related-reference-pages","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"related-reference-pages","kind":"quickstart","productArea":"developer_tools","score":1754.9399961710812,"reasons":["search_match","exact_match","page_title_match","term_match","prefix_or_fuzzy_match"],"markdown":"## Related reference pages\n\n{% related-card-grid %}\n- [Delivery and recovery](/docs/sdks/delivery-and-recovery)\n- [Fieldloop API](/docs/public-api/fieldloop)\n- [Fieldloop troubleshooting](/docs/troubleshooting/fieldloop)\n{% /related-card-grid %}"},{"blockId":"sdks.typescript#in-the-sdk-checkout","pageId":"sdks.typescript","title":"In the SDK checkout:","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#in-the-sdk-checkout","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"in-the-sdk-checkout","kind":"quickstart","productArea":"developer_tools","score":1695.3165396558677,"reasons":["search_match","exact_match","page_title_match","term_match","prefix_or_fuzzy_match"],"markdown":"# In the SDK checkout:\nnpm ci\nnpm run build"},{"blockId":"sdks.typescript#cancellation-and-continuous-ingestion","pageId":"sdks.typescript","title":"Cancellation and continuous ingestion","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#cancellation-and-continuous-ingestion","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"cancellation-and-continuous-ingestion","kind":"quickstart","productArea":"developer_tools","score":1653.3848308127133,"reasons":["search_match","exact_match","page_title_match","term_match","prefix_or_fuzzy_match"],"markdown":"## Cancellation and continuous ingestion\n\nOperations accept `signal` and `timeoutMs`. Create an ingestor with `client.fieldloop.ingestor(scope)`, use `await ingestor.add(log)`, and drain with `await ingestor.close()` in a `finally` block.\n\n`add` acknowledges memory. Failed batches remain in `status` and `pendingBatch`; recover with their original bytes/key. Defaults impose no capacity or operation deadline. Receipt callbacks must return promptly. See [Delivery and Recovery](/docs/sdks/delivery-and-recovery)."},{"blockId":"sdks.typescript#prerequisites-and-installation","pageId":"sdks.typescript","title":"Prerequisites and installation","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#prerequisites-and-installation","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"prerequisites-and-installation","kind":"quickstart","productArea":"developer_tools","score":1512.9687067792079,"reasons":["search_match","exact_match","page_title_match","term_match","prefix_or_fuzzy_match"],"markdown":"## Prerequisites and installation\n\nUse Node.js 22+, ES modules and a source checkout of `teammately-js`. Build the checkout with its npm workflow:\n\n```sh"},{"blockId":"sdks.typescript#success-and-recovery","pageId":"sdks.typescript","title":"Success and recovery","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#success-and-recovery","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"success-and-recovery","kind":"quickstart","productArea":"developer_tools","score":1511.866619677874,"reasons":["search_match","exact_match","page_title_match","term_match","prefix_or_fuzzy_match"],"markdown":"## Success and recovery\n\nInspect row counts after processing. Preserve `ReceiptError.receipt` for terminal processing outcomes. `Batch.prepare` rejects unsafe numeric integers; use `Batch.restore(originalBytes, originalKey)` when exact JSON bytes, including large integer literals, must be retained."},{"blockId":"sdks.typescript#in-an-npm-application","pageId":"sdks.typescript","title":"In an npm application:","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#in-an-npm-application","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"in-an-npm-application","kind":"quickstart","productArea":"developer_tools","score":1503.592434391459,"reasons":["search_match","exact_match","page_title_match","term_match","prefix_or_fuzzy_match"],"markdown":"# In an npm application:\nnpm install /path/to/teammately-js\n```\n\nFor an application using another package manager, use that manager's local-package installation workflow. The package is `@teammately/sdk` and includes TypeScript declarations. Inject the API key through your server host's secret mechanism and configure the three destination variables below."},{"blockId":"sdks.typescript#submit-and-inspect-a-batch","pageId":"sdks.typescript","title":"Submit and inspect a batch","pageTitle":"JavaScript and TypeScript SDK Quickstart","url":"https://teammately.ai/docs/sdks/typescript.md","humanUrl":"https://teammately.ai/docs/sdks/typescript#submit-and-inspect-a-batch","markdownUrl":"https://teammately.ai/docs/sdks/typescript.md","sectionId":"submit-and-inspect-a-batch","kind":"quickstart","productArea":"developer_tools","score":1498.837122832923,"reasons":["search_match","exact_match","page_title_match","term_match","prefix_or_fuzzy_match"],"markdown":"## Submit and inspect a batch"}]}