Getting Started

Welcome to Mycorr, the collaborative data platform designed to improve your productivity and bring structure to your data workflows. If you are someone who works with a lot of data, Mycorr will be a time-saver by centralizing your data and transforming your traditional spreadsheets into powerful, structured, and shareable resources.

This guide will introduce you to the core concepts and features that make Mycorr unique.

Why Choose Mycorr?

  • Real-time collaboration and synchronization

    Work together with other users in real time. See data changes instantly as they happen.

  • Data versioning

    Track every change, create checkpoints, and roll back to previous versions when needed. Our versioning system ensures you never lose important data and can always track your history.

  • Access Management

    Control who can view, edit, or share your resources. Define granular permissions for individuals or teams, ensuring your data stays secure and only accessible to the right people.

  • Integration with external datasources

    Quickly import data from external datasources and keep your data in sync with external sources.

Ready to Get Started ?

  • Learn about Account Management to get access to Mycorr.
  • Explore the Resources section for detailed guides on available resources and how to interact with them.
  • Explore different Data Sources you can bring data from into Mycorr.
  • Check out Data Management to get into the details of different ways to manage your data.
  • Visit API Access to learn about accessing your data from external applications.

Account Management

You can get started into Mycorr journey by creating an account.

If you have a Google or a Github account, you can sign up in a matter of seconds. But even if you don’t, you can still create an account in a few simple steps.

Resources

Mycorr's strength lies in its structured and shareable resources made available to its users. It allows them to organize and collaborate on their data with ease without worrying about conflicts or inconsistencies.

To help you get started, the following section provides an overview of what resources defined in Mycorr and how they are structured inside your workspace. Understanding the structure will make it easier for you to crunch the data.

Start by diving into our Resources Structure for a detailed breakdown.

Structure

In Mycorr, all data is organized in Models and Tables within them. Think of this as databases and tables in traditional systems.

structure

Tables always have a parent model, from which they can be edited. In that model, they exist in their latest state. When tables are shared to other users, they can import the tables into their own models. When a table is imported into a model, it can only be visualized, but not edited.

Learn more about Sharing of Tables.

Models

Think of Models as folders that hold data together in a single common space. A Model contains one or more Tables, displayed on a shared Canvas where you can collaborate with others and see real-time data changes as they happen.

When you create a Model, you are automatically the Owner of it, which is the highest level of access to the Model.

You can create Models in your private workspace, or within Teams you are a part of.

After the Model is created, you can add Tables to it and start working on your data. You can also share the Model with others, allowing them to collaborate on the same data.

Learn all about Sharing of Models.

Tables

Our Tables are just like tables in a database, that you can create, edit and manage within a Model.

A Table is accessed and visualized through Table Views, of which a Table can have as many as you like. For example, you can create one Table Views that are filtered or sorted differently.

table view
Table Views are slices of Tables. Adding a Table View, as its name suggests, creates a new view of the Table, allowing you to visualize and operate on it independently.

Within a Table View, you can:
  • Remove columns
  • Add Columns
  • Remove Rows
  • Add Rows
  • Filter Data
  • Update Data

Any data changes made within a Table View are persisted to the main Table to ensure data consistency between views. Learn more about Data Management.

In this part, we'll cover the way you can share resources in Mycorr and what permissions you can define for each resource.

Sharing Resources

What can you share?

Resources in Mycorr are private by default, meaning that only you can access them when you create them. However, you can share both models and tables with individual Users or Teams you are a part of, and define the level of access they get to the resource.

How can you share?

  • Sharing to Users

In order to share a resource with a group of users, you’ll need their email addresses. By default, once the resource is shared, they will receive both a notification in their Mycorr account and an email with a link to directly access the resource. In other cases, this will depend on the notification settings of the user.

Depending on the access level you choose, the users will be able to directly access the resource as soon as it is shared with them.

  • Sharing to a Team

Alternatively, you can share a resource with a team by selecting one of the teams you are a part of. By doing so, all members of the team will have access to it, as per the access level you have chosen.

Permissions

What are permissions?

Permissions are the settings defined when sharing a resource that determine what actions they can perform on the resource and what access level they have.

How can you set permissions?

When sharing a resource, you can choose from a list of permissions that are available. Each one of the resource has its own set of permissions :

Sharing Models

As the Model Owner, you are the only one who can invite others to collaborate on your Models by sharing it with Users or Teams you are a part of.

When sharing a Model, you can assign one of these two roles :

  • Collaborator : Allows users or teams to edit the Model and Tables within it.
  • Viewer : Allows users or teams to view the Model and its Tables but not make changes.

Neither Collaborators nor Viewers can share the Model. Only you, as the Owner, have the permission to do so.

Revoking Access to a Model

As the Model Owner, you can revoke access to a Model at any given time by removing a User or Team from the shared list.

When revoking access, you can choose to allow the User or Team to keep any table (owned by the model) they imported, or you can choose to remove all those imports. When choosing the second option, you revoke access to the model entirely with all its tables.

