diff --git a/src/Migrator/Migrations/Migration201907100900UserProfilesApi.cs b/src/Migrator/Migrations/Migration201907100900UserProfilesApi.cs
new file mode 100644
index 0000000000000000000000000000000000000000..8deb1de7bfaea01841522410dd15b6ded961604f
--- /dev/null
+++ b/src/Migrator/Migrations/Migration201907100900UserProfilesApi.cs
@@ -0,0 +1,91 @@
+using FluentMigrator;
+namespace Coscine.Database.Migration.Migrations
+{
+    //yyyymmddhhmm
+    [Migration(201907100900)]
+    public class Migration201907100900UserProfilesApi : FluentMigrator.Migration
+    {
+        public override void Down()
+        {
+            #region Foreign Keys
+            Delete.ForeignKey()
+                .FromTable("GroupMemberships").ForeignColumn("UserId")
+                .ToTable("Users").PrimaryColumn("Id");
+
+            Delete.ForeignKey()
+                .FromTable("GroupMemberships").ForeignColumn("GroupId")
+                .ToTable("Groups").PrimaryColumn("Id");
+
+            Delete.ForeignKey()
+                .FromTable("ExternalIds").ForeignColumn("UserId")
+                .ToTable("Users").PrimaryColumn("Id");
+
+            Delete.ForeignKey()
+                .FromTable("ExternalIds").ForeignColumn("ResourceTypeId")
+                .ToTable("ExternalAuthenticators").PrimaryColumn("Id");
+            #endregion
+
+            #region
+            Delete.Table("Groups");
+            Delete.Table("GroupMemberships");
+            Delete.Table("ExternalAuthenticators");
+            Delete.Table("ExternalIds");
+            #endregion
+
+            #region Columns
+            Delete.Column("EmailAddress").FromTable("Users");
+            Delete.Column("DisplayName").FromTable("Users");
+            #endregion
+        }
+
+        public override void Up()
+        {
+            #region Existing Tables
+            Alter.Table("Users")
+                .AddColumn("EmailAddress").AsString(255).NotNullable()
+                .AddColumn("DisplayName").AsString(255).NotNullable();
+            #endregion
+
+            #region Independent Tables
+            Create.Table("Groups")
+                .WithColumn("Id").AsGuid().PrimaryKey().WithDefault(SystemMethods.NewGuid)
+                .WithColumn("Name").AsString(255).NotNullable();
+
+            Create.Table("ExternalAuthenticators")
+                .WithColumn("Id").AsGuid().PrimaryKey().WithDefault(SystemMethods.NewGuid)
+                .WithColumn("Name").AsString(50).NotNullable();
+            #endregion
+
+            #region GroupMemberships
+            Create.Table("GroupMemberships")
+                .WithColumn("RelationId").AsGuid().PrimaryKey().WithDefault(SystemMethods.NewGuid)
+                .WithColumn("GroupId").AsGuid().NotNullable()
+                .WithColumn("UserId").AsGuid().NotNullable();
+
+            Create.ForeignKey()
+                .FromTable("GroupMemberships").ForeignColumn("UserId")
+                .ToTable("Users").PrimaryColumn("Id");
+
+            Create.ForeignKey()
+                .FromTable("GroupMemberships").ForeignColumn("GroupId")
+                .ToTable("Groups").PrimaryColumn("Id");
+            #endregion
+
+            #region ExternalIds
+            Create.Table("ExternalIds")
+                .WithColumn("RelationId").AsGuid().PrimaryKey().WithDefault(SystemMethods.NewGuid)
+                .WithColumn("UserId").AsGuid().NotNullable()
+                .WithColumn("ResourceTypeId").AsGuid().NotNullable()
+                .WithColumn("ExtrenalId").AsString(255);
+
+            Create.ForeignKey()
+                .FromTable("ExternalIds").ForeignColumn("UserId")
+                .ToTable("Users").PrimaryColumn("Id");
+
+            Create.ForeignKey()
+                .FromTable("ExternalIds").ForeignColumn("ResourceTypeId")
+                .ToTable("ExternalAuthenticators").PrimaryColumn("Id");
+            #endregion
+        }
+    }
+}
diff --git a/src/Migrator/Migrator.csproj b/src/Migrator/Migrator.csproj
index a710f0a65f52700d100f7a18173ea2cd3df5499d..fc31a7310fe772882c0335bca3318115f0426950 100644
--- a/src/Migrator/Migrator.csproj
+++ b/src/Migrator/Migrator.csproj
@@ -145,6 +145,7 @@
   <ItemGroup>
     <Compile Include="Migrations\Migration201907011352ProjectApi.cs" />
     <Compile Include="Migrations\Migration201907081510EnhanceProjectApi.cs" />
+    <Compile Include="Migrations\Migration201907100900UserProfilesApi.cs" />
     <Compile Include="Migrator.cs" />
     <Compile Include="Program.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />