Couchbase Search Indexes API

Endpoints for creating, retrieving, updating, and deleting Full Text Search index definitions.

Operations 7

GET /api/index List all search index definitions #
GET /api/index/{indexName} Get a search index definition #
PUT /api/index/{indexName} Create or update a search index #
DELETE /api/index/{indexName} Delete a search index #
POST /api/index/{indexName}/ingestControl/{operation} Control search index data ingestion #
POST /api/index/{indexName}/queryControl/{operation} Control search index query access #
POST /api/index/{indexName}/planFreezeControl/{operation} Control search index plan freeze #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/couchbase-search-indexes-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

couchbase-search-indexes-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Couchbase Search Service REST Search Indexes API
  description: The Couchbase Search Service REST API allows developers to create, manage, and query Full Text Indexes on Couchbase Server. It supports full-text search queries with features like fuzzy matching, faceted search, highlighting, and geospatial queries. The API provides endpoints for index definition, index management, and executing search queries across JSON documents stored in Couchbase buckets.
  version: '7.6'
  contact:
    name: Couchbase Support
    url: https://support.couchbase.com
  termsOfService: https://www.couchbase.com/terms-of-use
servers:
- url: https://localhost:8094
  description: Search Service (default port)
- url: https://localhost:18094
  description: Search Service (SSL)
security:
- basicAuth: []
tags:
- name: Search Indexes
  description: Endpoints for creating, retrieving, updating, and deleting Full Text Search index definitions.
paths:
  /api/index:
    get:
      operationId: listSearchIndexes
      summary: List all search index definitions
      description: Returns the definitions of all Full Text Search indexes configured on the cluster, including their type mappings, analyzers, and configuration parameters.
      tags:
      - Search Indexes
      responses:
        '200':
          description: Successful retrieval of search index list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchIndexList'
        '401':
          description: Unauthorized access
  /api/index/{indexName}:
    get:
      operationId: getSearchIndex
      summary: Get a search index definition
      description: Returns the definition of a specific Full Text Search index including its type mappings, analyzers, and configuration parameters.
      tags:
      - Search Indexes
      parameters:
      - $ref: '#/components/parameters/indexName'
      responses:
        '200':
          description: Successful retrieval of search index definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchIndexResponse'
        '401':
          description: Unauthorized access
        '404':
          description: Index not found
    put:
      operationId: createOrUpdateSearchIndex
      summary: Create or update a search index
      description: Creates a new Full Text Search index or updates an existing one with the provided index definition. The index name in the URL must match the name in the request body.
      tags:
      - Search Indexes
      parameters:
      - $ref: '#/components/parameters/indexName'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchIndexDefinition'
      responses:
        '200':
          description: Index created or updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    description: Operation status
        '400':
          description: Invalid index definition
        '401':
          description: Unauthorized access
    delete:
      operationId: deleteSearchIndex
      summary: Delete a search index
      description: Deletes the specified Full Text Search index and all associated data.
      tags:
      - Search Indexes
      parameters:
      - $ref: '#/components/parameters/indexName'
      responses:
        '200':
          description: Index deleted successfully
        '401':
          description: Unauthorized access
        '404':
          description: Index not found
  /api/index/{indexName}/ingestControl/{operation}:
    post:
      operationId: controlSearchIndexIngest
      summary: Control search index data ingestion
      description: Pauses or resumes data ingestion (DCP mutations) for the specified search index.
      tags:
      - Search Indexes
      parameters:
      - $ref: '#/components/parameters/indexName'
      - name: operation
        in: path
        required: true
        description: The ingestion control operation to perform
        schema:
          type: string
          enum:
          - pause
          - resume
      responses:
        '200':
          description: Ingestion control operation successful
        '401':
          description: Unauthorized access
        '404':
          description: Index not found
  /api/index/{indexName}/queryControl/{operation}:
    post:
      operationId: controlSearchIndexQuery
      summary: Control search index query access
      description: Allows or disallows queries on the specified search index.
      tags:
      - Search Indexes
      parameters:
      - $ref: '#/components/parameters/indexName'
      - name: operation
        in: path
        required: true
        description: The query control operation to perform
        schema:
          type: string
          enum:
          - allow
          - disallow
      responses:
        '200':
          description: Query control operation successful
        '401':
          description: Unauthorized access
        '404':
          description: Index not found
  /api/index/{indexName}/planFreezeControl/{operation}:
    post:
      operationId: controlSearchIndexPlanFreeze
      summary: Control search index plan freeze
      description: Freezes or unfreezes the assignment of index partitions to nodes.
      tags:
      - Search Indexes
      parameters:
      - $ref: '#/components/parameters/indexName'
      - name: operation
        in: path
        required: true
        description: The plan freeze control operation
        schema:
          type: string
          enum:
          - freeze
          - unfreeze
      responses:
        '200':
          description: Plan freeze control operation successful
        '401':
          description: Unauthorized access
        '404':
          description: Index not found
