{"apis":[{"id":"post:/job","description":"","readOnly":false,"method":"post","mount":"/job","publicAccess":true},{"id":"get:/","description":"Return API information","readOnly":true,"method":"get","mount":"/","responseDto":{"id":"apiinforesponse","fields":[{"name":"apis","dataType":"array","description":"All APIs of the service","elementDto":{"id":"apiinfo","fields":[{"name":"id","dataType":"string","description":"Unique id of the API within the service","isRequired":true},{"name":"apiGroup","dataType":"string","description":"Name of the api group"},{"name":"description","dataType":"string","description":"Description of the API"},{"name":"displayName","dataType":"string","description":"Display name of the API","isRequired":true},{"name":"readOnly","dataType":"boolean","description":"Whether this API does not allow data modification","isRequired":true},{"name":"method","dataType":"string","description":"Http method used to call the API","isRequired":true,"enum":["get","post","put","delete","options","head"]},{"name":"mount","dataType":"string","description":"Http mount point of the API","isRequired":true},{"name":"paramDto","dataType":"object","description":"Validation dto of request param"},{"name":"queryDto","dataType":"object","description":"Validation dto of request queries"},{"name":"bodyDto","dataType":"object","description":"Validation dto of request body"},{"name":"responseDto","dataType":"object","description":"Validation dto of response body"},{"name":"upstreamMessageDtos","dataType":"array","description":"Messages send from client to server for socket"},{"name":"downstreamMessageDtos","dataType":"array","description":"Messages send from server to client for socket"},{"name":"publicAccess","dataType":"boolean","description":"Allow public access and bypass authorization"},{"name":"tfaRequired","dataType":"boolean","description":"Upgraded tfa session is required to access this API"},{"name":"accessConditions","dataType":"array","description":"The configurable access condition of this permission","elementDto":{"id":"accessconditionmetadata","fields":[{"name":"name","dataType":"string","description":"Distinguishable name of this condition type.","isRequired":true},{"name":"valueType","dataType":"string","description":"Type of condition value.","isRequired":true,"enum":["STRING","NUMBER","BOOLEAN","LIST","CHOICES","MUTEXCHOICES","DTO"]},{"name":"valueConstraint","dataType":"object","description":"Constraint for the condition value.","isRequired":false},{"name":"description","dataType":"string","description":"Description of the condition."}]},"vectorProps":{}}]},"isRequired":true,"vectorProps":{"elementDataType":"object"}}]},"publicAccess":true},{"id":"post:/upload/presigned","description":"","readOnly":false,"method":"post","mount":"/upload/presigned","bodyDto":{"id":"createuploadpresignedurlsrequestbody","fields":[{"name":"extensions","dataType":"array","description":"","isRequired":true,"vectorProps":{"elementDataType":"string","allowDuplicated":true}}]},"responseDto":{"id":"createuploadpresignedurlsresponsebody","fields":[{"name":"files","dataType":"array","description":"","elementDto":{"id":"createuploadpresignedurlsresponsefile","fields":[{"name":"objectKey","dataType":"string","description":"","isRequired":true},{"name":"putPresignedUrl","dataType":"string","description":"","isRequired":true},{"name":"deletePresignedUrl","dataType":"string","description":"","isRequired":true},{"name":"getPresignedUrl","dataType":"string","description":"","isRequired":true}]},"isRequired":true,"vectorProps":{"elementDataType":"string"}}]},"publicAccess":true},{"id":"post:/session","description":"","readOnly":false,"method":"post","mount":"/session","queryDto":{"id":"createsessionqueries","fields":[{"name":"locale","dataType":"string","description":"Language code"}],"relaxed":true},"bodyDto":{"id":"createsessionbody","fields":[{"name":"platform","dataType":"string","description":"Platform OS of user's device"},{"name":"platformVersion","dataType":"string","description":"OS version of user's device"},{"name":"provider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":true},{"name":"data","dataType":"array","description":"","isRequired":true,"vectorProps":{"elementDataType":"string"}}],"indexes":[{"columns":[["loginProvider",1],["loginIdentity",1]],"unique":true},{"columns":[["userId",1]],"unique":true}]},"responseDto":{"id":"createsessionresponse","fields":[{"name":"accessToken","dataType":"object","description":"Access token of user","elementDto":{"id":"accesstoken","fields":[{"name":"token","dataType":"string","description":"The jwt-encoded access token.","isRequired":true},{"name":"refreshToken","dataType":"string","description":"The jwt-encoded refresh token."},{"name":"expiration","dataType":"number","description":"The epoch timestamp at which this access token expires.","isRequired":true}]},"isRequired":true},{"name":"invalidCredential","dataType":"boolean","description":"Whether the inputed credentials is not valid"},{"name":"exists","dataType":"boolean","description":"Whether there is existing user with this credentials"},{"name":"notFound","dataType":"boolean","description":"Whether user is not found with provided credentials"},{"name":"mustVerify","dataType":"boolean","description":"Whether the user must perform verification"}]},"publicAccess":true},{"id":"post:/session/refresh","description":"","readOnly":false,"method":"post","mount":"/session/refresh","bodyDto":{"id":"refreshsessionbody","fields":[{"name":"refreshToken","dataType":"string","description":"The issued refresh token","isRequired":true}]},"responseDto":{"id":"createsessionresponse","fields":[{"name":"accessToken","dataType":"object","description":"Access token of user","elementDto":{"id":"accesstoken","fields":[{"name":"token","dataType":"string","description":"The jwt-encoded access token.","isRequired":true},{"name":"refreshToken","dataType":"string","description":"The jwt-encoded refresh token."},{"name":"expiration","dataType":"number","description":"The epoch timestamp at which this access token expires.","isRequired":true}]},"isRequired":true},{"name":"invalidCredential","dataType":"boolean","description":"Whether the inputed credentials is not valid"},{"name":"exists","dataType":"boolean","description":"Whether there is existing user with this credentials"},{"name":"notFound","dataType":"boolean","description":"Whether user is not found with provided credentials"},{"name":"mustVerify","dataType":"boolean","description":"Whether the user must perform verification"}]},"publicAccess":true},{"id":"post:/session/tfa","description":"","readOnly":false,"method":"post","mount":"/session/tfa","bodyDto":{"id":"createtfasessionbody","fields":[{"name":"code","dataType":"string","description":"The user tfa code","isRequired":true}]},"responseDto":{"id":"createsessionresponse","fields":[{"name":"accessToken","dataType":"object","description":"Access token of user","elementDto":{"id":"accesstoken","fields":[{"name":"token","dataType":"string","description":"The jwt-encoded access token.","isRequired":true},{"name":"refreshToken","dataType":"string","description":"The jwt-encoded refresh token."},{"name":"expiration","dataType":"number","description":"The epoch timestamp at which this access token expires.","isRequired":true}]},"isRequired":true},{"name":"invalidCredential","dataType":"boolean","description":"Whether the inputed credentials is not valid"},{"name":"exists","dataType":"boolean","description":"Whether there is existing user with this credentials"},{"name":"notFound","dataType":"boolean","description":"Whether user is not found with provided credentials"},{"name":"mustVerify","dataType":"boolean","description":"Whether the user must perform verification"}]}},{"id":"put:/user/records","description":"Update records of this table.","displayName":"updateRecordsUser","readOnly":false,"method":"put","mount":"/user/records","queryDto":{"id":"","relaxed":true,"fields":[{"name":"returning","description":"Whether to return the affected records by this request.","dataType":"array","vectorProps":{"elementDataType":"string"},"isRequired":false}]},"bodyDto":{"id":"","fields":[{"name":"records","isRequired":true,"description":"The records with id and data to update","dataType":"array","vectorProps":{"minLength":0,"elementDataType":"object"},"elementDto":{"id":"","fields":[{"name":"userId","dataType":"string","description":"User id obtained from external id provider","isRequired":false},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":false},{"name":"loginIdentity","dataType":"string","description":"","isRequired":false},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512,"isRequired":false},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{},"isRequired":false},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system","isRequired":false},{"name":"disableReason","dataType":"string","description":"The reason for being disabled","isRequired":false},{"name":"platform","dataType":"string","description":"Platform OS of user's device","isRequired":false},{"name":"platformVersion","dataType":"string","description":"OS version of user's device","isRequired":false},{"name":"selectedLocale","dataType":"string","description":"User selected locale","isRequired":false},{"name":"deviceToken","dataType":"string","description":"Push notification device token","isRequired":false},{"name":"gender","dataType":"string","description":"Gender of user","isRequired":false},{"name":"managedBy","dataType":"string","description":"The user that manages this user","isRequired":false},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges","isRequired":false},{"name":"id","dataType":"string","isRequired":true}]}}]},"responseDto":{"id":"","fields":[{"name":"modified","description":"Array of affected records.","dataType":"array","vectorProps":{"minLength":0,"elementDataType":"object"},"elementDto":{"id":"","fields":[{"name":"id","dataType":"string","description":"Auto generated id","pk":{"isAutoIncrement":true},"isRequired":false,"serverValue":true},{"name":"createdAt","dataType":"number","description":"Creation timestamp of record","creationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"lastModified","dataType":"number","description":"Last modification time of record","modificationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"userId","dataType":"string","description":"User id obtained from external id provider","isRequired":false},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":false},{"name":"loginIdentity","dataType":"string","description":"","isRequired":false},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512,"isRequired":false},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{},"isRequired":false},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system","isRequired":false},{"name":"disableReason","dataType":"string","description":"The reason for being disabled","isRequired":false},{"name":"platform","dataType":"string","description":"Platform OS of user's device","isRequired":false},{"name":"platformVersion","dataType":"string","description":"OS version of user's device","isRequired":false},{"name":"selectedLocale","dataType":"string","description":"User selected locale","isRequired":false},{"name":"deviceToken","dataType":"string","description":"Push notification device token","isRequired":false},{"name":"gender","dataType":"string","description":"Gender of user","isRequired":false},{"name":"managedBy","dataType":"string","description":"The user that manages this user","isRequired":false},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges","isRequired":false}]}}]}},{"id":"post:/user","description":"Create records of this table.","displayName":"createManyUser","readOnly":false,"method":"post","mount":"/user","bodyDto":{"id":"","fields":[{"name":"records","description":"Array of records to be created.","dataType":"array","isRequired":true,"vectorProps":{"elementDataType":"object","minLength":0},"elementDto":{"id":"","fields":[{"name":"userId","dataType":"string","description":"User id obtained from external id provider","isRequired":true},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":true},{"name":"loginIdentity","dataType":"string","description":"","isRequired":true},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{}},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system"},{"name":"disableReason","dataType":"string","description":"The reason for being disabled"},{"name":"platform","dataType":"string","description":"Platform OS of user's device"},{"name":"platformVersion","dataType":"string","description":"OS version of user's device"},{"name":"selectedLocale","dataType":"string","description":"User selected locale"},{"name":"deviceToken","dataType":"string","description":"Push notification device token"},{"name":"gender","dataType":"string","description":"Gender of user"},{"name":"managedBy","dataType":"string","description":"The user that manages this user"},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges"}]}}]},"responseDto":{"id":"","fields":[{"name":"records","description":"Array of records had just been created.","dataType":"array","isRequired":true,"vectorProps":{"elementDataType":"object","minLength":0},"elementDto":{"id":"","fields":[{"name":"id","dataType":"string","description":"Auto generated id","pk":{"isAutoIncrement":true},"isRequired":true,"serverValue":true},{"name":"createdAt","dataType":"number","description":"Creation timestamp of record","creationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":true,"isBigInt":true},{"name":"lastModified","dataType":"number","description":"Last modification time of record","modificationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":true,"isBigInt":true},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512}]}}]}},{"id":"get:/user","description":"Get records of this table.","displayName":"getAllUser","readOnly":true,"method":"get","mount":"/user","queryDto":{"id":"","relaxed":true,"fields":[{"name":"fields","description":"Filter records by value of their fields.","dataType":"object","elementDto":{"id":"","fields":[{"name":"id","description":"Auto generated id","isRequired":false,"dataType":"array","vectorProps":{"elementDataType":"string","allowDuplicated":false,"minLength":1}},{"name":"createdAt","description":"Creation timestamp of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"lastModified","description":"Last modification time of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"userId","description":"User id obtained from external id provider","isRequired":false,"dataType":"string"},{"name":"loginProvider","description":"","isRequired":false,"dataType":"array","vectorProps":{"superSet":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"allowDuplicated":false,"minLength":1,"elementDataType":"string"}},{"name":"loginIdentity","description":"","isRequired":false,"dataType":"string"},{"name":"avatar","description":"Avatar of user","isRequired":false,"dataType":"string"},{"name":"displayName","description":"Display name of user","isRequired":false,"dataType":"string"},{"name":"disabled","description":"Whether this user is disabled by system","isRequired":false,"dataType":"boolean"},{"name":"disableReason","description":"The reason for being disabled","isRequired":false,"dataType":"string"},{"name":"platform","description":"Platform OS of user's device","isRequired":false,"dataType":"string"},{"name":"platformVersion","description":"OS version of user's device","isRequired":false,"dataType":"string"},{"name":"selectedLocale","description":"User selected locale","isRequired":false,"dataType":"string"},{"name":"deviceToken","description":"Push notification device token","isRequired":false,"dataType":"string"},{"name":"gender","description":"Gender of user","isRequired":false,"dataType":"string"},{"name":"managedBy","description":"The user that manages this user","isRequired":false,"dataType":"string"},{"name":"isAdmin","description":"Whether this user has admin privileges","isRequired":false,"dataType":"boolean"}]}},{"name":"locale","description":"Language code for localization","isRequired":false,"dataType":"string"},{"name":"search","description":"Filter records for their @Searchable denoted fields.","dataType":"string"},{"name":"projection","description":"Project the returning records to contain only certain fields. Omit to return all.","dataType":"array","vectorProps":{"superSet":["id","createdAt","lastModified","userId","loginProvider","loginIdentity","avatar","displayName","disabled","disableReason","platform","platformVersion","selectedLocale","deviceToken","gender","managedBy","isAdmin"],"allowDuplicated":false,"minLength":1,"elementDataType":"string"}},{"name":"order","description":"Sort the dataset before getting result by order given in the array. Field appears first in the array will be sorted first.","dataType":"array","vectorProps":{"elementDataType":"object","minLength":1},"elementDto":{"id":"","fields":[{"name":"id","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"createdAt","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"lastModified","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"userId","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"loginProvider","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"loginIdentity","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"avatar","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"displayName","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"disabled","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"disableReason","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"platform","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"platformVersion","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"selectedLocale","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"deviceToken","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"gender","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"managedBy","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"isAdmin","isRequired":false,"dataType":"string","enum":["asc","desc"]}]}},{"name":"limit","description":"Limit the number of returning result.","dataType":"number","rangeProps":{"min":0}},{"name":"page","description":"Page the returning result, default to 1 if ommited. Has no effect if limit is not set.","dataType":"number","rangeProps":{"min":1}}]},"responseDto":{"id":"","fields":[{"name":"total","description":"Number of records found, zero is returned if the request is not paged.","dataType":"number","isRequired":true},{"name":"records","description":"The found records. All records will be returned if the request is not paged.","dataType":"array","isRequired":true,"vectorProps":{"elementDataType":"object","minLength":0},"elementDto":{"id":"","fields":[{"name":"id","dataType":"string","description":"Auto generated id","pk":{"isAutoIncrement":true},"isRequired":false,"serverValue":true},{"name":"createdAt","dataType":"number","description":"Creation timestamp of record","creationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"lastModified","dataType":"number","description":"Last modification time of record","modificationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"userId","dataType":"string","description":"User id obtained from external id provider","isRequired":false},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":false},{"name":"loginIdentity","dataType":"string","description":"","isRequired":false},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512,"isRequired":false},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{},"isRequired":false},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system","isRequired":false},{"name":"disableReason","dataType":"string","description":"The reason for being disabled","isRequired":false},{"name":"platform","dataType":"string","description":"Platform OS of user's device","isRequired":false},{"name":"platformVersion","dataType":"string","description":"OS version of user's device","isRequired":false},{"name":"selectedLocale","dataType":"string","description":"User selected locale","isRequired":false},{"name":"deviceToken","dataType":"string","description":"Push notification device token","isRequired":false},{"name":"gender","dataType":"string","description":"Gender of user","isRequired":false},{"name":"managedBy","dataType":"string","description":"The user that manages this user","isRequired":false},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges","isRequired":false}]}}]},"publicAccess":true},{"id":"put:/user","description":"Find and update records which match search condition.","displayName":"updateUser","readOnly":false,"method":"put","mount":"/user","queryDto":{"id":"","relaxed":true,"fields":[{"name":"returning","description":"Whether to return the affected records by this request.","dataType":"array","vectorProps":{"elementDataType":"string"},"isRequired":false},{"name":"fields","description":"Filter records by value of their fields.","dataType":"object","elementDto":{"id":"","fields":[{"name":"id","description":"Auto generated id","isRequired":false,"dataType":"array","vectorProps":{"elementDataType":"string","allowDuplicated":false,"minLength":1}},{"name":"createdAt","description":"Creation timestamp of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"lastModified","description":"Last modification time of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"userId","description":"User id obtained from external id provider","isRequired":false,"dataType":"string"},{"name":"loginProvider","description":"","isRequired":false,"dataType":"array","vectorProps":{"superSet":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"allowDuplicated":false,"minLength":1,"elementDataType":"string"}},{"name":"loginIdentity","description":"","isRequired":false,"dataType":"string"},{"name":"avatar","description":"Avatar of user","isRequired":false,"dataType":"string"},{"name":"displayName","description":"Display name of user","isRequired":false,"dataType":"string"},{"name":"disabled","description":"Whether this user is disabled by system","isRequired":false,"dataType":"boolean"},{"name":"disableReason","description":"The reason for being disabled","isRequired":false,"dataType":"string"},{"name":"platform","description":"Platform OS of user's device","isRequired":false,"dataType":"string"},{"name":"platformVersion","description":"OS version of user's device","isRequired":false,"dataType":"string"},{"name":"selectedLocale","description":"User selected locale","isRequired":false,"dataType":"string"},{"name":"deviceToken","description":"Push notification device token","isRequired":false,"dataType":"string"},{"name":"gender","description":"Gender of user","isRequired":false,"dataType":"string"},{"name":"managedBy","description":"The user that manages this user","isRequired":false,"dataType":"string"},{"name":"isAdmin","description":"Whether this user has admin privileges","isRequired":false,"dataType":"boolean"}]}}]},"bodyDto":{"id":"","fields":[{"name":"update","isRequired":true,"description":"The update data to apply to found records.","dataType":"object","elementDto":{"id":"","fields":[{"name":"userId","dataType":"string","description":"User id obtained from external id provider","isRequired":false},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":false},{"name":"loginIdentity","dataType":"string","description":"","isRequired":false},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512,"isRequired":false},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{},"isRequired":false},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system","isRequired":false},{"name":"disableReason","dataType":"string","description":"The reason for being disabled","isRequired":false},{"name":"platform","dataType":"string","description":"Platform OS of user's device","isRequired":false},{"name":"platformVersion","dataType":"string","description":"OS version of user's device","isRequired":false},{"name":"selectedLocale","dataType":"string","description":"User selected locale","isRequired":false},{"name":"deviceToken","dataType":"string","description":"Push notification device token","isRequired":false},{"name":"gender","dataType":"string","description":"Gender of user","isRequired":false},{"name":"managedBy","dataType":"string","description":"The user that manages this user","isRequired":false},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges","isRequired":false}]}}]},"responseDto":{"id":"","fields":[{"name":"modified","description":"Array of affected records.","dataType":"array","vectorProps":{"minLength":0,"elementDataType":"object"},"elementDto":{"id":"","fields":[{"name":"id","dataType":"string","description":"Auto generated id","pk":{"isAutoIncrement":true},"isRequired":false,"serverValue":true},{"name":"createdAt","dataType":"number","description":"Creation timestamp of record","creationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"lastModified","dataType":"number","description":"Last modification time of record","modificationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"userId","dataType":"string","description":"User id obtained from external id provider","isRequired":false},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":false},{"name":"loginIdentity","dataType":"string","description":"","isRequired":false},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512,"isRequired":false},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{},"isRequired":false},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system","isRequired":false},{"name":"disableReason","dataType":"string","description":"The reason for being disabled","isRequired":false},{"name":"platform","dataType":"string","description":"Platform OS of user's device","isRequired":false},{"name":"platformVersion","dataType":"string","description":"OS version of user's device","isRequired":false},{"name":"selectedLocale","dataType":"string","description":"User selected locale","isRequired":false},{"name":"deviceToken","dataType":"string","description":"Push notification device token","isRequired":false},{"name":"gender","dataType":"string","description":"Gender of user","isRequired":false},{"name":"managedBy","dataType":"string","description":"The user that manages this user","isRequired":false},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges","isRequired":false}]}}]}},{"id":"delete:/user","description":"Find and remove records which match search condition.","displayName":"deleteUser","readOnly":false,"method":"delete","mount":"/user","queryDto":{"id":"","relaxed":true,"fields":[{"name":"returning","description":"Whether to return the affected records by this request.","dataType":"array","vectorProps":{"elementDataType":"string"},"isRequired":false},{"name":"fields","description":"Filter records by value of their fields.","dataType":"object","elementDto":{"id":"","fields":[{"name":"id","description":"Auto generated id","isRequired":false,"dataType":"array","vectorProps":{"elementDataType":"string","allowDuplicated":false,"minLength":1}},{"name":"createdAt","description":"Creation timestamp of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"lastModified","description":"Last modification time of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"userId","description":"User id obtained from external id provider","isRequired":false,"dataType":"string"},{"name":"loginProvider","description":"","isRequired":false,"dataType":"array","vectorProps":{"superSet":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"allowDuplicated":false,"minLength":1,"elementDataType":"string"}},{"name":"loginIdentity","description":"","isRequired":false,"dataType":"string"},{"name":"avatar","description":"Avatar of user","isRequired":false,"dataType":"string"},{"name":"displayName","description":"Display name of user","isRequired":false,"dataType":"string"},{"name":"disabled","description":"Whether this user is disabled by system","isRequired":false,"dataType":"boolean"},{"name":"disableReason","description":"The reason for being disabled","isRequired":false,"dataType":"string"},{"name":"platform","description":"Platform OS of user's device","isRequired":false,"dataType":"string"},{"name":"platformVersion","description":"OS version of user's device","isRequired":false,"dataType":"string"},{"name":"selectedLocale","description":"User selected locale","isRequired":false,"dataType":"string"},{"name":"deviceToken","description":"Push notification device token","isRequired":false,"dataType":"string"},{"name":"gender","description":"Gender of user","isRequired":false,"dataType":"string"},{"name":"managedBy","description":"The user that manages this user","isRequired":false,"dataType":"string"},{"name":"isAdmin","description":"Whether this user has admin privileges","isRequired":false,"dataType":"boolean"}]}}]},"responseDto":{"id":"","fields":[{"name":"modified","description":"Array of affected records.","dataType":"array","vectorProps":{"minLength":0,"elementDataType":"object"},"elementDto":{"id":"","fields":[{"name":"id","dataType":"string","description":"Auto generated id","pk":{"isAutoIncrement":true},"isRequired":false,"serverValue":true},{"name":"createdAt","dataType":"number","description":"Creation timestamp of record","creationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"lastModified","dataType":"number","description":"Last modification time of record","modificationTimestamp":true,"isTimestamp":true,"serverValue":true,"isRequired":false,"isBigInt":true},{"name":"userId","dataType":"string","description":"User id obtained from external id provider","isRequired":false},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":false},{"name":"loginIdentity","dataType":"string","description":"","isRequired":false},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512,"isRequired":false},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{},"isRequired":false},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system","isRequired":false},{"name":"disableReason","dataType":"string","description":"The reason for being disabled","isRequired":false},{"name":"platform","dataType":"string","description":"Platform OS of user's device","isRequired":false},{"name":"platformVersion","dataType":"string","description":"OS version of user's device","isRequired":false},{"name":"selectedLocale","dataType":"string","description":"User selected locale","isRequired":false},{"name":"deviceToken","dataType":"string","description":"Push notification device token","isRequired":false},{"name":"gender","dataType":"string","description":"Gender of user","isRequired":false},{"name":"managedBy","dataType":"string","description":"The user that manages this user","isRequired":false},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges","isRequired":false}]}}]}},{"id":"post:/user/account","description":"","readOnly":false,"method":"post","mount":"/user/account","queryDto":{"id":"localequeries","fields":[{"name":"locale","dataType":"string","description":"Language code"}],"relaxed":true},"bodyDto":{"id":"registeraccountbody","fields":[{"name":"platform","dataType":"string","description":"Platform OS of user's device"},{"name":"platformVersion","dataType":"string","description":"OS version of user's device"},{"name":"provider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":true},{"name":"data","dataType":"array","description":"","isRequired":true,"vectorProps":{"elementDataType":"string"}},{"name":"captcha","dataType":"string","description":""}],"indexes":[{"columns":[["loginProvider",1],["loginIdentity",1]],"unique":true},{"columns":[["userId",1]],"unique":true}]},"responseDto":{"id":"createsessionresponse","fields":[{"name":"accessToken","dataType":"object","description":"Access token of user","elementDto":{"id":"accesstoken","fields":[{"name":"token","dataType":"string","description":"The jwt-encoded access token.","isRequired":true},{"name":"refreshToken","dataType":"string","description":"The jwt-encoded refresh token."},{"name":"expiration","dataType":"number","description":"The epoch timestamp at which this access token expires.","isRequired":true}]},"isRequired":true},{"name":"invalidCredential","dataType":"boolean","description":"Whether the inputed credentials is not valid"},{"name":"exists","dataType":"boolean","description":"Whether there is existing user with this credentials"},{"name":"notFound","dataType":"boolean","description":"Whether user is not found with provided credentials"},{"name":"mustVerify","dataType":"boolean","description":"Whether the user must perform verification"}]},"publicAccess":true},{"id":"get:/user/permissions","description":"","readOnly":true,"method":"get","mount":"/user/permissions"},{"id":"post:/user/current","description":"","readOnly":false,"method":"post","mount":"/user/current","bodyDto":{"id":"updatecurrentuserbody","fields":[{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512,"isRequired":false,"allowNull":true},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{},"isRequired":false},{"name":"selectedLocale","dataType":"string","description":"User selected locale","isRequired":false,"allowNull":true},{"name":"deviceToken","dataType":"string","description":"Push notification device token","isRequired":false,"allowNull":true},{"name":"gender","dataType":"string","description":"Gender of user","isRequired":false,"allowNull":true}],"indexes":[{"columns":[["loginProvider",1],["loginIdentity",1]],"unique":true},{"columns":[["userId",1]],"unique":true}]}},{"id":"get:/user/current","description":"","readOnly":true,"method":"get","mount":"/user/current","queryDto":{"id":"getcurrentuserinfoqueries","fields":[{"name":"fields","description":"Filter records by value of their fields.","dataType":"object","elementDto":{"id":"","fields":[{"name":"id","description":"Auto generated id","isRequired":false,"dataType":"array","vectorProps":{"elementDataType":"string","allowDuplicated":false,"minLength":1}},{"name":"createdAt","description":"Creation timestamp of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"lastModified","description":"Last modification time of record","isRequired":false,"dataType":"object","elementDto":{"id":"rangequerydto","fields":[{"name":"min","dataType":"number","description":"Min value"},{"name":"max","dataType":"number","description":"Max value"},{"name":"minExclusive","dataType":"boolean","description":"Exclude min value"},{"name":"maxExclusive","dataType":"boolean","description":"Exclude max value"}],"relaxed":true}},{"name":"userId","description":"User id obtained from external id provider","isRequired":false,"dataType":"string"},{"name":"loginProvider","description":"","isRequired":false,"dataType":"array","vectorProps":{"superSet":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"allowDuplicated":false,"minLength":1,"elementDataType":"string"}},{"name":"loginIdentity","description":"","isRequired":false,"dataType":"string"},{"name":"avatar","description":"Avatar of user","isRequired":false,"dataType":"string"},{"name":"displayName","description":"Display name of user","isRequired":false,"dataType":"string"},{"name":"disabled","description":"Whether this user is disabled by system","isRequired":false,"dataType":"boolean"},{"name":"disableReason","description":"The reason for being disabled","isRequired":false,"dataType":"string"},{"name":"platform","description":"Platform OS of user's device","isRequired":false,"dataType":"string"},{"name":"platformVersion","description":"OS version of user's device","isRequired":false,"dataType":"string"},{"name":"selectedLocale","description":"User selected locale","isRequired":false,"dataType":"string"},{"name":"deviceToken","description":"Push notification device token","isRequired":false,"dataType":"string"},{"name":"gender","description":"Gender of user","isRequired":false,"dataType":"string"},{"name":"managedBy","description":"The user that manages this user","isRequired":false,"dataType":"string"},{"name":"isAdmin","description":"Whether this user has admin privileges","isRequired":false,"dataType":"boolean"}]}},{"name":"locale","description":"Language code for localization","isRequired":false,"dataType":"string"},{"name":"search","description":"Filter records for their @Searchable denoted fields.","dataType":"string"},{"name":"projection","description":"Project the returning records to contain only certain fields. Omit to return all.","dataType":"array","vectorProps":{"superSet":["id","createdAt","lastModified","userId","loginProvider","loginIdentity","avatar","displayName","disabled","disableReason","platform","platformVersion","selectedLocale","deviceToken","gender","managedBy","isAdmin"],"allowDuplicated":false,"minLength":1,"elementDataType":"string"}},{"name":"order","description":"Sort the dataset before getting result by order given in the array. Field appears first in the array will be sorted first.","dataType":"array","vectorProps":{"elementDataType":"object","minLength":1},"elementDto":{"id":"","fields":[{"name":"id","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"createdAt","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"lastModified","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"userId","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"loginProvider","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"loginIdentity","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"avatar","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"displayName","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"disabled","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"disableReason","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"platform","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"platformVersion","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"selectedLocale","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"deviceToken","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"gender","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"managedBy","isRequired":false,"dataType":"string","enum":["asc","desc"]},{"name":"isAdmin","isRequired":false,"dataType":"string","enum":["asc","desc"]}]}},{"name":"limit","description":"Limit the number of returning result.","dataType":"number","rangeProps":{"min":0}},{"name":"page","description":"Page the returning result, default to 1 if ommited. Has no effect if limit is not set.","dataType":"number","rangeProps":{"min":1}}]},"responseDto":{"id":"getcurrentuserinforesponse","fields":[{"name":"user","dataType":"object","description":"User info","elementDto":{"id":"userinfo","fields":[{"name":"id","dataType":"string","description":"Auto generated id","pk":{"isAutoIncrement":true},"isRequired":true,"serverValue":true},{"name":"loginProvider","dataType":"string","description":"","enum":["FACEBOOK","APPLE","EMAIL","GOOGLE"],"isRequired":true},{"name":"loginIdentity","dataType":"string","description":"","isRequired":true},{"name":"avatar","dataType":"string","description":"Avatar of user","mimeProps":{"type":"image","public":true},"textLength":512},{"name":"displayName","dataType":"string","description":"Display name of user","textLength":128,"allowNull":true,"searchable":{}},{"name":"disabled","dataType":"boolean","description":"Whether this user is disabled by system"},{"name":"disableReason","dataType":"string","description":"The reason for being disabled"},{"name":"selectedLocale","dataType":"string","description":"User selected locale"},{"name":"gender","dataType":"string","description":"Gender of user"},{"name":"isAdmin","dataType":"boolean","description":"Whether this user has admin privileges"}],"indexes":[{"columns":[["loginProvider",1],["loginIdentity",1]],"unique":true},{"columns":[["userId",1]],"unique":true}]},"isRequired":true}]}},{"id":"post:/user/reset/request","description":"Request password reset","readOnly":false,"method":"post","mount":"/user/reset/request","queryDto":{"id":"localequeries","fields":[{"name":"locale","dataType":"string","description":"Language code"}],"relaxed":true},"bodyDto":{"id":"requestresetuserpasswordbody","fields":[{"name":"loginIdentity","dataType":"string","description":"","isRequired":true}],"indexes":[{"columns":[["loginProvider",1],["loginIdentity",1]],"unique":true},{"columns":[["userId",1]],"unique":true}]},"publicAccess":true},{"id":"post:/user/reset/perform","description":"Perform password reset","readOnly":false,"method":"post","mount":"/user/reset/perform","bodyDto":{"id":"performresetuserpasswordbody","fields":[{"name":"loginIdentity","dataType":"string","description":"","isRequired":true},{"name":"secret","dataType":"string","description":"New password","isRequired":true},{"name":"otp","dataType":"string","description":"The verification OTP","isRequired":true}],"indexes":[{"columns":[["loginProvider",1],["loginIdentity",1]],"unique":true},{"columns":[["userId",1]],"unique":true}]},"publicAccess":true},{"id":"post:/user/verify/perform","description":"Perform email verification","readOnly":false,"method":"post","mount":"/user/verify/perform","bodyDto":{"id":"verifyaccountbody","fields":[{"name":"loginIdentity","dataType":"string","description":"","isRequired":true},{"name":"otp","dataType":"string","description":"The verification OTP","isRequired":true}],"indexes":[{"columns":[["loginProvider",1],["loginIdentity",1]],"unique":true},{"columns":[["userId",1]],"unique":true}]},"publicAccess":true},{"id":"post:/user/admin","description":"","readOnly":false,"method":"post","mount":"/user/admin","bodyDto":{"id":"updateuseradminbody","fields":[{"name":"userId","dataType":"string","description":"The user ID to update","isRequired":true},{"name":"isAdmin","dataType":"boolean","description":"Whether to grant or revoke admin","isRequired":true}]}},{"id":"delete:/user/account","description":"","readOnly":false,"method":"delete","mount":"/user/account"}]}