postWorkspaceInvite

/workspace/invite

Response Dto/Entity: *workspaces.WorkspaceInviteEntity

message WorkspaceInviteEntity {
	string coverLetter       = 1;
	string targetUserLocale  = 2;
	string email             = 3;
	string phoneNumber       = 4;

	WorkspaceEntity workspace = 5; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
	optional string workspaceId = 6;  // @tag(gorm:"size:100;")
	string uniqueId  = 7; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")

	RoleEntity role = 8; // @tag(gorm:"foreignKey:RoleId;references:UniqueId")
	optional string roleId = 9; // @tag(gorm:"size:100;")
}
export interface WorkspaceInviteEntity {
    coverLetter: string;
    targetUserLocale: string;
    email: string;
    phoneNumber: string;
    /** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
    workspace: WorkspaceEntity | undefined;
    /** @tag(gorm:"size:100;") */
    workspaceId?: string | undefined;
    /** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
    uniqueId: string;
    /** @tag(gorm:"foreignKey:RoleId;references:UniqueId") */
    role: RoleEntity | undefined;
    /** @tag(gorm:"size:100;") */
    roleId?: string | undefined;
}

Request Dto/Entity: *workspaces.WorkspaceInviteDto

message WorkspaceInviteDto {

	string email = 1; // @tag(validate:"required")
	string roleId = 2; // @tag(validate:"required")
}
export interface WorkspaceInviteDto {
    /** @tag(validate:"required") */
    email: string;
    /** @tag(validate:"required") */
    roleId: string;
}

getWorkspacesInviteById

/workspaces/invite/:id

Response Dto/Entity: *[]workspaces.WorkspaceInviteEntity

message WorkspaceInviteEntity {
	string coverLetter       = 1;
	string targetUserLocale  = 2;
	string email             = 3;
	string phoneNumber       = 4;

	WorkspaceEntity workspace = 5; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
	optional string workspaceId = 6;  // @tag(gorm:"size:100;")
	string uniqueId  = 7; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")

	RoleEntity role = 8; // @tag(gorm:"foreignKey:RoleId;references:UniqueId")
	optional string roleId = 9; // @tag(gorm:"size:100;")
}
export interface WorkspaceInviteEntity {
    coverLetter: string;
    targetUserLocale: string;
    email: string;
    phoneNumber: string;
    /** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
    workspace: WorkspaceEntity | undefined;
    /** @tag(gorm:"size:100;") */
    workspaceId?: string | undefined;
    /** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
    uniqueId: string;
    /** @tag(gorm:"foreignKey:RoleId;references:UniqueId") */
    role: RoleEntity | undefined;
    /** @tag(gorm:"size:100;") */
    roleId?: string | undefined;
}

Params: :id

postWorkspaceAcceptInvite

/workspace/acceptInvite

Response Dto/Entity: *core.OkayResponse

getWorkspaces

/workspaces

Response Dto/Entity: *[]workspaces.WorkspaceEntity

message WorkspaceEntity {
	string name = 1;
	string description = 2;
	string uniqueId = 3; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
}
export interface WorkspaceEntity {
    name: string;
    description: string;
    /** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
    uniqueId: string;
}

postWorkspace

/workspace

Response Dto/Entity: *workspaces.WorkspaceEntity

message WorkspaceEntity {
	string name = 1;
	string description = 2;
	string uniqueId = 3; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
}
export interface WorkspaceEntity {
    name: string;
    description: string;
    /** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
    uniqueId: string;
}

Request Dto/Entity: *workspaces.WorkspaceEntity

message WorkspaceEntity {
	string name = 1;
	string description = 2;
	string uniqueId = 3; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
}
export interface WorkspaceEntity {
    name: string;
    description: string;
    /** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
    uniqueId: string;
}

deleteWorkspace

/workspace

Target Entity: *workspaces.WorkspaceEntity

message WorkspaceEntity {
	string name = 1;
	string description = 2;
	string uniqueId = 3; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
}
export interface WorkspaceEntity {
    name: string;
    description: string;
    /** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
    uniqueId: string;
}

getWorkspaceInvites

/workspace/invites

Response Dto/Entity: *[]workspaces.WorkspaceInviteEntity

message WorkspaceInviteEntity {
	string coverLetter       = 1;
	string targetUserLocale  = 2;
	string email             = 3;
	string phoneNumber       = 4;

	WorkspaceEntity workspace = 5; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
	optional string workspaceId = 6;  // @tag(gorm:"size:100;")
	string uniqueId  = 7; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")

	RoleEntity role = 8; // @tag(gorm:"foreignKey:RoleId;references:UniqueId")
	optional string roleId = 9; // @tag(gorm:"size:100;")
}
export interface WorkspaceInviteEntity {
    coverLetter: string;
    targetUserLocale: string;
    email: string;
    phoneNumber: string;
    /** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
    workspace: WorkspaceEntity | undefined;
    /** @tag(gorm:"size:100;") */
    workspaceId?: string | undefined;
    /** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
    uniqueId: string;
    /** @tag(gorm:"foreignKey:RoleId;references:UniqueId") */
    role: RoleEntity | undefined;
    /** @tag(gorm:"size:100;") */
    roleId?: string | undefined;
}