Skip to main content
The export endpoint transfers data directly from one Meilisearch instance to another over the network. Unlike dumps, which create a file on disk that you must manually move, exports push data straight to a remote instance in a single operation.

When to use exports

  • Environment migration: Move data from a staging instance to production (or vice versa).
  • Creating replicas: Set up a second instance with the same data for redundancy or load distribution.
  • Scaling: Transfer indexes to a larger instance when your data outgrows the current one.

Export data to a remote instance

Send a POST request to /export on the source instance, specifying the destination URL and (optionally) an API key:
curl \
  -X POST 'MEILISEARCH_URL/export' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer MEILISEARCH_KEY' \
  --data-binary '{
    "url": "https://destination-instance.example.com",
    "apiKey": "destination-api-key"
  }'
Meilisearch returns a summarized task object:
{
  "taskUid": 42,
  "indexUid": null,
  "status": "enqueued",
  "type": "export",
  "enqueuedAt": "2025-01-01T00:00:00.000000Z"
}

Monitor the export task

The export runs asynchronously. Use the task UID to check its progress:
curl \
  -X GET 'MEILISEARCH_URL/tasks/42' \
  -H 'Authorization: Bearer MEILISEARCH_KEY'
When the task status changes to succeeded, all data has been transferred to the destination instance.

Export vs. dumps

ExportDump
MechanismDirect network transfer to a remote instanceCreates a file on the source instance’s disk
Best forLive migration between running instancesBackups, version upgrades, offline transfers
RequiresNetwork access to the destinationFile system access to move the dump file

Next steps

Export API reference

Full API reference for the export endpoint

Monitor tasks

Track the status of asynchronous operations

Indexing overview

Learn more about how indexing works in Meilisearch