Indexing dashboard

The indexing dashboard gives you a real-time view of all connector sync status, document counts, and active re-embedding jobs:
curl http://localhost:8180/admin/indexing/status \
  -H "Authorization: Bearer $ADMIN_KEY"
The response includes per-connector details:
  • Last sync time and any errors
  • Document count
  • Active re-embed jobs with progress percentage
Access this through the Admin UI at Admin → Indexing.

Pausing and resuming connectors

Temporarily pause a connector’s sync schedule — useful during maintenance or when troubleshooting sync issues:
# Pause
curl -X POST http://localhost:8180/admin/connectors/$ID/pause \
  -H "Authorization: Bearer $ADMIN_KEY"

# Resume
curl -X POST http://localhost:8180/admin/connectors/$ID/resume \
  -H "Authorization: Bearer $ADMIN_KEY"

Swapping embedding models

Change a knowledge base’s embedding model and re-index all documents in the background. This is useful when upgrading to a better embedding model or changing providers.
curl -X POST http://localhost:8180/admin/kbs/$KB_ID/reembed \
  -H "Authorization: Bearer $ADMIN_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "text-embedding-3-small"}'

How the swap works

1

Job created

ManyLayers creates a re-indexing job targeting the new embedding model.
2

Background re-embedding

All documents in the knowledge base are re-embedded into a new vector collection in the background. Existing queries continue using the current embeddings.
3

Progress tracking

Track progress via GET /admin/indexing/status. Progress and total document count are updated in real time.
4

Atomic cutover

Once complete, queries are atomically switched to use the new embeddings. The old collection is cleaned up.
Re-embedding a large knowledge base generates embedding API calls for every document chunk and can take significant time. Monitor progress via the indexing dashboard before triggering other re-embed jobs on the same KB.