Skip to content

\AmgixApi

All URIs are relative to http://localhost

Method HTTP request Description
collection_exists GET /v1/collections/{collection_name}/exists Collection Exists
create_collection POST /v1/collections/{collection_name} Create Collection
delete_collection DELETE /v1/collections/{collection_name} Delete Collection
delete_collection_queue DELETE /v1/collections/{collection_name}/queue Delete Collection Queue
delete_document DELETE /v1/collections/{collection_name}/documents/{document_id} Delete Document
delete_document_sync DELETE /v1/collections/{collection_name}/documents/{document_id}/sync Delete Document Sync
empty_collection POST /v1/collections/{collection_name}/empty Empty Collection
export_documents GET /v1/collections/{collection_name}/documents/export Export Documents
fetch_documents POST /v1/collections/{collection_name}/documents/fetch Fetch Documents
get_collection_config GET /v1/collections/{collection_name} Get Collection Config
get_collection_queue_info GET /v1/collections/{collection_name}/queue/info Get Collection Queue Info
get_collection_stats GET /v1/collections/{collection_name}/stats Get Collection Stats
get_document GET /v1/collections/{collection_name}/documents/{document_id} Get Document
get_document_status GET /v1/collections/{collection_name}/documents/{document_id}/status Get Document Status
health_check GET /v1/health/check Health
health_ready GET /v1/health/ready Readiness Check
list_collections GET /v1/collections List Collections
metrics_current GET /v1/metrics/current Metrics Current
metrics_definitions GET /v1/metrics/definitions Metrics Definitions
metrics_prometheus GET /v1/metrics/prometheus Metrics Prometheus
metrics_trends GET /v1/metrics/trends Metrics Trends
search POST /v1/collections/{collection_name}/search Search
system_info GET /v1/system/info System Info
upsert_document POST /v1/collections/{collection_name}/documents Upsert Document
upsert_document_sync POST /v1/collections/{collection_name}/documents/sync Upsert Document Sync
upsert_documents_bulk POST /v1/collections/{collection_name}/documents/bulk Upsert Documents Bulk
version GET /v1/version Version

collection_exists

models::CollectionExistsResponse collection_exists(collection_name) Collection Exists

Check if a collection exists. Always returns 200 with exists true or false.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]

Return type

models::CollectionExistsResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

create_collection

models::OkResponse create_collection(collection_name, collection_config) Create Collection

