Skip to main content
If you’re new to Unstructured, read this note first.Before you can create a destination connector, you must first sign in to your Unstructured account:After you sign in, the Unstructured user interface (UI) appears, which you use to create your destination connector.After you create the destination connector, add it along with a source connector to a workflow. Then run the worklow as a job. To learn how, try out the hands-on UI quickstart or watch the 4-minute video tutorial.You can also create destination connectors with the Unstructured API. Learn how.If you need help, email Unstructured Support at support@unstructured.io.You are now ready to start creating a destination connector! Keep reading to learn how.
Send processed data from Unstructured to Elasticsearch. The requirements are as follows.
  • For the Unstructured UI or the Unstructured API, only Elastic Cloud instances are supported.
  • For Unstructured Ingest, Elastic Cloud instances and self-manged Elasticsearch instances are supported.
  • For Elastic Cloud, you will need an Elastic Cloud service instance.
  • For self-managed Elasticsearch, you will need a self-managed Elasticsearch instance.
  • You will need the name of the index on the instance. For the destination connector, if you need to create an index, you can use for example the following curl command. Replace the following placeholders:
    • Replace <host>:<port> with the instance’s host identifier and port number.
    • Replace <username> with your Elasticsearch user name, and replace <password> with your password.
    • Replace <index-name> with the name of the new index on the instance.
    • Replace <index-schema> with the schema for the index. A schema is optional; see the explanation following this curl command for more information.
    curl --request PUT "<host>:<port>/<index-name>" \
    --user "<username>:<password>" \
    [--header "Content-Type: application/json" \
    --data '<index-schema>']
    
    To learn more, see Create index and Get index. For the destination connector, the index does not need to contain a schema beforehand. If Unstructured encounters an index without a schema, Unstructured will automatically create a compatible schema for you before inserting items into the index. Nonetheless, to reduce possible schema compatibility issues, Unstructured recommends that you create a schema that is compatible with Unstructured’s schema. Unstructured cannot provide a schema that is guaranteed to work in all circumstances. This is because these schemas will vary based on your source files’ types; how you want Unstructured to partition, chunk, and generate embeddings; any custom post-processing code that you run; and other factors. You can adapt the following index schema example for your own needs:
    {
        "settings": {
            "index": {
                "knn": true,
                "knn.algo_param.ef_search": 100
            }
        },
        "mappings": {
            "properties": {
                "record_id": {
                    "type": "text"
                },
                "element_id": {
                    "type": "keyword"
                },
                "text": {
                    "type": "text"
                },
                "embeddings": {
                    "type": "dense_vector",
                    "dims": 384,
                    "index": true,
                    "similarity": "cosine"
                },
                "metadata": {
                    "type": "object",
                    "properties": {
                        "parent_id": {
                            "type": "text"
                        },
                        "page_number": {
                            "type": "integer"
                        },
                        "is_continuation": {
                            "type": "boolean"
                        },
                        "orig_elements": {
                            "type": "text"
                        },
                        "partitioner_type": {
                            "type": "text"
                        }
                    }
                }
            }
        }
    }
    
    See also:
  • For Elastic Cloud, you will need the Elastic Cloud service instance’s API key. If you are using Unstructured Ingest, you will also need the instance’s Cloud ID. To get these, see your Elasticsearch Service web console.
  • For self-managed Elasticsearch, you will need:
To create the destination connector:
  1. On the sidebar, click Connectors.
  2. Click Destinations.
  3. Cick New or Create Connector.
  4. Give the connector some unique Name.
  5. In the Provider area, click Elasticsearch.
  6. Click Continue.
  7. Follow the on-screen instructions to fill in the fields as described later on this page.
  8. Click Save and Test.
Fill in the following fields:
  • Name (required): A unique name for this connector.
  • Host (required): The endpoint URL for the target cluster.
  • Index Name (required): The name of the target index in the cluster.
  • API Key (required): The Elastic Cloud API key for the target cluster.

Learn more