This section will talk a bit about FiFo's metadata concept. Metadata is an essential part of FiFo's design as it allows a lot of customization and enables building applications on top of FiFo's API.

Basically every entity in FiFo can have metadata attached, here it doesn't matter if it's a VM, a User, or an IP-Range. This metadata is represented as a JSON object and can be nested, contain numbers, strings, other objects and lists of all of those.


Metadata Size

Metadata is made to hold small amounts of data, a few KB not megabyte. While for most data it's not a big issue, things like images, or files should never be stored there.

While this sounds somewhat mundane it is a very powerful tool to build a portal or connect to other applications.

One could for example store contact details in an Organization. Or DNS records in a VM's metadata, information about a router in an IP-Range.

If you integrate other service such as, say stripe, you can store ID information in the Organization too, or link a user to a ticketing system, or pretty much any other application via this way.