If you decide to allow them to keep the imports of the tables owned by that model, they will retain the versions they already have of the tables, whether they are behind the original versions or up-to-date, but they will no longer receive updates made to the tables.

Sharing Models

As the Model Owner, you can share Tables owned by the Model individually with Users or Teams, you are a part of, even without sharing the entire Model.

When sharing a Table, you can grant one of these two permissions :

  • Can Import : Allows users or teams to import the Table into other Models but not share it with others.
  • Can Reshare : Allows both importing the Table into other Models and sharing it with others.

Only you, as the Model Owner, can share a Table and give the re-share permission. Users or Teams who can reshare a Table can only share it again without the ability to grant the re-share permission to whoever they are sharing it with.

Revoking Access to a Table

As the Model Owner, you can revoke access to a Table at any given time by removing a User or Team from the shared list.

When revoking access, if the User or Team has imported the table elsewhere, you can choose to let them keep the imported copies or remove any import of the table.

If you allow them to keep the importeds, they will retain the version they already have of the table in the model(s) they have imported it into, but they will no longer receive updates made to the table.

Ownership Transfer of a Table

As the Model Owner, you can transfer ownership of a Table to another Model, making it the new Parent Model of the Table.

You can transfer ownership to models you own or to models you are collaborator in.

If the Table is imported in the target model we are transferring ownership to and it is not up-to-date with the latest version of the table in the source model, the table's state in the target model will be fast-forwarded to the latest version at the time of the ownership transfer.

When transferring ownership of a table in a model you are Collaborator in, the model Owner will be notified and would need to accept the ownership transfer request.

Data Sources

In Mycorr, tables can originate from different sources. Tables manually created within a Model are Owned by the Model. But, you can always bring in data from external sources.

You can access the Import section inside a Model where you can find different options :

Other options are doable on the Canvas directly, such as:

Table Import

In the Import section, you will see all the Models you have access to, whether those you own or those that were shared with you. Below each Model, you will find a list of all the tables available there. You can also find a list of Tables that have been explicitly shared with you.

You can reuse those Tables by importing them into the current Model you are working on. In order to do so, you can drag and drop any Table into the Canvas.

If you import Tables from Models where you are a Collaborator or Viewer and the Table is not explicitly shared with you, this action will trigger a request for the Model Owner to share the Table with you. You will need to wait for their approval before you can access the Table.

⚠️ Pending Import Requests

Imported Tables that are waiting for the Model Owner’s response will not appear in the Canvas until the request is approved and you create a Table View based on it.

You can find the pending tables grayed out in the Directory section.

You can choose to cancel the import request at any time.

If you are a viewer of a Model, meaning that you can not edit it, and one of the tables owned by your models have been imported there, you can still control the access to the table.

Data Consistency Across Models

After importing Tables, we make sure that the data in the source Table and the imported Table are consistent across Models.

Whenever changes are made to the original Table, they are detected in the Models where the Table has been imported, allowing you to manually trigger a sync to update the data to the latest state to ensure consistency wherever the Table is.

CSV Upload

You can ingest CSV data into your Models by dragging and dropping a CSV file onto the Canvas.

You can optionally set a specific delimiter (e.g., semicolon, comma, tab…) or header row number for more control over the data you are importing.

⚠️ Note that only .CSV files are accepted for now.

Google Sheets

Another way to import data into your Canvas is by connecting to Google Sheets and granting access to your spreadsheets. Then you can ingest them into your Models.

Inside a Model, in the Import section, you can:

  • Select one or multiple sheets to import into your Model.
  • Each selected sheet is imported as its own Table inside the Model.

Once imported, you can keep the data in sync. Changes made in the original sheet can be detected and you can trigger a sync.

⚠️ See Google Sheets Sync Guidelines. for more information.

Syncing Data from Google Sheets

When importing a Spreadsheet into the Canvas, there will be a button for the created Table that allows users to check for updates in the Spreadsheet. If there are any updates found, the system will automatically update the table with the latest data.

Our strategy accounts for:

  • Rows Addition/Deletion
  • Column Addition/Deletion
  • Value Updates in Cells

But, while we offer robust synchronization system, there are some rules to keep in mind to ensure smooth operations and prevent inconsistencies.

Column Reorder

If you move a lot of columns around in your Spreadsheet, our system will treat them as new columns at new positions rather than reordered columns.

Column Renaming

If you rename a column in your Spreadsheet, our system will treat it as a new column at that position rather than a renamed column.

The synchronization doesn't affect the overall structure of the Table in the Canvas. If changes are detected in the Schema and the Table is updated, you will see the correct new order of columns as they appear in the Spreadsheet.

If you need to make significant structural changes, consider re-importing your spreadsheet or contact support for guidance.

Pasted Data

You can quickly create a new Table by copying and pasting data directly into the Canvas.

A Table will be created and you can start manipulating the data right away.

⚠️ Only Pasted Data is editable. Other external Data sources mentioned are read-only.

Data Management

