Why fields must be compatible
Section titled “Why fields must be compatible”When syncing, you must map "compatible fields" so that Whalesync can translate data between your apps. In this translation, Whalesync handles much of the heavy lifting (like converting HTML to Markdown), but ultimately the data in these fields needs to work with each other.
Relation fields and compatibility
Section titled “Relation fields and compatibility”
Understanding reference fields
One of the more advanced field types to map are "relation fields" (aka "reference fields", "linked records", or "foreign keys"). These are fields that have a relation to another table.
Relation fields must be mapped to other relation fields in order to sync.
How to find fields that are compatible with reference fields
- If you're unsure how to create relation fields in your apps, check our docs on relation fields.
- In general, look for the squiggly arrow icon indicating a relation field (see screenshot above).
Table of compatible fields
Section titled “Table of compatible fields”| Field type (from: left, to: top) | Normal text | Rich text | URL | Number | Currency | Checkbox / boolean | Date / time | JSON | Relation |
|---|---|---|---|---|---|---|---|---|---|
| Normal text | ✅ Compatible | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible |
| Rich text | ✅ Compatible | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible |
| URL | ✅ Compatible | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible |
| Number | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ✅ Compatible | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible |
| Currency | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible |
| Checkbox / boolean | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible |
| Date / time | ✅ Compatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible |
| JSON | ✅ Compatible | ❌ Incompatible | ✅ Compatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ✅ Compatible | ❌ Incompatible |
| Relation | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ❌ Incompatible | ✅ Compatible |
Compatibility goes one way. A number can sync into a text field, but text can't sync into a number field, so a mapping between them only syncs from the number side.
Normal text
Section titled “Normal text”If a normal text field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- Rich text
- URL
Incompatible
Section titled “Incompatible”- Number
- Currency
- Checkbox / boolean
- Date / time
- JSON
- Relation
Rich text (HTML, Markdown)
Section titled “Rich text (HTML, Markdown)”If a rich text field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- Rich text
- URL
Incompatible
Section titled “Incompatible”- Number
- Currency
- Checkbox / boolean
- Date / time
- JSON
- Relation
If a URL is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- Rich text
- URL
Incompatible
Section titled “Incompatible”- Number
- Currency
- Checkbox / boolean
- Date / time
- JSON
- Relation
Number
Section titled “Number”If a number field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- Rich text
- Number
- Currency
- Checkbox / boolean
Incompatible
Section titled “Incompatible”- URL
- Date / time
- JSON
- Relation
Syncing a number into a checkbox shows a warning: values that can't be read as true or false may not sync.
Currency
Section titled “Currency”If a currency field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- Rich text
- Number
- Currency
Incompatible
Section titled “Incompatible”- URL
- Checkbox / boolean
- Date / time
- JSON
- Relation
Checkbox / boolean
Section titled “Checkbox / boolean”If a checkbox/boolean field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- Rich text
- Checkbox / boolean
Incompatible
Section titled “Incompatible”- URL
- Number
- Currency
- Date / time
- JSON
- Relation
Date/time
Section titled “Date/time”If a date/time field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- Rich text
- Date / time
Incompatible
Section titled “Incompatible”- URL
- Number
- Currency
- Checkbox / boolean
- JSON
- Relation
If a JSON field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Normal text
- URL
- JSON
Incompatible
Section titled “Incompatible”- Rich text
- Number
- Currency
- Checkbox / boolean
- Date / time
- Relation
Syncing JSON into a text field writes the object as a JSON string.
Relation
Section titled “Relation”If a relation field is the source field, then the following are compatible/incompatible options to sync to:
Compatible
Section titled “Compatible”- Relation
Incompatible
Section titled “Incompatible”- Normal text
- Rich text
- URL
- Number
- Currency
- Checkbox / boolean
- Date / time
- JSON