components:
  schemas:
    SearchIndexDefinition:
      type: object
      description: Full Text Search index definition
      required:
      - name
      - type
      - sourceName
      properties:
        name:
          type: string
          description: Name of the search index
        type:
          type: string
          description: Type of the index
          enum:
          - fulltext-index
          - fulltext-alias
        sourceName:
          type: string
          description: Name of the source bucket
        sourceType:
          type: string
          description: Type of the data source
          default: couchbase
        sourceUUID:
          type: string
          description: UUID of the source bucket
        planParams:
          type: object
          description: Index partition and replication plan
          properties:
            maxPartitionsPerPIndex:
              type: integer
              description: Maximum partitions per index partition
            numReplicas:
              type: integer
              description: Number of index replicas
              minimum: 0
            indexPartitions:
              type: integer
              description: Number of index partitions
        params:
          type: object
          description: Index configuration parameters
          properties:
            mapping:
              type: object
              description: Type mapping configuration
              properties:
                default_mapping:
                  type: object
                  description: Default type mapping
                  properties:
                    enabled:
                      type: boolean
                      description: Whether the default mapping is enabled
                    dynamic:
                      type: boolean
                      description: Whether to dynamically index all fields
                types:
                  type: object
                  description: Named type mappings
                  additionalProperties:
                    type: object
                default_analyzer:
                  type: string
                  description: Default analyzer for the index
                default_type:
                  type: string
                  description: Default type for documents
            doc_config:
              type: object
              description: Document configuration
              properties:
                mode:
                  type: string
                  description: Document type identification mode
                  enum:
                  - scope.collection.type_field
                  - scope.collection.docid_prefix
                  - scope.collection.docid_regexp
                  - type_field
                  - docid_prefix
                  - docid_regexp
            store:
              type: object
              description: Store configuration
              properties:
                indexType:
                  type: string
                  description: Index storage type
                  enum:
                  - scorch
        uuid:
          type: string
          description: UUID of the index
    SearchIndexList:
      type: object
      description: List of all search index definitions
      properties:
        status:
          type: string
          description: Response status
        indexDefs:
          type: object
          description: Container for index definitions
          properties:
            uuid:
              type: string
              description: UUID of the index definitions set
            indexDefs:
              type: object
              description: Map of index name to index definition
              additionalProperties:
                $ref: '#/components/schemas/SearchIndexDefinition'
    SearchIndexResponse:
      type: object
      description: Single search index definition response
      properties:
        status:
          type: string
          description: Response status
        indexDef:
          $ref: '#/components/schemas/SearchIndexDefinition'
  parameters:
    indexName:
      name: indexName
      in: path
      required: true
      description: The name of the Full Text Search index
      schema:
        type: string
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Authentication using Couchbase Server credentials.
externalDocs:
  description: Couchbase Search Service REST API Documentation
  url: https://docs.couchbase.com/server/current/rest-api/rest-fts.html