Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.maximem.ai/llms.txt

Use this file to discover all available pages before exploring further.

await sdk.memories.batch_create(documents, fail_fast=False)
Ingest multiple documents in a single call. This is the primary method for bootstrap ingestion — loading historical conversations, backfilling knowledge bases, and migrating data from other systems. Each document is processed independently through the ingestion pipeline.

Parameters

documents
List[CreateMemoryRequest]
required
List of CreateMemoryRequest objects. Each entry has the same fields as memories.create (document, document_type, user_id, customer_id, mode, metadata, etc.).
fail_fast
boolean
If True, the entire batch is rejected as soon as any single document fails validation. If False (default), valid documents are accepted and invalid ones are returned with error_message populated in the per-item result.

Returns

BatchCreateResponse with aggregate counts and per-document results.
batch_id
UUID
Unique identifier for the batch submission.
total
integer
Total number of documents submitted.
succeeded
integer
Number of documents successfully queued.
failed
integer
Number of documents that failed validation.
results
List[CreateMemoryResponse]
Per-document results. Each contains ingestion_id, document_id, status, queued_at, and an optional error_message if that document was rejected.

Example

from maximem_synap import MaximemSynapSDK
from maximem_synap.memories.models import CreateMemoryRequest

sdk = MaximemSynapSDK(api_key="synap_your_key_here")
await sdk.initialize()

batch = await sdk.memories.batch_create(
    documents=[
        CreateMemoryRequest(
            document="User: My favorite color is blue.\nAssistant: Noted!",
            document_type="ai-chat-conversation",
            user_id="user_789",
            customer_id="cust_456",
            mode="fast",
        ),
        CreateMemoryRequest(
            document="User: I work at Acme Corp as a senior engineer.",
            document_type="ai-chat-conversation",
            user_id="user_789",
            customer_id="cust_456",
            mode="fast",
        ),
    ],
    fail_fast=False,
)
print(f"{batch.succeeded}/{batch.total} queued")
Batch ingestion is more efficient than individual calls when you have multiple documents to process. The maximum batch size is 100 documents per call. For large-scale bootstrap operations, see the Bootstrap Ingestion guide.

Raises

  • SynapAuthError — when the API key is missing or invalid.
  • SynapValidationError — when the batch payload is malformed or exceeds the maximum size.

See also