DATA OBJECT MANAGEMENT
Linkedin Admin Panel
This document provides comprehensive information about how the Linkedin Admin Panel manages data objects, including CRUD operations, validation, relationships, and user interface generation.
Architectural Design Credit and Contact Information
The architectural design of this data object management system is credited to Mindbricks Genesis Engine.
We encourage open communication and welcome any questions or discussions related to the architectural aspects of this data object management system.
Documentation Scope
This guide covers the complete data object management system within the Linkedin Admin Panel. It includes dynamic UI generation, CRUD operations, data validation, relationship management, and user experience patterns.
Intended Audience
This documentation is intended for frontend developers, UI/UX designers, and system administrators who need to understand how data objects are managed, displayed, and manipulated within the admin panel.
Data Object Architecture
Overview
The admin panel implements a basic data object management system that generates simple CRUD interfaces for data objects defined in the backend services. Each data object is represented by a data grid for listing and basic modal components for create/update/delete operations.
Data Object Structure
Core Data Object Properties
- Name: Unique identifier for the data object
- Display Name: Human-readable name for UI display
- Component Name: React component name for rendering
- Properties: Array of data object properties with types
Dynamic UI Generation
Component Generation Pattern
// Data object component structure JobApplication jobPosting
const DataObjectComponentJobApplicationJobPosting = {
// List view for displaying multiple records
ListView: {
component: 'JobApplicationJobPostingAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'JobApplicationJobPostingAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'JobApplicationJobPostingAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'JobApplicationJobPostingAppPageDeleteModal',
lazy: true
}
};
// Data object component structure JobApplication jobApplication
const DataObjectComponentJobApplicationJobApplication = {
// List view for displaying multiple records
ListView: {
component: 'JobApplicationJobApplicationAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'JobApplicationJobApplicationAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'JobApplicationJobApplicationAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'JobApplicationJobApplicationAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Networking connection
const DataObjectComponentNetworkingConnection = {
// List view for displaying multiple records
ListView: {
component: 'NetworkingConnectionAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'NetworkingConnectionAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'NetworkingConnectionAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'NetworkingConnectionAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Networking connectionRequest
const DataObjectComponentNetworkingConnectionRequest = {
// List view for displaying multiple records
ListView: {
component: 'NetworkingConnectionRequestAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'NetworkingConnectionRequestAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'NetworkingConnectionRequestAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'NetworkingConnectionRequestAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Company companyFollower
const DataObjectComponentCompanyCompanyFollower = {
// List view for displaying multiple records
ListView: {
component: 'CompanyCompanyFollowerAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'CompanyCompanyFollowerAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'CompanyCompanyFollowerAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'CompanyCompanyFollowerAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Company companyUpdate
const DataObjectComponentCompanyCompanyUpdate = {
// List view for displaying multiple records
ListView: {
component: 'CompanyCompanyUpdateAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'CompanyCompanyUpdateAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'CompanyCompanyUpdateAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'CompanyCompanyUpdateAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Company company
const DataObjectComponentCompanyCompany = {
// List view for displaying multiple records
ListView: {
component: 'CompanyCompanyAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'CompanyCompanyAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'CompanyCompanyAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'CompanyCompanyAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Company companyAdmin
const DataObjectComponentCompanyCompanyAdmin = {
// List view for displaying multiple records
ListView: {
component: 'CompanyCompanyAdminAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'CompanyCompanyAdminAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'CompanyCompanyAdminAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'CompanyCompanyAdminAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Content post
const DataObjectComponentContentPost = {
// List view for displaying multiple records
ListView: {
component: 'ContentPostAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ContentPostAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ContentPostAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ContentPostAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Content like
const DataObjectComponentContentLike = {
// List view for displaying multiple records
ListView: {
component: 'ContentLikeAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ContentLikeAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ContentLikeAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ContentLikeAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Content comment
const DataObjectComponentContentComment = {
// List view for displaying multiple records
ListView: {
component: 'ContentCommentAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ContentCommentAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ContentCommentAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ContentCommentAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Messaging message
const DataObjectComponentMessagingMessage = {
// List view for displaying multiple records
ListView: {
component: 'MessagingMessageAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'MessagingMessageAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'MessagingMessageAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'MessagingMessageAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Messaging conversation
const DataObjectComponentMessagingConversation = {
// List view for displaying multiple records
ListView: {
component: 'MessagingConversationAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'MessagingConversationAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'MessagingConversationAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'MessagingConversationAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Profile profile
const DataObjectComponentProfileProfile = {
// List view for displaying multiple records
ListView: {
component: 'ProfileProfileAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ProfileProfileAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ProfileProfileAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ProfileProfileAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Profile premiumsubscription
const DataObjectComponentProfilePremiumsubscription = {
// List view for displaying multiple records
ListView: {
component: 'ProfilePremiumsubscriptionAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ProfilePremiumsubscriptionAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ProfilePremiumsubscriptionAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ProfilePremiumsubscriptionAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Profile certification
const DataObjectComponentProfileCertification = {
// List view for displaying multiple records
ListView: {
component: 'ProfileCertificationAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ProfileCertificationAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ProfileCertificationAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ProfileCertificationAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Profile language
const DataObjectComponentProfileLanguage = {
// List view for displaying multiple records
ListView: {
component: 'ProfileLanguageAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ProfileLanguageAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ProfileLanguageAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ProfileLanguageAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Profile sys_premiumsubscriptionPayment
const DataObjectComponentProfileSys_premiumsubscriptionPayment = {
// List view for displaying multiple records
ListView: {
component: 'ProfileSys_premiumsubscriptionPaymentAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ProfileSys_premiumsubscriptionPaymentAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ProfileSys_premiumsubscriptionPaymentAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ProfileSys_premiumsubscriptionPaymentAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Profile sys_paymentCustomer
const DataObjectComponentProfileSys_paymentCustomer = {
// List view for displaying multiple records
ListView: {
component: 'ProfileSys_paymentCustomerAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ProfileSys_paymentCustomerAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ProfileSys_paymentCustomerAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ProfileSys_paymentCustomerAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Profile sys_paymentMethod
const DataObjectComponentProfileSys_paymentMethod = {
// List view for displaying multiple records
ListView: {
component: 'ProfileSys_paymentMethodAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'ProfileSys_paymentMethodAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'ProfileSys_paymentMethodAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'ProfileSys_paymentMethodAppPageDeleteModal',
lazy: true
}
};
// Data object component structure Auth user
const DataObjectComponentAuthUser = {
// List view for displaying multiple records
ListView: {
component: 'AuthUserAppPage',
features: ['data-grid', 'export', 'filtering', 'search']
},
// Modal components for data manipulation
CreateModal: {
component: 'AuthUserAppPageCreateModal',
lazy: true
},
UpdateModal: {
component: 'AuthUserAppPageUpdateModal',
lazy: true
},
// Action components
DeleteModal: {
component: 'AuthUserAppPageDeleteModal',
lazy: true
}
};
Service Data Objects
JobApplication Service Data Objects
Service Overview
-
Service Name:
jobApplication -
Service Display Name:
JobApplication - Total Data Objects: 2
Data Objects
JobPosting Data Object
Basic Information
-
Object Name:
jobPosting -
Display Name:
JobPosting -
Component Name:
JobApplicationJobPostingAppPage - Description: Job posting entity representing an open position with a company. Created/managed by company admins or recruiters. Fields include companyId, postedByUserId, title, details, requirements, employment type, salary, deadline, etc.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| description | Text | | N/A | Detailed description of the job posting. |
| title | String | | N/A | Job title/position name. |
| applicationDeadline | Date | | N/A | Last date for accepting applications. Checked during apply. |
| companyId | ID | | N/A | Company offering the job. FK to company:company |
| employmentType | Enum | | N/A | Job employment type (full-time, part-time, contract, internship,temporary,volunteer,other). |
| postedByUserId | ID | | N/A | User (admin/recruiter) who posted the job. FK to auth:user; used for ownership. |
| salaryRange | String | | N/A | Human-readable salary range (free-form for v1; can be refined later). |
| location | String | | N/A | Primary job location (city, country, etc.) |
| visibility | Enum | | N/A | Controls who can see/apply to this job: public (all) or private (admins only). |
| workplaceType | Enum | | N/A | Workplace type (on-site,remote,hybrid). |
| status | Enum | | N/A | status : active or closed |
| companyName | String | | N/A | company name |
Enum Properties
employmentType Enum Property
Property Definition: Job employment type (full-time, part-time, contract, internship,temporary,volunteer,other).
Enum Options
| Name | Value | Index |
|---|
| full_time |
"full_time"
| 0 |
| part_time |
"part_time"
| 1 |
| contract |
"contract"
| 2 |
| internship |
"internship"
| 3 |
| volunteer |
"volunteer"
| 4 |
| other |
"other"
| 5 |
| temporary |
"temporary"
| 6 |
visibility Enum Property
Property Definition: Controls who can see/apply to this job: public (all) or private (admins only).
Enum Options
| Name | Value | Index |
|---|
| public |
"public"
| 0 |
| private |
"private"
| 1 |
workplaceType Enum Property
Property Definition: Workplace type (on-site,remote,hybrid).
Enum Options
| Name | Value | Index |
|---|
| on_site |
"on_site"
| 0 |
| remote |
"remote"
| 1 |
| hybrid |
"hybrid"
| 2 |
status Enum Property
Property Definition: status : active or closed
Enum Options
| Name | Value | Index |
|---|
| active |
"active"
| 0 |
| closed |
"closed"
| 1 |
Generated UI Components
-
List Component:
JobApplicationJobPostingAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
JobApplicationJobPostingAppPageCreateModal- Form for creating new records -
Update Modal:
JobApplicationJobPostingAppPageUpdateModal- Form for editing existing records -
Delete Modal:
JobApplicationJobPostingAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /jobPosting/list- Retrieve paginated list of records -
Get:
GET /jobPosting/get- Retrieve single record by ID -
Create:
POST /jobPosting/create- Create new record -
Update:
PUT /jobPosting/update- Update existing record -
Delete:
DELETE /jobPosting/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/jobApplication/jobPosting -
Create Route:
/dashboard/jobApplication/jobPosting/create -
Update Route:
/dashboard/jobApplication/jobPosting/update/:id -
Delete Route:
/dashboard/jobApplication/jobPosting/delete/:id
JobApplication Data Object
Basic Information
-
Object Name:
jobApplication -
Display Name:
JobApplication -
Component Name:
JobApplicationJobApplicationAppPage - Description: Record of a user applying for a specific jobPosting (tracks application/resume/status/audit). Each application is unique per user x jobPosting.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| jobPostingId | ID | | N/A | FK to jobPosting: job applied for. |
| applicantUserId | ID | | N/A | User who submitted the application. FK to auth:user.id; used for ownership. |
| coverLetter | Text | | N/A | User's (optional) cover letter/body with application. |
| resumeUrl | String | | N/A | URL/path to user resume/doc to share with recruiter/admin. User-provided. |
| lastStatusUpdateAt | Date | | N/A | Timestamp of latest status change (set when status is updated). |
| status | Enum | | N/A | Application status: submitted, in_review, accepted, rejected. Only updatable by admin/recruiter for this job. |
| appliedAt | Date | | N/A | Timestamp when application was submitted. Set automatically on create. |
Enum Properties
status Enum Property
Property Definition: Application status: submitted, in_review, accepted, rejected. Only updatable by admin/recruiter for this job.
Enum Options
| Name | Value | Index |
|---|
| submitted |
"submitted"
| 0 |
| in_review |
"in_review"
| 1 |
| accepted |
"accepted"
| 2 |
| rejected |
"rejected"
| 3 |
Generated UI Components
-
List Component:
JobApplicationJobApplicationAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
JobApplicationJobApplicationAppPageCreateModal- Form for creating new records -
Update Modal:
JobApplicationJobApplicationAppPageUpdateModal- Form for editing existing records -
Delete Modal:
JobApplicationJobApplicationAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /jobApplication/list- Retrieve paginated list of records -
Get:
GET /jobApplication/get- Retrieve single record by ID -
Create:
POST /jobApplication/create- Create new record -
Update:
PUT /jobApplication/update- Update existing record -
Delete:
DELETE /jobApplication/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/jobApplication/jobApplication -
Create Route:
/dashboard/jobApplication/jobApplication/create -
Update Route:
/dashboard/jobApplication/jobApplication/update/:id -
Delete Route:
/dashboard/jobApplication/jobApplication/delete/:id
Networking Service Data Objects
Service Overview
-
Service Name:
networking -
Service Display Name:
Networking - Total Data Objects: 2
Data Objects
Connection Data Object
Basic Information
-
Object Name:
connection -
Display Name:
Connection -
Component Name:
NetworkingConnectionAppPage - Description: Represents a single established user-to-user professional relationship (mutual connection). One record per unordered user pair, deleted on disconnect..
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| connectedSince | Date | | N/A | Timestamp when connection was established. |
| userId1 | ID | | N/A | FK to auth:user.id. First user of the connection. Value must be lower of both user IDs lexically to ensure uniqueness regardless of order. |
| userId2 | ID | | N/A | FK to auth:user.id. Second user of the connection. Value must be higher of both user IDs lexically. Together with userId1 ensures uniqueness of unordered pair. |
Generated UI Components
-
List Component:
NetworkingConnectionAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
NetworkingConnectionAppPageCreateModal- Form for creating new records -
Update Modal:
NetworkingConnectionAppPageUpdateModal- Form for editing existing records -
Delete Modal:
NetworkingConnectionAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /connection/list- Retrieve paginated list of records -
Get:
GET /connection/get- Retrieve single record by ID -
Create:
POST /connection/create- Create new record -
Update:
PUT /connection/update- Update existing record -
Delete:
DELETE /connection/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/networking/connection -
Create Route:
/dashboard/networking/connection/create -
Update Route:
/dashboard/networking/connection/update/:id -
Delete Route:
/dashboard/networking/connection/delete/:id
ConnectionRequest Data Object
Basic Information
-
Object Name:
connectionRequest -
Display Name:
ConnectionRequest -
Component Name:
NetworkingConnectionRequestAppPage - Description: Tracks a user's request to connect with another user, supporting request/accept/reject/cancel, with audit timestamps.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| receiverUserId | ID | | N/A | FK to auth:user.id — target of the request. |
| senderUserId | ID | | N/A | FK to auth:user.id — user sending the connection request. |
| sentAt | Date | | N/A | Timestamp when request was sent. |
| status | Enum | | N/A | Request status: pending/accepted/rejected. |
| respondedAt | Date | | N/A | Timestamp when receiver accepted/rejected. |
| message | String | | N/A | Optional introductory message from sender to receiver. |
Enum Properties
status Enum Property
Property Definition: Request status: pending/accepted/rejected.
Enum Options
| Name | Value | Index |
|---|
| pending |
"pending"
| 0 |
| accepted |
"accepted"
| 1 |
| rejected |
"rejected"
| 2 |
Generated UI Components
-
List Component:
NetworkingConnectionRequestAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
NetworkingConnectionRequestAppPageCreateModal- Form for creating new records -
Update Modal:
NetworkingConnectionRequestAppPageUpdateModal- Form for editing existing records -
Delete Modal:
NetworkingConnectionRequestAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /connectionRequest/list- Retrieve paginated list of records -
Get:
GET /connectionRequest/get- Retrieve single record by ID -
Create:
POST /connectionRequest/create- Create new record -
Update:
PUT /connectionRequest/update- Update existing record -
Delete:
DELETE /connectionRequest/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/networking/connectionRequest -
Create Route:
/dashboard/networking/connectionRequest/create -
Update Route:
/dashboard/networking/connectionRequest/update/:id -
Delete Route:
/dashboard/networking/connectionRequest/delete/:id
Company Service Data Objects
Service Overview
-
Service Name:
company -
Service Display Name:
Company - Total Data Objects: 4
Data Objects
CompanyFollower Data Object
Basic Information
-
Object Name:
companyFollower -
Display Name:
CompanyFollower -
Component Name:
CompanyCompanyFollowerAppPage - Description: Tracks when a user follows a company to receive updates. Append-only, deletes for unfollow.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| userId | ID | | N/A | FK to auth:user who follows the company. |
| companyId | ID | | N/A | FK to company:company being followed. |
| followedAt | Date | | N/A | Timestamp when user followed company. |
Generated UI Components
-
List Component:
CompanyCompanyFollowerAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
CompanyCompanyFollowerAppPageCreateModal- Form for creating new records -
Update Modal:
CompanyCompanyFollowerAppPageUpdateModal- Form for editing existing records -
Delete Modal:
CompanyCompanyFollowerAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /companyFollower/list- Retrieve paginated list of records -
Get:
GET /companyFollower/get- Retrieve single record by ID -
Create:
POST /companyFollower/create- Create new record -
Update:
PUT /companyFollower/update- Update existing record -
Delete:
DELETE /companyFollower/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/company/companyFollower -
Create Route:
/dashboard/company/companyFollower/create -
Update Route:
/dashboard/company/companyFollower/update/:id -
Delete Route:
/dashboard/company/companyFollower/delete/:id
CompanyUpdate Data Object
Basic Information
-
Object Name:
companyUpdate -
Display Name:
CompanyUpdate -
Component Name:
CompanyCompanyUpdateAppPage - Description: A post/news update created by company admin and visible to followers depending on visibility.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| companyId | ID | | N/A | FK to company whose update this is. |
| content | Text | | N/A | Body/content of the update/news item. |
| authorUserId | ID | | N/A | FK to auth:user who authored the update (must be active admin at time of post). |
| attachmentUrls | String | | N/A | Array of URLs for update attachments (files, images, links). |
| visibility | Enum | | N/A | Update visibility: public (all) or private (followers only). |
Enum Properties
visibility Enum Property
Property Definition: Update visibility: public (all) or private (followers only).
Enum Options
| Name | Value | Index |
|---|
| public |
"public"
| 0 |
| private |
"private"
| 1 |
Generated UI Components
-
List Component:
CompanyCompanyUpdateAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
CompanyCompanyUpdateAppPageCreateModal- Form for creating new records -
Update Modal:
CompanyCompanyUpdateAppPageUpdateModal- Form for editing existing records -
Delete Modal:
CompanyCompanyUpdateAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /companyUpdate/list- Retrieve paginated list of records -
Get:
GET /companyUpdate/get- Retrieve single record by ID -
Create:
POST /companyUpdate/create- Create new record -
Update:
PUT /companyUpdate/update- Update existing record -
Delete:
DELETE /companyUpdate/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/company/companyUpdate -
Create Route:
/dashboard/company/companyUpdate/create -
Update Route:
/dashboard/company/companyUpdate/update/:id -
Delete Route:
/dashboard/company/companyUpdate/delete/:id
Company Data Object
Basic Information
-
Object Name:
company -
Display Name:
Company -
Component Name:
CompanyCompanyAppPage - Description: Represents a company profile and brand presence/pages on the network.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| name | String | | N/A | Company brand name. Displayed and searchable. Unique per company. |
| website | String | | N/A | Official company website link. |
| location | String | | N/A | Company HQ/main location string (e.g. city, country). |
| logoUrl | String | | N/A | Uploaded image URL for company logo/branding. |
| pageVisibility | Enum | | N/A | Visibility of the company page (public/private). |
| createdByUserId | ID | | N/A | ** |
| description | Text | | N/A | Company description / about section. |
| industry | String | | N/A | Industry sector or market. |
Enum Properties
pageVisibility Enum Property
Property Definition: Visibility of the company page (public/private).
Enum Options
| Name | Value | Index |
|---|
| public |
"public"
| 0 |
| private |
"private"
| 1 |
Generated UI Components
-
List Component:
CompanyCompanyAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
CompanyCompanyAppPageCreateModal- Form for creating new records -
Update Modal:
CompanyCompanyAppPageUpdateModal- Form for editing existing records -
Delete Modal:
CompanyCompanyAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /company/list- Retrieve paginated list of records -
Get:
GET /company/get- Retrieve single record by ID -
Create:
POST /company/create- Create new record -
Update:
PUT /company/update- Update existing record -
Delete:
DELETE /company/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/company/company -
Create Route:
/dashboard/company/company/create -
Update Route:
/dashboard/company/company/update/:id -
Delete Route:
/dashboard/company/company/delete/:id
CompanyAdmin Data Object
Basic Information
-
Object Name:
companyAdmin -
Display Name:
CompanyAdmin -
Component Name:
CompanyCompanyAdminAppPage - Description: Tracks which users are assigned as admins for a company, allowing them to manage the company page and edits.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| assignedAt | Date | | N/A | Timestamp when admin assigned. |
| userId | ID | | N/A | FK to auth:user who is admin of this company. |
| companyId | ID | | N/A | FK to company. |
| assignedBy | ID | | N/A | User who assigned this admin (for audit). |
Generated UI Components
-
List Component:
CompanyCompanyAdminAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
CompanyCompanyAdminAppPageCreateModal- Form for creating new records -
Update Modal:
CompanyCompanyAdminAppPageUpdateModal- Form for editing existing records -
Delete Modal:
CompanyCompanyAdminAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /companyAdmin/list- Retrieve paginated list of records -
Get:
GET /companyAdmin/get- Retrieve single record by ID -
Create:
POST /companyAdmin/create- Create new record -
Update:
PUT /companyAdmin/update- Update existing record -
Delete:
DELETE /companyAdmin/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/company/companyAdmin -
Create Route:
/dashboard/company/companyAdmin/create -
Update Route:
/dashboard/company/companyAdmin/update/:id -
Delete Route:
/dashboard/company/companyAdmin/delete/:id
Content Service Data Objects
Service Overview
-
Service Name:
content -
Service Display Name:
Content - Total Data Objects: 3
Data Objects
Post Data Object
Basic Information
-
Object Name:
post -
Display Name:
Post -
Component Name:
ContentPostAppPage - Description: A user or company-authored post in the feed, with content, optional attachments, and public/private visibility. Belongs to a user (author) and optionally a company.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| content | Text | | N/A | Main post content/body text |
| companyId | ID | | N/A | Optional. FK to company:company - if set, post is from company context (by admin). |
| authorUserId | ID | | N/A | FK to auth:user - the user who created the post. Required. |
| visibility | Enum | | N/A | Post-level visibility: public or private. |
| attachmentUrls | String | | N/A | Array of attachment URLs (e.g. images, docs, links). Optional. |
Enum Properties
visibility Enum Property
Property Definition: Post-level visibility: public or private.
Enum Options
| Name | Value | Index |
|---|
| public |
"public"
| 0 |
| private |
"private"
| 1 |
Generated UI Components
-
List Component:
ContentPostAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ContentPostAppPageCreateModal- Form for creating new records -
Update Modal:
ContentPostAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ContentPostAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /post/list- Retrieve paginated list of records -
Get:
GET /post/get- Retrieve single record by ID -
Create:
POST /post/create- Create new record -
Update:
PUT /post/update- Update existing record -
Delete:
DELETE /post/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/content/post -
Create Route:
/dashboard/content/post/create -
Update Route:
/dashboard/content/post/update/:id -
Delete Route:
/dashboard/content/post/delete/:id
Like Data Object
Basic Information
-
Object Name:
like -
Display Name:
Like -
Component Name:
ContentLikeAppPage - Description: A record of a user liking a specific post. Each user can like a post only once. Used for engagement counts and activity feeds.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| likedAt | Date | | N/A | Timestamp when the like was made. |
| postId | ID | | N/A | FK to content:post - the post that was liked. Required. |
| userId | ID | | N/A | FK to auth:user - owner of the like entry (who liked). Required. |
Generated UI Components
-
List Component:
ContentLikeAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ContentLikeAppPageCreateModal- Form for creating new records -
Update Modal:
ContentLikeAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ContentLikeAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /like/list- Retrieve paginated list of records -
Get:
GET /like/get- Retrieve single record by ID -
Create:
POST /like/create- Create new record -
Update:
PUT /like/update- Update existing record -
Delete:
DELETE /like/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/content/like -
Create Route:
/dashboard/content/like/create -
Update Route:
/dashboard/content/like/update/:id -
Delete Route:
/dashboard/content/like/delete/:id
Comment Data Object
Basic Information
-
Object Name:
comment -
Display Name:
Comment -
Component Name:
ContentCommentAppPage - Description: A comment on a post. Can be a top-level or a reply to another comment (via parentCommentId).
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| authorUserId | ID | | N/A | FK to auth:user - user who authored comment. |
| postId | ID | | N/A | FK to content:post - the post this comment is for. Required. |
| content | Text | | N/A | Comment body/content. |
| parentCommentId | ID | | N/A | Optional. FK to comment. If set, this is a reply to the parent comment, otherwise a top-level comment. |
Generated UI Components
-
List Component:
ContentCommentAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ContentCommentAppPageCreateModal- Form for creating new records -
Update Modal:
ContentCommentAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ContentCommentAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /comment/list- Retrieve paginated list of records -
Get:
GET /comment/get- Retrieve single record by ID -
Create:
POST /comment/create- Create new record -
Update:
PUT /comment/update- Update existing record -
Delete:
DELETE /comment/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/content/comment -
Create Route:
/dashboard/content/comment/create -
Update Route:
/dashboard/content/comment/update/:id -
Delete Route:
/dashboard/content/comment/delete/:id
Messaging Service Data Objects
Service Overview
-
Service Name:
messaging -
Service Display Name:
Messaging - Total Data Objects: 2
Data Objects
Message Data Object
Basic Information
-
Object Name:
message -
Display Name:
Message -
Component Name:
MessagingMessageAppPage - Description: Message posted within a conversation. Tracks content, sender, readBy, and deletedFor status per user.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| content | Text | | N/A | Raw message body/content. |
| senderUserId | ID | | N/A | auth:user.id of message sender. |
| deletedFor | ID | | N/A | Array of userIds who have deleted/hid this message (soft/hide). |
| readBy | ID | | N/A | Array of userIds who have read this message. Used for read receipts. |
| conversationId | ID | | N/A | Conversation this message belongs to (messaging:conversation). |
| sentAt | Date | | N/A | Timestamp when message is sent (defaults to now on create). |
Generated UI Components
-
List Component:
MessagingMessageAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
MessagingMessageAppPageCreateModal- Form for creating new records -
Update Modal:
MessagingMessageAppPageUpdateModal- Form for editing existing records -
Delete Modal:
MessagingMessageAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /message/list- Retrieve paginated list of records -
Get:
GET /message/get- Retrieve single record by ID -
Create:
POST /message/create- Create new record -
Update:
PUT /message/update- Update existing record -
Delete:
DELETE /message/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/messaging/message -
Create Route:
/dashboard/messaging/message/create -
Update Route:
/dashboard/messaging/message/update/:id -
Delete Route:
/dashboard/messaging/message/delete/:id
Conversation Data Object
Basic Information
-
Object Name:
conversation -
Display Name:
Conversation -
Component Name:
MessagingConversationAppPage - Description: Messaging thread among users supporting 1:1 and group. Tracks participants, group status, and last message time.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| isGroup | Boolean | | N/A | True for group; false for one-to-one conversation (default false). |
| participantIds | ID | | N/A | Array of user IDs (auth:user) participating in the conversation (min 2). |
| lastMessageAt | Date | | N/A | Timestamp of most recent message sent in this conversation. |
Generated UI Components
-
List Component:
MessagingConversationAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
MessagingConversationAppPageCreateModal- Form for creating new records -
Update Modal:
MessagingConversationAppPageUpdateModal- Form for editing existing records -
Delete Modal:
MessagingConversationAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /conversation/list- Retrieve paginated list of records -
Get:
GET /conversation/get- Retrieve single record by ID -
Create:
POST /conversation/create- Create new record -
Update:
PUT /conversation/update- Update existing record -
Delete:
DELETE /conversation/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/messaging/conversation -
Create Route:
/dashboard/messaging/conversation/create -
Update Route:
/dashboard/messaging/conversation/update/:id -
Delete Route:
/dashboard/messaging/conversation/delete/:id
Profile Service Data Objects
Service Overview
-
Service Name:
profile -
Service Display Name:
Profile - Total Data Objects: 7
Data Objects
Profile Data Object
Basic Information
-
Object Name:
profile -
Display Name:
Profile -
Component Name:
ProfileProfileAppPage - Description: Professional profile for a user, includes core info and arrays of experience/education/skills. One profile per user...
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| summary | Text | | N/A | Profile summary (bio/description). |
| headline | String | | N/A | Short tagline or headline for profile. |
| profilePhotoUrl | String | | N/A | URL for profile photo/avatar. |
| userId | ID | | N/A | Foreign key to auth:user. Owner of the profile. Single profile per user. |
| fullName | String | | N/A | Full name for display/search. |
| currentCompany | String | | N/A | Current employer/company, free text for now. |
| industry | String | | N/A | Industry sector name for profile. |
| languages | String | | N/A | Array of language names as string, links to language object (lookup/filter only). |
| skills | String | | N/A | List of professional skills (free-form tags). |
| location | String | | N/A | Location information (city, country, etc.) |
| experience | Object | | N/A | Array of experienceItem objects (job history). |
| profileVisibility | Enum | | N/A | Controls who can view profile: public or private. Used in search/list visibility. |
| education | Object | | N/A | Array of educationItem objects (degrees/certificates). |
| certifications | String | | N/A | Professional certifications by name, links to certification object. |
Enum Properties
profileVisibility Enum Property
Property Definition: Controls who can view profile: public or private. Used in search/list visibility.
Enum Options
| Name | Value | Index |
|---|
| public |
"public"
| 0 |
| private |
"private"
| 1 |
Generated UI Components
-
List Component:
ProfileProfileAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ProfileProfileAppPageCreateModal- Form for creating new records -
Update Modal:
ProfileProfileAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ProfileProfileAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /profile/list- Retrieve paginated list of records -
Get:
GET /profile/get- Retrieve single record by ID -
Create:
POST /profile/create- Create new record -
Update:
PUT /profile/update- Update existing record -
Delete:
DELETE /profile/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/profile/profile -
Create Route:
/dashboard/profile/profile/create -
Update Route:
/dashboard/profile/profile/update/:id -
Delete Route:
/dashboard/profile/profile/delete/:id
Premiumsubscription Data Object
Basic Information
-
Object Name:
premiumsubscription -
Display Name:
Premiumsubscription -
Component Name:
ProfilePremiumsubscriptionAppPage - Description: premium subscription for a user
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| profileId | ID | | N/A | the profile id of the subscription |
| currency | String | | N/A | *currency * |
| status | String | | N/A | ** |
| price | Double | | N/A | the price of the subscription |
| userId | ID | | N/A | the userid of the subscription |
| _paymentConfirmation | Enum | | N/A | An automatic property that is used to check the confirmed status of the payment set by webhooks. |
Enum Properties
_paymentConfirmation Enum Property
Property Definition: An automatic property that is used to check the confirmed status of the payment set by webhooks.
Enum Options
| Name | Value | Index |
|---|
| pending |
"pending"
| 0 |
| processing |
"processing"
| 1 |
| paid |
"paid"
| 2 |
| canceled |
"canceled"
| 3 |
Generated UI Components
-
List Component:
ProfilePremiumsubscriptionAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ProfilePremiumsubscriptionAppPageCreateModal- Form for creating new records -
Update Modal:
ProfilePremiumsubscriptionAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ProfilePremiumsubscriptionAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /premiumsubscription/list- Retrieve paginated list of records -
Get:
GET /premiumsubscription/get- Retrieve single record by ID -
Create:
POST /premiumsubscription/create- Create new record -
Update:
PUT /premiumsubscription/update- Update existing record -
Delete:
DELETE /premiumsubscription/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/profile/premiumsubscription -
Create Route:
/dashboard/profile/premiumsubscription/create -
Update Route:
/dashboard/profile/premiumsubscription/update/:id -
Delete Route:
/dashboard/profile/premiumsubscription/delete/:id
Certification Data Object
Basic Information
-
Object Name:
certification -
Display Name:
Certification -
Component Name:
ProfileCertificationAppPage - Description: Official certification available for selection in user profile (dictionary only, not user relation).
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| name | String | | N/A | Unique certification name (e.g. PMP, CFA, AWS Certified). |
Generated UI Components
-
List Component:
ProfileCertificationAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ProfileCertificationAppPageCreateModal- Form for creating new records -
Update Modal:
ProfileCertificationAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ProfileCertificationAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /certification/list- Retrieve paginated list of records -
Get:
GET /certification/get- Retrieve single record by ID -
Create:
POST /certification/create- Create new record -
Update:
PUT /certification/update- Update existing record -
Delete:
DELETE /certification/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/profile/certification -
Create Route:
/dashboard/profile/certification/create -
Update Route:
/dashboard/profile/certification/update/:id -
Delete Route:
/dashboard/profile/certification/delete/:id
Language Data Object
Basic Information
-
Object Name:
language -
Display Name:
Language -
Component Name:
ProfileLanguageAppPage - Description: Official language available for selection in user profile (dictionary only, not user relation).
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| name | String | | N/A | Unique language name (e.g. English, Spanish). |
Generated UI Components
-
List Component:
ProfileLanguageAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ProfileLanguageAppPageCreateModal- Form for creating new records -
Update Modal:
ProfileLanguageAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ProfileLanguageAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /language/list- Retrieve paginated list of records -
Get:
GET /language/get- Retrieve single record by ID -
Create:
POST /language/create- Create new record -
Update:
PUT /language/update- Update existing record -
Delete:
DELETE /language/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/profile/language -
Create Route:
/dashboard/profile/language/create -
Update Route:
/dashboard/profile/language/update/:id -
Delete Route:
/dashboard/profile/language/delete/:id
Sys_premiumsubscriptionPayment Data Object
Basic Information
-
Object Name:
sys_premiumsubscriptionPayment -
Display Name:
Sys_premiumsubscriptionPayment -
Component Name:
ProfileSys_premiumsubscriptionPaymentAppPage - Description: A payment storage object to store the payment life cyle of orders based on premiumsubscription object. It is autocreated based on the source object's checkout config
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| ownerId | ID | | N/A | * An ID value to represent owner user who created the order* |
| orderId | ID | | N/A | an ID value to represent the orderId which is the ID parameter of the source premiumsubscription object |
| paymentId | String | | N/A | A String value to represent the paymentId which is generated on the Stripe gateway. This id may represent different objects due to the payment gateway and the chosen flow type |
| paymentStatus | String | | N/A | A string value to represent the payment status which belongs to the lifecyle of a Stripe payment. |
| statusLiteral | String | | N/A | A string value to represent the logical payment status which belongs to the application lifecycle itself. |
| redirectUrl | String | | N/A | A string value to represent return page of the frontend to show the result of the payment, this is used when the callback is made to server not the client. |
Generated UI Components
-
List Component:
ProfileSys_premiumsubscriptionPaymentAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ProfileSys_premiumsubscriptionPaymentAppPageCreateModal- Form for creating new records -
Update Modal:
ProfileSys_premiumsubscriptionPaymentAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ProfileSys_premiumsubscriptionPaymentAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /sys_premiumsubscriptionPayment/list- Retrieve paginated list of records -
Get:
GET /sys_premiumsubscriptionPayment/get- Retrieve single record by ID -
Create:
POST /sys_premiumsubscriptionPayment/create- Create new record -
Update:
PUT /sys_premiumsubscriptionPayment/update- Update existing record -
Delete:
DELETE /sys_premiumsubscriptionPayment/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/profile/sys_premiumsubscriptionPayment -
Create Route:
/dashboard/profile/sys_premiumsubscriptionPayment/create -
Update Route:
/dashboard/profile/sys_premiumsubscriptionPayment/update/:id -
Delete Route:
/dashboard/profile/sys_premiumsubscriptionPayment/delete/:id
Sys_paymentCustomer Data Object
Basic Information
-
Object Name:
sys_paymentCustomer -
Display Name:
Sys_paymentCustomer -
Component Name:
ProfileSys_paymentCustomerAppPage - Description: A payment storage object to store the customer values of the payment platform
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| userId | ID | | N/A | * An ID value to represent the user who is created as a stripe customer* |
| customerId | String | | N/A | A string value to represent the customer id which is generated on the Stripe gateway. This id is used to represent the customer in the Stripe gateway |
| platform | String | | N/A | A String value to represent payment platform which is used to make the payment. It is stripe as default. It will be used to distinguesh the payment gateways in the future. |
Generated UI Components
-
List Component:
ProfileSys_paymentCustomerAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ProfileSys_paymentCustomerAppPageCreateModal- Form for creating new records -
Update Modal:
ProfileSys_paymentCustomerAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ProfileSys_paymentCustomerAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /sys_paymentCustomer/list- Retrieve paginated list of records -
Get:
GET /sys_paymentCustomer/get- Retrieve single record by ID -
Create:
POST /sys_paymentCustomer/create- Create new record -
Update:
PUT /sys_paymentCustomer/update- Update existing record -
Delete:
DELETE /sys_paymentCustomer/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/profile/sys_paymentCustomer -
Create Route:
/dashboard/profile/sys_paymentCustomer/create -
Update Route:
/dashboard/profile/sys_paymentCustomer/update/:id -
Delete Route:
/dashboard/profile/sys_paymentCustomer/delete/:id
Sys_paymentMethod Data Object
Basic Information
-
Object Name:
sys_paymentMethod -
Display Name:
Sys_paymentMethod -
Component Name:
ProfileSys_paymentMethodAppPage - Description: A payment storage object to store the payment methods of the platform customers
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| paymentMethodId | String | | N/A | A string value to represent the id of the payment method on the payment platform. |
| userId | ID | | N/A | * An ID value to represent the user who owns the payment method* |
| customerId | String | | N/A | A string value to represent the customer id which is generated on the payment gateway. |
| cardHolderName | String | | N/A | A string value to represent the name of the card holder. It can be different than the registered customer. |
| cardHolderZip | String | | N/A | A string value to represent the zip code of the card holder. It is used for address verification in specific countries. |
| platform | String | | N/A | A String value to represent payment platform which teh paymentMethod belongs. It is stripe as default. It will be used to distinguesh the payment gateways in the future. |
| cardInfo | Object | | N/A | A Json value to store the card details of the payment method. |
Generated UI Components
-
List Component:
ProfileSys_paymentMethodAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
ProfileSys_paymentMethodAppPageCreateModal- Form for creating new records -
Update Modal:
ProfileSys_paymentMethodAppPageUpdateModal- Form for editing existing records -
Delete Modal:
ProfileSys_paymentMethodAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /sys_paymentMethod/list- Retrieve paginated list of records -
Get:
GET /sys_paymentMethod/get- Retrieve single record by ID -
Create:
POST /sys_paymentMethod/create- Create new record -
Update:
PUT /sys_paymentMethod/update- Update existing record -
Delete:
DELETE /sys_paymentMethod/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/profile/sys_paymentMethod -
Create Route:
/dashboard/profile/sys_paymentMethod/create -
Update Route:
/dashboard/profile/sys_paymentMethod/update/:id -
Delete Route:
/dashboard/profile/sys_paymentMethod/delete/:id
Auth Service Data Objects
Service Overview
-
Service Name:
auth -
Service Display Name:
Auth - Total Data Objects: 1
Data Objects
User Data Object
Basic Information
-
Object Name:
user -
Display Name:
User -
Component Name:
AuthUserAppPage - Description: A data object that stores the user information and handles login settings.
Object Properties
| Property Name | Type | Required | Default | Definition |
|---|
| email | String | | N/A | * A string value to represent the user's email.* |
| password | String | | N/A | * A string value to represent the user's password. It will be stored as hashed.* |
| fullname | String | | N/A | A string value to represent the fullname of the user |
| avatar | String | | N/A | The avatar url of the user. A random avatar will be generated if not provided |
| roleId | String | | N/A | A string value to represent the roleId of the user. |
| emailVerified | Boolean | | N/A | A boolean value to represent the email verification status of the user. |
Generated UI Components
-
List Component:
AuthUserAppPageList- Displays paginated data with filtering and sorting -
Create Modal:
AuthUserAppPageCreateModal- Form for creating new records -
Update Modal:
AuthUserAppPageUpdateModal- Form for editing existing records -
Delete Modal:
AuthUserAppPageDeleteModal- Confirmation dialog for deletion
API Endpoints
-
List:
GET /user/list- Retrieve paginated list of records -
Get:
GET /user/get- Retrieve single record by ID -
Create:
POST /user/create- Create new record -
Update:
PUT /user/update- Update existing record -
Delete:
DELETE /user/delete- Delete record by ID
Route Configuration
-
List Route:
/dashboard/auth/user -
Create Route:
/dashboard/auth/user/create -
Update Route:
/dashboard/auth/user/update/:id -
Delete Route:
/dashboard/auth/user/delete/:id
CRUD Operations
Create Operations
Create Form Implementation
// Create forms are generated as lazy-loaded modal components
// Basic form fields are rendered based on data object properties
Create API Integration
// Create operations are handled through service-specific API calls
// Basic validation is performed client-side
Read Operations
List View Implementation
// List views are implemented using MUI DataGrid
// Data is fetched through service-specific API calls
Update Operations
Update Form Implementation
// Update forms are generated as lazy-loaded modal components
// Basic form fields are pre-populated with existing data
Update API Integration
// Update operations are handled through service-specific API calls
// Basic validation is performed client-side
Delete Operations
Delete Implementation
// Delete operations are handled through service-specific API calls
// Confirmation dialogs are implemented as modal components
Data Validation
Client-Side Validation
Validation Implementation
// Basic validation is performed on form fields
// Required fields are validated before submission
Server-Side Validation Integration
API Error Handling
// Server validation errors are displayed to users
// Error messages are shown in the UI components
Data Relationships
Relationship Management
Relationship Implementation
// Basic data relationships are handled through form fields
// Related data is displayed in select components
User Experience Patterns
Loading States
Loading Implementation
// Loading states are handled by MUI DataGrid
// Skeleton loading is provided by the data grid component
Error States
Error Handling UI
// Error states are displayed through UI components
// Error messages are shown to users
Empty States
Empty State UI
// Empty states are handled by MUI DataGrid
// Empty content is displayed when no data is available
Performance Optimization
Data Pagination
Pagination Implementation
// Pagination is handled by MUI DataGrid
// Data is loaded in pages as needed