Mycorr is all about efficiently managing data. The platform is designed to help you organize, track, and collaborate on your data.

For more details on specific aspects of data management, see the sections below:

Data Versioning

One of the most important features in Mycorr is data versioning, which ensures that every significant change to your table is tracked and recoverable. This ensures a robust collaboration and provides the ability to restore previous states of your tables.

Table Versions

Each Table has a Snapshot at any given version. A Table Snapshot holds the Table Version, the Table Meta and the Table Schema at that version.

The Table Meta includes the metadata about rows, and on the other hand, the Table Schema includes the metadata about columns and the overall schema of the table.

Each data operation performed on a table, such as editing the schema, rows or modifying the data itself, results in the creation of a new Table Version. This ensures that you always have a complete history of meaningful changes.

Operations that do not affect the data or schema, such as resizing the table views, do not increment the Table Version.

Checkpoints

You can define a checkpoint for any table version. A checkpoint acts as a restorable point in your table's history.

Each table version can have one checkpoint.

Checkpoints can be deleted at any time.

Aliases

Aliases provide a way to give a table version a human-friendly name. When you rename a checkpoint, you are creating or updating an alias.

You can create many aliases for a Table Version, and you can set one of them as the default name for the Table Version.

Aliases can be deleted at any time.

Restoring and Checking Out

  • Owned Tables: If the Table is Owned, meaning that you are working in it's parent Model, you can restore it to any checkpoint, effectively rolling back to that point in history.
  • Imported Tables: For tables you have imported from other Models, you can only view a certain checkpoint, not restore or modify the original table.

Data Filtering

Data Commits

Teams

You can kick-off collaboration the right way by creating a Team and inviting members on board. By doing so, you get to collectively manage resources with different users within a single shared workspace.

You, as a user, can create a team or be invited to one at any given time. We distinguish two roles within a Team :

Admin

This is the highest access-level. When creating a Team, you are automatically assigned as the Admin.

An Admin is a member who has full control over the Team and can perform most of the actions within the Team.

Member

When you are invited to a Team, you are assigned as a Member.

Unless you are assigned the Admin role alongside the invitation or later on, you will have limited administrative access to the Team but you can still contribute to the resources within the Team and collaborate effectively.

Depending on the Team role you have, you can perform different actions within the Team. Learn about Team Management

Creating a Team

When creating a Team, here are the steps you can follow:

  1. Access the Teams section from the left sidebar menu.
  2. Click on the "Create Team" button.
  3. Enter the Team's required metadata.
  4. Click on the "Create" button to create the Team.

For Team's Metadata, only the name is required. The description is optional and the color will be set to default if not specified.

You can invite members to your Team alongside the creation or you can add them later from the Team's page.

Team Management

Inside a team, Mycorr maintains the same fundamental structure, but adds a layer where models are grouped together in a shared workspace.

For team management, we distinguish two types of roles : Team-Level Roles and Model-Level Roles that are inherited through team membership.

Team-Level Roles

Team-level roles determine what administrative actions users can perform within the team structure itself.

ActionsAdminMember
Edit Team Metadata
Delete Team
Leave Team

An admin can only leave a team if they are not the last admin in the team.

ActionsAdminMember
View Members
Add Members
Delete Members
Update Member Roles

Model-Level Roles

Users inherit model-specific permissions based on their team membership and also their relationship to the models themselves.

Creating a Model within a Team

You can directly create a Model inside the Team and set the team's access-level to the Model. By doing so, all team members will inherit it.

The access-level of a team to a Model could either be a Collaborator or a Viewer. See what actions each role can perform on the Model.

If you are already a collaborator of the model outside of the team, meaning that the model was explicity shared with you, and the model is shared with the team with viewer access only, you will have the highest level of access. In this case, you will be a collaborator of the model inside the team.

Not only you can manually create models inside a team, but you can also link one of your models from your private workspace to a team, and similarily set the access-level of the team to this model.

Models Management within a Team

ActionAdminMember
Add Models
View Models
Edit ModelsOnly Owner/CollaboratorOnly Owner/Collaborator
Dissociate ModelsOnly Owner

Dissociating a model means that the model will no longer be shared with the team, but remains in the user's private workspace.

API Access

Mycorr provides multiple ways for users to access their data from external applications :

Personal Access Tokens

Personal Access Tokens (PATs) are secure API credentials that allow you to authenticate and access your data in Mycorr from external applications. They are implemented using JWT (JSON Web Tokens), making them encrypted, secure and easy to use.

Creating a Personal Access Token

Step 1: Navigate to Access Page

  1. Log into your mycorr account.
  2. Navigate to the Access section in the left menu.
  3. Click on Generate button.

Step 2: Configure Your Token

  1. Name: Give your token a descriptive name.
  2. Scope: Choose the level of access needed :
    • Read: Access to view data and resources
  3. Expiration: Set an expiration date of the token.

Step 3: Save your Token

Important: Once your token is generated, make sure to copy and save it immediately. For security reasons, you won't be able to view it again.

Mycorr SDKs

Billing

Plans