Getting Started
Get a working Findable integration in three steps.
1. Get an API Key
Contact your Findable representative to obtain an API key. Keys are prefixed with fk_live_ for production and fk_test_ for sandbox environments.
2. Install
React developers should install @findable-ai/react, which includes the SDK as a dependency:
Terminalbash
npm install @findable-ai/reactFor non-React projects, install the SDK directly:
Terminalbash
npm install @findable-ai/sdk3. Add the Chat Widget
Wrap your app in <FindableProvider> and drop in <FindableChat>:
App.tsxtsx
import { FindableProvider, FindableChat } from '@findable-ai/react';
import '@findable-ai/react/styles.css';
function App({ sessionToken }: { sessionToken: string }) {
return (
<FindableProvider token={sessionToken} buildingOwnerId="YOUR_OWNER_ID">
<FindableChat buildingId="bld-789" />
</FindableProvider>
);
}Exchange your API key for a session token server-side. See Authentication for details.
That's it!
The chat widget connects to the Findable API, handles streaming responses, shows citations, and suggests follow-up questions — all out of the box.
Using the SDK Directly
For server-side usage or full UI control, use the SDK client:
Node.jstypescript
import { FindableClient } from '@findable-ai/sdk';
const client = new FindableClient({
apiKey: 'YOUR_API_KEY', // pragma: allowlist secret
buildingOwnerId: 'YOUR_OWNER_ID',
});
// Non-streaming
const response = await client.ask({
buildingId: 'bld-789',
query: 'What fire safety documents are available?',
});
console.log(response.answer);
// Streaming
for await (const event of client.askStream({
buildingId: 'bld-789',
query: 'Fire safety docs?',
})) {
if (event.event === 'text') process.stdout.write(event.text);
}Next Steps
- SDK Client Reference — All methods and options
- Chat Component — Props, customisation, and headless hook
- Search Component — Document search widget
- Theming Guide — Customise colours and fonts