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

# FAQ

> Frequently asked questions about Zwiron — security, agents, CDC, pricing, connectors, and data handling.

<AccordionGroup>
  <Accordion title="Does my data pass through Zwiron's servers?">
    It depends on how you run the pipeline:

    * **Agent mode** — row data moves from source to destination inside your network. Zwiron's cloud receives metadata (row counts, timing, status), not the synced rows.
    * **Hosted mode** — Zwiron runs the sync on its infrastructure, so row data is processed there while the job runs.

    Use Agent mode when sync must stay in your network. See [Execution modes](/concepts/execution-modes).
  </Accordion>

  <Accordion title="Where are my database credentials stored?">
    Credentials are always encrypted at rest. Where they live depends on mode:

    * **Agent mode** — encrypted with the agent's RSA key. Atlas stores the ciphertext; only your agent can decrypt and use it for syncs.
    * **Hosted mode** — encrypted at rest in Zwiron's infrastructure and used only inside isolated execution environments for the job.

    See [Connections](/concepts/connections) for details.
  </Accordion>

  <Accordion title="Do I need to open any inbound firewall ports?">
    No. The agent makes an outbound-only connection to Zwiron. You only need outbound HTTPS (port 443) from the machine running the agent to `agent.zwiron.com`. No inbound rules are needed.
  </Accordion>

  <Accordion title="Which IPs should I whitelist for Hosted mode?">
    Whitelist **all** of [Zwiron's static egress IPs](/concepts/network-access). Traffic can leave from any HA address — allowing only some of them causes flaky Test Connection or job failures. Agent mode uses your agent machine's IP instead, not these addresses.
  </Accordion>

  <Accordion title="What happens if the agent goes offline?">
    If the agent goes offline, scheduled jobs will be delayed until the agent reconnects. The agent automatically reconnects when it comes back online. For CDC jobs, the agent resumes from the last checkpoint — no data is lost.
  </Accordion>

  <Accordion title="What sync modes are available?">
    Zwiron supports three modes:

    * **Full Refresh** — copies the entire table every run
    * **Incremental** — only syncs new or changed rows using a cursor column
    * **CDC (Change Data Capture)** — streams changes in real time from the database's change log

    See [Sync Modes](/concepts/sync-modes) for a full comparison.
  </Accordion>

  <Accordion title="Does CDC capture deletes?">
    Yes. CDC reads from the database's change log and captures inserts, updates, AND deletes. Incremental mode does not capture deletes — only CDC does.
  </Accordion>

  <Accordion title="What databases support CDC?">
    PostgreSQL, MySQL, and MongoDB (via Change Streams). Each requires specific replication settings to be enabled — see the connector guide for your database.
  </Accordion>

  <Accordion title="How is data volume measured?">
    During the **free trial**, Zwiron meters bytes written toward a **1 GB lifetime** sample-data cap. Usage is updated as syncs write data — not only when a job finishes.

    On a **paid plan**, data volume is capped monthly (**25 GB** Individual · **500 GB** Enterprise floor). Syncs **stop at the cap** — there is no next-cycle overage bill. Zwiron does not keep a copy of your synced row data after the job completes.
  </Accordion>

  <Accordion title="Can I run multiple agents?">
    Yes. You can install as many agents as your plan allows. Each agent appears independently in your dashboard. Connections are tied to a specific agent, so you can route different databases through different agents.
  </Accordion>

  <Accordion title="Can I use Zwiron with a database in a private VPC?">
    Yes. That's a primary Agent-mode use case. The agent runs inside your VPC alongside your databases. It connects out to Zwiron — you don't need to expose your database to the internet.
  </Accordion>

  <Accordion title="What file formats are supported for file connectors?">
    CSV, newline-delimited JSON (NDJSON), and Parquet. The format is auto-detected from the file extension, or you can configure it explicitly. File connectors beyond the live enterprise set are available on demand.
  </Accordion>

  <Accordion title="Does Zwiron create tables automatically at the destination?">
    Yes. Zwiron discovers the source schema and creates matching tables at the destination if they don't exist. Column types are mapped to the closest equivalent type in the destination system.
  </Accordion>

  <Accordion title="What happens if the destination schema changes?">
    If new columns appear at the source, Zwiron adds them to the destination table automatically. If columns are removed at the source, the destination columns are left in place (not deleted).
  </Accordion>

  <Accordion title="Can I sync to multiple destinations from one source?">
    Yes. Create one job per destination. Each job has its own source table selection, sync mode, schedule, and destination.
  </Accordion>

  <Accordion title="Is there an API?">
    A REST API is coming soon. API keys will be managed in **Settings → API Keys** on paid plans. Until then, use the web app for pipelines, connections, and jobs.
  </Accordion>

  <Accordion title="How much does Zwiron cost?">
    Start with a **14-day free trial** — no credit card — with a **1 GB** sample-transfer cap. Then:

    * **Individual** — \*\*$79/mo** (or $790/yr) for **25 GB**/mo, 10 connections, 10 pipelines, 5 seats, 1 agent. Pay in the app.
    * **Enterprise** — **from \$999/mo** for **500 GB**/mo, 50 connections, 50 pipelines, 25 seats, 5 agents, plus CDC/SSO/RBAC. Talk to us.

    Syncs stop at the data cap. No free forever plan and no per-row charges.
  </Accordion>

  <Accordion title="Why was my trial job blocked for data volume?">
    Trial accounts can only move **1 GB** total. Syncs that would exceed the remaining quota are blocked before start (using table size estimates from the connection profile), or cancelled mid-sync if the cap is hit. Use smaller sample tables, profile the source connection first, subscribe to Individual, or contact [support@zwiron.com](mailto:support@zwiron.com). Paid plans use their monthly GB hard cap instead.
  </Accordion>

  <Accordion title="How do I get support?">
    Email us at [support@zwiron.com](mailto:support@zwiron.com). Paid plans can include priority support and SLAs.
  </Accordion>
</AccordionGroup>
