This sections gives a high-level overview about datalinker and its concepts.
Users and Organizations¶
All configuration on datalinker is associated with an organization. Upon registering as a user, you may create several organizations and add multiple users to organizations. There is just one user role. Once added to an organization, a user has the full rights on the organization, including the rights to remove other users and to delete the organization.
Before you can send data between services, you need to a some clients to your linker services. Clients are basically an instance of your linker services. For example, a user who downloaded your app and wants to send some data will register as a client to your app’s linker service. On the other side you also need a client to retrieve the data from your server linker service. Therefore, clients are linked to one specific linker service.
In order to exchange data efficiently between organizations, it is a good idea and actually a requirement to define some document types. Document types have a name and a mapping, which is just some JSON. All data sent over datalinker must have a document type specified. The mapping is optional but may be required by receiving services. Again, document types can be marked as public to enable communication across organizations. Document types are also associated to your organization.
The last piece of the puzzle are the documents. Documents on datalinker are the individual chunks of data being transmitted. A client sending data will create a linker session and add his data as documents to it. Of course, documents need to be associated with a document type and so it is possible to send different documents of different document types over the same linker session.
After this rather long overview, it’s best to get some coffee before continuing with the hands-on walktrough.