> ## Documentation Index
> Fetch the complete documentation index at: https://doc.lucidworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create an index pipeline

> The request is a JSON body defining the new index pipeline.  Only the `id` field is required to create a pipeline with no stages.  Include a `stages` array with at least the `type` and `id` field per stage to create a working pipeline.



## OpenAPI

````yaml /api-reference/5.9/fusion-api-indexing.json post /index-pipelines
openapi: 3.0.1
info:
  title: Fusion Indexing API
  description: |-
    The Lucidworks Fusion Indexing API manages
    parsers, index pipelines, index stages, index profiles, and subscriptions.
  contact:
    name: Lucidworks
    url: https://www.lucidworks.com
    email: support@lucidworks.com
  license:
    name: License of API
    url: https://lucidworks.com/legal/developer-license-agreement/
  version: '5.9'
servers:
  - url: https://{FUSION HOST}/api
    description: Fusion
    variables:
      FUSION HOST:
        default: FUSION_HOST
        description: 'Your environment host. '
  - url: https://{FUSION HOST}/api/apps/{APP_NAME}
    description: Fusion app
    variables:
      FUSION HOST:
        default: FUSION_HOST
        description: 'Your environment host. '
      APP_NAME:
        default: APP_NAME
        description: The name of your Fusion application.
security:
  - Basic auth: []
  - API key: []
tags:
  - name: Index Pipelines API
    description: >-
      Use these endpoints to view and manage your index pipelines.  You can also
      index documents using this API, though the Index Profiles API is
      recommended instead.
  - name: Index Profiles API
    description: >-
      The Index Profiles API provides static endpoints that you can consistently
      point to when indexing your documents.  Index profiles allow you to change
      the index pipelines, parsers, or collections behind them without changing
      the endpoint you use for indexing.  See the Index Profiles CRUD API for
      endpoints that create and modify index profiles.
  - name: Index Profiles CRUD API
    description: >-
      Use these endpoints to create and modify index profiles.  Index profiles
      allow you to change the index pipelines, parsers, or collections behind
      them without changing the endpoint you use for indexing.  See the Index
      Profiles API for the indexing endpoints.
  - name: Index Stage API
    description: >-
      Use these endpoints to view the available index pipeline stages and their
      configuration parameters.
  - name: Index Stage Plugins API
    description: >-
      Use these endpoints to view, install, and manage custom index stages
      developed with the Index Stage SDK.
  - name: Parsers CRUD API
    description: >-
      Endpoints to perform Create-Read-Update-Delete operations on Parsers,
      Deprecated: use async-parsing endpoint instead.
  - name: Parsers Schema API
    description: >-
      Endpoints to get the Schema of Parsers. Deprecated: use async-parsing
      endpoint instead.
  - name: Subscriptions API
    description: The Subscriptions API
externalDocs:
  description: Lucidworks Documentation
  url: https://doc.lucidworks.com/
paths:
  /index-pipelines:
    post:
      tags:
        - Index Pipelines API
      summary: Create an index pipeline
      description: >-
        The request is a JSON body defining the new index pipeline.  Only the
        `id` field is required to create a pipeline with no stages.  Include a
        `stages` array with at least the `type` and `id` field per stage to
        create a working pipeline.
      operationId: createEntity_3
      parameters:
        - name: context
          description: >-
            The app to which this object belongs, as `app:SomeApp`. If the app
            doesn't exist, the request fails. Other comma-separated contexts in
            the `context` parameter are allowed but ignored.
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IndexPipelineDefinition'
            example:
              id: my-index-pipeline
              stages:
                - id: field_mapping
                  type: field-mapping
                  reservedFieldsMappingAllowed: false
                - id: solr_dynamic_field_mapping
                  type: solr-dynamic-field-name-mapping
                  advancedTextFieldsIndexing: true
                - id: solr_indexing
                  type: solr-index
                  fieldsList: false
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IndexPipelineDefinition'
              example:
                id: my-index-pipeline
                stages:
                  - id: field_mapping
                    translationMappings: []
                    retentionMappings: []
                    updateMappings: []
                    unmappedRule:
                      keep: true
                      delete: false
                      fieldToMoveValuesTo: ''
                      fieldToCopyValuesTo: ''
                      valueToAddToUnmappedFields: ''
                      valueToSetOnUnmappedFields: ''
                    reservedFieldsMappingAllowed: false
                    type: field-mapping
                    skip: false
                    secretSourceStageId: field_mapping
                  - id: solr_dynamic_field_mapping
                    duplicateSingleValuedFields: false
                    fieldsToExclude: []
                    advancedTextFieldsIndexing: true
                    maxTextLengthForAdvancedIndexing: 100
                    type: solr-dynamic-field-name-mapping
                    skip: false
                    secretSourceStageId: solr_dynamic_field_mapping
                  - id: solr_indexing
                    enforceSchema: true
                    fieldsList: false
                    dateFormats: []
                    params: []
                    bufferDocsForSolr: true
                    allowBlacklistedRequestParameters: false
                    type: solr-index
                    skip: false
                    secretSourceStageId: solr_indexing
                properties:
                  secretSourcePipelineId: my-index-pipeline
components:
  schemas:
    IndexPipelineDefinition:
      description: A JSON object defining the index pipeline.
      type: object
      properties:
        id:
          description: The index pipeline ID.
          type: string
          example: default
        stages:
          description: >-
            The stages in this index pipeline and their configurations.  Use
            `/api/index-stages/schema` and `/api/index-stages/schema/{type}` to
            get the configuration schemas for the available index stage types.
          type: array
          items:
            $ref: '#/components/schemas/StageConfig'
        properties:
          description: Additional properties defining this index pipeline.
          type: object
          additionalProperties:
            type: string
    StageConfig:
      description: A JSON object defining the configuration of an index stage.
      type: object
      properties:
        type:
          description: The index stage type.
          type: string
        id:
          description: The unique ID for this index stage.
          type: string
        label:
          description: A unique human-readable label for this index stage.
          type: string
        condition:
          description: >-
            A conditional script that must result in `true` or `false`. You can
            use this to run or skip this stage depending on whether conditions
            are met.
          type: string
        skip:
          description: >-
            `True` to disable this index stage without removing it from the
            index pipeline.
          type: boolean
      discriminator:
        propertyName: type
  securitySchemes:
    Basic auth:
      type: http
      scheme: basic
    API key:
      name: x-api-key
      type: apiKey
      in: header

````