Skip to content
This page is also available in your language. Switch

Sync settings

Choose what your account keeps in step on every device where you are signed in.

  • My tools

    Always synced: the tools on your board, their order and size.

  • The windows open on your start page, including what you typed in them.

  • Every note in the notepad – on the notepad page, on your board and in windows.

  • Every list of website shortcuts – on the shortcuts page, on your board and in windows.

  • Every grid in the cover grid maker – on its page, on your board and in windows.

  • Every list of bookmarked organisations in the OIN lookup – on its page, on your board and in windows.

  • Keeps your pipeline and saved recipes on all your devices. Your files are never synced – only the steps and settings.

Turning something off removes it from your account straight away. Your devices keep their own copy.

Notifications

Tools that can tell you about something new while a Synsi tab is open, even when you are in another tab or app. Choose them for this browser.

This browser cannot show notifications from websites.
Notifications are blocked for this site. Allow them in your browser’s site settings (the icon left of the address), then switch them on here.
  • Says “New message” while a Synsi tab is open – never who wrote it or what.

Your choice is stored in this browser only. Notifications never show personal content such as a message or a number. They work while a Synsi tab is open; closed tabs get none.

Flatten nested JSON into dotted keys

Turn a nested document into one level of keys such as address.city – and back. Value types stay as they are.

My tools →
Open full app
Open full app
Runs in your browser – your data stays on your device unless you turn on syncing

How to use the Flatten Nested JSON

  1. 1 Drop or paste the JSON on the studio, or try the example.
  2. 2 Check the flattened result in the preview. Change the separator or the array rule if you need to.
  3. 3 To go back, add “Rebuild nested JSON” after it – the result should equal your original.
  4. 4 Copy or download the JSON.

Flat JSON is still JSON

Some systems – environment-style config, translation files, search indexes, form builders – want every value on one level: address.city instead of {"address": {"city": …}}. This step does that for any JSON document. If the document is a list, each item is flattened on its own.

Unlike converting to a table, the result stays JSON, so numbers stay numbers, true stays true and null stays null. Nothing becomes text.

Rules you control

  • Separator: a dot by default; use a slash, underscore or anything else.
  • Arrays: number the items (tags.0, tags.1) or keep each list as one JSON text value.
  • Depth: stop flattening at a depth; everything deeper is kept as JSON text and counted in the notes.
  • Empty objects and lists are kept as they are, so they don’t disappear.

And back

“Rebuild nested JSON” splits keys at the separator and rebuilds objects, and optionally lists from keys numbered 0, 1, 2 …. Two keys that disagree – a as a value and a.b as a child – cannot both exist; the studio keeps the first and reports the conflicts.

If you want a table with columns rather than JSON, see convert JSON to CSV. The JSON syntax follows RFC 8259.

Limits

A key that itself contains the separator makes the round trip ambiguous – choose a separator that does not occur in your keys.

Frequently asked questions

Is the flattening reversible?

Yes, with “Rebuild nested JSON” and the same separator, as long as no key contains the separator itself and you flattened arrays as numbered keys.

What happens to arrays?

By default their items are numbered: tags.0, tags.1. You can keep a whole array as JSON text instead.

Does this change number formats?

No. Numbers keep their exact text, including trailing zeros and very long digits.

Last updated: