Fireback accelerates backend and mobile app development, offering powerful code generation tools and standardized architecture. With seamless backend integration and streamlined workflows, Fireback expedites the creation of robust and scalable apps.
workspace/role/assign
Response Dto/Entity: *core.OkayResponse
message OkayResponse {
OkayResponseData data = 1;
}
export interface OkayResponse {
data: OkayResponseData | undefined;
}
Request Dto/Entity: *workspaces.AssignRoleDto
message AssignRoleDto {
string roleId = 1; // @tag(validate:"required")
string userId = 2; // @tag(validate:"required")
optional string visibility = 3; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface AssignRoleDto {
/** @tag(validate:"required") */
roleId: string;
/** @tag(validate:"required") */
userId: string;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}
workspace/role
Response Dto/Entity: *workspaces.RoleEntity
message RoleEntity {
string uniqueId = 1; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
string name = 2; // @tag(polyglot:"name")
optional string parentRoleId = 3;
RoleEntity parentRole = 4;
repeated string capabilitiesListId = 5; // @tag(gorm:"-" sql:"-")
repeated CapabilityEntity capabilities = 6; // @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities")
WorkspaceEntity workspace = 7; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
optional string workspaceId = 8; // @tag(json:"workspaceId" gorm:"size:100;")
optional string visibility = 9; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface RoleEntity {
/** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
uniqueId: string;
/** @tag(polyglot:"name") */
name: string;
parentRoleId?: string | undefined;
parentRole: RoleEntity | undefined;
/** @tag(gorm:"-" sql:"-") */
capabilitiesListId: string[];
/** @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities") */
capabilities: CapabilityEntity[];
/** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
workspace: WorkspaceEntity | undefined;
/** @tag(json:"workspaceId" gorm:"size:100;") */
workspaceId?: string | undefined;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}
Request Dto/Entity: *workspaces.RoleEntity
message RoleEntity {
string uniqueId = 1; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
string name = 2; // @tag(polyglot:"name")
optional string parentRoleId = 3;
RoleEntity parentRole = 4;
repeated string capabilitiesListId = 5; // @tag(gorm:"-" sql:"-")
repeated CapabilityEntity capabilities = 6; // @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities")
WorkspaceEntity workspace = 7; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
optional string workspaceId = 8; // @tag(json:"workspaceId" gorm:"size:100;")
optional string visibility = 9; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface RoleEntity {
/** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
uniqueId: string;
/** @tag(polyglot:"name") */
name: string;
parentRoleId?: string | undefined;
parentRole: RoleEntity | undefined;
/** @tag(gorm:"-" sql:"-") */
capabilitiesListId: string[];
/** @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities") */
capabilities: CapabilityEntity[];
/** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
workspace: WorkspaceEntity | undefined;
/** @tag(json:"workspaceId" gorm:"size:100;") */
workspaceId?: string | undefined;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}
workspace/role
Response Dto/Entity: *workspaces.RoleEntity
message RoleEntity {
string uniqueId = 1; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
string name = 2; // @tag(polyglot:"name")
optional string parentRoleId = 3;
RoleEntity parentRole = 4;
repeated string capabilitiesListId = 5; // @tag(gorm:"-" sql:"-")
repeated CapabilityEntity capabilities = 6; // @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities")
WorkspaceEntity workspace = 7; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
optional string workspaceId = 8; // @tag(json:"workspaceId" gorm:"size:100;")
optional string visibility = 9; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface RoleEntity {
/** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
uniqueId: string;
/** @tag(polyglot:"name") */
name: string;
parentRoleId?: string | undefined;
parentRole: RoleEntity | undefined;
/** @tag(gorm:"-" sql:"-") */
capabilitiesListId: string[];
/** @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities") */
capabilities: CapabilityEntity[];
/** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
workspace: WorkspaceEntity | undefined;
/** @tag(json:"workspaceId" gorm:"size:100;") */
workspaceId?: string | undefined;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}
Request Dto/Entity: *workspaces.RoleEntity
message RoleEntity {
string uniqueId = 1; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
string name = 2; // @tag(polyglot:"name")
optional string parentRoleId = 3;
RoleEntity parentRole = 4;
repeated string capabilitiesListId = 5; // @tag(gorm:"-" sql:"-")
repeated CapabilityEntity capabilities = 6; // @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities")
WorkspaceEntity workspace = 7; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
optional string workspaceId = 8; // @tag(json:"workspaceId" gorm:"size:100;")
optional string visibility = 9; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface RoleEntity {
/** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
uniqueId: string;
/** @tag(polyglot:"name") */
name: string;
parentRoleId?: string | undefined;
parentRole: RoleEntity | undefined;
/** @tag(gorm:"-" sql:"-") */
capabilitiesListId: string[];
/** @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities") */
capabilities: CapabilityEntity[];
/** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
workspace: WorkspaceEntity | undefined;
/** @tag(json:"workspaceId" gorm:"size:100;") */
workspaceId?: string | undefined;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}
workspace/roles
Response Dto/Entity: *[]workspaces.RoleEntity
message RoleEntity {
string uniqueId = 1; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
string name = 2; // @tag(polyglot:"name")
optional string parentRoleId = 3;
RoleEntity parentRole = 4;
repeated string capabilitiesListId = 5; // @tag(gorm:"-" sql:"-")
repeated CapabilityEntity capabilities = 6; // @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities")
WorkspaceEntity workspace = 7; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
optional string workspaceId = 8; // @tag(json:"workspaceId" gorm:"size:100;")
optional string visibility = 9; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface RoleEntity {
/** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
uniqueId: string;
/** @tag(polyglot:"name") */
name: string;
parentRoleId?: string | undefined;
parentRole: RoleEntity | undefined;
/** @tag(gorm:"-" sql:"-") */
capabilitiesListId: string[];
/** @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities") */
capabilities: CapabilityEntity[];
/** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
workspace: WorkspaceEntity | undefined;
/** @tag(json:"workspaceId" gorm:"size:100;") */
workspaceId?: string | undefined;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}
workspace/role/:uniqueId
Response Dto/Entity: *workspaces.RoleEntity
message RoleEntity {
string uniqueId = 1; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
string name = 2; // @tag(polyglot:"name")
optional string parentRoleId = 3;
RoleEntity parentRole = 4;
repeated string capabilitiesListId = 5; // @tag(gorm:"-" sql:"-")
repeated CapabilityEntity capabilities = 6; // @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities")
WorkspaceEntity workspace = 7; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
optional string workspaceId = 8; // @tag(json:"workspaceId" gorm:"size:100;")
optional string visibility = 9; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface RoleEntity {
/** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
uniqueId: string;
/** @tag(polyglot:"name") */
name: string;
parentRoleId?: string | undefined;
parentRole: RoleEntity | undefined;
/** @tag(gorm:"-" sql:"-") */
capabilitiesListId: string[];
/** @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities") */
capabilities: CapabilityEntity[];
/** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
workspace: WorkspaceEntity | undefined;
/** @tag(json:"workspaceId" gorm:"size:100;") */
workspaceId?: string | undefined;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}
Params: :uniqueId
workspace/role
Request Dto/Entity: *core.DeleteRequest
Target Entity: *workspaces.RoleEntity
message RoleEntity {
string uniqueId = 1; // @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;")
string name = 2; // @tag(polyglot:"name")
optional string parentRoleId = 3;
RoleEntity parentRole = 4;
repeated string capabilitiesListId = 5; // @tag(gorm:"-" sql:"-")
repeated CapabilityEntity capabilities = 6; // @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities")
WorkspaceEntity workspace = 7; // @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-")
optional string workspaceId = 8; // @tag(json:"workspaceId" gorm:"size:100;")
optional string visibility = 9; // @tag(yaml:"visibility")
int64 updated = 16; // @tag(gorm:"autoUpdateTime:nano")
int64 created = 17; // @tag(gorm:"autoUpdateTime:nano")
}
export interface RoleEntity {
/** @tag(gorm:"primarykey;uniqueId;unique;not null;size:100;") */
uniqueId: string;
/** @tag(polyglot:"name") */
name: string;
parentRoleId?: string | undefined;
parentRole: RoleEntity | undefined;
/** @tag(gorm:"-" sql:"-") */
capabilitiesListId: string[];
/** @tag(gorm:"many2many:role_capability;foreignKey:UniqueId;references:UniqueId" json:"capabilities") */
capabilities: CapabilityEntity[];
/** @tag(gorm:"foreignKey:WorkspaceId;references:UniqueId" json:"-") */
workspace: WorkspaceEntity | undefined;
/** @tag(json:"workspaceId" gorm:"size:100;") */
workspaceId?: string | undefined;
/** @tag(yaml:"visibility") */
visibility?: string | undefined;
/** @tag(gorm:"autoUpdateTime:nano") */
updated: number;
/** @tag(gorm:"autoUpdateTime:nano") */
created: number;
}