General

What is schema drift?

Schema drift is when the structure of a data document changes from what was expected. A trading partner adds a field. A vendor renames a key. A system starts sending a different data type. Any of these can break downstream integrations. DriftOps detects, records, and classifies these changes so your team can act on them before they cause failures.

What file formats does DriftOps support?
JSON
.json
EDI X12
.edi .x12 .txt
XML
.xml .xsd
CSV / flat
.csv .tsv

Format is detected from file content, not just the extension. EDI files are parsed at the segment and element level before comparison.

Does DriftOps store my files?

DriftOps stores the schema structure extracted from your files, not the raw file data. The diff report is stored as part of the drift event record. Your original file content is not retained after processing. If you have stricter data residency requirements, contact us to discuss enterprise options.

Is DriftOps multi-tenant?

Yes. All data, including contracts, drift events, monitors, cloud connections, and members, is scoped to your organization. No data is shared between organizations. A user can belong to multiple organizations with independent roles in each.


Contracts

How many contracts can I have?
Free
3
Starter
25
Team
75
Pro
500
Can I import an existing schema?

Yes. Upload a JSON file, paste JSON directly, or upload an EDI or XML document when creating a contract. DriftOps extracts the schema automatically. If you have a representative document sample, upload that and DriftOps derives the field structure from it.

What happens to my drift events when I update a contract?

Existing drift events are not affected. They retain the schema snapshot from when they were created. New comparisons use the updated contract schema going forward.

Can I revert a contract to a previous version?

Yes. Open the contract, go to History, and select the version to revert to. A revert creates a new version entry rather than deleting the current one, so the full history is preserved.


Comparisons

What counts as a comparison?

Each time DriftOps runs a diff between a file and a contract baseline, that is one comparison, whether triggered manually in the Comparator, via a monitor webhook, or by a cloud connection poll. A comparison that finds no drift still counts.

What is the monthly comparison limit?
Free
100
Starter
10,000
Team
30,000
Pro
150,000

Limits reset at the start of each calendar month.

What does the diff report include?

Every field-level change across four categories: added, removed, changed, and renamed. Each item includes the field path in dot-notation, the old value or type, and the new value or type. EDI changes include segment and element definitions for context.

What do the severity levels mean?

Severity is calculated automatically at comparison time and does not change.

  • trivial, only fields were added. Backward compatible. No downstream system should break.
  • minor, renames or value changes present. No fields removed. Should be reviewed but likely still functional.
  • major, fields were removed or types changed. Breaking. Systems depending on those fields will likely fail. Review these first.
How does rename detection work?

After the initial diff, DriftOps runs a fuzzy matching pass comparing removed fields against added fields using name similarity, value type, and structural position. High-confidence matches are reported as renames and do not escalate severity to major. Low-confidence matches are left as separate removals and additions to avoid false positives.


Monitors and integrations

What is the difference between a monitor and a cloud connection?

Both link a file source to a contract and create drift events when differences are found. The direction is different.

Monitor (push)

Your pipeline or trading partner POSTs files to a webhook URL. DriftOps receives and processes them immediately. Use when your sender controls the timing.

Cloud connection (pull)

DriftOps polls an S3 bucket, Azure container, GCP bucket, SFTP, or FTP server on a schedule. Use when you have no control over the sender.

Is the webhook URL public?

The endpoint accepts unauthenticated requests. Security is provided by the token being unique and cryptographically random (32 bytes, URL-safe encoded). Treat the URL as a secret. If it is exposed, disable the monitor immediately and create a new one to rotate the token.

How do I rotate a webhook token?

Open the monitor and click Regenerate Token. The old token is immediately invalidated. Update any systems sending to the old token before re-enabling.

My cloud connection shows as critical health. What does that mean?

Consecutive polling attempts have failed. Check the last error on the connection detail page. Common causes: expired credentials, bucket permissions changed, wrong region, or a network block. The connection resumes automatically once the underlying issue is resolved.

Can I send files from multiple sources to the same contract?

Yes. Create multiple monitors or cloud connections and link them all to the same contract. Each generates its own drift events independently.

Does DriftOps modify or delete files in my bucket?

No. DriftOps only reads files. It requires s3:ListBucket and s3:GetObject permissions (or the equivalent for Azure and GCP). No write or delete permissions are needed or used.


Billing

What plan do I need for Slack notifications?

Slack notifications are available on all plans including free. Configure them in Settings > Notifications. You can also set a per-monitor Slack webhook to route alerts to a different channel for specific sources.

What happens if I go over my comparison limit?

New comparisons are blocked until the next billing cycle. Existing drift events, contracts, and monitors are not affected. The limit resets at the start of each calendar month.

Can I downgrade my plan?

Yes. Downgrade from Settings > Billing. If the downgrade reduces your contract limit below your current contract count, you will need to delete contracts first.

Do you offer a trial?

The free tier is permanently free with no time limit. It includes 3 contracts and 100 comparisons per month, enough to evaluate DriftOps on a real integration.

Still have questions?

Email sales@driftops.io.