Implementation:FlowiseAI Flowise GetVectorStoreProviders
| Attribute | Value |
|---|---|
| Sources | packages/ui/src/api/documentstore.js:L30-L32 |
| Domains | Document_Store_Ingestion |
| Last Updated | 2026-02-12 14:00 GMT |
Overview
GetVectorStoreProviders encompasses the three API client functions that retrieve available provider component definitions for vector stores, embeddings, and record managers. These endpoints return the full component schemas needed to render dynamic configuration forms in the UI.
Code Reference
Source Location
- File:
packages/ui/src/api/documentstore.js, Lines 30-32 - Repository: FlowiseAI/Flowise
Signature
const getVectorStoreProviders = () => client.get('/document-store/components/vectorstore')
const getEmbeddingProviders = () => client.get('/document-store/components/embeddings')
const getRecordManagerProviders = () => client.get('/document-store/components/recordmanager')
getVectorStoreProviderssends a GET request to/api/v1/document-store/components/vectorstore.getEmbeddingProviderssends a GET request to/api/v1/document-store/components/embeddings.getRecordManagerProviderssends a GET request to/api/v1/document-store/components/recordmanager.
Import
import documentStoreApi from '@/api/documentstore'
The functions are accessed as documentStoreApi.getVectorStoreProviders(), documentStoreApi.getEmbeddingProviders(), and documentStoreApi.getRecordManagerProviders() after importing the default export.
I/O Contract
Inputs
| Parameter | Type | Required | Description |
|---|---|---|---|
| (none) | -- | -- | All three functions take no parameters (GET requests) |
Outputs (same structure for all three)
| Field | Type | Description |
|---|---|---|
| data | Component[] | Array of provider component definitions |
| data[].name | string | Internal component identifier (e.g., pinecone, openAIEmbeddings)
|
| data[].label | string | Human-readable display name (e.g., Pinecone, OpenAI Embeddings)
|
| data[].icon | string | Icon identifier or URL for the component |
| data[].description | string | Description of the provider's capabilities |
| data[].inputParams | object[] | Array of input parameter definitions for the configuration form |
| data[].inputAnchors | object[] | Array of input anchor definitions for connections to other components |
Each function returns a Promise<{data: Component[]}> from the axios response.
Usage Examples
Fetching All Providers in Parallel
import documentStoreApi from '@/api/documentstore'
const loadAllProviders = async () => {
const [vectorStoreRes, embeddingRes, recordManagerRes] = await Promise.all([
documentStoreApi.getVectorStoreProviders(),
documentStoreApi.getEmbeddingProviders(),
documentStoreApi.getRecordManagerProviders()
])
return {
vectorStores: vectorStoreRes.data,
embeddings: embeddingRes.data,
recordManagers: recordManagerRes.data
}
}
Finding a Specific Provider
import documentStoreApi from '@/api/documentstore'
const getPineconeConfig = async () => {
const response = await documentStoreApi.getVectorStoreProviders()
const pinecone = response.data.find(p => p.name === 'pinecone')
if (!pinecone) throw new Error('Pinecone provider not available')
console.log('Pinecone parameters:')
pinecone.inputParams.forEach(param => {
console.log(` ${param.name} (${param.type}): ${param.label}`)
if (param.optional) console.log(' [optional]')
})
return pinecone
}
Building Dynamic Configuration Forms
import documentStoreApi from '@/api/documentstore'
const buildProviderForm = async (providerType, providerName) => {
let response
switch (providerType) {
case 'vectorstore':
response = await documentStoreApi.getVectorStoreProviders()
break
case 'embeddings':
response = await documentStoreApi.getEmbeddingProviders()
break
case 'recordmanager':
response = await documentStoreApi.getRecordManagerProviders()
break
}
const provider = response.data.find(p => p.name === providerName)
if (!provider) throw new Error(`Provider ${providerName} not found`)
// Generate form fields from inputParams
const fields = provider.inputParams.map(param => ({
name: param.name,
label: param.label,
type: param.type,
required: !param.optional,
default: param.default,
options: param.options || []
}))
return { provider, fields }
}
Listing Available Embedding Models
import documentStoreApi from '@/api/documentstore'
const listEmbeddingOptions = async () => {
const response = await documentStoreApi.getEmbeddingProviders()
response.data.forEach(embedding => {
console.log(`${embedding.label}:`)
console.log(` ${embedding.description}`)
// Check for credential requirements
const credParams = embedding.inputParams.filter(p => p.type === 'credential')
if (credParams.length > 0) {
console.log(' Requires credentials:', credParams.map(p => p.name).join(', '))
}
})
return response.data
}
Related Pages
- Principle:FlowiseAI_Flowise_Vector_Store_Provider_Configuration
- Implementation:FlowiseAI_Flowise_GetDocumentLoaders -- Similar pattern for fetching loader components
- Implementation:FlowiseAI_Flowise_GetNodesByCategory -- Similar pattern for fetching node components by category
- Implementation:FlowiseAI_Flowise_InsertIntoVectorStore -- Uses the configured providers for upsert
- Implementation:FlowiseAI_Flowise_QueryVectorStore -- Uses the configured providers for query