Create a new collection. This endpoint creates a new collection with the specified name and vector configurations. It validates the provided model configurations and ensures all required features are supported by the database. Args: collection_name: The unique name for the new collection (alphanumeric, underscores, hyphens only). config: Configuration details for the collection, including vector types and storage options. Returns: An OkResponse object indicating the success of the operation. Raises: HTTPException: - 400 if model validation fails or required features are not supported. - 409 if a collection with the same name already exists. - 500 if the collection creation fails in the database.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
collection_config CollectionConfig [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

delete_collection

models::OkResponse delete_collection(collection_name) Delete Collection

Delete a collection. Deletes a collection and all its associated data. This operation is irreversible. Args: collection_name: The name of the collection to delete. Returns: An OkResponse object indicating the success of the operation.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

delete_collection_queue

models::OkResponse delete_collection_queue(collection_name) Delete Collection Queue

Delete all queue entries for a collection. Removes all documents from the processing queue for a specified collection. This does not affect documents already indexed in the collection. Args: collection_name: The name of the collection for which to delete queue entries. Returns: An OkResponse object indicating the success of the operation.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

delete_document

models::OkResponse delete_document(collection_name, document_id, request_timestamp) Delete Document

Delete a document asynchronously. Queues a document for deletion and returns immediately. The document will be deleted asynchronously. Args: collection_name: The name of the collection. document_id: The unique identifier of the document to delete. Returns: An OkResponse object indicating the success of the operation.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
document_id String [required]
request_timestamp chrono::DateTime Caller-supplied delete timestamp (UTC) [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

delete_document_sync

models::OkResponse delete_document_sync(collection_name, document_id, request_timestamp) Delete Document Sync

Delete a document synchronously. Deletes a specific document by its ID from the specified collection and waits for the operation to complete. Args: collection_name: The name of the collection. document_id: The unique identifier of the document to delete. Returns: An OkResponse object indicating the success of the operation.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
document_id String [required]
request_timestamp chrono::DateTime Caller-supplied delete timestamp (UTC) [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

empty_collection

models::OkResponse empty_collection(collection_name) Empty Collection

Empty a collection. Removes all documents and their associated vector data from a specified collection, but keeps the collection's configuration. Args: collection_name: The name of the collection to empty. Returns: An OkResponse object indicating the success of the operation.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

export_documents

std::path::PathBuf export_documents(collection_name, with_vectors) Export Documents

Export all documents in a collection as a downloadable gzip-compressed JSON array. Streams [{...},{...},...] without loading the full collection into memory.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
with_vectors Option<bool> When true, include stored vector values on each exported document. [default to false]

Return type

std::path::PathBuf

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/gzip, application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

fetch_documents

models::DocumentFetchResponse fetch_documents(collection_name, document_fetch_request) Fetch Documents

Fetch a page of documents from a collection. Returns documents in stable internal order with cursor-based pagination. Pass the returned after token in the next request to get the following page. after is null when there are no more documents. Args: collection_name: The name of the collection. body: Pagination and filter parameters. Returns: A DocumentFetchResponse with a page of documents and a pagination token. Raises: HTTPException: 404 if the collection does not exist. HTTPException: 400 if a filter references an unindexed metadata key.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
document_fetch_request DocumentFetchRequest [required]

Return type

models::DocumentFetchResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_collection_config

models::CollectionConfig get_collection_config(collection_name) Get Collection Config

Get collection configuration. Retrieves the configuration details for a specific collection. Args: collection_name: The name of the collection. Returns: The configuration of the specified collection.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]

Return type

models::CollectionConfig

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_collection_queue_info

models::QueueInfo get_collection_queue_info(collection_name) Get Collection Queue Info

Get queue statistics for a collection. Retrieves counts of documents in different queue states (queued, requeued, failed). Args: collection_name: The name of the collection. Returns: A QueueInfo object with counts for each queue state.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]

Return type

models::QueueInfo

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_collection_stats

models::CollectionStatsResponse get_collection_stats(collection_name) Get Collection Stats

Get persisted collection statistics and queue counts. Returns document counts maintained by the indexing pipeline (not a live physical count), plus queue entry counts by state (same data as GET .../queue/info). Args: collection_name: The name of the collection. Returns: A CollectionStatsResponse with doc_count and queue. Raises: HTTPException: 404 if the collection does not exist.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]

Return type

models::CollectionStatsResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_document

models::Document get_document(collection_name, document_id, with_vectors) Get Document

Retrieve a single document. Retrieves a specific document by its ID from the specified collection. Args: collection_name: The name of the collection. document_id: The unique identifier of the document to retrieve. with_vectors: When true, include stored vector values on the document. Returns: The retrieved Document object. Raises: HTTPException: 404 if the document is not found in the collection.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
document_id String [required]
with_vectors Option<bool> When true, include stored vector values on the document. [default to false]

Return type

models::Document

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_document_status

models::DocumentStatusResponse get_document_status(collection_name, document_id) Get Document Status

Get document processing status. Retrieves the processing status of a document, including its current state in the queue and any associated messages. Args: collection_name: The name of the collection. document_id: The unique identifier of the document. Returns: A DocumentStatusResponse object containing the processing status of the document. Raises: HTTPException: 404 if the document is not found in the collection's queue.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
document_id String [required]

Return type

models::DocumentStatusResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

health_check

models::OkResponse health_check() Health

Check API service responsiveness. This endpoint returns a simple 'ok' status to indicate that the API service is running and able to respond to requests. Returns: An OkResponse object with the 'ok' field set to True, confirming the service's responsiveness.

Parameters

This endpoint does not need any parameter.

Return type

models::OkResponse

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

health_ready

models::ReadyResponse health_ready() Readiness Check

Check if service is ready to handle requests. Runs four probes: database, rabbitmq, index workers, query workers. Returns 200 if all pass (fully ready), 218 if some fail (partial ready). Response body always includes all four probe results and a ready flag.

Parameters

This endpoint does not need any parameter.

Return type

models::ReadyResponse

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

list_collections

Vec list_collections() List Collections

List all available collections. Retrieves a list of all collections managed by the application. Returns: A list of strings, where each string is the name of an available collection.

Parameters

