LINKEDIN FRONTEND GUIDE FOR AI CODING AGENTS
This document is a rest api guide for the linkedin project. The document is designed for AI agents who will generate frontend code that will consume the project backend.
The project has got 1 auth service, 1 notification service, 1 bff service and business services. Each service is a separate microservice application and listens the HTTP request from different service urls.
The services may be in preview server, staging server or real production server. So each service have got 3 acess urls. Frontend application should support all deployemnt servers in the development phase, and user should be able to select the target api server in the login page.
Project Introduction
This project's structure and ideas are the same as he real linkedIn webiste
API Structure
Object Structure of a Successfull Response
When the service processes requests successfully, it wraps the requested resource(s) within a JSON envelope. This envelope not only contains the data but also includes essential metadata, such as configuration details and pagination information, to enrich the response and provide context to the client.
HTTP Status Codes:
- 200 OK: This status code is returned for successful GET, LIST, UPDATE, or DELETE operations, indicating that the request has been processed successfully.
- 201 Created: This status code is specific to CREATE operations, signifying that the requested resource has been successfully created.
Success Response Format:
For successful operations, the response includes a
"status": "OK"
property, signaling the successful execution of the request. The
structure of a successful response is outlined below:
{
"status":"OK",
"statusCode": 200,
"elapsedMs":126,
"ssoTime":120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName":"products",
"method":"GET",
"action":"list",
"appVersion":"Version",
"rowCount":3,
"products":[{},{},{}],
"paging": {
"pageNumber":1,
"pageRowCount":25,
"totalRowCount":3,
"pageCount":1
},
"filters": [],
"uiPermissions": []
}
-
products: In this example, this key contains the actual response content, which may be a single object or an array of objects depending on the operation performed.
Additional Data
Each api may have include addtional data other than the main data object according to the business logic of the API. They will be given in each API's response signature.
Error Response
If a request encounters an issue, whether due to a logical fault or a technical problem, the service responds with a standardized JSON error structure. The HTTP status code within this response indicates the nature of the error, utilizing commonly recognized codes for clarity:
- 400 Bad Request: The request was improperly formatted or contained invalid parameters, preventing the server from processing it.
- 401 Unauthorized: The request lacked valid authentication token , login required
- 403 Forbidden Error Curent token provided do not grant access to the requested resource.
- 404 Not Found: The requested resource was not found on the server.
- 500 Internal Server Error: The server encountered an unexpected condition that prevented it from fulfilling the request.
Each error response is structured to provide meaningful insight into the problem, assisting in diagnosing and resolving issues efficiently.
{
"result": "ERR",
"status": 400,
"message": "errMsg_organizationIdisNotAValidID",
"errCode": 400,
"date": "2024-03-19T12:13:54.124Z",
"detail": "String"
}
Accessing the backend
Each service of the backend has got its own url according to the deployment environement. User may want to test the frontend in one of the 3 deployments of the application, preview, staging and production. Please ensure that register and login pages do have a deployemnt server selection option, so as the frontned coding agent you can arrange the base url path of all services.
The base url of the application in each environment is as follows:
-
Preview:
https://linkedin.prw.mindbricks.com -
Staging:
https://linkedin-stage.mindbricks.co -
Production:
https://linkedin.mindbricks.co
For the auth service the base url is as follows:
-
Preview:
https://linkedin.prw.mindbricks.com/auth-api -
Staging:
https://linkedin-stage.mindbricks.co/auth-api -
Production:
https://linkedin.mindbricks.co/auth-api
For each other service, the service base url will be given in service sections.
Any login requied request to the backend should have a valid
token, when a user makes a successfull login, the ressponse JSON
includes a JWT access token in the
accessTokenfields. In normal conditions, this token is also set to the
cookie and then consumed automatically, but since AI coding agents
preview options may fail to use cookies, please ensure that in
each request include the access token in the bearer auth header.
Registration Management
First of all please ensure that register and login pages do have a deployemnt server selection option, so as the frontned coding agent you can arrange the base url path of all services.
Start with a landing page and arranging register, verification and login flow. So at the first step, you need a general knowledge of the application to make a good landing page and the authetication flow.
How To Register
Using
registeruser
route of auth api, send the required fields to the backend in your
registration page.
The registerUser api in in
auth
service, is described with request and response structure below.
Note that since
registerUser
api is a business api, it has a version control, so please call it
with the given version like
/v1/registeruser
Register User
API
This api is used by public users to register themselves
Rest Route
The
registerUser
API REST controller can be triggered via the following route:
/v1/registeruser
Rest Request Parameters
The
registerUser
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| avatar | String | false | request.body?.avatar |
| password | String | true | request.body?.password |
| fullname | String | true | request.body?.fullname |
| String | true | request.body?.email | |
| avatar : The avatar url of the user. If not sent, a default random one will be generated. | |||
| password : The password defined by the the user that is being registered. | |||
| fullname : The fullname defined by the the user that is being registered. | |||
| email : The email defined by the the user that is being registered. |
REST Request To access the api you can use the REST controller with the path POST /v1/registeruser
axios({
method: 'POST',
url: '/v1/registeruser',
data: {
avatar:"String",
password:"String",
fullname:"String",
email:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
After a successful registration, frontend code should handle the
verification needs. The registration response will have a
user
object in the root envelope, this object will have user
information with an
id
parameter.
Email Verification
In the registration response, you should check the property
emailVerificationNeeded
in the reponse root, and if this property is true you should start
the email verification flow.
After login process, if you get an HTTP error status, and if there
is an
errCode
property in the response with
EmailVerificationNeeded
value, you should start the email verification flow.
-
Call the email verification
startroute of the backend (described below) with the user email, backend will send a secret code to the given email adresss. Backend can send the email message if the architect defined a real mail service or smtp server, so during the development time backend will send the secret code also to the frontend. You can get this secret code from the response within thesecretCodeproperty. - The secret code in the sent email message will be a 6 digits code , and you should arrange an input page so that the user can paste this code to the frontend application. Please navigate to this input page after you start the verification process. If the secretCode is sent to the frontend for test purposes, then you should show it as info in the input page, so that user can copy and paste it.
-
There is a
codeIndexproperty in the start response, please show it's value on the input page, so that user can match the index in the message with the one on the screen. -
When the user submits the code, please complete the email
verification using the
completeroute of the backend (described below) with the user email and the secret code. - After you get a successful response from email verification, you can navigate to the login page.
Here is the
startand
complete
routes of email verification. These are system routes , so they
dont have a version control.
POST /verification-services/email-verification/start
Purpose: Starts the email verification by generating and sending a secret code.
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | User’s email address to verify |
Example Request
{ "email": "user@example.com" }
Success Response
{
"status": "OK",
"codeIndex": 1,
// timeStamp : Milliseconds since Jan 1, 1970, 00:00:00.000 GMT
"timeStamp": 1784578660000,
"date": "Mon Jul 20 2026 23:17:40 GMT+0300 (GMT+03:00)",
// expireTime: in seconds
"expireTime": 86400,
"verificationType": "byLink",
// in testMode
"secretCode": "123456",
"userId": "user-uuid",
}
⚠️ In production,
secretCodeis not returned — only sent via email.
Error Responses
-
400 Bad Request: Already verified -
403 Forbidden: Too many attempts (rate limit)
POST /verification-services/email-verification/complete
Purpose: Completes the verification using the received code.
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | User’s email |
secretCode
|
String | Yes | Verification code |
Success Response
{
"status": "OK",
"isVerified": true,
"email": "user@email.com",
// in testMode
"userId": "user-uuid",
}
Error Responses
-
403 Forbidden: Code expired or mismatched -
404 Not Found: No verification in progress
Login Management
After a successfull login and completing required verifications, user can now login. Please make a fancy minimal login page where user can enter his email and password.
Bucket Management
This application has a bucket service and is used to store user or other objects related files. Bucket service is login agnostic, so when accessing for write or private read, you should insert a bucket token (given by services) to your request authorization header as bearer token.
User Bucket This bucket is used to store public user files for each user.
When a user logs in, or in /currentuser response there is
userBucketToken
to be used when sending user related public files to the bucket
service.
To upload
POST {baseUrl}/bucket/upload
Request body is form data which includes the bucketId and the file
as binary in
files
property.
{
bucketId: "{userId}-public-user-bucket",
files: {binary}
}
Response status is 200 on succesfull result, eg body:
{
"success": true,
"data": [
{
"fileId": "9da03f6d-0409-41ad-bb06-225a244ae408",
"originalName": "test (10).png",
"mimeType": "image/png",
"size": 604063,
"status": "uploaded",
"bucketName": "f7103b85-fcda-4dec-92c6-c336f71fd3a2-public-user-bucket",
"isPublic": true,
"downloadUrl": "https://babilcom.mindbricks.co/bucket/download/9da03f6d-0409-41ad-bb06-225a244ae408"
}
]
}
To download a file from the bucket, you should know its fileId, so if youupload an avatar or something else, be sure that the download url or the fileId is stored in backend.
Bucket is mostly used, in object creations where alos demands an addtional file like a product image or user avatar. So after you upload your image to the bucket, insert the returned download url to the related property in the related object creation.
Application Bucket
This Linkedin application alos has common public bucket which
everybody has a read access, but only users who have
superAdmin,
admin
or
saasAdmin
roles can write (upload) to the bucket.
The common public project bucket id is
"linkedin-public-common-bucket"
and in certain areas like product image uploads, since the user will already have the admin bucket token, he will be able to upload realted object images.
Please make your UI arrangements as able to upload files to the bucket using these bucket tokens.
Object Buckets Some objects may return also a bucket token, to upload or access related files with object. For example, when you get a project's data in a project management application, if there is a public or private bucket token, this is provided mostly for uploading project related files or downloading them with the token.
These buckets will be used according to the descriptions given along with the object definitions.
Role Management
This Linkedin may have different role names defined fro different
business logic. But unless another case is asked by the user,
respect to the admin roles which may be
superAdmin,
admin
or
saasAdmin
in the currentuser or login response given with the
roleIdproperty.
{
// ...
"roleId":"superAdmin",
// ...
}
If the application needs an admin panel, or any admin related page, please use these roleId's to decide if the user can access those pages or not.
1. Authentication Routes
1.1
POST /login
— User Login
Purpose: Verifies user credentials and creates an authenticated session with a JWT access token.
Access Routes:
-
GET /login: Returns a minimal HTML login page (for browser-based testing). -
POST /login: Authenticates user credentials and returns an access token and session.
Request Parameters
| Parameter | Type | Required | Source |
|---|---|---|---|
username
|
String | Yes |
request.body.username
|
password
|
String | Yes |
request.body.password
|
Behavior
- Authenticates credentials and returns a session object.
-
Sets cookie:
projectname-access-token[-tenantCodename] - Adds the same token in response headers.
-
Accepts either
usernameoremailfields (if both exist,usernameis prioritized).
Example
axios.post("/login", {
username: "user@example.com",
password: "securePassword"
});
Success Response
{
"userId": "d92b9d4c-9b1e-4e95-842e-3fb9c8c1df38",
"email": "user@example.com",
"fullname": "John Doe",
//...
}
Error Responses
-
401 Unauthorized: Invalid credentials -
403 Forbidden: Email/mobile verification or 2FA pending -
400 Bad Request: Missing parameters
1.2
POST /logout
— User Logout
Purpose: Terminates the current session and clears associated authentication tokens.
Behavior
- Invalidates session (if exists).
-
Clears cookie
projectname-access-token[-tenantCodename]. -
Returns a confirmation response (always
200 OK).
Example
axios.post("/logout", {}, {
headers: { "Authorization": "Bearer your-jwt-token" }
});
Notes
- Can be called without a session (idempotent behavior).
- Works for both cookie-based and token-based sessions.
Success Response
{ "status": "OK", "message": "User logged out successfully" }
2. Verification Services Overview
All verification routes are grouped under the
/verification-services
base path. They follow a
two-step verification pattern:
start
→
complete.
3. Email Verification
3.1 Trigger Scenarios
-
After registration (
emailVerificationRequiredForLogin= true) - When updating email address
- When login fails due to unverified email
3.2 Flow Summary
-
/start→ Generate & send code via email. -
/complete→ Verify code and mark email as verified.
** PLEASE NOTE **
Email verification is a frontend triiggered process. After user registers, the frontend should start the email verification process and navigate to its code input page.
3.3
POST /verification-services/email-verification/start
Purpose: Starts the email verification by generating and sending a secret code.
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | User’s email address to verify |
Example Request
{ "email": "user@example.com" }
Success Response
{
"status": "OK",
"codeIndex": 1,
// timeStamp : Milliseconds since Jan 1, 1970, 00:00:00.000 GMT
"timeStamp": 1784578660000,
"date": "Mon Jul 20 2026 23:17:40 GMT+0300 (GMT+03:00)",
// expireTime: in seconds
"expireTime": 86400,
"verificationType": "byLink",
// in testMode
"secretCode": "123456",
"userId": "user-uuid",
}
⚠️ In production,
secretCodeis not returned — only sent via email.
Error Responses
-
400 Bad Request: Already verified -
403 Forbidden: Too many attempts (rate limit)
3.4
POST /verification-services/email-verification/complete
Purpose: Completes the verification using the received code.
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | User’s email |
secretCode
|
String | Yes | Verification code |
Success Response
{
"status": "OK",
"isVerified": true,
"email": "user@email.com",
// in testMode
"userId": "user-uuid",
}
Error Responses
-
403 Forbidden: Code expired or mismatched -
404 Not Found: No verification in progress
3.5 Behavioral Notes
-
Resend Cooldown:
resendTimeWindow(e.g. 60s) -
Expiration: Codes expire after
expireTimeWindow(e.g. 1 day) - Single Active Session: One verification per user
4. Mobile Verification
4.1 Trigger Scenarios
-
After registration (
mobileVerificationRequiredForLogin= true) - When updating phone number
- On login requiring mobile verification
4.2 Flow
-
/start→ Sends verification code via SMS -
/complete→ Validates code and confirms number
4.3
POST /verification-services/mobile-verification/start
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | User’s email to locate mobile record |
Success Response
{
"status": "OK",
"codeIndex": 1,
// timeStamp : Milliseconds since Jan 1, 1970, 00:00:00.000 GMT
"timeStamp": 1784578660000,
"date": "Mon Jul 20 2026 23:17:40 GMT+0300 (GMT+03:00)",
// expireTime: in seconds
"expireTime": 180,
"verificationType": "byCode",
// in testMode
"secretCode": "123456",
"userId": "user-uuid",
}
⚠️
secretCodereturned only in development.
Errors
-
400 Bad Request: Already verified -
403 Forbidden: Rate-limited
4.4
POST /verification-services/mobile-verification/complete
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | Associated email |
secretCode
|
String | Yes | Code received via SMS |
Success Response
{
"status": "OK",
"isVerified": true,
"mobile": "+1 333 ...",
// in testMode
"userId": "user-uuid",
}
4.5 Behavioral Notes
- Cooldown: One code per minute
- Expiration: Codes valid for 1 day
- One Session Per User
5. Two-Factor Authentication (2FA)
5.1 Email 2FA
Flow
-
/start→ Generates and sends email code -
/complete→ Verifies code and updates session
POST
/verification-services/email-2factor-verification/start
| Parameter | Type | Required | Description |
|---|---|---|---|
userId
|
String | Yes | User ID |
sessionId
|
String | Yes | Current session |
client
|
String | No | Optional context |
reason
|
String | No | Reason for 2FA |
Response
{
"status": "OK",
"sessionId": "user session id UUID",
"userId": "user-uuid",
"codeIndex": 1,
// timeStamp : Milliseconds since Jan 1, 1970, 00:00:00.000 GMT
"timeStamp": 1784578660000,
"date": "Mon Jul 20 2026 23:17:40 GMT+0300 (GMT+03:00)",
// expireTime: in seconds
"expireTime": 86400,
"verificationType": "byLink",
// in testMode
"secretCode": "123456",
}
POST
/verification-services/email-2factor-verification/complete
| Parameter | Type | Required | Description |
|---|---|---|---|
userId
|
String | Yes | User ID |
sessionId
|
String | Yes | Session ID |
secretCode
|
String | Yes | Code from email |
Response
{
// user session data
"sessionId": "session-uuid",
// ...
}
5.2 Mobile 2FA
Flow
-
/start→ Sends SMS code -
/complete→ Validates and finalizes session
POST
/verification-services/mobile-2factor-verification/start
| Parameter | Type | Required | Description |
|---|---|---|---|
userId
|
String | Yes | User ID |
sessionId
|
String | Yes | Session ID |
client
|
String | No | Context |
reason
|
String | No | Reason |
Response
{
"status": "OK",
"sessionId": "user session id UUID",
"userId": "user-uuid",
"codeIndex": 1,
// timeStamp : Milliseconds since Jan 1, 1970, 00:00:00.000 GMT
"timeStamp": 1784578660000,
"date": "Mon Jul 20 2026 23:17:40 GMT+0300 (GMT+03:00)",
// expireTime: in seconds
"expireTime": 86400,
"verificationType": "byLink",
// in testMode
"secretCode": "123456",
}
POST
/verification-services/mobile-2factor-verification/complete
| Parameter | Type | Required | Description |
|---|---|---|---|
userId
|
String | Yes | User ID |
sessionId
|
String | Yes | Session ID |
secretCode
|
String | Yes | Code via SMS |
Response
{
// user session data
"sessionId": "session-uuid",
// ...
}
5.3 2FA Behavioral Notes
- One active code per session
-
Cooldown:
resendTimeWindow(e.g., 60s) -
Expiration:
expireTimeWindow(e.g., 5m)
6. Password Reset
6.1 By Email
Flow
-
/start→ Sends verification code via email -
/complete→ Validates and resets password
POST /verification-services/password-reset-by-email/start
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | User email |
Response
{
"status": "OK",
"codeIndex": 1,
// timeStamp : Milliseconds since Jan 1, 1970, 00:00:00.000 GMT
"timeStamp": 1784578660000,
"date": "Mon Jul 20 2026 23:17:40 GMT+0300 (GMT+03:00)",
// expireTime: in seconds
"expireTime": 86400,
"verificationType": "byLink",
// in testMode
"secretCode": "123456",
"userId": "user-uuid",
}
POST
/verification-services/password-reset-by-email/complete
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | User email |
secretCode
|
String | Yes | Code received |
password
|
String | Yes | New password |
Response
{
"status": "OK",
"isVerified": true,
"email": "user@email.com",
// in testMode
"userId": "user-uuid",
}
6.2 By Mobile
Flow
-
/start→ Sends SMS code -
/complete→ Validates and resets password
POST
/verification-services/password-reset-by-mobile/start
| Parameter | Type | Required | Description |
|---|---|---|---|
mobile
|
String | Yes | Mobile number |
Response
{
"status": "OK",
"codeIndex": 1,
// timeStamp : Milliseconds since Jan 1, 1970, 00:00:00.000 GMT
"timeStamp": 1784578660000,
"date": "Mon Jul 20 2026 23:17:40 GMT+0300 (GMT+03:00)",
// expireTime: in seconds
"expireTime": 86400,
"verificationType": "byLink",
// in testMode
"secretCode": "123456",
"userId": "user-uuid",
}
POST
/verification-services/password-reset-by-mobile/complete
| Parameter | Type | Required | Description |
|---|---|---|---|
email
|
String | Yes | Associated email |
secretCode
|
String | Yes | Code via SMS |
password
|
String | Yes | New password |
Response
{
"status": "OK",
"isVerified": true,
"mobile": "+1 444 ....",
// in testMode
"userId": "user-uuid",
}
6.3 Behavioral Notes
- Cooldown: 60s resend
- Expiration: 24h
- One session per user
- Works without an active login session
7. Verification Method Types
7.1
byCode
User manually enters the 6-digit code in frontend.
7.2
byLink
Frontend handles a one-click verification via email/SMS link containing code parameters.
8)
GET /currentuser
— Current Session
Purpose Return the currently authenticated user’s session.
Route Type
sessionInfo
Authentication Requires a valid access token (header or cookie).
Request
No parameters.
Example
axios.get("/currentuser", {
headers: { Authorization: "Bearer <jwt>" }
});
Success (200)
Returns the session object (identity, tenancy, token metadata):
{
"sessionId": "9cf23fa8-07d4-4e7c-80a6-ec6d6ac96bb9",
"userId": "d92b9d4c-9b1e-4e95-842e-3fb9c8c1df38",
"email": "user@example.com",
"fullname": "John Doe",
"roleId": "user",
"tenantId": "abc123",
"accessToken": "jwt-token-string",
"...": "..."
}
Errors
-
401 Unauthorized — No active session/token
{ "status": "ERR", "message": "No login found" }
Notes
- Commonly called by web/mobile clients after login to hydrate session state.
- Includes key identity/tenant fields and a token reference (if applicable).
- Ensure a valid token is supplied to receive a 200 response.
9)
GET /permissions
— List Effective Permissions
Purpose Return all effective permission grants for the current user.
Route Type
permissionFetch
Authentication Requires a valid access token.
Request
No parameters.
Example
axios.get("/permissions", {
headers: { Authorization: "Bearer <jwt>" }
});
Success (200)
Array of permission grants (aligned with
givenPermissions):
[
{
"id": "perm1",
"permissionName": "adminPanel.access",
"roleId": "admin",
"subjectUserId": "d92b9d4c-9b1e-4e95-842e-3fb9c8c1df38",
"subjectUserGroupId": null,
"objectId": null,
"canDo": true,
"tenantCodename": "store123"
},
{
"id": "perm2",
"permissionName": "orders.manage",
"roleId": null,
"subjectUserId": "d92b9d4c-9b1e-4e95-842e-3fb9c8c1df38",
"subjectUserGroupId": null,
"objectId": null,
"canDo": true,
"tenantCodename": "store123"
}
]
Field meanings (per item):
-
permissionName: Granted permission key. -
roleId: Present if granted via role. -
subjectUserId: Present if granted directly to the user. -
subjectUserGroupId: Present if granted via group. -
objectId: Present if scoped to a specific object (OBAC). -
canDo:trueif enabled,falseif restricted.
Errors
-
401 Unauthorized — No active session
{ "status": "ERR", "message": "No login found" } -
500 Internal Server Error — Unexpected failure
Notes
- Available on all Mindbricks-generated services (not only Auth).
-
Auth service: Reads live
givenPermissionsfrom DB. - Other services: Typically respond from a cached/projected view (e.g., ElasticSearch) for faster checks.
Tip: Cache permission results client-side/server-side and refresh after login or permission updates.
10)
GET /permissions/:permissionName
— Check Permission Scope
Purpose Check whether the current user has a specific permission and return any scoped object exceptions/inclusions.
Route Type
permissionScopeCheck
Authentication Requires a valid access token.
Path Parameters
| Name | Type | Required | Source |
|---|---|---|---|
permissionName
|
String | Yes |
request.params.permissionName
|
Example
axios.get("/permissions/orders.manage", {
headers: { Authorization: "Bearer <jwt>" }
});
Success (200)
{
"canDo": true,
"exceptions": [
"a1f2e3d4-xxxx-yyyy-zzzz-object1",
"b2c3d4e5-xxxx-yyyy-zzzz-object2"
]
}
Interpretation
-
If
canDo: true: permission is generally granted except the listedexceptions(restrictions). -
If
canDo: false: permission is generally not granted, only allowed for the listedexceptions(selective overrides). -
exceptionscontains object IDs (UUID strings) from the relevant domain model.
Errors
- 401 Unauthorized — No active session/token.
Services And Data Object
Auth Service
Authentication service for the project
Auth Service Data Objects
User A data object that stores the user information and handles login settings.
Auth Service Access urls
This service is accessible via the following environment-specific URLs:
-
Preview:
https://linkedin.prw.mindbricks.com/auth-api -
Staging:
https://linkedin-stage.mindbricks.co/auth-api -
Production:
https://linkedin.mindbricks.co/auth-api
Get User
API
This api is used by admin roles or the users themselves to get the user profile information.
Rest Route
The
getUser
API REST controller can be triggered via the following route:
/v1/users/:userId
Rest Request Parameters
The
getUser
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| userId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/users/:userId
axios({
method: 'GET',
url: `/v1/users/${userId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update User
API
This route is used by admins to update user profiles.
Rest Route
The
updateUser
API REST controller can be triggered via the following route:
/v1/users/:userId
Rest Request Parameters
The
updateUser
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| fullname | String | false | request.body?.fullname |
| avatar | String | false | request.body?.avatar |
| userId : This id paremeter is used to select the required data object that will be updated | |||
| fullname : A string value to represent the fullname of the user | |||
| avatar : The avatar url of the user. A random avatar will be generated if not provided |
REST Request To access the api you can use the REST controller with the path PATCH /v1/users/:userId
axios({
method: 'PATCH',
url: `/v1/users/${userId}`,
data: {
fullname:"String",
avatar:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Profile
API
This route is used by users to update their profiles.
Rest Route
The
updateProfile
API REST controller can be triggered via the following route:
/v1/profile/:userId
Rest Request Parameters
The
updateProfile
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| fullname | String | false | request.body?.fullname |
| avatar | String | false | request.body?.avatar |
| userId : This id paremeter is used to select the required data object that will be updated | |||
| fullname : A string value to represent the fullname of the user | |||
| avatar : The avatar url of the user. A random avatar will be generated if not provided |
REST Request To access the api you can use the REST controller with the path PATCH /v1/profile/:userId
axios({
method: 'PATCH',
url: `/v1/profile/${userId}`,
data: {
fullname:"String",
avatar:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create User
API
This api is used by admin roles to create a new user manually from admin panels
Rest Route
The
createUser
API REST controller can be triggered via the following route:
/v1/users
Rest Request Parameters
The
createUser
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| avatar | String | false | request.body?.avatar |
| String | true | request.body?.email | |
| password | String | true | request.body?.password |
| fullname | String | true | request.body?.fullname |
| avatar : The avatar url of the user. If not sent, a default random one will be generated. | |||
| email : A string value to represent the user's email. | |||
| password : A string value to represent the user's password. It will be stored as hashed. | |||
| fullname : A string value to represent the fullname of the user |
REST Request To access the api you can use the REST controller with the path POST /v1/users
axios({
method: 'POST',
url: '/v1/users',
data: {
avatar:"String",
email:"String",
password:"String",
fullname:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete User
API
This api is used by admins to delete user profiles.
Rest Route
The
deleteUser
API REST controller can be triggered via the following route:
/v1/users/:userId
Rest Request Parameters
The
deleteUser
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| userId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/users/:userId
axios({
method: 'DELETE',
url: `/v1/users/${userId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Archive Profile
API
This api is used by users to archive their profiles.
Rest Route
The
archiveProfile
API REST controller can be triggered via the following route:
/v1/archiveprofile/:userId
Rest Request Parameters
The
archiveProfile
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| userId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/archiveprofile/:userId
axios({
method: 'DELETE',
url: `/v1/archiveprofile/${userId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Users
API
The list of users is filtered by the tenantId.
Rest Route
The
listUsers
API REST controller can be triggered via the following route:
/v1/users
Rest Request Parameters The
listUsers
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/users
axios({
method: 'GET',
url: '/v1/users',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "users",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"users": [
{
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Search Users
API
The list of users is filtered by the tenantId.
Rest Route
The
searchUsers
API REST controller can be triggered via the following route:
/v1/searchusers
Rest Request Parameters
The
searchUsers
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| keyword | String | true | request.query?.keyword |
| keyword : |
REST Request To access the api you can use the REST controller with the path GET /v1/searchusers
axios({
method: 'GET',
url: '/v1/searchusers',
data: {
},
params: {
keyword:'"String"',
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "users",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"users": [
{
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Update Userrole
API
This route is used by admin roles to update the user role.The default role is user when a user is registered. A user's role can be updated by superAdmin or admin
Rest Route
The
updateUserRole
API REST controller can be triggered via the following route:
/v1/userrole/:userId
Rest Request Parameters
The
updateUserRole
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| roleId | String | true | request.body?.roleId |
| userId : This id paremeter is used to select the required data object that will be updated | |||
| roleId : The new roleId of the user to be updated |
REST Request To access the api you can use the REST controller with the path PATCH /v1/userrole/:userId
axios({
method: 'PATCH',
url: `/v1/userrole/${userId}`,
data: {
roleId:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Userpassword
API
This route is used to update the password of users in the profile page by users themselves
Rest Route
The
updateUserPassword
API REST controller can be triggered via the following route:
/v1/userpassword/:userId
Rest Request Parameters
The
updateUserPassword
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| oldPassword | String | true | request.body?.oldPassword |
| newPassword | String | true | request.body?.newPassword |
| userId : This id paremeter is used to select the required data object that will be updated | |||
| oldPassword : The old password of the user that will be overridden bu the new one. Send for double check. | |||
| newPassword : The new password of the user to be updated |
REST Request To access the api you can use the REST controller with the path PATCH /v1/userpassword/:userId
axios({
method: 'PATCH',
url: `/v1/userpassword/${userId}`,
data: {
oldPassword:"String",
newPassword:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Userpasswordbyadmin
API
This route is used to change any user password by admins only. Superadmin can chnage all passwords, admins can change only nonadmin passwords
Rest Route
The
updateUserPasswordByAdmin
API REST controller can be triggered via the following route:
/v1/userpasswordbyadmin/:userId
Rest Request Parameters
The
updateUserPasswordByAdmin
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| password | String | true | request.body?.password |
| userId : This id paremeter is used to select the required data object that will be updated | |||
| password : The new password of the user to be updated |
REST Request To access the api you can use the REST controller with the path PATCH /v1/userpasswordbyadmin/:userId
axios({
method: 'PATCH',
url: `/v1/userpasswordbyadmin/${userId}`,
data: {
password:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Briefuser
API
This route is used by public to get simple user profile information.
Rest Route
The
getBriefUser
API REST controller can be triggered via the following route:
/v1/briefuser/:userId
Rest Request Parameters
The
getBriefUser
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.params?.userId |
| userId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/briefuser/:userId
axios({
method: 'GET',
url: `/v1/briefuser/${userId}`,
data: {
},
params: {
}
});
REST Response
This route's response is constrained to a select list of properties, and therefore does not encompass all attributes of the resource.
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"user": {
"fullname": "String",
"avatar": "String",
"isActive": true
}
}
Register User
API
This api is used by public users to register themselves
Rest Route
The
registerUser
API REST controller can be triggered via the following route:
/v1/registeruser
Rest Request Parameters
The
registerUser
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| avatar | String | false | request.body?.avatar |
| password | String | true | request.body?.password |
| fullname | String | true | request.body?.fullname |
| String | true | request.body?.email | |
| avatar : The avatar url of the user. If not sent, a default random one will be generated. | |||
| password : The password defined by the the user that is being registered. | |||
| fullname : The fullname defined by the the user that is being registered. | |||
| email : The email defined by the the user that is being registered. |
REST Request To access the api you can use the REST controller with the path POST /v1/registeruser
axios({
method: 'POST',
url: '/v1/registeruser',
data: {
avatar:"String",
password:"String",
fullname:"String",
email:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "user",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"user": {
"id": "ID",
"email": "String",
"password": "String",
"fullname": "String",
"avatar": "String",
"roleId": "String",
"emailVerified": "Boolean",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
JobApplication Service
Microservice handling job postings (created by recruiters/company admins), job applications (created by users), allowing job search, application submission, and status update workflows. Enforces business rules around application status, admin controls, and lets professionals apply and track job applications .within the network.
JobApplication Service Data Objects
JobPosting 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.
JobApplication Record of a user applying for a specific jobPosting (tracks application/resume/status/audit). Each application is unique per user x jobPosting.
JobApplication Service Access urls
This service is accessible via the following environment-specific URLs:
-
Preview:
https://linkedin.prw.mindbricks.com/jobapplication-api -
Staging:
https://linkedin-stage.mindbricks.co/jobapplication-api -
Production:
https://linkedin.mindbricks.co/jobapplication-api
Delete Jobapplication
API
Delete (soft) job application. Only applicant or admin for the job's company may delete.
Rest Route
The
deleteJobApplication
API REST controller can be triggered via the following route:
/v1/jobapplications/:jobApplicationId
Rest Request Parameters
The
deleteJobApplication
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| jobApplicationId | ID | true | request.params?.jobApplicationId |
| jobApplicationId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/jobapplications/:jobApplicationId
axios({
method: 'DELETE',
url: `/v1/jobapplications/${jobApplicationId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobApplication",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"jobApplication": {
"id": "ID",
"jobPostingId": "ID",
"applicantUserId": "ID",
"coverLetter": "Text",
"resumeUrl": "String",
"lastStatusUpdateAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"appliedAt": "Date",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Jobapplication
API
Get job application record. Only applicant or admin of company may view.
Rest Route
The
getJobApplication
API REST controller can be triggered via the following route:
/v1/jobapplications/:jobApplicationId
Rest Request Parameters
The
getJobApplication
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| jobApplicationId | ID | true | request.params?.jobApplicationId |
| jobApplicationId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/jobapplications/:jobApplicationId
axios({
method: 'GET',
url: `/v1/jobapplications/${jobApplicationId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobApplication",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"jobApplication": {
"id": "ID",
"jobPostingId": "ID",
"applicantUserId": "ID",
"coverLetter": "Text",
"resumeUrl": "String",
"lastStatusUpdateAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"appliedAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Jobposting
API
Update job posting fields. Only company admins for companyId may update. Ownership enforced. Edits forbidden after deadline if desired.
Rest Route
The
updateJobPosting
API REST controller can be triggered via the following route:
/v1/jobpostings/:jobPostingId
Rest Request Parameters
The
updateJobPosting
api has got 12 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| jobPostingId | ID | true | request.params?.jobPostingId |
| description | Text | true | request.body?.description |
| title | String | true | request.body?.title |
| applicationDeadline | Date | false | request.body?.applicationDeadline |
| companyId | ID | true | request.body?.companyId |
| employmentType | Enum | true | request.body?.employmentType |
| salaryRange | String | false | request.body?.salaryRange |
| location | String | false | request.body?.location |
| visibility | Enum | true | request.body?.visibility |
| workplaceType | Enum | true | request.body?.workplaceType |
| status | Enum | true | request.body?.status |
| companyName | String | true | request.body?.companyName |
| jobPostingId : This id paremeter is used to select the required data object that will be updated | |||
| description : Detailed description of the job posting. | |||
| title : Job title/position name. | |||
| applicationDeadline : Last date for accepting applications. Checked during apply. | |||
| companyId : Company offering the job. FK to company:company | |||
| employmentType : Job employment type (full-time, part-time, contract, internship,temporary,volunteer,other). | |||
| salaryRange : Human-readable salary range (free-form for v1; can be refined later). | |||
| location : Primary job location (city, country, etc.) | |||
| visibility : Controls who can see/apply to this job: public (all) or private (admins only). | |||
| workplaceType : Workplace type (on-site,remote,hybrid). | |||
| status : status : active or closed | |||
| companyName : company name |
REST Request To access the api you can use the REST controller with the path PATCH /v1/jobpostings/:jobPostingId
axios({
method: 'PATCH',
url: `/v1/jobpostings/${jobPostingId}`,
data: {
description:"Text",
title:"String",
applicationDeadline:"Date",
companyId:"ID",
employmentType:"Enum",
salaryRange:"String",
location:"String",
visibility:"Enum",
workplaceType:"Enum",
status:"Enum",
companyName:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobPosting",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"jobPosting": {
"id": "ID",
"description": "Text",
"title": "String",
"applicationDeadline": "Date",
"companyId": "ID",
"employmentType": "Enum",
"employmentType_idx": "Integer",
"postedByUserId": "ID",
"salaryRange": "String",
"location": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"workplaceType": "Enum",
"workplaceType_idx": "Integer",
"status": "Enum",
"status_idx": "Integer",
"companyName": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Jobposting
API
Delete (soft) a job posting. Only admin for companyId may delete.
Rest Route
The
deleteJobPosting
API REST controller can be triggered via the following route:
/v1/jobpostings/:jobPostingId
Rest Request Parameters
The
deleteJobPosting
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| jobPostingId | ID | true | request.params?.jobPostingId |
| jobPostingId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/jobpostings/:jobPostingId
axios({
method: 'DELETE',
url: `/v1/jobpostings/${jobPostingId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobPosting",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"jobPosting": {
"id": "ID",
"description": "Text",
"title": "String",
"applicationDeadline": "Date",
"companyId": "ID",
"employmentType": "Enum",
"employmentType_idx": "Integer",
"postedByUserId": "ID",
"salaryRange": "String",
"location": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"workplaceType": "Enum",
"workplaceType_idx": "Integer",
"status": "Enum",
"status_idx": "Integer",
"companyName": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Jobposting
API
Fetch a job posting by ID. Publicly visible if visibility=public, else only viewable by admins of company.
Rest Route
The
getJobPosting
API REST controller can be triggered via the following route:
/v1/jobpostings/:jobPostingId
Rest Request Parameters
The
getJobPosting
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| jobPostingId | ID | true | request.params?.jobPostingId |
| jobPostingId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/jobpostings/:jobPostingId
axios({
method: 'GET',
url: `/v1/jobpostings/${jobPostingId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobPosting",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"jobPosting": {
"id": "ID",
"description": "Text",
"title": "String",
"applicationDeadline": "Date",
"companyId": "ID",
"employmentType": "Enum",
"employmentType_idx": "Integer",
"postedByUserId": "ID",
"salaryRange": "String",
"location": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"workplaceType": "Enum",
"workplaceType_idx": "Integer",
"status": "Enum",
"status_idx": "Integer",
"companyName": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Jobapplication
API
Update job application (status/by admin, or resume/cover by applicant, limited). Only admins/recruiters for job's company, or applicant, may update. Status can only move forward, not revert to submitted.
Rest Route
The
updateJobApplication
API REST controller can be triggered via the following route:
/v1/jobapplications/:jobApplicationId
Rest Request Parameters
The
updateJobApplication
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| jobApplicationId | ID | true | request.params?.jobApplicationId |
| coverLetter | Text | false | request.body?.coverLetter |
| resumeUrl | String | false | request.body?.resumeUrl |
| status | Enum | true | request.body?.status |
| jobApplicationId : This id paremeter is used to select the required data object that will be updated | |||
| coverLetter : User's (optional) cover letter/body with application. | |||
| resumeUrl : URL/path to user resume/doc to share with recruiter/admin. User-provided. | |||
| status : Application status: submitted, in_review, accepted, rejected. Only updatable by admin/recruiter for this job. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/jobapplications/:jobApplicationId
axios({
method: 'PATCH',
url: `/v1/jobapplications/${jobApplicationId}`,
data: {
coverLetter:"Text",
resumeUrl:"String",
status:"Enum",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobApplication",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"jobApplication": {
"id": "ID",
"jobPostingId": "ID",
"applicantUserId": "ID",
"coverLetter": "Text",
"resumeUrl": "String",
"lastStatusUpdateAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"appliedAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Jobapplication
API
Submit a job application for a jobPosting (by logged-in user). Only if not already applied, and before deadline. Sets status=submitted.
Rest Route
The
createJobApplication
API REST controller can be triggered via the following route:
/v1/jobapplications
Rest Request Parameters
The
createJobApplication
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| jobPostingId | ID | true | request.body?.jobPostingId |
| coverLetter | Text | false | request.body?.coverLetter |
| resumeUrl | String | false | request.body?.resumeUrl |
| status | Enum | true | request.body?.status |
| jobPostingId : FK to jobPosting: job applied for. | |||
| coverLetter : User's (optional) cover letter/body with application. | |||
| resumeUrl : URL/path to user resume/doc to share with recruiter/admin. User-provided. | |||
| status : Application status: submitted, in_review, accepted, rejected. Only updatable by admin/recruiter for this job. |
REST Request To access the api you can use the REST controller with the path POST /v1/jobapplications
axios({
method: 'POST',
url: '/v1/jobapplications',
data: {
jobPostingId:"ID",
coverLetter:"Text",
resumeUrl:"String",
status:"Enum",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobApplication",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"jobApplication": {
"id": "ID",
"jobPostingId": "ID",
"applicantUserId": "ID",
"coverLetter": "Text",
"resumeUrl": "String",
"lastStatusUpdateAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"appliedAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Jobpostings
API
List job postings. Public jobs visible to all; private jobs visible only to company admins or recruiters.
Rest Route
The
listJobPostings
API REST controller can be triggered via the following route:
/v1/jobpostings
Rest Request Parameters The
listJobPostings
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/jobpostings
axios({
method: 'GET',
url: '/v1/jobpostings',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobPostings",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"jobPostings": [
{
"id": "ID",
"description": "Text",
"title": "String",
"applicationDeadline": "Date",
"companyId": "ID",
"employmentType": "Enum",
"employmentType_idx": "Integer",
"postedByUserId": "ID",
"salaryRange": "String",
"location": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"workplaceType": "Enum",
"workplaceType_idx": "Integer",
"status": "Enum",
"status_idx": "Integer",
"companyName": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
List Jobapplications
API
List job applications. Applicants see their own; admins of job's company can view all for their jobs; supports filter by status, job and applicant.
Rest Route
The
listJobApplications
API REST controller can be triggered via the following route:
/v1/jobapplications
Rest Request Parameters The
listJobApplications
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/jobapplications
axios({
method: 'GET',
url: '/v1/jobapplications',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobApplications",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"jobApplications": [
{
"id": "ID",
"jobPostingId": "ID",
"applicantUserId": "ID",
"coverLetter": "Text",
"resumeUrl": "String",
"lastStatusUpdateAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"appliedAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Create Jobposting
API
Create a new job posting. Only company admins/recruiters for companyId can create. postedByUserId set from session.
Rest Route
The
createJobPosting
API REST controller can be triggered via the following route:
/v1/jobpostings
Rest Request Parameters
The
createJobPosting
api has got 11 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| description | Text | true | request.body?.description |
| title | String | true | request.body?.title |
| applicationDeadline | Date | false | request.body?.applicationDeadline |
| companyId | ID | false | request.body?.companyId |
| employmentType | Enum | true | request.body?.employmentType |
| salaryRange | String | false | request.body?.salaryRange |
| location | String | false | request.body?.location |
| visibility | Enum | true | request.body?.visibility |
| workplaceType | Enum | true | request.body?.workplaceType |
| status | Enum | true | request.body?.status |
| companyName | String | true | request.body?.companyName |
| description : Detailed description of the job posting. | |||
| title : Job title/position name. | |||
| applicationDeadline : Last date for accepting applications. Checked during apply. | |||
| companyId : Company offering the job. FK to company:company | |||
| employmentType : Job employment type (full-time, part-time, contract, internship,temporary,volunteer,other). | |||
| salaryRange : Human-readable salary range (free-form for v1; can be refined later). | |||
| location : Primary job location (city, country, etc.) | |||
| visibility : Controls who can see/apply to this job: public (all) or private (admins only). | |||
| workplaceType : Workplace type (on-site,remote,hybrid). | |||
| status : status : active or closed | |||
| companyName : company name |
REST Request To access the api you can use the REST controller with the path POST /v1/jobpostings
axios({
method: 'POST',
url: '/v1/jobpostings',
data: {
description:"Text",
title:"String",
applicationDeadline:"Date",
companyId:"ID",
employmentType:"Enum",
salaryRange:"String",
location:"String",
visibility:"Enum",
workplaceType:"Enum",
status:"Enum",
companyName:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "jobPosting",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"jobPosting": {
"id": "ID",
"description": "Text",
"title": "String",
"applicationDeadline": "Date",
"companyId": "ID",
"employmentType": "Enum",
"employmentType_idx": "Integer",
"postedByUserId": "ID",
"salaryRange": "String",
"location": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"workplaceType": "Enum",
"workplaceType_idx": "Integer",
"status": "Enum",
"status_idx": "Integer",
"companyName": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Networking Service
Handles professional networking logic for user-to-user connections: manages connection requests, accepted relationships, listing/removal, permissions, and state transitions. Publishes connection lifecycle events for notification...
Networking Service Data Objects
Connection Represents a single established user-to-user professional relationship (mutual connection). One record per unordered user pair, deleted on disconnect..
ConnectionRequest Tracks a user's request to connect with another user, supporting request/accept/reject/cancel, with audit timestamps.
Networking Service Access urls
This service is accessible via the following environment-specific URLs:
-
Preview:
https://linkedin.prw.mindbricks.com/networking-api -
Staging:
https://linkedin-stage.mindbricks.co/networking-api -
Production:
https://linkedin.mindbricks.co/networking-api
Create Connection
API
Create Connection
Rest Route
The
createConnection
API REST controller can be triggered via the following route:
/v1/connections
Rest Request Parameters
The
createConnection
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId1 | ID | true | request.body?.userId1 |
| userId2 | ID | true | request.body?.userId2 |
| userId1 : 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 : 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. |
REST Request To access the api you can use the REST controller with the path POST /v1/connections
axios({
method: 'POST',
url: '/v1/connections',
data: {
userId1:"ID",
userId2:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connection",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"connection": {
"id": "ID",
"connectedSince": "Date",
"userId1": "ID",
"userId2": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Connectionrequest
API
Sender or receiver may cancel/delete a connection request (soft-delete).
Rest Route
The
deleteConnectionRequest
API REST controller can be triggered via the following route:
/v1/connectionrequests/:connectionRequestId
Rest Request Parameters
The
deleteConnectionRequest
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| connectionRequestId | ID | true | request.params?.connectionRequestId |
| connectionRequestId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/connectionrequests/:connectionRequestId
axios({
method: 'DELETE',
url: `/v1/connectionrequests/${connectionRequestId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connectionRequest",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"connectionRequest": {
"id": "ID",
"receiverUserId": "ID",
"senderUserId": "ID",
"sentAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"respondedAt": "Date",
"message": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Connectionrequest
API
Allows receiver of a pending connection request to accept or reject request.
Rest Route
The
updateConnectionRequest
API REST controller can be triggered via the following route:
/v1/connectionrequests/:connectionRequestId
Rest Request Parameters
The
updateConnectionRequest
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| connectionRequestId | ID | true | request.params?.connectionRequestId |
| status | Enum | true | request.body?.status |
| respondedAt | Date | false | request.body?.respondedAt |
| connectionRequestId : This id paremeter is used to select the required data object that will be updated | |||
| status : Request status: pending/accepted/rejected. | |||
| respondedAt : Timestamp when receiver accepted/rejected. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/connectionrequests/:connectionRequestId
axios({
method: 'PATCH',
url: `/v1/connectionrequests/${connectionRequestId}`,
data: {
status:"Enum",
respondedAt:"Date",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connectionRequest",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"connectionRequest": {
"id": "ID",
"receiverUserId": "ID",
"senderUserId": "ID",
"sentAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"respondedAt": "Date",
"message": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Connections
API
List all active connections where session user is a participant.
Rest Route
The
listConnections
API REST controller can be triggered via the following route:
/v1/connections
Rest Request Parameters The
listConnections
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/connections
axios({
method: 'GET',
url: '/v1/connections',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connections",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"connections": [
{
"id": "ID",
"connectedSince": "Date",
"userId1": "ID",
"userId2": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
List Connectionrequests
API
List connection requests involving current user, filterable by status (pending, accepted, rejected).
Rest Route
The
listConnectionRequests
API REST controller can be triggered via the following route:
/v1/connectionrequests
Rest Request Parameters The
listConnectionRequests
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/connectionrequests
axios({
method: 'GET',
url: '/v1/connectionrequests',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connectionRequests",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"connectionRequests": [
{
"id": "ID",
"receiverUserId": "ID",
"senderUserId": "ID",
"sentAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"respondedAt": "Date",
"message": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Create Connectionrequest
API
Send a new connection request from logged-in user to another user.
Rest Route
The
createConnectionRequest
API REST controller can be triggered via the following route:
/v1/connectionrequests
Rest Request Parameters
The
createConnectionRequest
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| receiverUserId | ID | true | request.body?.receiverUserId |
| status | Enum | true | request.body?.status |
| respondedAt | Date | false | request.body?.respondedAt |
| message | String | false | request.body?.message |
| receiverUserId : FK to auth:user.id — target of the request. | |||
| status : Request status: pending/accepted/rejected. | |||
| respondedAt : Timestamp when receiver accepted/rejected. | |||
| message : Optional introductory message from sender to receiver. |
REST Request To access the api you can use the REST controller with the path POST /v1/connectionrequests
axios({
method: 'POST',
url: '/v1/connectionrequests',
data: {
receiverUserId:"ID",
status:"Enum",
respondedAt:"Date",
message:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connectionRequest",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"connectionRequest": {
"id": "ID",
"receiverUserId": "ID",
"senderUserId": "ID",
"sentAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"respondedAt": "Date",
"message": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Connection
API
Break (delete) the connection between two users. Either user may disconnect.
Rest Route
The
deleteConnection
API REST controller can be triggered via the following route:
/v1/connections/:connectionId
Rest Request Parameters
The
deleteConnection
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| connectionId | ID | true | request.params?.connectionId |
| connectionId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/connections/:connectionId
axios({
method: 'DELETE',
url: `/v1/connections/${connectionId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connection",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"connection": {
"id": "ID",
"connectedSince": "Date",
"userId1": "ID",
"userId2": "ID",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Connectionrequest
API
Get a specific connection request by ID if sender/receiver.
Rest Route
The
getConnectionRequest
API REST controller can be triggered via the following route:
/v1/connectionrequests/:connectionRequestId
Rest Request Parameters
The
getConnectionRequest
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| connectionRequestId | ID | true | request.params?.connectionRequestId |
| connectionRequestId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/connectionrequests/:connectionRequestId
axios({
method: 'GET',
url: `/v1/connectionrequests/${connectionRequestId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connectionRequest",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"connectionRequest": {
"id": "ID",
"receiverUserId": "ID",
"senderUserId": "ID",
"sentAt": "Date",
"status": "Enum",
"status_idx": "Integer",
"respondedAt": "Date",
"message": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Connection
API
Get connection between session user and another user (if exists, not soft-deleted).
Rest Route
The
getConnection
API REST controller can be triggered via the following route:
/v1/connections/:connectionId
Rest Request Parameters
The
getConnection
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| connectionId | ID | true | request.params?.connectionId |
| connectionId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/connections/:connectionId
axios({
method: 'GET',
url: `/v1/connections/${connectionId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "connection",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"connection": {
"id": "ID",
"connectedSince": "Date",
"userId1": "ID",
"userId2": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Company Service
Handles company profiles, company admin assignments, company following, and posting company updates/news. Enables professionals to follow companies, get updates, and enables admins to manage company presence..
Company Service Data Objects
CompanyFollower Tracks when a user follows a company to receive updates. Append-only, deletes for unfollow.
CompanyUpdate A post/news update created by company admin and visible to followers depending on visibility.
Company Represents a company profile and brand presence/pages on the network.
CompanyAdmin Tracks which users are assigned as admins for a company, allowing them to manage the company page and edits.
Company Service Access urls
This service is accessible via the following environment-specific URLs:
-
Preview:
https://linkedin.prw.mindbricks.com/company-api -
Staging:
https://linkedin-stage.mindbricks.co/company-api -
Production:
https://linkedin.mindbricks.co/company-api
Get Companyadmin
API
Get company admin record by ID. Only admins can query of their company.
Rest Route
The
getCompanyAdmin
API REST controller can be triggered via the following route:
/v1/companyadmins/:companyAdminId
Rest Request Parameters
The
getCompanyAdmin
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyAdminId | ID | true | request.params?.companyAdminId |
| companyAdminId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/companyadmins/:companyAdminId
axios({
method: 'GET',
url: `/v1/companyadmins/${companyAdminId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyAdmin",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"companyAdmin": {
"id": "ID",
"assignedAt": "Date",
"userId": "ID",
"companyId": "ID",
"assignedBy": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Follow Company
API
Follow a company. Adds entry to companyFollower. Any logged-in user may follow. Cannot follow twice.
Rest Route
The
followCompany
API REST controller can be triggered via the following route:
/v1/followcompany
Rest Request Parameters
The
followCompany
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | ID | true | request.body?.userId |
| companyId | ID | true | request.body?.companyId |
| followedAt | Date | true | request.body?.followedAt |
| userId : FK to auth:user who follows the company. | |||
| companyId : FK to company:company being followed. | |||
| followedAt : Timestamp when user followed company. |
REST Request To access the api you can use the REST controller with the path POST /v1/followcompany
axios({
method: 'POST',
url: '/v1/followcompany',
data: {
userId:"ID",
companyId:"ID",
followedAt:"Date",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyFollower",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"companyFollower": {
"id": "ID",
"userId": "ID",
"companyId": "ID",
"followedAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Remove Companyadmin
API
Removes admin rights from a user for a company. Can only be performed by current admin, not self-removal unless last admin?
Rest Route
The
removeCompanyAdmin
API REST controller can be triggered via the following route:
/v1/removecompanyadmin/:companyAdminId
Rest Request Parameters
The
removeCompanyAdmin
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyAdminId | ID | true | request.params?.companyAdminId |
| companyAdminId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/removecompanyadmin/:companyAdminId
axios({
method: 'DELETE',
url: `/v1/removecompanyadmin/${companyAdminId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyAdmin",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"companyAdmin": {
"id": "ID",
"assignedAt": "Date",
"userId": "ID",
"companyId": "ID",
"assignedBy": "ID",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Company
API
Creates a new company profile (page). User initiating the company becomes initial admin (enforced in workflow).
Rest Route
The
createCompany
API REST controller can be triggered via the following route:
/v1/companies
Rest Request Parameters
The
createCompany
api has got 8 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| name | String | true | request.body?.name |
| website | String | false | request.body?.website |
| location | String | false | request.body?.location |
| logoUrl | String | false | request.body?.logoUrl |
| pageVisibility | Enum | true | request.body?.pageVisibility |
| createdByUserId | ID | true | request.body?.createdByUserId |
| description | Text | false | request.body?.description |
| industry | String | false | request.body?.industry |
| name : Company brand name. Displayed and searchable. Unique per company. | |||
| website : Official company website link. | |||
| location : Company HQ/main location string (e.g. city, country). | |||
| logoUrl : Uploaded image URL for company logo/branding. | |||
| pageVisibility : Visibility of the company page (public/private). | |||
| createdByUserId : | |||
| description : Company description / about section. | |||
| industry : Industry sector or market. |
REST Request To access the api you can use the REST controller with the path POST /v1/companies
axios({
method: 'POST',
url: '/v1/companies',
data: {
name:"String",
website:"String",
location:"String",
logoUrl:"String",
pageVisibility:"Enum",
createdByUserId:"ID",
description:"Text",
industry:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "company",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"company": {
"id": "ID",
"name": "String",
"website": "String",
"location": "String",
"logoUrl": "String",
"pageVisibility": "Enum",
"pageVisibility_idx": "Integer",
"createdByUserId": "ID",
"description": "Text",
"industry": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Company
API
Get a company page by ID. If public, anyone can view. If private, only admin/followers.
Rest Route
The
getCompany
API REST controller can be triggered via the following route:
/v1/companies/:companyId
Rest Request Parameters
The
getCompany
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyId | ID | true | request.params?.companyId |
| companyId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/companies/:companyId
axios({
method: 'GET',
url: `/v1/companies/${companyId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "company",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"company": {
"id": "ID",
"name": "String",
"website": "String",
"location": "String",
"logoUrl": "String",
"pageVisibility": "Enum",
"pageVisibility_idx": "Integer",
"createdByUserId": "ID",
"description": "Text",
"industry": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Companies
API
List all (optionally filtered) companies, e.g. for directory/search, subject to visibility.
Rest Route
The
listCompanies
API REST controller can be triggered via the following route:
/v1/companies
Rest Request Parameters The
listCompanies
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/companies
axios({
method: 'GET',
url: '/v1/companies',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companies",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"companies": [
{
"id": "ID",
"name": "String",
"website": "String",
"location": "String",
"logoUrl": "String",
"pageVisibility": "Enum",
"pageVisibility_idx": "Integer",
"createdByUserId": "ID",
"description": "Text",
"industry": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Update Company
API
Updates fields of a company page/profile. Only current company admin can update.
Rest Route
The
updateCompany
API REST controller can be triggered via the following route:
/v1/companies/:companyId
Rest Request Parameters
The
updateCompany
api has got 9 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyId | ID | true | request.params?.companyId |
| name | String | false | request.body?.name |
| website | String | false | request.body?.website |
| location | String | false | request.body?.location |
| logoUrl | String | false | request.body?.logoUrl |
| pageVisibility | Enum | false | request.body?.pageVisibility |
| createdByUserId | ID | true | request.body?.createdByUserId |
| description | Text | false | request.body?.description |
| industry | String | false | request.body?.industry |
| companyId : This id paremeter is used to select the required data object that will be updated | |||
| name : Company brand name. Displayed and searchable. Unique per company. | |||
| website : Official company website link. | |||
| location : Company HQ/main location string (e.g. city, country). | |||
| logoUrl : Uploaded image URL for company logo/branding. | |||
| pageVisibility : Visibility of the company page (public/private). | |||
| createdByUserId : | |||
| description : Company description / about section. | |||
| industry : Industry sector or market. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/companies/:companyId
axios({
method: 'PATCH',
url: `/v1/companies/${companyId}`,
data: {
name:"String",
website:"String",
location:"String",
logoUrl:"String",
pageVisibility:"Enum",
createdByUserId:"ID",
description:"Text",
industry:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "company",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"company": {
"id": "ID",
"name": "String",
"website": "String",
"location": "String",
"logoUrl": "String",
"pageVisibility": "Enum",
"pageVisibility_idx": "Integer",
"createdByUserId": "ID",
"description": "Text",
"industry": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Company
API
Deletes (soft-delete) a company page. Only current admin may delete.
Rest Route
The
deleteCompany
API REST controller can be triggered via the following route:
/v1/companies/:companyId
Rest Request Parameters
The
deleteCompany
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyId | ID | true | request.params?.companyId |
| companyId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/companies/:companyId
axios({
method: 'DELETE',
url: `/v1/companies/${companyId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "company",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"company": {
"id": "ID",
"name": "String",
"website": "String",
"location": "String",
"logoUrl": "String",
"pageVisibility": "Enum",
"pageVisibility_idx": "Integer",
"createdByUserId": "ID",
"description": "Text",
"industry": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Assign Companyadmin
API
Assigns a user as company admin. Must be called by an existing admin. Records assigning user and timestamp for audit.
Rest Route
The
assignCompanyAdmin
API REST controller can be triggered via the following route:
/v1/assigncompanyadmin
Rest Request Parameters
The
assignCompanyAdmin
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| assignedAt | Date | true | request.body?.assignedAt |
| userId | ID | true | request.body?.userId |
| companyId | ID | true | request.body?.companyId |
| assignedBy | ID | true | request.body?.assignedBy |
| assignedAt : Timestamp when admin assigned. | |||
| userId : FK to auth:user who is admin of this company. | |||
| companyId : FK to company. | |||
| assignedBy : User who assigned this admin (for audit). |
REST Request To access the api you can use the REST controller with the path POST /v1/assigncompanyadmin
axios({
method: 'POST',
url: '/v1/assigncompanyadmin',
data: {
assignedAt:"Date",
userId:"ID",
companyId:"ID",
assignedBy:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyAdmin",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"companyAdmin": {
"id": "ID",
"assignedAt": "Date",
"userId": "ID",
"companyId": "ID",
"assignedBy": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Companyadmins
API
List all current admins for a given company. Only admins can query their company admin list.
Rest Route
The
listCompanyAdmins
API REST controller can be triggered via the following route:
/v1/companyadmins
Rest Request Parameters The
listCompanyAdmins
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/companyadmins
axios({
method: 'GET',
url: '/v1/companyadmins',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyAdmins",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"companyAdmins": [
{
"id": "ID",
"assignedAt": "Date",
"userId": "ID",
"companyId": "ID",
"assignedBy": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Get Companyupdate
API
Get a company update/news post. Only public posts are visible to all, private are visible to company followers and company admins.
Rest Route
The
getCompanyUpdate
API REST controller can be triggered via the following route:
/v1/companyupdates/:companyUpdateId
Rest Request Parameters
The
getCompanyUpdate
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyUpdateId | ID | true | request.params?.companyUpdateId |
| companyUpdateId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/companyupdates/:companyUpdateId
axios({
method: 'GET',
url: `/v1/companyupdates/${companyUpdateId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyUpdate",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"companyUpdate": {
"id": "ID",
"companyId": "ID",
"content": "Text",
"authorUserId": "ID",
"attachmentUrls": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Unfollow Company
API
Unfollow a company. Deletes companyFollower entry. Only current follower may unfollow.
Rest Route
The
unfollowCompany
API REST controller can be triggered via the following route:
/v1/unfollowcompany/:companyFollowerId
Rest Request Parameters
The
unfollowCompany
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyFollowerId | ID | true | request.params?.companyFollowerId |
| companyFollowerId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/unfollowcompany/:companyFollowerId
axios({
method: 'DELETE',
url: `/v1/unfollowcompany/${companyFollowerId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyFollower",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"companyFollower": {
"id": "ID",
"userId": "ID",
"companyId": "ID",
"followedAt": "Date",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Companyfollowers
API
List all followers of a company. Only company admin can see list of all followers.
Rest Route
The
listCompanyFollowers
API REST controller can be triggered via the following route:
/v1/companyfollowers
Rest Request Parameters The
listCompanyFollowers
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/companyfollowers
axios({
method: 'GET',
url: '/v1/companyfollowers',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyFollowers",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"companyFollowers": [
{
"id": "ID",
"userId": "ID",
"companyId": "ID",
"followedAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Create Companyupdate
API
Posts a company update/news. Only active admin of company may post on that company's behalf.
Rest Route
The
createCompanyUpdate
API REST controller can be triggered via the following route:
/v1/companyupdates
Rest Request Parameters
The
createCompanyUpdate
api has got 5 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyId | ID | true | request.body?.companyId |
| content | Text | true | request.body?.content |
| authorUserId | ID | true | request.body?.authorUserId |
| attachmentUrls | String | false | request.body?.attachmentUrls |
| visibility | Enum | true | request.body?.visibility |
| companyId : FK to company whose update this is. | |||
| content : Body/content of the update/news item. | |||
| authorUserId : FK to auth:user who authored the update (must be active admin at time of post). | |||
| attachmentUrls : Array of URLs for update attachments (files, images, links). | |||
| visibility : Update visibility: public (all) or private (followers only). |
REST Request To access the api you can use the REST controller with the path POST /v1/companyupdates
axios({
method: 'POST',
url: '/v1/companyupdates',
data: {
companyId:"ID",
content:"Text",
authorUserId:"ID",
attachmentUrls:"String",
visibility:"Enum",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyUpdate",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"companyUpdate": {
"id": "ID",
"companyId": "ID",
"content": "Text",
"authorUserId": "ID",
"attachmentUrls": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Companyupdate
API
Update company update post/news. Only author or company admins may update.
Rest Route
The
updateCompanyUpdate
API REST controller can be triggered via the following route:
/v1/companyupdates/:companyUpdateId
Rest Request Parameters
The
updateCompanyUpdate
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyUpdateId | ID | true | request.params?.companyUpdateId |
| content | Text | false | request.body?.content |
| attachmentUrls | String | false | request.body?.attachmentUrls |
| visibility | Enum | false | request.body?.visibility |
| companyUpdateId : This id paremeter is used to select the required data object that will be updated | |||
| content : Body/content of the update/news item. | |||
| attachmentUrls : Array of URLs for update attachments (files, images, links). | |||
| visibility : Update visibility: public (all) or private (followers only). |
REST Request To access the api you can use the REST controller with the path PATCH /v1/companyupdates/:companyUpdateId
axios({
method: 'PATCH',
url: `/v1/companyupdates/${companyUpdateId}`,
data: {
content:"Text",
attachmentUrls:"String",
visibility:"Enum",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyUpdate",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"companyUpdate": {
"id": "ID",
"companyId": "ID",
"content": "Text",
"authorUserId": "ID",
"attachmentUrls": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Companyfollower
API
Get a companyFollower record (for audit/profile/follower listing). Only follower/userId or company admin can get record.
Rest Route
The
getCompanyFollower
API REST controller can be triggered via the following route:
/v1/companyfollowers/:companyFollowerId
Rest Request Parameters
The
getCompanyFollower
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyFollowerId | ID | true | request.params?.companyFollowerId |
| companyFollowerId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/companyfollowers/:companyFollowerId
axios({
method: 'GET',
url: `/v1/companyfollowers/${companyFollowerId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyFollower",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"companyFollower": {
"id": "ID",
"userId": "ID",
"companyId": "ID",
"followedAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Companyupdate
API
Delete (soft delete) a company update/news. Only author or current admin may delete.
Rest Route
The
deleteCompanyUpdate
API REST controller can be triggered via the following route:
/v1/companyupdates/:companyUpdateId
Rest Request Parameters
The
deleteCompanyUpdate
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| companyUpdateId | ID | true | request.params?.companyUpdateId |
| companyUpdateId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/companyupdates/:companyUpdateId
axios({
method: 'DELETE',
url: `/v1/companyupdates/${companyUpdateId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyUpdate",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"companyUpdate": {
"id": "ID",
"companyId": "ID",
"content": "Text",
"authorUserId": "ID",
"attachmentUrls": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Companyupdates
API
List company updates/news for a company. Public updates are visible to all, private to followers/admins.
Rest Route
The
listCompanyUpdates
API REST controller can be triggered via the following route:
/v1/companyupdates
Rest Request Parameters The
listCompanyUpdates
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/companyupdates
axios({
method: 'GET',
url: '/v1/companyupdates',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "companyUpdates",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"companyUpdates": [
{
"id": "ID",
"companyId": "ID",
"content": "Text",
"authorUserId": "ID",
"attachmentUrls": "String",
"visibility": "Enum",
"visibility_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Content Service
Handles creation, editing, and deletion of user posts (with attachments and visibility), user post feed aggregation, and post engagement (likes, comments). All with post-level visibility control (public/private)..
Content Service Data Objects
Post 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.
Like A record of a user liking a specific post. Each user can like a post only once. Used for engagement counts and activity feeds.
Comment A comment on a post. Can be a top-level or a reply to another comment (via parentCommentId).
Content Service Access urls
This service is accessible via the following environment-specific URLs:
-
Preview:
https://linkedin.prw.mindbricks.com/content-api -
Staging:
https://linkedin-stage.mindbricks.co/content-api -
Production:
https://linkedin.mindbricks.co/content-api
Create Post
API
Create a new post for the authenticated user. Visibility defaults to public. Posts can optionally belong to a company if author is a company admin. Attachments optional.
Rest Route
The
createPost
API REST controller can be triggered via the following route:
/v1/posts
Rest Request Parameters
The
createPost
api has got 5 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| content | Text | true | request.body?.content |
| companyId | ID | false | request.body?.companyId |
| authorUserId | ID | true | request.body?.authorUserId |
| visibility | Enum | true | request.body?.visibility |
| attachmentUrls | String | false | request.body?.attachmentUrls |
| content : Main post content/body text | |||
| companyId : Optional. FK to company:company - if set, post is from company context (by admin). | |||
| authorUserId : FK to auth:user - the user who created the post. Required. | |||
| visibility : Post-level visibility: public or private. | |||
| attachmentUrls : Array of attachment URLs (e.g. images, docs, links). Optional. |
REST Request To access the api you can use the REST controller with the path POST /v1/posts
axios({
method: 'POST',
url: '/v1/posts',
data: {
content:"Text",
companyId:"ID",
authorUserId:"ID",
visibility:"Enum",
attachmentUrls:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "post",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"post": {
"id": "ID",
"content": "Text",
"companyId": "ID",
"authorUserId": "ID",
"visibility": "Enum",
"visibility_idx": "Integer",
"attachmentUrls": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Comment
API
Update an existing comment. Only the author can update.
Rest Route
The
updateComment
API REST controller can be triggered via the following route:
/v1/comments/:commentId
Rest Request Parameters
The
updateComment
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| commentId | ID | true | request.params?.commentId |
| content | Text | false | request.body?.content |
| parentCommentId | ID | false | request.body?.parentCommentId |
| commentId : This id paremeter is used to select the required data object that will be updated | |||
| content : Comment body/content. | |||
| parentCommentId : Optional. FK to comment. If set, this is a reply to the parent comment, otherwise a top-level comment. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/comments/:commentId
axios({
method: 'PATCH',
url: `/v1/comments/${commentId}`,
data: {
content:"Text",
parentCommentId:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "comment",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"comment": {
"id": "ID",
"authorUserId": "ID",
"postId": "ID",
"content": "Text",
"parentCommentId": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Posts
API
List posts matching filters, honoring post visibility. Public posts shown to all; private posts only to owners. Supports filtering by author, company, and visibility. Feed aggregation is handled at higher BFF layer.
Rest Route
The
listPosts
API REST controller can be triggered via the following route:
/v1/posts
Rest Request Parameters The
listPosts
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/posts
axios({
method: 'GET',
url: '/v1/posts',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "posts",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"posts": [
{
"id": "ID",
"content": "Text",
"companyId": "ID",
"authorUserId": "ID",
"visibility": "Enum",
"visibility_idx": "Integer",
"attachmentUrls": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Like Post
API
Like a post. User can like a post only once; duplicate likes prevented.
Rest Route
The
likePost
API REST controller can be triggered via the following route:
/v1/likepost
Rest Request Parameters
The
likePost
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| postId | ID | true | request.body?.postId |
| postId : FK to content:post - the post that was liked. Required. |
REST Request To access the api you can use the REST controller with the path POST /v1/likepost
axios({
method: 'POST',
url: '/v1/likepost',
data: {
postId:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "like",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"like": {
"id": "ID",
"likedAt": "Date",
"postId": "ID",
"userId": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Post
API
Get a post by ID. Public posts visible to all. Private only visible to author or company admin (if company post).
Rest Route
The
getPost
API REST controller can be triggered via the following route:
/v1/posts/:postId
Rest Request Parameters
The
getPost
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| postId | ID | true | request.params?.postId |
| postId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/posts/:postId
axios({
method: 'GET',
url: `/v1/posts/${postId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "post",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"post": {
"id": "ID",
"content": "Text",
"companyId": "ID",
"authorUserId": "ID",
"visibility": "Enum",
"visibility_idx": "Integer",
"attachmentUrls": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Comment
API
Add a new comment to a post. Can be top-level (parentCommentId null) or a reply. Only authenticated users can comment.
Rest Route
The
createComment
API REST controller can be triggered via the following route:
/v1/comments
Rest Request Parameters
The
createComment
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| postId | ID | true | request.body?.postId |
| content | Text | true | request.body?.content |
| parentCommentId | ID | false | request.body?.parentCommentId |
| postId : FK to content:post - the post this comment is for. Required. | |||
| content : Comment body/content. | |||
| parentCommentId : Optional. FK to comment. If set, this is a reply to the parent comment, otherwise a top-level comment. |
REST Request To access the api you can use the REST controller with the path POST /v1/comments
axios({
method: 'POST',
url: '/v1/comments',
data: {
postId:"ID",
content:"Text",
parentCommentId:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "comment",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"comment": {
"id": "ID",
"authorUserId": "ID",
"postId": "ID",
"content": "Text",
"parentCommentId": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Post
API
Delete (soft-delete) a post. Only the author (or company admin for company posts) may delete.
Rest Route
The
deletePost
API REST controller can be triggered via the following route:
/v1/posts/:postId
Rest Request Parameters
The
deletePost
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| postId | ID | true | request.params?.postId |
| postId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/posts/:postId
axios({
method: 'DELETE',
url: `/v1/posts/${postId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "post",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"post": {
"id": "ID",
"content": "Text",
"companyId": "ID",
"authorUserId": "ID",
"visibility": "Enum",
"visibility_idx": "Integer",
"attachmentUrls": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Post
API
Update content, visibility, or attachments of an existing post by its owner or company admin (if company post).
Rest Route
The
updatePost
API REST controller can be triggered via the following route:
/v1/posts/:postId
Rest Request Parameters
The
updatePost
api has got 5 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| postId | ID | true | request.params?.postId |
| content | Text | false | request.body?.content |
| companyId | ID | false | request.body?.companyId |
| visibility | Enum | false | request.body?.visibility |
| attachmentUrls | String | false | request.body?.attachmentUrls |
| postId : This id paremeter is used to select the required data object that will be updated | |||
| content : Main post content/body text | |||
| companyId : Optional. FK to company:company - if set, post is from company context (by admin). | |||
| visibility : Post-level visibility: public or private. | |||
| attachmentUrls : Array of attachment URLs (e.g. images, docs, links). Optional. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/posts/:postId
axios({
method: 'PATCH',
url: `/v1/posts/${postId}`,
data: {
content:"Text",
companyId:"ID",
visibility:"Enum",
attachmentUrls:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "post",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"post": {
"id": "ID",
"content": "Text",
"companyId": "ID",
"authorUserId": "ID",
"visibility": "Enum",
"visibility_idx": "Integer",
"attachmentUrls": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Likes
API
List likes on a given post (or by user). Supports filtering by postId and userId.
Rest Route
The
listLikes
API REST controller can be triggered via the following route:
/v1/likes
Rest Request Parameters The
listLikes
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/likes
axios({
method: 'GET',
url: '/v1/likes',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "likes",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"likes": [
{
"id": "ID",
"likedAt": "Date",
"postId": "ID",
"userId": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Unlike Post
API
Undo a like by user for a given post. Soft-deletes the like record.
Rest Route
The
unlikePost
API REST controller can be triggered via the following route:
/v1/unlikepost/:likeId
Rest Request Parameters
The
unlikePost
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| likeId | ID | true | request.params?.likeId |
| likeId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/unlikepost/:likeId
axios({
method: 'DELETE',
url: `/v1/unlikepost/${likeId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "like",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"like": {
"id": "ID",
"likedAt": "Date",
"postId": "ID",
"userId": "ID",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Comments
API
List comments for a post (or by parentComment). Supports filtering by postId and parentCommentId. Sorted by creation date ascending.
Rest Route
The
listComments
API REST controller can be triggered via the following route:
/v1/comments
Rest Request Parameters The
listComments
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/comments
axios({
method: 'GET',
url: '/v1/comments',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "comments",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"comments": [
{
"id": "ID",
"authorUserId": "ID",
"postId": "ID",
"content": "Text",
"parentCommentId": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Get Comment
API
Get a comment by ID. Any user can read comments. Soft-deleted comments not listed unless owner.
Rest Route
The
getComment
API REST controller can be triggered via the following route:
/v1/comments/:commentId
Rest Request Parameters
The
getComment
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| commentId | ID | true | request.params?.commentId |
| commentId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/comments/:commentId
axios({
method: 'GET',
url: `/v1/comments/${commentId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "comment",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"comment": {
"id": "ID",
"authorUserId": "ID",
"postId": "ID",
"content": "Text",
"parentCommentId": "ID",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Userposts
API
list all posts of a user
Rest Route
The
listUserPosts
API REST controller can be triggered via the following route:
/v1/userposts
Rest Request Parameters The
listUserPosts
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/userposts
axios({
method: 'GET',
url: '/v1/userposts',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "posts",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"posts": [
{
"id": "ID",
"content": "Text",
"companyId": "ID",
"authorUserId": "ID",
"visibility": "Enum",
"visibility_idx": "Integer",
"attachmentUrls": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Delete Comment
API
Delete (soft-delete) a comment. Only the author may delete.
Rest Route
The
deleteComment
API REST controller can be triggered via the following route:
/v1/comments/:commentId
Rest Request Parameters
The
deleteComment
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| commentId | ID | true | request.params?.commentId |
| commentId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/comments/:commentId
axios({
method: 'DELETE',
url: `/v1/comments/${commentId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "comment",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"comment": {
"id": "ID",
"authorUserId": "ID",
"postId": "ID",
"content": "Text",
"parentCommentId": "ID",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Messaging Service
Handles direct, private 1:1 and group messaging between users, conversation management, and message history/storage..
Messaging Service Data Objects
Message Message posted within a conversation. Tracks content, sender, readBy, and deletedFor status per user.
Conversation Messaging thread among users supporting 1:1 and group. Tracks participants, group status, and last message time.
Messaging Service Access urls
This service is accessible via the following environment-specific URLs:
-
Preview:
https://linkedin.prw.mindbricks.com/messaging-api -
Staging:
https://linkedin-stage.mindbricks.co/messaging-api -
Production:
https://linkedin.mindbricks.co/messaging-api
List Messages
API
List messages in a conversation, ordered by sentAt ascending. Only participants can view. Support filters such as min/max sentAt, unreadBy, etc.
Rest Route
The
listMessages
API REST controller can be triggered via the following route:
/v1/messages
Rest Request Parameters The
listMessages
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/messages
axios({
method: 'GET',
url: '/v1/messages',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "messages",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"messages": [
{
"id": "ID",
"content": "Text",
"senderUserId": "ID",
"deletedFor": "ID",
"readBy": "ID",
"conversationId": "ID",
"sentAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Update Conversation
API
Update conversation (e.g., participants, group flag). Only group conversations can be updated. Only current participants can update. For group: can add/remove participants; 1:1 conversations can't change participantIds or isGroup.
Rest Route
The
updateConversation
API REST controller can be triggered via the following route:
/v1/conversations/:conversationId
Rest Request Parameters
The
updateConversation
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| conversationId | ID | true | request.params?.conversationId |
| isGroup | Boolean | false | request.body?.isGroup |
| participantIds | ID | false | request.body?.participantIds |
| lastMessageAt | Date | false | request.body?.lastMessageAt |
| conversationId : This id paremeter is used to select the required data object that will be updated | |||
| isGroup : True for group; false for one-to-one conversation (default false). | |||
| participantIds : Array of user IDs (auth:user) participating in the conversation (min 2). | |||
| lastMessageAt : Timestamp of most recent message sent in this conversation. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/conversations/:conversationId
axios({
method: 'PATCH',
url: `/v1/conversations/${conversationId}`,
data: {
isGroup:"Boolean",
participantIds:"ID",
lastMessageAt:"Date",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "conversation",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"conversation": {
"id": "ID",
"isGroup": "Boolean",
"participantIds": "ID",
"lastMessageAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Message
API
Fetch a specific message if the requesting user is a participant in the conversation.
Rest Route
The
getMessage
API REST controller can be triggered via the following route:
/v1/messages/:messageId
Rest Request Parameters
The
getMessage
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| messageId | ID | true | request.params?.messageId |
| messageId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/messages/:messageId
axios({
method: 'GET',
url: `/v1/messages/${messageId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "message",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"message": {
"id": "ID",
"content": "Text",
"senderUserId": "ID",
"deletedFor": "ID",
"readBy": "ID",
"conversationId": "ID",
"sentAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Conversation
API
Fetch details for a conversation thread. Only participants may view.
Rest Route
The
getConversation
API REST controller can be triggered via the following route:
/v1/conversations/:conversationId
Rest Request Parameters
The
getConversation
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| conversationId | ID | true | request.params?.conversationId |
| conversationId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/conversations/:conversationId
axios({
method: 'GET',
url: `/v1/conversations/${conversationId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "conversation",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"conversation": {
"id": "ID",
"isGroup": "Boolean",
"participantIds": "ID",
"lastMessageAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Message
API
Update content of a message or update readBy/deletedFor. Only sender may update content. Any participant can update their readBy/deletedFor entries. Content updates forbidden except for sender.
Rest Route
The
updateMessage
API REST controller can be triggered via the following route:
/v1/messages/:messageId
Rest Request Parameters
The
updateMessage
api has got 4 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| messageId | ID | true | request.params?.messageId |
| content | Text | false | request.body?.content |
| deletedFor | ID | false | request.body?.deletedFor |
| readBy | ID | false | request.body?.readBy |
| messageId : This id paremeter is used to select the required data object that will be updated | |||
| content : Raw message body/content. | |||
| deletedFor : Array of userIds who have deleted/hid this message (soft/hide). | |||
| readBy : Array of userIds who have read this message. Used for read receipts. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/messages/:messageId
axios({
method: 'PATCH',
url: `/v1/messages/${messageId}`,
data: {
content:"Text",
deletedFor:"ID",
readBy:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "message",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"message": {
"id": "ID",
"content": "Text",
"senderUserId": "ID",
"deletedFor": "ID",
"readBy": "ID",
"conversationId": "ID",
"sentAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Conversation
API
Soft-delete a conversation thread. Only participants can delete. This is 'hide for all' (e.g., group exit or complete deletion).
Rest Route
The
deleteConversation
API REST controller can be triggered via the following route:
/v1/conversations/:conversationId
Rest Request Parameters
The
deleteConversation
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| conversationId | ID | true | request.params?.conversationId |
| conversationId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/conversations/:conversationId
axios({
method: 'DELETE',
url: `/v1/conversations/${conversationId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "conversation",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"conversation": {
"id": "ID",
"isGroup": "Boolean",
"participantIds": "ID",
"lastMessageAt": "Date",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Conversations
API
List all conversations for the session user (where session userId in participantIds). Shows recent first (lastMessageAt desc).
Rest Route
The
listConversations
API REST controller can be triggered via the following route:
/v1/conversations
Rest Request Parameters The
listConversations
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/conversations
axios({
method: 'GET',
url: '/v1/conversations',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "conversations",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"conversations": [
{
"id": "ID",
"isGroup": "Boolean",
"participantIds": "ID",
"lastMessageAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Delete Message
API
Soft-delete a message. Sender can hard-delete for all (set isActive=false). Any participant can soft-delete (add own userId to deletedFor array).
Rest Route
The
deleteMessage
API REST controller can be triggered via the following route:
/v1/messages/:messageId
Rest Request Parameters
The
deleteMessage
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| messageId | ID | true | request.params?.messageId |
| messageId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/messages/:messageId
axios({
method: 'DELETE',
url: `/v1/messages/${messageId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "message",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"message": {
"id": "ID",
"content": "Text",
"senderUserId": "ID",
"deletedFor": "ID",
"readBy": "ID",
"conversationId": "ID",
"sentAt": "Date",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Message
API
Send a new message in a conversation. Only participants can send. On send, update conversation.lastMessageAt and set sentAt=now, senderUserId=session user. Add sender to readBy by default. Publish event for notification subsystem.
Rest Route
The
createMessage
API REST controller can be triggered via the following route:
/v1/messages
Rest Request Parameters
The
createMessage
api has got 6 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| content | Text | true | request.body?.content |
| senderUserId | ID | true | request.body?.senderUserId |
| deletedFor | ID | false | request.body?.deletedFor |
| readBy | ID | false | request.body?.readBy |
| conversationId | ID | true | request.body?.conversationId |
| sentAt | Date | false | request.body?.sentAt |
| content : Raw message body/content. | |||
| senderUserId : auth:user.id of message sender. | |||
| deletedFor : Array of userIds who have deleted/hid this message (soft/hide). | |||
| readBy : Array of userIds who have read this message. Used for read receipts. | |||
| conversationId : Conversation this message belongs to (messaging:conversation). | |||
| sentAt : Timestamp when message is sent (defaults to now on create). |
REST Request To access the api you can use the REST controller with the path POST /v1/messages
axios({
method: 'POST',
url: '/v1/messages',
data: {
content:"Text",
senderUserId:"ID",
deletedFor:"ID",
readBy:"ID",
conversationId:"ID",
sentAt:"Date",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "message",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"message": {
"id": "ID",
"content": "Text",
"senderUserId": "ID",
"deletedFor": "ID",
"readBy": "ID",
"conversationId": "ID",
"sentAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Conversation
API
Create a new conversation (thread) for messaging; can be group (isGroup) or 1:1. Participants must include the session user. For 1:1, only two users allowed; for group, at least three. If 1:1 exists, prevent duplicate.
Rest Route
The
createConversation
API REST controller can be triggered via the following route:
/v1/conversations
Rest Request Parameters
The
createConversation
api has got 3 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| isGroup | Boolean | true | request.body?.isGroup |
| participantIds | ID | true | request.body?.participantIds |
| lastMessageAt | Date | false | request.body?.lastMessageAt |
| isGroup : True for group; false for one-to-one conversation (default false). | |||
| participantIds : Array of user IDs (auth:user) participating in the conversation (min 2). | |||
| lastMessageAt : Timestamp of most recent message sent in this conversation. |
REST Request To access the api you can use the REST controller with the path POST /v1/conversations
axios({
method: 'POST',
url: '/v1/conversations',
data: {
isGroup:"Boolean",
participantIds:"ID",
lastMessageAt:"Date",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "conversation",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"conversation": {
"id": "ID",
"isGroup": "Boolean",
"participantIds": "ID",
"lastMessageAt": "Date",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Profile Service
Handles user professional profiles, including experience, education, skills, languages, certifications, profile photo, and visibility controls. Enables recruiter search, elastic-style indexing, and profile editing, with all data linked to authenticated users..
Profile Service Data Objects
Profile Professional profile for a user, includes core info and arrays of experience/education/skills. One profile per user...
Premiumsubscription premium subscription for a user
Certification Official certification available for selection in user profile (dictionary only, not user relation).
Language Official language available for selection in user profile (dictionary only, not user relation).
Sys_premiumsubscriptionPayment 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
Sys_paymentCustomer A payment storage object to store the customer values of the payment platform
Sys_paymentMethod A payment storage object to store the payment methods of the platform customers
Profile Service Access urls
This service is accessible via the following environment-specific URLs:
-
Preview:
https://linkedin.prw.mindbricks.com/profile-api -
Staging:
https://linkedin-stage.mindbricks.co/profile-api -
Production:
https://linkedin.mindbricks.co/profile-api
Update Profile
API
Updates the profile of the authenticated user. Includes visibility settings, skills, experience, etc.
Rest Route
The
updateProfile
API REST controller can be triggered via the following route:
/v1/profiles/:profileId
Rest Request Parameters
The
updateProfile
api has got 14 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| profileId | ID | true | request.params?.profileId |
| summary | Text | false | request.body?.summary |
| headline | String | false | request.body?.headline |
| profilePhotoUrl | String | false | request.body?.profilePhotoUrl |
| fullName | String | false | request.body?.fullName |
| currentCompany | String | false | request.body?.currentCompany |
| industry | String | false | request.body?.industry |
| languages | String | false | request.body?.languages |
| skills | String | false | request.body?.skills |
| location | String | false | request.body?.location |
| experience | Object | false | request.body?.experience |
| profileVisibility | Enum | true | request.body?.profileVisibility |
| education | Object | false | request.body?.education |
| certifications | String | false | request.body?.certifications |
| profileId : This id paremeter is used to select the required data object that will be updated | |||
| summary : Profile summary (bio/description). | |||
| headline : Short tagline or headline for profile. | |||
| profilePhotoUrl : URL for profile photo/avatar. | |||
| fullName : Full name for display/search. | |||
| currentCompany : Current employer/company, free text for now. | |||
| industry : Industry sector name for profile. | |||
| languages : Array of language names as string, links to language object (lookup/filter only). | |||
| skills : List of professional skills (free-form tags). | |||
| location : Location information (city, country, etc.) | |||
| experience : Array of experienceItem objects (job history). | |||
| profileVisibility : Controls who can view profile: public or private. Used in search/list visibility. | |||
| education : Array of educationItem objects (degrees/certificates). | |||
| certifications : Professional certifications by name, links to certification object. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/profiles/:profileId
axios({
method: 'PATCH',
url: `/v1/profiles/${profileId}`,
data: {
summary:"Text",
headline:"String",
profilePhotoUrl:"String",
fullName:"String",
currentCompany:"String",
industry:"String",
languages:"String",
skills:"String",
location:"String",
experience:"Object",
profileVisibility:"Enum",
education:"Object",
certifications:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "profile",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"profile": {
"id": "ID",
"summary": "Text",
"headline": "String",
"profilePhotoUrl": "String",
"userId": "ID",
"fullName": "String",
"currentCompany": "String",
"industry": "String",
"languages": "String",
"skills": "String",
"location": "String",
"experience": "Object",
"profileVisibility": "Enum",
"profileVisibility_idx": "Integer",
"education": "Object",
"certifications": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Profile
API
Deletes the profile of the authenticated user (soft delete).
Rest Route
The
deleteProfile
API REST controller can be triggered via the following route:
/v1/profiles/:profileId
Rest Request Parameters
The
deleteProfile
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| profileId | ID | true | request.params?.profileId |
| profileId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/profiles/:profileId
axios({
method: 'DELETE',
url: `/v1/profiles/${profileId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "profile",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"profile": {
"id": "ID",
"summary": "Text",
"headline": "String",
"profilePhotoUrl": "String",
"userId": "ID",
"fullName": "String",
"currentCompany": "String",
"industry": "String",
"languages": "String",
"skills": "String",
"location": "String",
"experience": "Object",
"profileVisibility": "Enum",
"profileVisibility_idx": "Integer",
"education": "Object",
"certifications": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Language
API
Deletes a language entry from the dictionary.
Rest Route
The
deleteLanguage
API REST controller can be triggered via the following route:
/v1/languages/:languageId
Rest Request Parameters
The
deleteLanguage
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| languageId | ID | true | request.params?.languageId |
| languageId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/languages/:languageId
axios({
method: 'DELETE',
url: `/v1/languages/${languageId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "language",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"language": {
"id": "ID",
"name": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Language
API
Edit an existing language entry.
Rest Route
The
updateLanguage
API REST controller can be triggered via the following route:
/v1/languages/:languageId
Rest Request Parameters
The
updateLanguage
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| languageId | ID | true | request.params?.languageId |
| languageId : This id paremeter is used to select the required data object that will be updated |
REST Request To access the api you can use the REST controller with the path PATCH /v1/languages/:languageId
axios({
method: 'PATCH',
url: `/v1/languages/${languageId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "language",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"language": {
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Profiles
API
Lists profiles by search/filter. Only public profiles are listed, unless the current user is the owner.
Rest Route
The
listProfiles
API REST controller can be triggered via the following route:
/v1/profiles
Rest Request Parameters The
listProfiles
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/profiles
axios({
method: 'GET',
url: '/v1/profiles',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "profiles",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"profiles": [
{
"id": "ID",
"summary": "Text",
"headline": "String",
"profilePhotoUrl": "String",
"userId": "ID",
"fullName": "String",
"currentCompany": "String",
"industry": "String",
"languages": "String",
"skills": "String",
"location": "String",
"experience": "Object",
"profileVisibility": "Enum",
"profileVisibility_idx": "Integer",
"education": "Object",
"certifications": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
List Languages
API
Lists all available languages for profile selection.
Rest Route
The
listLanguages
API REST controller can be triggered via the following route:
/v1/languages
Rest Request Parameters The
listLanguages
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/languages
axios({
method: 'GET',
url: '/v1/languages',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "languages",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"languages": [
{
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Get Language
API
Retrieves a language entry by ID.
Rest Route
The
getLanguage
API REST controller can be triggered via the following route:
/v1/languages/:languageId
Rest Request Parameters
The
getLanguage
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| languageId | ID | true | request.params?.languageId |
| languageId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/languages/:languageId
axios({
method: 'GET',
url: `/v1/languages/${languageId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "language",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"language": {
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Language
API
Add a new language to the dictionary for user profiles. Must be unique by name.
Rest Route
The
createLanguage
API REST controller can be triggered via the following route:
/v1/languages
Rest Request Parameters
The
createLanguage
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| name | String | true | request.body?.name |
| name : Unique language name (e.g. English, Spanish). |
REST Request To access the api you can use the REST controller with the path POST /v1/languages
axios({
method: 'POST',
url: '/v1/languages',
data: {
name:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "language",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"language": {
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Profile
API
Creates a new professional profile for the authenticated user. Each user can create only one profile.
Rest Route
The
createProfile
API REST controller can be triggered via the following route:
/v1/profiles
Rest Request Parameters
The
createProfile
api has got 13 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| summary | Text | false | request.body?.summary |
| headline | String | false | request.body?.headline |
| profilePhotoUrl | String | false | request.body?.profilePhotoUrl |
| fullName | String | true | request.body?.fullName |
| currentCompany | String | false | request.body?.currentCompany |
| industry | String | false | request.body?.industry |
| languages | String | false | request.body?.languages |
| skills | String | false | request.body?.skills |
| location | String | false | request.body?.location |
| experience | Object | false | request.body?.experience |
| profileVisibility | Enum | true | request.body?.profileVisibility |
| education | Object | false | request.body?.education |
| certifications | String | false | request.body?.certifications |
| summary : Profile summary (bio/description). | |||
| headline : Short tagline or headline for profile. | |||
| profilePhotoUrl : URL for profile photo/avatar. | |||
| fullName : Full name for display/search. | |||
| currentCompany : Current employer/company, free text for now. | |||
| industry : Industry sector name for profile. | |||
| languages : Array of language names as string, links to language object (lookup/filter only). | |||
| skills : List of professional skills (free-form tags). | |||
| location : Location information (city, country, etc.) | |||
| experience : Array of experienceItem objects (job history). | |||
| profileVisibility : Controls who can view profile: public or private. Used in search/list visibility. | |||
| education : Array of educationItem objects (degrees/certificates). | |||
| certifications : Professional certifications by name, links to certification object. |
REST Request To access the api you can use the REST controller with the path POST /v1/profiles
axios({
method: 'POST',
url: '/v1/profiles',
data: {
summary:"Text",
headline:"String",
profilePhotoUrl:"String",
fullName:"String",
currentCompany:"String",
industry:"String",
languages:"String",
skills:"String",
location:"String",
experience:"Object",
profileVisibility:"Enum",
education:"Object",
certifications:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "profile",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"profile": {
"id": "ID",
"summary": "Text",
"headline": "String",
"profilePhotoUrl": "String",
"userId": "ID",
"fullName": "String",
"currentCompany": "String",
"industry": "String",
"languages": "String",
"skills": "String",
"location": "String",
"experience": "Object",
"profileVisibility": "Enum",
"profileVisibility_idx": "Integer",
"education": "Object",
"certifications": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Profile
API
Retrieves a user profile by ID. If private, only the owner can get; if public, anyone can view.
Rest Route
The
getProfile
API REST controller can be triggered via the following route:
/v1/profiles/:profileId
Rest Request Parameters
The
getProfile
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| profileId | ID | true | request.params?.profileId |
| profileId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/profiles/:profileId
axios({
method: 'GET',
url: `/v1/profiles/${profileId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "profile",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"profile": {
"id": "ID",
"summary": "Text",
"headline": "String",
"profilePhotoUrl": "String",
"userId": "ID",
"fullName": "String",
"currentCompany": "String",
"industry": "String",
"languages": "String",
"skills": "String",
"location": "String",
"experience": "Object",
"profileVisibility": "Enum",
"profileVisibility_idx": "Integer",
"education": "Object",
"certifications": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Premuimsub
API
Rest Route
The
deletePremuimSub
API REST controller can be triggered via the following route:
/v1/premuimsub/:premiumsubscriptionId
Rest Request Parameters
The
deletePremuimSub
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| premiumsubscriptionId | ID | true | request.params?.premiumsubscriptionId |
| premiumsubscriptionId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/premuimsub/:premiumsubscriptionId
axios({
method: 'DELETE',
url: `/v1/premuimsub/${premiumsubscriptionId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscription",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"premiumsubscription": {
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Certification
API
Edit an existing certification entry.
Rest Route
The
updateCertification
API REST controller can be triggered via the following route:
/v1/certifications/:certificationId
Rest Request Parameters
The
updateCertification
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| certificationId | ID | true | request.params?.certificationId |
| certificationId : This id paremeter is used to select the required data object that will be updated |
REST Request To access the api you can use the REST controller with the path PATCH /v1/certifications/:certificationId
axios({
method: 'PATCH',
url: `/v1/certifications/${certificationId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "certification",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"certification": {
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Premuimsub
API
Rest Route
The
createPremuimSub
API REST controller can be triggered via the following route:
/v1/premuimsub
Rest Request Parameters
The
createPremuimSub
api has got 5 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| profileId | ID | true | request.body?.profileId |
| currency | String | true | request.body?.currency |
| status | String | true | request.body?.status |
| price | Double | true | request.body?.price |
| userId | ID | true | request.body?.userId |
| profileId : the profile id of the subscription | |||
| currency : currency | |||
| status : | |||
| price : the price of the subscription | |||
| userId : the userid of the subscription |
REST Request To access the api you can use the REST controller with the path POST /v1/premuimsub
axios({
method: 'POST',
url: '/v1/premuimsub',
data: {
profileId:"ID",
currency:"String",
status:"String",
price:"Double",
userId:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscription",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"premiumsubscription": {
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Certifications
API
Lists all available certifications for profile selection/display.
Rest Route
The
listCertifications
API REST controller can be triggered via the following route:
/v1/certifications
Rest Request Parameters The
listCertifications
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/certifications
axios({
method: 'GET',
url: '/v1/certifications',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "certifications",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"certifications": [
{
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Update Premuimsub
API
Rest Route
The
updatePremuimSub
API REST controller can be triggered via the following route:
/v1/premuimsub/:premiumsubscriptionId
Rest Request Parameters
The
updatePremuimSub
api has got 6 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| premiumsubscriptionId | ID | true | request.params?.premiumsubscriptionId |
| profileId | ID | false | request.body?.profileId |
| currency | String | false | request.body?.currency |
| status | String | false | request.body?.status |
| price | Double | false | request.body?.price |
| userId | ID | false | request.body?.userId |
| premiumsubscriptionId : This id paremeter is used to select the required data object that will be updated | |||
| profileId : the profile id of the subscription | |||
| currency : currency | |||
| status : | |||
| price : the price of the subscription | |||
| userId : the userid of the subscription |
REST Request To access the api you can use the REST controller with the path PATCH /v1/premuimsub/:premiumsubscriptionId
axios({
method: 'PATCH',
url: `/v1/premuimsub/${premiumsubscriptionId}`,
data: {
profileId:"ID",
currency:"String",
status:"String",
price:"Double",
userId:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscription",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"premiumsubscription": {
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Premuimsub
API
Rest Route
The
getPremuimSub
API REST controller can be triggered via the following route:
/v1/premuimsub/:premiumsubscriptionId
Rest Request Parameters
The
getPremuimSub
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| premiumsubscriptionId | ID | true | request.params?.premiumsubscriptionId |
| premiumsubscriptionId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/premuimsub/:premiumsubscriptionId
axios({
method: 'GET',
url: `/v1/premuimsub/${premiumsubscriptionId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscription",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"premiumsubscription": {
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Create Certification
API
Add a new certification for user profiles. Must be unique by name.
Rest Route
The
createCertification
API REST controller can be triggered via the following route:
/v1/certifications
Rest Request Parameters
The
createCertification
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| name | String | true | request.body?.name |
| name : Unique certification name (e.g. PMP, CFA, AWS Certified). |
REST Request To access the api you can use the REST controller with the path POST /v1/certifications
axios({
method: 'POST',
url: '/v1/certifications',
data: {
name:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "certification",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"certification": {
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Certification
API
Retrieves a certification entry by ID.
Rest Route
The
getCertification
API REST controller can be triggered via the following route:
/v1/certifications/:certificationId
Rest Request Parameters
The
getCertification
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| certificationId | ID | true | request.params?.certificationId |
| certificationId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/certifications/:certificationId
axios({
method: 'GET',
url: `/v1/certifications/${certificationId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "certification",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"certification": {
"id": "ID",
"name": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Premuimsub
API
Rest Route
The
listPremuimSub
API REST controller can be triggered via the following route:
/v1/premuimsub
Rest Request Parameters The
listPremuimSub
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/premuimsub
axios({
method: 'GET',
url: '/v1/premuimsub',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscriptions",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"premiumsubscriptions": [
{
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Delete Certification
API
Deletes a certification entry from the dictionary.
Rest Route
The
deleteCertification
API REST controller can be triggered via the following route:
/v1/certifications/:certificationId
Rest Request Parameters
The
deleteCertification
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| certificationId | ID | true | request.params?.certificationId |
| certificationId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/certifications/:certificationId
axios({
method: 'DELETE',
url: `/v1/certifications/${certificationId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "certification",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"certification": {
"id": "ID",
"name": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Premiumsubscriptionpayment2
API
This route is used to get the payment information by ID.
Rest Route
The
getPremiumsubscriptionPayment2
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpayment2/:sys_premiumsubscriptionPaymentId
Rest Request Parameters
The
getPremiumsubscriptionPayment2
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| sys_premiumsubscriptionPaymentId | ID | true | request.params?.sys_premiumsubscriptionPaymentId |
| sys_premiumsubscriptionPaymentId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/premiumsubscriptionpayment2/:sys_premiumsubscriptionPaymentId
axios({
method: 'GET',
url: `/v1/premiumsubscriptionpayment2/${sys_premiumsubscriptionPaymentId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayment",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"sys_premiumsubscriptionPayment": {
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Premiumsubscriptionpayments2
API
This route is used to list all payments.
Rest Route
The
listPremiumsubscriptionPayments2
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpayments2
Rest Request Parameters The
listPremiumsubscriptionPayments2
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/premiumsubscriptionpayments2
axios({
method: 'GET',
url: '/v1/premiumsubscriptionpayments2',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayments",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"sys_premiumsubscriptionPayments": [
{
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Create Premiumsubscriptionpayment
API
This route is used to create a new payment.
Rest Route
The
createPremiumsubscriptionPayment
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpayment
Rest Request Parameters
The
createPremiumsubscriptionPayment
api has got 5 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| orderId | ID | true | request.body?.orderId |
| paymentId | String | true | request.body?.paymentId |
| paymentStatus | String | true | request.body?.paymentStatus |
| statusLiteral | String | true | request.body?.statusLiteral |
| redirectUrl | String | false | request.body?.redirectUrl |
| orderId : an ID value to represent the orderId which is the ID parameter of the source premiumsubscription object | |||
| paymentId : 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 : A string value to represent the payment status which belongs to the lifecyle of a Stripe payment. | |||
| statusLiteral : A string value to represent the logical payment status which belongs to the application lifecycle itself. | |||
| redirectUrl : 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. |
REST Request To access the api you can use the REST controller with the path POST /v1/premiumsubscriptionpayment
axios({
method: 'POST',
url: '/v1/premiumsubscriptionpayment',
data: {
orderId:"ID",
paymentId:"String",
paymentStatus:"String",
statusLiteral:"String",
redirectUrl:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "201",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayment",
"method": "POST",
"action": "create",
"appVersion": "Version",
"rowCount": 1,
"sys_premiumsubscriptionPayment": {
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Update Premiumsubscriptionpayment
API
This route is used to update an existing payment.
Rest Route
The
updatePremiumsubscriptionPayment
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpayment/:sys_premiumsubscriptionPaymentId
Rest Request Parameters
The
updatePremiumsubscriptionPayment
api has got 5 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| sys_premiumsubscriptionPaymentId | ID | true | request.params?.sys_premiumsubscriptionPaymentId |
| paymentId | String | false | request.body?.paymentId |
| paymentStatus | String | false | request.body?.paymentStatus |
| statusLiteral | String | false | request.body?.statusLiteral |
| redirectUrl | String | false | request.body?.redirectUrl |
| sys_premiumsubscriptionPaymentId : This id paremeter is used to select the required data object that will be updated | |||
| paymentId : 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 : A string value to represent the payment status which belongs to the lifecyle of a Stripe payment. | |||
| statusLiteral : A string value to represent the logical payment status which belongs to the application lifecycle itself. | |||
| redirectUrl : 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. |
REST Request To access the api you can use the REST controller with the path PATCH /v1/premiumsubscriptionpayment/:sys_premiumsubscriptionPaymentId
axios({
method: 'PATCH',
url: `/v1/premiumsubscriptionpayment/${sys_premiumsubscriptionPaymentId}`,
data: {
paymentId:"String",
paymentStatus:"String",
statusLiteral:"String",
redirectUrl:"String",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayment",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"sys_premiumsubscriptionPayment": {
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Delete Premiumsubscriptionpayment
API
This route is used to delete a payment.
Rest Route
The
deletePremiumsubscriptionPayment
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpayment/:sys_premiumsubscriptionPaymentId
Rest Request Parameters
The
deletePremiumsubscriptionPayment
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| sys_premiumsubscriptionPaymentId | ID | true | request.params?.sys_premiumsubscriptionPaymentId |
| sys_premiumsubscriptionPaymentId : This id paremeter is used to select the required data object that will be deleted |
REST Request To access the api you can use the REST controller with the path DELETE /v1/premiumsubscriptionpayment/:sys_premiumsubscriptionPaymentId
axios({
method: 'DELETE',
url: `/v1/premiumsubscriptionpayment/${sys_premiumsubscriptionPaymentId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayment",
"method": "DELETE",
"action": "delete",
"appVersion": "Version",
"rowCount": 1,
"sys_premiumsubscriptionPayment": {
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": false,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Premiumsubscriptionpayments2
API
This route is used to list all payments.
Rest Route
The
listPremiumsubscriptionPayments2
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpayments2
Rest Request Parameters The
listPremiumsubscriptionPayments2
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/premiumsubscriptionpayments2
axios({
method: 'GET',
url: '/v1/premiumsubscriptionpayments2',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayments",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"sys_premiumsubscriptionPayments": [
{
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
Get Premiumsubscriptionpaymentbyorderid
API
This route is used to get the payment information by order id.
Rest Route
The
getPremiumsubscriptionPaymentByOrderId
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpaymentbyorderid/:orderId
Rest Request Parameters
The
getPremiumsubscriptionPaymentByOrderId
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| sys_premiumsubscriptionPaymentId | ID | true | request.params?.sys_premiumsubscriptionPaymentId |
| orderId | String | true | request.params?.orderId |
| sys_premiumsubscriptionPaymentId : This id paremeter is used to query the required data object. | |||
| orderId : This parameter will be used to select the data object that is queried |
REST Request To access the api you can use the REST controller with the path GET /v1/premiumsubscriptionpaymentbyorderid/:orderId
axios({
method: 'GET',
url: `/v1/premiumsubscriptionpaymentbyorderid/${orderId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayment",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"sys_premiumsubscriptionPayment": {
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Premiumsubscriptionpaymentbypaymentid
API
This route is used to get the payment information by payment id.
Rest Route
The
getPremiumsubscriptionPaymentByPaymentId
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpaymentbypaymentid/:paymentId
Rest Request Parameters
The
getPremiumsubscriptionPaymentByPaymentId
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| sys_premiumsubscriptionPaymentId | ID | true | request.params?.sys_premiumsubscriptionPaymentId |
| paymentId | String | true | request.params?.paymentId |
| sys_premiumsubscriptionPaymentId : This id paremeter is used to query the required data object. | |||
| paymentId : This parameter will be used to select the data object that is queried |
REST Request To access the api you can use the REST controller with the path GET /v1/premiumsubscriptionpaymentbypaymentid/:paymentId
axios({
method: 'GET',
url: `/v1/premiumsubscriptionpaymentbypaymentid/${paymentId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayment",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"sys_premiumsubscriptionPayment": {
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Get Premiumsubscriptionpayment2
API
This route is used to get the payment information by ID.
Rest Route
The
getPremiumsubscriptionPayment2
API REST controller can be triggered via the following route:
/v1/premiumsubscriptionpayment2/:sys_premiumsubscriptionPaymentId
Rest Request Parameters
The
getPremiumsubscriptionPayment2
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| sys_premiumsubscriptionPaymentId | ID | true | request.params?.sys_premiumsubscriptionPaymentId |
| sys_premiumsubscriptionPaymentId : This id paremeter is used to query the required data object. |
REST Request To access the api you can use the REST controller with the path GET /v1/premiumsubscriptionpayment2/:sys_premiumsubscriptionPaymentId
axios({
method: 'GET',
url: `/v1/premiumsubscriptionpayment2/${sys_premiumsubscriptionPaymentId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_premiumsubscriptionPayment",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"sys_premiumsubscriptionPayment": {
"id": "ID",
"ownerId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "String",
"statusLiteral": "String",
"redirectUrl": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
Start Premiumsubscriptionpayment
API
Start payment for premiumsubscription
Rest Route
The
startPremiumsubscriptionPayment
API REST controller can be triggered via the following route:
/v1/startpremiumsubscriptionpayment/:premiumsubscriptionId
Rest Request Parameters
The
startPremiumsubscriptionPayment
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| premiumsubscriptionId | ID | true | request.params?.premiumsubscriptionId |
| paymentUserParams | Object | false | request.body?.paymentUserParams |
| premiumsubscriptionId : This id paremeter is used to select the required data object that will be updated | |||
| paymentUserParams : The user parameters that should be defined to start a stripe payment process |
REST Request To access the api you can use the REST controller with the path PATCH /v1/startpremiumsubscriptionpayment/:premiumsubscriptionId
axios({
method: 'PATCH',
url: `/v1/startpremiumsubscriptionpayment/${premiumsubscriptionId}`,
data: {
paymentUserParams:"Object",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscription",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"premiumsubscription": {
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
"paymentResult": {
"paymentTicketId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "Enum",
"paymentIntentInfo": "Object",
"statusLiteral": "String",
"amount": "Double",
"currency": "String",
"success": true,
"description": "String",
"metadata": "Object",
"paymentUserParams": "Object"
}
}
Refresh Premiumsubscriptionpayment
API
Refresh payment info for premiumsubscription from Stripe
Rest Route
The
refreshPremiumsubscriptionPayment
API REST controller can be triggered via the following route:
/v1/refreshpremiumsubscriptionpayment/:premiumsubscriptionId
Rest Request Parameters
The
refreshPremiumsubscriptionPayment
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| premiumsubscriptionId | ID | true | request.params?.premiumsubscriptionId |
| paymentUserParams | Object | false | request.body?.paymentUserParams |
| premiumsubscriptionId : This id paremeter is used to select the required data object that will be updated | |||
| paymentUserParams : The user parameters that should be defined to refresh a stripe payment process |
REST Request To access the api you can use the REST controller with the path PATCH /v1/refreshpremiumsubscriptionpayment/:premiumsubscriptionId
axios({
method: 'PATCH',
url: `/v1/refreshpremiumsubscriptionpayment/${premiumsubscriptionId}`,
data: {
paymentUserParams:"Object",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscription",
"method": "PATCH",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"premiumsubscription": {
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
"paymentResult": {
"paymentTicketId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "Enum",
"paymentIntentInfo": "Object",
"statusLiteral": "String",
"amount": "Double",
"currency": "String",
"success": true,
"description": "String",
"metadata": "Object",
"paymentUserParams": "Object"
}
}
Callback Premiumsubscriptionpayment
API
Refresh payment values by gateway webhook call for premiumsubscription
Rest Route
The
callbackPremiumsubscriptionPayment
API REST controller can be triggered via the following route:
/v1/callbackpremiumsubscriptionpayment
Rest Request Parameters
The
callbackPremiumsubscriptionPayment
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| premiumsubscriptionId | ID | true | request.body?.premiumsubscriptionId |
| premiumsubscriptionId : The order id parameter that will be read from webhook callback params |
REST Request To access the api you can use the REST controller with the path POST /v1/callbackpremiumsubscriptionpayment
axios({
method: 'POST',
url: '/v1/callbackpremiumsubscriptionpayment',
data: {
premiumsubscriptionId:"ID",
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "premiumsubscription",
"method": "POST",
"action": "update",
"appVersion": "Version",
"rowCount": 1,
"premiumsubscription": {
"id": "ID",
"profileId": "ID",
"currency": "String",
"status": "String",
"price": "Double",
"userId": "ID",
"_paymentConfirmation": "Enum",
"_paymentConfirmation_idx": "Integer",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
"paymentResult": {
"paymentTicketId": "ID",
"orderId": "ID",
"paymentId": "String",
"paymentStatus": "Enum",
"paymentIntentInfo": "Object",
"statusLiteral": "String",
"amount": "Double",
"currency": "String",
"success": true,
"description": "String",
"metadata": "Object",
"paymentUserParams": "Object"
}
}
Get Paymentcustomerbyuserid
API
This route is used to get the payment customer information by user id.
Rest Route
The
getPaymentCustomerByUserId
API REST controller can be triggered via the following route:
/v1/paymentcustomers/:userId
Rest Request Parameters
The
getPaymentCustomerByUserId
api has got 2 request parameters
| Parameter | Type | Required | Population |
|---|---|---|---|
| sys_paymentCustomerId | ID | true | request.params?.sys_paymentCustomerId |
| userId | String | true | request.params?.userId |
| sys_paymentCustomerId : This id paremeter is used to query the required data object. | |||
| userId : This parameter will be used to select the data object that is queried |
REST Request To access the api you can use the REST controller with the path GET /v1/paymentcustomers/:userId
axios({
method: 'GET',
url: `/v1/paymentcustomers/${userId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_paymentCustomer",
"method": "GET",
"action": "get",
"appVersion": "Version",
"rowCount": 1,
"sys_paymentCustomer": {
"id": "ID",
"userId": "ID",
"customerId": "String",
"platform": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
}
}
List Paymentcustomers
API
This route is used to list all payment customers.
Rest Route
The
listPaymentCustomers
API REST controller can be triggered via the following route:
/v1/paymentcustomers
Rest Request Parameters The
listPaymentCustomers
api has got no request parameters.
REST Request To access the api you can use the REST controller with the path GET /v1/paymentcustomers
axios({
method: 'GET',
url: '/v1/paymentcustomers',
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_paymentCustomers",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"sys_paymentCustomers": [
{
"id": "ID",
"userId": "ID",
"customerId": "String",
"platform": "String",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}
List Paymentcustomermethods
API
This route is used to list all payment customer methods.
Rest Route
The
listPaymentCustomerMethods
API REST controller can be triggered via the following route:
/v1/paymentcustomermethods/:userId
Rest Request Parameters
The
listPaymentCustomerMethods
api has got 1 request parameter
| Parameter | Type | Required | Population |
|---|---|---|---|
| userId | String | true | request.params?.userId |
| userId : This parameter will be used to select the data objects that want to be listed |
REST Request To access the api you can use the REST controller with the path GET /v1/paymentcustomermethods/:userId
axios({
method: 'GET',
url: `/v1/paymentcustomermethods/${userId}`,
data: {
},
params: {
}
});
REST Response
{
"status": "OK",
"statusCode": "200",
"elapsedMs": 126,
"ssoTime": 120,
"source": "db",
"cacheKey": "hexCode",
"userId": "ID",
"sessionId": "ID",
"requestId": "ID",
"dataName": "sys_paymentMethods",
"method": "GET",
"action": "list",
"appVersion": "Version",
"rowCount": "\"Number\"",
"sys_paymentMethods": [
{
"id": "ID",
"paymentMethodId": "String",
"userId": "ID",
"customerId": "String",
"cardHolderName": "String",
"cardHolderZip": "String",
"platform": "String",
"cardInfo": "Object",
"isActive": true,
"recordVersion": "Integer",
"createdAt": "Date",
"updatedAt": "Date",
"_owner": "ID"
},
{},
{}
],
"paging": {
"pageNumber": "Number",
"pageRowCount": "NUmber",
"totalRowCount": "Number",
"pageCount": "Number"
},
"filters": [],
"uiPermissions": []
}