ArthurAI RAG Providers API
Endpoints for RAG provider management
Endpoints for RAG provider management
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/arthurai-rag-providers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Arthur GenAI Engine Agent Discovery RAG Providers API
version: 2.1.688
description: Endpoints for RAG provider management
servers:
- url: https://platform.arthur.ai/api
description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: RAG Providers
description: Endpoints for RAG provider management
paths:
/api/v1/tasks/{task_id}/rag_providers:
post:
tags:
- RAG Providers
summary: Create Rag Provider
description: Register a new RAG provider connection configuration.
operationId: create_rag_provider_api_v1_tasks__task_id__rag_providers_post
security:
- API Key: []
parameters:
- name: task_id
in: path
required: true
schema:
type: string
description: ID of the task to register a new provider connection for. Should be formatted as a UUID.
title: Task Id
description: ID of the task to register a new provider connection for. Should be formatted as a UUID.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderConfigurationRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderConfigurationResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
get:
tags:
- RAG Providers
summary: Get Rag Providers
description: Get list of RAG provider connection configurations for the task.
operationId: get_rag_providers_api_v1_tasks__task_id__rag_providers_get
security:
- API Key: []
parameters:
- name: task_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the task to fetch the provider connections for.
title: Task Id
description: ID of the task to fetch the provider connections for.
- name: config_name
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: RAG Provider configuration name substring to search for.
title: Config Name
description: RAG Provider configuration name substring to search for.
- name: authentication_method
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/RagProviderAuthenticationMethodEnum'
- type: 'null'
description: RAG Provider authentication method to filter by.
title: Authentication Method
description: RAG Provider authentication method to filter by.
- name: rag_provider_name
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/RagAPIKeyAuthenticationProviderEnum'
- type: 'null'
description: RAG provider name to filter by.
title: Rag Provider Name
description: RAG provider name to filter by.
- name: sort
in: query
required: false
schema:
$ref: '#/components/schemas/PaginationSortMethod'
description: Sort the results (asc/desc)
default: desc
description: Sort the results (asc/desc)
- name: page_size
in: query
required: false
schema:
type: integer
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
default: 10
title: Page Size
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
- name: page
in: query
required: false
schema:
type: integer
description: Page number
default: 0
title: Page
description: Page number
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchRagProviderConfigurationsResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/rag_providers/{provider_id}:
get:
tags:
- RAG Providers
summary: Get Rag Provider
description: Get a single RAG provider connection configuration.
operationId: get_rag_provider_api_v1_rag_providers__provider_id__get
security:
- API Key: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of RAG provider configuration.
title: Provider Id
description: ID of RAG provider configuration.
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderConfigurationResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
patch:
tags:
- RAG Providers
summary: Update Rag Provider
description: Update a single RAG provider connection configuration.
operationId: update_rag_provider_api_v1_rag_providers__provider_id__patch
security:
- API Key: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the RAG provider to update the connection configuration for.
title: Provider Id
description: ID of the RAG provider to update the connection configuration for.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderConfigurationUpdateRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderConfigurationResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- RAG Providers
summary: Delete Rag Provider
description: Delete a RAG provider connection configuration.
operationId: delete_rag_provider_api_v1_rag_providers__provider_id__delete
security:
- API Key: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the RAG provider configuration to delete.
title: Provider Id
description: ID of the RAG provider configuration to delete.
responses:
'204':
description: Successful Response
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/rag_providers/{provider_id}/collections:
get:
tags:
- RAG Providers
summary: List Rag Provider Collections
description: Lists all available vector database collections.
operationId: list_rag_provider_collections_api_v1_rag_providers__provider_id__collections_get
security:
- API Key: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of RAG provider configuration to use for authentication with the vector store.
title: Provider Id
description: ID of RAG provider configuration to use for authentication with the vector store.
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchRagProviderCollectionsResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/tasks/{task_id}/rag_providers/test_connection:
post:
tags:
- RAG Providers
summary: Test Rag Provider Connection
description: Test a new RAG provider connection configuration.
operationId: test_rag_provider_connection_api_v1_tasks__task_id__rag_providers_test_connection_post
security:
- API Key: []
parameters:
- name: task_id
in: path
required: true
schema:
type: string
description: ID of the task to test the new provider connection for. Should be formatted as a UUID.
title: Task Id
description: ID of the task to test the new provider connection for. Should be formatted as a UUID.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderTestConfigurationRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ConnectionCheckResult'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/rag_providers/{provider_id}/similarity_text_search:
post:
tags:
- RAG Providers
summary: Execute Similarity Text Search
description: Execute a RAG Provider Similarity Text Search.
operationId: execute_similarity_text_search_api_v1_rag_providers__provider_id__similarity_text_search_post
security:
- API Key: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the RAG provider configuration to use for the vector database connection.
title: Provider Id
description: ID of the RAG provider configuration to use for the vector database connection.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RagVectorSimilarityTextSearchSettingRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderQueryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/rag_providers/{provider_id}/keyword_search:
post:
tags:
- RAG Providers
summary: Execute Keyword Search
description: Execute a RAG Provider Keyword (BM25/Sparse Vector) Search.
operationId: execute_keyword_search_api_v1_rag_providers__provider_id__keyword_search_post
security:
- API Key: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the RAG provider configuration to use for the vector database connection.
title: Provider Id
description: ID of the RAG provider configuration to use for the vector database connection.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RagKeywordSearchSettingRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderQueryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/rag_providers/{provider_id}/hybrid_search:
post:
tags:
- RAG Providers
summary: Execute Hybrid Search
description: Execute a RAG provider hybrid (keyword and vector similarity) search.
operationId: execute_hybrid_search_api_v1_rag_providers__provider_id__hybrid_search_post
security:
- API Key: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the RAG provider configuration to use for the vector database connection.
title: Provider Id
description: ID of the RAG provider configuration to use for the vector database connection.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RagHybridSearchSettingRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RagProviderQueryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
WeaviateVectorSimilarityTextSearchSettingsRequest:
properties:
collection_name:
type: string
title: Collection Name
description: Name of the vector collection used for the search.
limit:
anyOf:
- type: integer
- type: 'null'
title: Limit
description: Maximum number of objects to return.
include_vector:
anyOf:
- type: boolean
- type: string
- items:
type: string
type: array
- type: 'null'
title: Include Vector
description: Boolean value whether to include vector embeddings in the response or can be used to specify the names of the vectors to include in the response if your collection uses named vectors. Will be included as a dictionary in the vector property in the response.
default: false
offset:
anyOf:
- type: integer
- type: 'null'
title: Offset
description: Skips first N results in similarity response. Useful for pagination.
auto_limit:
anyOf:
- type: integer
- type: 'null'
title: Auto Limit
description: Automatically limit search results to groups of objects with similar distances, stopping after auto_limit number of significant jumps.
return_metadata:
anyOf:
- items:
type: string
enum:
- creation_time
- last_update_time
- distance
- certainty
- score
- explain_score
- is_consistent
- query_profile
type: array
- $ref: '#/components/schemas/MetadataQuery'
- type: 'null'
title: Return Metadata
description: Specify metadata fields to return.
return_properties:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Return Properties
description: Specify which properties to return for each object.
rag_provider:
type: string
const: weaviate
title: Rag Provider
default: weaviate
certainty:
anyOf:
- type: number
maximum: 1.0
minimum: 0.0
- type: 'null'
title: Certainty
description: Minimum similarity score to return. Higher values correspond to more similar results. Only one of distance and certainty can be specified.
distance:
anyOf:
- type: number
- type: 'null'
title: Distance
description: Maximum allowed distance between the query and result vectors. Lower values corresponds to more similar results. Only one of distance and certainty can be specified.
target_vector:
anyOf:
- type: string
- items:
type: string
type: array
- $ref: '#/components/schemas/_MultiTargetVectorJoin'
- type: 'null'
title: Target Vector
description: Specifies vector to use for similarity search when using named vectors.
query:
anyOf:
- items:
type: string
type: array
- type: string
title: Query
description: Input text to find objects with near vectors for.
type: object
required:
- collection_name
- query
title: WeaviateVectorSimilarityTextSearchSettingsRequest
WeaviateKeywordSearchSettingsRequest:
properties:
collection_name:
type: string
title: Collection Name
description: Name of the vector collection used for the search.
limit:
anyOf:
- type: integer
- type: 'null'
title: Limit
description: Maximum number of objects to return.
include_vector:
anyOf:
- type: boolean
- type: string
- items:
type: string
type: array
- type: 'null'
title: Include Vector
description: Boolean value whether to include vector embeddings in the response or can be used to specify the names of the vectors to include in the response if your collection uses named vectors. Will be included as a dictionary in the vector property in the response.
default: false
offset:
anyOf:
- type: integer
- type: 'null'
title: Offset
description: Skips first N results in similarity response. Useful for pagination.
auto_limit:
anyOf:
- type: integer
- type: 'null'
title: Auto Limit
description: Automatically limit search results to groups of objects with similar distances, stopping after auto_limit number of significant jumps.
return_metadata:
anyOf:
- items:
type: string
enum:
- creation_time
- last_update_time
- distance
- certainty
- score
- explain_score
- is_consistent
- query_profile
type: array
- $ref: '#/components/schemas/MetadataQuery'
- type: 'null'
title: Return Metadata
description: Specify metadata fields to return.
return_properties:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Return Properties
description: Specify which properties to return for each object.
rag_provider:
type: string
const: weaviate
title: Rag Provider
default: weaviate
minimum_match_or_operator:
anyOf:
- type: integer
- type: 'null'
title: Minimum Match Or Operator
description: Minimum number of keywords that define a match. Objects returned will have to have at least this many matches.
and_operator:
anyOf:
- type: boolean
- type: 'null'
title: And Operator
description: Search returns objects that contain all tokens in the search string. Cannot be used with minimum_match_or_operator
query:
type: string
title: Query
description: Input text to find objects with keyword matches.
type: object
required:
- collection_name
- query
title: WeaviateKeywordSearchSettingsRequest
WeaviateQueryResultMetadata:
properties:
creation_time:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Creation Time
description: Vector object creation time.
last_update_time:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Last Update Time
description: Vector object last update time.
distance:
anyOf:
- type: number
- type: 'null'
title: Distance
description: Raw distance metric used in the vector search. Lower values indicate closer vectors.
certainty:
anyOf:
- type: number
- type: 'null'
title: Certainty
description: Similarity score measure between 0 and 1. Higher values correspond to more similar reesults.
score:
anyOf:
- type: number
- type: 'null'
title: Score
description: Normalized relevance metric that ranks search results.
explain_score:
anyOf:
- type: string
- type: 'null'
title: Explain Score
description: Explanation of how the score was calculated.
is_consistent:
anyOf:
- type: boolean
- type: 'null'
title: Is Consistent
description: Indicates if the object is consistent across all replicates in a multi-node Weaviate cluster.
type: object
title: WeaviateQueryResultMetadata
description: 'Metadata from weaviate for a vector object:
https://weaviate-python-client.readthedocs.io/en/latest/weaviate.collections.classes.html#module-weaviate.collections.classes.internal'
ApiKeyRagAuthenticationConfigResponse:
properties:
authentication_method:
type: string
const: api_key
title: Authentication Method
default: api_key
host_url:
type: string
minLength: 1
format: uri
title: Host Url
description: URL of host instance to authenticate with.
rag_provider:
$ref: '#/components/schemas/RagAPIKeyAuthenticationProviderEnum'
description: Name of RAG provider to authenticate with.
type: object
required:
- host_url
- rag_provider
title: ApiKeyRagAuthenticationConfigResponse
RagProviderConfigurationUpdateRequest:
properties:
authentication_config:
anyOf:
- $ref: '#/components/schemas/ApiKeyRagAuthenticationConfigUpdateRequest'
- type: 'null'
description: Configuration of the authentication strategy.
name:
anyOf:
- type: string
- type: 'null'
title: Name
description: Name of RAG provider configuration.
description:
anyOf:
- type: string
- type: 'null'
title: Description
description: Description of RAG provider configuration.
type: object
title: RagProviderConfigurationUpdateRequest
RagProviderConfigurationRequest:
properties:
authentication_config:
$ref: '#/components/schemas/ApiKeyRagAuthenticationConfigRequest'
description: Configuration of the authentication strategy.
name:
type: string
title: Name
description: Name of RAG provider configuration.
description:
anyOf:
- type: string
- type: 'null'
title: Description
description: Description of RAG provider configuration.
type: object
required:
- authentication_config
- name
title: RagProviderConfigurationRequest
MetadataQuery:
properties:
creation_time:
type: boolean
title: Creation Time
default: false
last_update_time:
type: boolean
title: Last Update Time
default: false
distance:
type: boolean
title: Distance
default: false
certainty:
type: boolean
title: Certainty
default: false
score:
type: boolean
title: Score
default: false
explain_score:
type: boolean
title: Explain Score
default: false
is_consistent:
type: boolean
title: Is Consistent
default: false
query_profile:
type: boolean
title: Query Profile
default: false
additionalProperties: false
type: object
title: MetadataQuery
description: Define which metadata should be returned in the query's results.
RagProviderCollectionResponse:
properties:
identifier:
type: string
title: Identifier
description: Unique identifier of the collection.
description:
anyOf:
- type: string
- type: 'null'
title: Description
description: Description of the collection.
type: object
required:
- identifier
title: RagProviderCollectionResponse
RagVectorSimilarityTextSearchSettingRequest:
properties:
settings:
$ref: '#/components/schemas/WeaviateVectorSimilarityTextSearchSettingsRequest'
description: Settings for the similarity text search request to the vector database.
type: object
required:
- settings
title: RagVectorSimilarityTextSearchSettingRequest
ConnectionCheckResult:
properties:
connection_check_outcome:
$ref: '#/components/schemas/ConnectionCheckOutcome'
description: Result of the connection check.
failure_reason:
anyOf:
- type: string
- type: 'null'
title: Failure Reason
description: Explainer of the connection check failure result.
type: object
required:
- connection_check_outcome
title: ConnectionCheckResult
PaginationSortMethod:
type: string
enum:
- asc
- desc
title: PaginationSortMethod
HybridFusion:
type: string
enum:
- FUSION_TYPE_RANKED
- FUSION_TYPE_RELATIVE_SCORE
title: HybridFusion
description: Define how the query's hybrid fusion operation should be performed.
RagProviderAuthenticationMethodEnum:
type: string
enum:
- api_key
title: RagProviderAuthenticationMethodEnum
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
RagHybridSearchSettingRequest:
properties:
settings:
$ref: '#/components/schemas/WeaviateHybridSearchSettingsRequest'
description: Settings for the hybrid search request to the vector database.
type: object
required:
- settings
title: RagHybridSearchSettingRequest
WeaviateHybridSearchSettingsRequest:
properties:
collection_name:
type: string
title: Collection Name
description: Name of the vector collection used for the search.
limit:
anyOf:
- type: integer
- type: 'null'
title: Limit
description: Maximum number of objects to return.
include_vector:
anyOf:
- type: boolean
- type: string
- items:
type: string
type: array
- type: 'null'
title: Include Vector
description: Boolean value whether to include vector embeddings in the response or can be used to specify the names of the vectors to include in the response if your collection uses named vectors. Will be included as a dictionary in the vector property in the response.
default: false
offset:
anyOf:
- type: integer
- type: 'null'
title: Offset
description: Skips first N results in similarity response. Useful for pagination.
auto_limit:
anyOf:
- type: integer
- type: 'null'
title: Auto Limit
description: Automatically limit search results to groups of objects with similar distances, stopping after auto_limit number of significant jumps.
return_metadata:
anyOf:
- items:
type: string
enum:
- creation_time
- last_update_time
- distance
- certainty
- score
- explain_score
- is_consistent
- query_profile
type: array
- $ref: '#/components/schemas/MetadataQuery'
- type: 'null'
title: Return Metadata
description: Specify metadata fields to return.
return_properties:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Return Properties
description: Specify which properties to return for each object.
rag_provider:
type: string
const: weaviate
title: Rag Provider
default: weaviate
alpha:
type: number
title: Alpha
description: Balance between the relative weights of the keyword and vector search. 1 is pure vector search, 0 is pure keyword search.
default: 0.7
query_properties:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Query Properties
description: Apply keyword search to only a specified subset of object properties.
fusion_type:
anyOf:
- $ref: '#/components/schemas/HybridFusion'
- type: 'null'
description: Set the fusion algorithm to use. Default is Relative Score Fusion.
max_vector_distance:
anyOf:
- type: number
- type: 'null'
title: Max Vector Distance
description: Maximum threshold for the vector search component.
minimum_match_or_operator:
anyOf:
- type: integer
- type: 'null'
title: Minimum Match Or Operator
description: Minimum number of keywords that define a match. Objects returned will have to have at least this many matches. Applies to keyword search only.
and_operator:
anyOf:
- type: boolean
- type: 'null'
title: And Operator
description: Search returns objects that contain all tokens in the search string. Cannot be used with minimum_match_or_operator. Applies to keyword search only.
target_vector:
anyOf:
- type: string
- items:
type: string
type: array
- $ref: '#/components/schemas/_MultiTargetVectorJoin'
- type: 'null'
title: Target Vector
description: Specifies vector to use for vector search when using named vectors.
query:
type: string
title: Query
description: Input text to find objects with near vectors or keyword matches.
type: object
required:
- collection_name
- query
title: WeaviateHybridSearchSettingsRequest
_MultiTargetVectorJoinEnum:
type: integer
enum:
- 1
- 2
- 3
# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/arthurai/refs/heads/main/openapi/arthurai-rag-providers-api-openapi.yml