Circle migration guide

Move your Circle to another server.

This procedure moves an existing Circle with its members and supported data. The destination Circlus server and its HTTPS addresses must be ready first.

What must be ready before the move

Do not create a new empty Circle with the same name. The destination administrator creates a one-time import permission; the existing Circle appears there after activation.

A working Circlus server

The destination is installed, updated to a compatible version, reachable over HTTPS, and available in Server Management.

Destination addresses and TLS

The new Circle domain and destination service endpoint point to the destination server and have valid certificates.

A trusted coordination channel

The destination administrator can securely pass the one-time migration details to the Circle owner.

A downtime window

Messages, calls, and settings changes are temporarily unavailable while the frozen snapshot is transferred and verified.

No destination server yet? Follow the self-hosting guide first. The server README remains the source of truth for deployment commands.

What happens to your data

The app shows an up-to-date preflight report and asks the owner to accept the limits before the Circle is stopped.

Transferred

The Circle, identities and roles, trusted devices, configuration, supported messages and keys, recovery blobs, direct guest links, and public-site settings.

Not transferred

Existing server attachments, message archives, call history and call links, active invites, and system events. Messages outside the destination TTL are also excluded.

Always rely on the in-app preflight report for the exact data scope and destination policies of this particular move.

For the destination administrator

The destination side authorizes an import. It does not create a replacement empty Circle.

  1. Open Server Management

    Use an identity with administrator access to the server that will receive the Circle.

  2. Select “Allow a Circle transfer to this server”

    Open it under Actions, then enter the new Circle domain, display name, retention limits, and destination policies. The service endpoint comes from the selected server.

  3. Create the migration permission

    The server verifies the addresses and creates a permission ID, one-time migration code, and service endpoint.

  4. Send the details to the Circle owner

    Use a trusted channel. The one-time migration code is not shown again in the permission list.

  5. Monitor the import

    After the owner starts the move, Server Management shows the destination status and import report.

For the Circle owner

These actions begin on the current source server after the destination administrator has sent the import permission.

  1. Open Circle settings → Move Circle

    Start from the existing Circle on its current source server.

  2. Enter the destination details

    Use the service endpoint, permission ID, one-time code, and new domain supplied by the destination administrator.

  3. Run the destination check

    Preflight checks permission, TLS, compatibility, quotas, and data scope. It does not stop the Circle.

  4. Review the report and warn participants

    Accept non-transferable data only after reviewing the report and arranging the downtime window.

  5. Sign and schedule the move

    The owner signature binds the destination, domain, and accepted data-loss policy.

  6. Stop the Circle and transfer

    The source becomes read-only while it exports, transfers, imports, and verifies the fixed snapshot.

  7. Confirm cutover

    After successful import, activate the destination. It becomes authoritative and the old address remains a temporary bridge.

Safe boundary: preflight does not interrupt service. Downtime starts only after the separate “Stop Circle and transfer” action.

After the move

Complete the operational checks before treating the destination as fully settled.

  • Open the Circle at its new address and verify core chats and members.
  • Save the migration report and review import warnings.
  • Create a new Recovery Package containing the current Circle address.
  • Confirm participants can safely switch to the destination server.
  • Keep the source server and old domain online while the temporary bridge is needed.
  • Check push delivery, calls, new attachments, and public-site publication.