openapi: 3.1.0 info: title: LlamaIndex LlamaCloud Data Sources Indexes API description: The LlamaCloud API is the central REST API for LlamaIndex's cloud platform, providing programmatic access to managed document processing, indexing, and retrieval services. It enables developers to build production-grade LLM applications by leveraging cloud-hosted infrastructure for document ingestion, knowledge management, and agent orchestration. The API supports authentication via API keys and is available in both US and EU regions. version: '1.0' contact: name: LlamaIndex Support url: https://www.llamaindex.ai/contact termsOfService: https://www.llamaindex.ai/terms-of-service servers: - url: https://api.cloud.llamaindex.ai/api/v1 description: US Production Server - url: https://api.cloud.llamaindex.eu/api/v1 description: EU Production Server security: - bearerAuth: [] tags: - name: Indexes description: Create and manage indexes that serve as automated document ingestion pipelines with retrieval capabilities. paths: /pipelines: get: operationId: listIndexes summary: List indexes description: Retrieve a list of all indexes (pipelines) for the specified project. Each index represents an automated document ingestion pipeline with retrieval capabilities. tags: - Indexes parameters: - name: project_id in: query description: Filter indexes by project identifier. required: true schema: type: string responses: '200': description: Successfully retrieved list of indexes content: application/json: schema: type: array items: $ref: '#/components/schemas/Index' '401': description: Unauthorized - invalid or missing API key post: operationId: createIndex summary: Create an index description: Create a new index with specified configuration for document ingestion, parsing, embedding, and vector storage. The index automatically handles processing uploaded documents into a queryable format. tags: - Indexes requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateIndexRequest' responses: '201': description: Index created successfully content: application/json: schema: $ref: '#/components/schemas/Index' '400': description: Bad request - invalid index configuration '401': description: Unauthorized - invalid or missing API key /pipelines/{pipelineId}: get: operationId: getIndex summary: Get an index description: Retrieve detailed information about a specific index including its configuration, processing status, and file counts. tags: - Indexes parameters: - $ref: '#/components/parameters/pipelineId' responses: '200': description: Successfully retrieved index details content: application/json: schema: $ref: '#/components/schemas/Index' '401': description: Unauthorized - invalid or missing API key '404': description: Index not found delete: operationId: deleteIndex summary: Delete an index description: Delete an index and its associated processed data. tags: - Indexes parameters: - $ref: '#/components/parameters/pipelineId' responses: '200': description: Index deleted successfully '401': description: Unauthorized - invalid or missing API key '404': description: Index not found /pipelines/{pipelineId}/sync: post: operationId: syncIndex summary: Sync an index description: Trigger an incremental sync of the index, processing any new or modified documents from connected data sources and uploaded files. tags: - Indexes parameters: - $ref: '#/components/parameters/pipelineId' responses: '200': description: Index sync initiated successfully content: application/json: schema: $ref: '#/components/schemas/IndexJob' '401': description: Unauthorized - invalid or missing API key '404': description: Index not found components: parameters: pipelineId: name: pipelineId in: path description: Unique identifier of the index (pipeline). required: true schema: type: string schemas: Index: type: object description: An index representing an automated document ingestion pipeline with built-in retrieval capabilities. properties: id: type: string description: Unique identifier of the index. name: type: string description: Human-readable name of the index. project_id: type: string description: Identifier of the project the index belongs to. status: type: string enum: - active - syncing - error - idle description: Current status of the index. embedding_model: type: string description: Name of the embedding model used for vectorization. sync_interval: type: integer description: Scheduled sync frequency in seconds, if configured. created_at: type: string format: date-time description: Timestamp when the index was created. updated_at: type: string format: date-time description: Timestamp when the index was last updated. IndexJob: type: object description: A sync job for an index tracking the processing of documents. properties: id: type: string description: Unique identifier of the job. pipeline_id: type: string description: Identifier of the index the job belongs to. status: type: string enum: - pending - running - completed - failed description: Current status of the job. created_at: type: string format: date-time description: Timestamp when the job was created. completed_at: type: string format: date-time description: Timestamp when the job completed, if applicable. CreateIndexRequest: type: object description: Request body for creating a new index. required: - name - project_id properties: name: type: string description: Human-readable name for the new index. project_id: type: string description: Identifier of the project to create the index in. embedding_model: type: string description: Name of the embedding model to use for vectorization. sync_interval: type: integer description: Optional scheduled sync frequency in seconds. securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: API Key description: LlamaCloud API key obtained from the LlamaCloud dashboard. Include as a Bearer token in the Authorization header. externalDocs: description: LlamaCloud API Documentation url: https://developers.api.llamaindex.ai/