This endpoint does not need any parameter.

Return type

Vec

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

metrics_current

models::Metrics metrics_current(window, keys) Metrics Current

Return the current metrics state for all nodes over the given window (seconds).

Parameters

Name Type Description Required Notes
window Option<i32> Aggregation window in seconds - 30 or 60. [default to 60]
keys Option<Vec> Restrict returned metric series to these keys. Omit for all keys.

Return type

models::Metrics

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

metrics_definitions

Vec metrics_definitions() Metrics Definitions

Return catalog entries for all known metric keys, their units, and descriptions.

Parameters

This endpoint does not need any parameter.

Return type

Vec

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

metrics_prometheus

String metrics_prometheus() Metrics Prometheus

Expose current cluster metrics in Prometheus text exposition (60s rolling window).

Parameters

This endpoint does not need any parameter.

Return type

String

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: text/plain

[Back to top] [Back to API list] [Back to Model list] [Back to README]

Vec metrics_trends(since, until, resolution, keys) Metrics Trends

Return historical metric buckets for the given time range and resolution. Args: since: Inclusive start of the time range (ISO 8601, UTC assumed if no timezone given). until: Exclusive end of the time range (ISO 8601, UTC assumed if no timezone given). resolution: Bucket size in seconds - 60 for 1-minute, 300 for 5-minute. keys: One or more metric keys to return. Omit to return all keys.

Parameters

Name Type Description Required Notes
since chrono::DateTime [required]
until chrono::DateTime [required]
resolution Option<i32> Bucket size in seconds - 60 for 1-minute, 300 for 5-minute. [default to 60]
keys Option<Vec>

Return type

Vec

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

models::SearchResponse search(collection_name, search_query) Search

Perform a search query on a collection. Executes a search query against the specified collection. Args: collection_name: The name of the collection to search. query: The SearchQuery object containing the search text, filters, and other parameters. Returns: A SearchResponse with search hits and server-side query timing.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
search_query SearchQuery [required]

Return type

models::SearchResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

system_info

models::SystemInfoResponse system_info() System Info

Summarize deployment and infrastructure (no connection URLs).

Parameters

This endpoint does not need any parameter.

Return type

models::SystemInfoResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

upsert_document

models::OkResponse upsert_document(collection_name, document) Upsert Document

Upsert a single document asynchronously. Adds or updates a single document in the specified collection by placing it into a processing queue. The document will be vectorized and indexed asynchronously. Args: collection_name: The name of the collection to upsert the document into. document: The document object to be upserted. Returns: An OkResponse object indicating that the document has been accepted for processing. Raises: HTTPException: 500 if publishing the event to the internal queue fails.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
document Document [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

upsert_document_sync

models::OkResponse upsert_document_sync(collection_name, document) Upsert Document Sync

Upsert a single document synchronously. Adds or updates a single document in the specified collection and waits for the operation to complete, including vectorization and indexing. Args: collection_name: The name of the collection to upsert the document into. document: The document object to be upserted. Returns: An OkResponse object indicating the success of the operation. Raises: HTTPException: - 409 if a document with the same ID and newer timestamp already exists (conflict). - 500 for other internal server errors during processing.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
document Document [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

upsert_documents_bulk

models::OkResponse upsert_documents_bulk(collection_name, bulk_upload_request) Upsert Documents Bulk

Upsert multiple documents in bulk asynchronously. Adds or updates multiple documents in the specified collection by placing them into a processing queue. Documents will be vectorized and indexed asynchronously. This method is optimized for bulk operations. Args: collection_name: The name of the collection to upsert the documents into. request: A BulkUploadRequest object containing a list of Document objects to be upserted. Returns: An OkResponse object indicating that the documents have been accepted for processing. Raises: HTTPException: 500 if publishing events to the internal queue fails for any document.

Parameters

Name Type Description Required Notes
collection_name String Collection name (alphanumeric, underscores, hyphens only) [required]
bulk_upload_request BulkUploadRequest [required]

Return type

models::OkResponse

Authorization

ApiKeyHeader, BearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]

version

models::VersionResponse version() Version

Return the system version. Returns: A VersionResponse object with the system version.

Parameters

This endpoint does not need any parameter.

Return type

models::VersionResponse

Authorization

No authorization required

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

[Back to top] [Back to API list] [Back to Model list] [Back to README]