
Using the API
Sign up for a Visodee account
To use the VisoDee API, the developer must register a free account in Visodee, Click here to register.
Terms and Conditions
Using the VisoDee API, the developer agrees at the terms and conditions describe,
Read Terms and Conditions.
Postman
The explain and make example of using the API services, we will make use of the Postman service at,
Click here to POSTMAN.
We encorage the developer to create a postman account and use it through the documentation examples.
Time Zone
Unless indicated, every date time information will be display with a GMT+7 time zone (Asia/Bangkok).
Service Client Request
Every service client request parameter will be describe in green tables
servicename Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
The name of the parameter | The possible values of the parameter | If the parameter is mandatory and/or optional | Extra information about the paramter |
Service API Response
Every service API response parameter will be describe in red tables
servicename API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
The name of the parameter | The possible values of the parameter | String, Date, Number or Arrays | Extra information about the paramter |
Parameters that will return an ARRAY OF DATA will be described in sub-tables of different color as example below | |||
parameter name | - | Array | See sub-table in purple color |
parametername Response | |||
The index name of the array | The possible values | String, Date, Number or Arrays | Extra information |
Next topic Basic of the API Request
Basic of the API Request
To make use of Visodee services, every requests must provide as minimun the following data:
-
API URL
The url to connect with the API. -
Account Credentials
An UID and Secret provided to the developer when open an account with Visodee. -
A Service Name
The name of the service that the developer would like to access. -
Extra Service Parameters
Every service maybe will require extra information to execute the request.
Minimun requirement of a service client request parameters.
servicename Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kuid | The UID of the developer account | Mandatory | It must to be implemented in the HEADERS of the request. This field will be skip in the service information topic. |
ksecret | The SECRET code of the developer account | Mandatory | It must to be implemented in the HEADERS of the request. This field will be skip in the service information topic. |
kservice | The SERVICE name requested by the developer | Mandatory | Optional | If the kservice parameter is missing the service getaccountinfo will be called |
k... | Extra parameters | Mandatory | Optional | Depending from the type of service requested may other parameters are required |
Next topic Basic of the API Response
Basic of the API Response
Every response by the API to a service request is provided in Json format.
The API response will always maintain the same structure as in below table.
servicename API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | Name of the service requested | String | |
message | Message in English back to the developer | String | |
code | success or error code number | Number | |
codename | success or error code string | String | |
date | Datetime of the request | Date yyyy-mm-dd Time hh:mm:ss | This field will be skip in the service information topic |
time | Total time in seconds to process the request | Decimal Number 4 points | This field will be skip in the service information topic |
data | - | Array | See sub-table in purple color |
Parameter data Response | |||
The index name of the array | The possible values | String, Date, Number or Arrays | Extra information |
Next topic API Url
API Url
It consists in a secure https url connection with the Visodee api.
API Url | https://api.vosodee.com/ws.php?oitcreq=blliVnBOdUczY2haZGphSy82SzVKUT09 |
Test the API Url on a browser
Copy and then paste the API Url inside a browser address bar and if the connection is successful you should get the following Json message.
{"status":"success","service":"welcometovisodeeapi","message":"Welcome to Visodee API. Please provide a valid account credentials to access the Visodee services.","code":"801","codename":"welcometovisodeeapi","date":"2025-01-14 09:51:55","time":0.0072,"data":[]}
Test the API Url on Postman
Login inside your account in Postman and create a new HTTP REQUEST.
Copy the API url inside the address bar.
Click SEND to forward the request to the API Visodee and should received the Json response as below.
{ "status": "success", "service": "welcometovisodeeapi", "message": "Welcome to Visodee API. Please provide a valid account credentials to access the Visodee services.", "code": "801", "codename": "welcometovisodeeapi", "date": "2025-01-14 10:28:06", "time": 0.0022, "data": [] }
Next topic API Account Credentials
API Account Credentials
To access to the visodee api services the developer needs to provide the uid and secret, created during the registration process and available in the account information.
The uid and secret are mandatory and needs to be posted in the header section of the request.
servicename Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kuid | The UID of the developer account | Mandatory | It must to be implemented in the HEADERS of the request. This field will be skip in the service information topic. |
ksecret | The SECRET code of the developer account | Mandatory | It must to be implemented in the HEADERS of the request. This field will be skip in the service information topic. |
Test the API Account Credentials on Postman
From previous example, inside topic API url, add in the Headers area, your kuid and ksecret credentials.
Posting the request to the API, since we did not define and service name, the default service, getaccountinfo, will be called.
{ "status": "success", "service": "getaccountinfo", "message": "Hello ACCOUNTNAME", "code": "803", "codename": "accountinfofound", "date": "2025-01-14 11:32:21", "time": 0.0084, "data": { "name": "ACCOUNTNAME", "status": "Live", "storeimages": "Yes", "credits": "471", "creditsexpirationdate": "2025-04-07", "createddatetime": "2025-01-07 12:37:10", "lastlogindatetime": "2025-01-14 10:51:49", "numberofdailyrequests": "10" } }
Next topic List of Services
List of Services
Every visodee request is made by calling a service, that is passed by posting the key kservice to the api, if no service is passed the default service, getaccountinfo, is called.
List of Services | |||
Service Name | Cost | Remarks | |
getaccountinfo [default] | Free | Retrieve the developer account information | |
analyze | 1 Credit | Analyze a max of 10 faces inside an image | |
enroll | 1 Credit | Enroll a single face inside an image in the system | |
match | 1 Credit | Match a max of 10 faces inside an image with the ones enrolled in the system | |
setgallery | 1 Credit | Create and manage galleries used to categories enrolled faces | |
getfaces | Free | Retrieve records of enrolled faces in the system | |
getgalleries | Free | Retrieve records of galleries in the system | |
removeface | Free | Remove a face record from the system | |
removegallery | Free | Remove a gallery record from the system |
Next topic Service getaccountinfo
Service getaccountinfo
The service getaccountinfo will retrieve the information of the developer account
Cost: 0 Credit [Free]
getaccountinfo Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | getaccountinfo | Mandatory | This is the default service if the kservice key is not posted in the request. |
getaccountinfo API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | getaccountinfo | String | |
message | Hello ACCOUNTNAME | No Account Found | String | |
code | 805 | 705 | Number | |
codename | accountinfofound | noaccountinfofound | String | |
data | - | Array | See sub-table in purple color |
data Parameter Response | |||
name | ACCOUNTNAME | String | |
status | Live | Expired | Suspended | String | "Live":
Enable to use the API and make transactions.
"Expired": Enable to use the API but cannot make transactions because credits usage date (creditsexpirationdate) is outdate. Please recharge your credits. "Suspended": Cannot use the API because the account has been suspended. Please contact support for more information. |
credits | Number of Credits | Number | |
creditsexpirationdate | Date which credits are valid | Date yyyy-mm-dd | Indicate the date until the developer can use the credits to make transactions. Please recharge your credits to extend the date of 1 year from last top up. |
createddatetime | Account date time creation | Date yyyy-mm-dd Time hh:mm:ss |
|
lastlogindatetime | Account last date time login | Date yyyy-mm-dd Time hh:mm:ss |
Last time that the developer login inside the account through Visodee website |
numberofdailyrequests | Number of Free Daily Service Requests | Number | To avoid miuse of the API by the developers there is a max of 2,000 Free service requests at day |
Test the service getaccountinfo on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value getaccountinfo.
The result of posting the request to the API.
{
"status": "success",
"service": "getaccountinfo",
"message": "Hello ACCOUNTNAME",
"code": "803",
"codename": "accountinfofound",
"date": "2025-01-14 14:28:01",
"time": 0.0044,
"data":
{
"name": "ACCOUNTNAME",
"status": "Live",
"storeimages": "Yes",
"credits": "471",
"creditsexpirationdate": "2025-04-07",
"createddatetime": "2025-01-07 12:37:10",
"lastlogindatetime": "2025-01-14 12:50:41",
"numberofdailyrequests": "19"
}
}
Next topic Service analyze
Service analyze
The service analyze will retrieve the information of the developer account
Cost: 1 Credit
analyze Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | analyze | Mandatory | |
kimg64 | The image to post in base 64 | Mandatory | Max Image Size 1Mb Extension allowed png,jpg,gif |
analyze API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | analyze | String | |
message | Analized [facesinimage] Face(s) | String | See facesinimage parameter below |
code | 820 | 720,721 | Number | |
codename | analyzeface | invalidstringimagebase64, nofacesfoundinimage | String | |
data | - | Array | See sub-table in purple color |
Parameter data Response | |||
imgpath | The URL of the image processed![]() |
String | The image url is temporary and will be permanently deleted inside 2 hours from process.
Every face detected will have following code: F(ace)[index]-S(core)[value]% |
facesinimage | Number of faces detected in the image | Number | Maximum faces detected is 10 |
faces | - | Array | See sub-table in orange color |
Parameter faces Response | |||
index | The index of face in the array | Date yyyy-mm-dd Number |
It also refers has the index Findex in the image |
score | The percentage of face detection | String | The minimum score value for a face detection is 80% |
faceangle | The angle of roll, picth and yaw | Array | 3 indexes will are provided roll,picth and yaw |
facebox | The x,y, width and height in pixel of the location of the face in the picture | Array | 4 indexes will are provided x,y, width and height |
age | A prediction of the person age | Number | |
gender | A prediction of the person gender Values female or male |
String |
Test the service analyze on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value analyze and kimg64 as data:image/jpeg;base64,iVBORw0KG....
The result of posting the request to the API.
{
"status": "success",
"service": "analyze",
"message": "Analyzed 2 Face(s)",
"code": "830",
"codename": "analyzeface",
"date": "2025-01-15 11:01:56",
"time": 0.5426,
"data":
{
"imgpath": "http://34.124.148.18/tmp/2025011511/IMG27_20250115110156_gGtxz.png",
"facesinimage": 2,
"faces": [
{
"index": 0,
"score": 99.86,
"faceangle": {
"roll": 21,
"pitch": 7,
"yaw": 44
},
"facebox": {
"x": 311,
"y": 162,
"w": 260,
"h": 263
},
"age": 25,
"gender": "male"
},
{
"index": 1,
"score": 99.61,
"faceangle": {
"roll": -3,
"pitch": -4,
"yaw": 28
},
"facebox": {
"x": 44,
"y": 226,
"w": 216,
"h": 279
},
"age": 19,
"gender": "female"
}
]
}
}
Next topic Service enroll
Service enroll
The service enroll will upload a face-image associated with a label inside the system, and will register the face-label in the system database associated with the developer account.
Only 1 face needs to be contained in the image, other case the service will return an error.
Cost: 1 Credit
enroll Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | enroll | Mandatory | |
kimg64 | The image to post in base 64 | Mandatory | Max Image Size 1Mb Extension allowed png,jpg,gif |
klabel | Text associated with the face image | Mandatory | Max 50 Characters Characthers Range: a-z A-Z 0-9 Alphanumeric Allowed: [Space] between characters .(dot) -(dash) |
kgalleryname | If empty value='Default' | Optional | Max 50 Characters Characthers Range: a-z A-Z 0-9 Alphanumeric Allowed: [Space] between characters .(dot) -(dash) Face-images are organized in galleries, so every face-image must belongs to a gallery. If the gallery name is not provided, the face-image is automatically added to a gallery called Default |
kid | The record id of the face the developer wants to update | See Remarks | Optional - If not post it the system will create a new record Mandatory - If post it the system will update the record related to that id |
enroll API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | enroll | String | |
message | Record Face Created|Updated ID [faceid] Label [klabel] | String | |
code | 820 | 720,721,722,723 | Number | |
codename | enrollface | invalidstringimagebase64, nofacesfoundinimage, labelismissing, enrollfailedmultiplefaces | String | |
data | - | Array | See sub-table in purple color |
Parameter data Response | |||
imgpath | The URL of the image processed![]() |
String | The image url is temporary and will be permanently deleted inside 2 hours from process.
Every face detected will have following code: F(ace)[index]-S(core)[value]% |
facesinimage | Number of faces detected in the image | Number | Maximum faces detected is 10 |
galleryname | The gallery name associated with the enrollment | String | |
faceid | The face image record id | Number | |
faces | - | Array | See sub-table in orange color |
faces Parameter Response | |||
index | The index of face in the array | Date yyyy-mm-dd Number |
It also refers has the index Findex in the image |
score | The percentage of face detection | String | The minimum score value for a face detection is 80% |
faceangle | The angle of roll, picth and yaw | Array | 3 indexes will are provided roll,picth and yaw |
facebox | The x,y, width and height in pixel of the location of the face in the picture | Array | 4 indexes will are provided x,y, width and height |
age | A prediction of the person age | Number | |
gender | A prediction of the person gender Values female or male |
String |
Test the service enroll on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value enroll,kimg64 as data:image/jpeg;base64,iVBORw0KG... and klabel as example'Maria Angela'.
The result of posting the request to the API.
{
"status": "success",
"service": "enroll",
"message": "Record Face Created ID 11 Label Maria Angela ",
"code": "555",
"codename": "enrollface",
"date": "2025-01-15 13:39:49",
"time": 0.6274,
"data":
{
"imgpath": "http://34.124.148.18/tmp/2025011513/IMG27_20250115133949_TOIui.png",
"facesinimage": 1,
"faces": [
{
"index": 0,
"score": 99.15,
"faceangle": {
"roll": -3,
"pitch": -4,
"yaw": 46
},
"facebox": {
"x": 101,
"y": 211,
"w": 417,
"h": 529
},
"age": 18,
"gender": "female",
}
],
"galleryname": "Default",
"faceid": "11"
}
}
Next topic Service match
Service match
The service match will retrieve the information of the developer account
Cost: 1 Credit
match Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | match | Mandatory | |
kimg64 | The image to post in base 64 | Mandatory | Max Image Size 1Mb Extension allowed png,jpg,gif |
kgalleryname | If empty value or gallery not found all galleries will be used | Optional | Max 50 Characters Characthers Range: a-z A-Z 0-9 Alphanumeric Allowed: [Space] between characters .(dot) -(dash) |
match API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | match | String | |
message | Match Found [facesinimage] Face(s) | String | See facesinimage parameter below |
code | 820 | 720,721 | Number | |
codename | matchface | invalidstringimagebase64, nofacesfoundinimage | String | |
data | - | Array | See sub-table in purple color |
Parameter data Response | |||
imgpath | The URL of the image processed![]() |
String | The image url is temporary and will be permanently deleted inside 2 hours from process.
Found Faces will be squared in green Every faceNot Found Faces will be squared in red color Every face detected will have following code: F(ace)[index]-C(onfidence)[value]% Every found face will have the record id noted at the bottom |
facesinimage | Number of faces detected in the image | Number | Maximum faces detected is 10 |
facefound | Number of faces found in the image | Number | |
facenotfound | Number of faces not found in the image | Number | |
facestocompare | Number of enrolled faces compared against the ones in the image | Number | |
galleryname | The gallery name associated with the match process | String | If empty will display USING ALL GALLERIES |
maxdistance | The value of maximunm distance to match a face default 0.45 | Decimal 2 points | |
faces | - | Array | See sub-table in orange color |
Parameter faces Response | |||
index | The index of face in the array | Date yyyy-mm-dd Number |
It also refers has the index Findex in the image |
score | The percentage of face detection | String | The minimum score value for a face detection is 80% |
faceangle | The angle of roll, picth and yaw | Array | 3 indexes will are provided roll,picth and yaw |
facebox | The x,y, width and height in pixel of the location of the face in the picture | Array | 4 indexes will are provided x,y, width and height |
age | A prediction of the person age | Number | |
gender | A prediction of the person gender Values female or male |
String | |
match | - | Array | See sub-table in pink color |
Parameter match Response | |||
result | found | not found | String | |
id | If result is found will return the id of the best match | Number | |
label | If result is found will return the label of the best match | String | |
facesindistance | If result is found will return an array of face ids of matches under max distances | Array | |
bestconfidence | The overall closest face match confidence in percentage | String | |
closestmatch | The overall closest match id:label | String | |
closestdistance | The overall closest match distance | Decimal 4 points | |
candidates | The total number of match found candidates | Number | It is equal at the number of records in [facesindistance] |
Test the service analyze on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value match and kimg64 as data:image/jpeg;base64,iVBORw0KG....
The result of posting the request to the API.
{
"status": "success",
"service": "match",
"message": "Match Found 1 Faces",
"code": "555",
"codename": "matchface",
"date": "2025-01-15 14:05:15",
"time": 0.6325,
"data":
{
"imgpath": "http://34.124.148.18/tmp/2025011514/IMG27_20250115140515_aHDcg.png",
"facesinimage": 2,
"facesfound": 1,
"facesnotfound": 1,
"facestocompare": 11,
"faces": [
{
"index": 0,
"score": 99.86,
"faceangle": {
"roll": 21,
"pitch": 7,
"yaw": 44
},
"facebox": {
"x": 311,
"y": 162,
"w": 260,
"h": 263
},
"age": 25,
"gender": "male",
"match": {
"result": "NotFound",
"id": "",
"label": "",
"facesindistance": [],
"bestconfidence": "29.76%",
"closestmatch": "2:Justin Bee",
"closestdistance": 0.7024,
"candidates": 0
}
},
{
"index": 1,
"score": 99.61,
"faceangle": {
"roll": -3,
"pitch": -4,
"yaw": 28
},
"facebox": {
"x": 44,
"y": 226,
"w": 216,
"h": 279
},
"age": 19,
"gender": "female",
"match": {
"result": "Found",
"id": "11",
"label": "Maria Angela",
"facesindistance": {
"11": 0.2801
},
"bestconfidence": "71.99%",
"closestmatch": "11:Maria Angela",
"closestdistance": 0.2801,
"candidates": 1
}
}
],
"galleryname": "USING ALL GALLERIES",
"maxdistance": 0.45
}
}
Next topic Service setgallery
Service setgallery
The service setgallery will manage the galleries used as a container/organizer for faces enrolled.
Cost: 1 Credit
setgallery Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | setgallery | Mandatory | |
kgalleryname | If empty value='Default' | Optional | Max 50 Characters Characthers Range: a-z A-Z 0-9 Alphanumeric Allowed: [Space] between characters .(dot) -(dash) |
kid | The record id of the gallery the developer wants to update | See Remarks | Optional - If not post it the system will create a new record Mandatory - If post it the system will update the record related to that id |
setgallery API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | setgallery | String | |
message | Gallery [name] Created/Updated ID [id] | String | |
code | 805 | 705 | Number | |
codename | gallerycreated,galleryupdated | String | |
data | - | Array | See sub-table in purple color |
data Parameter Response | |||
id | Gallery record id | Number | |
name | Gallery name | String | |
datecreated | Datetime of record creation | Date yyyy-mm-dd Time hh:mm:ss |
Test the service setgallery on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value setgallery and kgalleryname as example 'accounting department'.
The result of posting the request to the API.
{
"status": "success",
"service": "setgallery",
"message": "Gallery accounting department Created ID 2",
"code": "821",
"codename": "gallerycreated",
"date": "2025-01-15 14:54:36",
"time": 0.0618,
"data":
{
"id": "2",
"name": "accounting department",
"datecreated": "2025-01-15 14:54:36"
}
}
Next topic Service getfaces
Service getfaces
The service getfaces will retrieve the records of the faces enrolled.
Cost: 0 Credit [Free]
getfaces Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | getfaces | Mandatory | |
kpage | Default is 0 | Optional | Retrieving the records will use a paging system, where the developer will need to define the page, so the page where start to select records, and paging, number of record per page |
kpaging | Number of records to return
Value between 1-100 Default is 50 |
Optional | |
kid | Search by record id | Optional | Must be a number |
klabel | Search by face label | Optional | Max 50 Characters Characthers Range: a-z A-Z 0-9 Alphanumeric Allowed: [Space] between characters .(dot) -(dash) |
kgalleryname | Search by gallery name | Optional | Max 50 Characters Characthers Range: a-z A-Z 0-9 Alphanumeric Allowed: [Space] between characters .(dot) -(dash) |
getfaces API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | getfaces | String | |
message | Found [numberrecords] Records of [totalrecords],No Record Found | String | |
code | 805 | 705 | Number | |
codename | getfacesrecordfound,getfacesnorecordfound | String | |
data | - | Array | See sub-table in purple color |
data Parameter Response | |||
numberrecords | Number of record returned | Number | |
totalrecords | Number of total record for that search | Number | |
page | The return search page | Number | |
paging | The request number of records by page | Number | |
records | - | Array | See sub-table in orange color |
records Parameter Response | |||
id | Face record id | Number | |
label | Face label | String | |
galleryname | The gallery name associated with the face | String | |
imgpath | A temporary URL of the image enrolled | String | The image url is temporary and will be permanently deleted inside 2 hours from process |
Test the service getfaces on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value getfaces, kpage(optional) as example 1 and kpaging(optional) as example 3
The result of posting the request to the API.
{
"status": "success",
"service": "getfaces",
"message": "Found 3 Records of 11",
"code": "745",
"codename": "getfacesrecordfound",
"date": "2025-01-16 10:43:11",
"time": 0.0126,
"data":
{
"numberrecords": 3,
"totalrecords": "11",
"page": 1,
"paging": 3,
"records": [
{
"id": "5",
"label": "Mau",
"age": "35",
"gender": "male",
"datecreated": "2025-01-07 13:47:04",
"galleryname": "Default",
"imgpath": "http://34.124.148.18/vsdee/temps/files/IMG27_20250107134703_FR1BA-20423.jpg"
},
{
"id": "10",
"label": "Karim",
"age": "64",
"gender": "male",
"datecreated": "2025-01-14 14:23:48",
"galleryname": "accounting department",
"imgpath": "http://34.124.148.18/vsdee/temps/files/IMG27_20250114142348_X4DE4-20434.jpg"
},
{
"id": "11",
"label": "Maria Angela",
"age": "18",
"gender": "female",
"datecreated": "2025-01-15 13:39:49",
"galleryname": "Default",
"imgpath": "http://34.124.148.18/vsdee/temps/files/IMG27_20250115133949_TOIui-20435.jpg"
}
]
}
}
Next topic Service getgalleries
Service getgalleries
The service getgalleries will retrieve the records of the galleries.
Cost: 0 Credit [Free]
getgalleries Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | getgalleries | Mandatory | |
kpage | Default is 0 | Optional | Retrieving the records will use a paging system, where the developer will need to define the page, so the page where start to select records, and paging, number of record per page |
kpaging | Number of records to return
Value between 1-100 Default is 50 |
Optional | |
kid | Search by record id | Optional | Must be a number |
klabel | Search by gallery name | Optional | Max 50 Characters Characthers Range: a-z A-Z 0-9 Alphanumeric Allowed: [Space] between characters .(dot) -(dash) |
getgalleries API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | getgalleries | String | |
message | Found [numberrecords] Records of [totalrecords],No Record Found | String | |
code | 805 | 705 | Number | |
codename | getgalleriesrecordfound, getgalleriesnorecordfound | String | |
data | - | Array | See sub-table in purple color |
data Parameter Response | |||
numberrecords | Number of record returned | Number | |
totalrecords | Number of total record for that search | Number | |
page | The return search page | Number | |
paging | The request number of records by page | Number | |
records | - | Array | See sub-table in orange color |
records Parameter Response | |||
id | Face record id | Number | |
label | Gallery name | String | |
totalfaces | The number of faces enrolled inside the gallery | Number |
Test the service getgalleries on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value getgalleries, kpage(optional) as example 1 and kpaging(optional) as example 3
The result of posting the request to the API.
{
"status": "success",
"service": "getgalleries",
"message": "Found 2 Records of 2",
"code": "745",
"codename": "getgalleriesrecordfound",
"date": "2025-01-16 11:22:45",
"time": 0.0087,
"data":
{
"numberrecords": 2,
"totalrecords": "2",
"page": 0,
"paging": 50,
"records": [
{
"id": "1",
"label": "Default",
"totalfaces": "9"
},
{
"id": "2",
"label": "accounting department",
"totalfaces": "2"
}
]
}
}
Next topic Service removeface
Service removeface
The service removeface will remove a face record by id
Beware that all the records related to the face record will be removed as example Time Attendance
Cost: 0 Credit [Free]
removeface Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | removeface | Mandatory | |
kid | Remove record id | Mandatory | Must be a number |
removeface API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | removeface | String | |
message | Face id [id] label [label] has been deleted | String | |
code | 805 | 705 | Number | |
codename | facehasbeendeleted | String | |
data | - | Array | See sub-table in purple color |
data Parameter Response | |||
id | The id of the record deleted | Number | |
label | The label of the record deleted | String |
Test the service removeface on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value removeface, kid as example 10
The result of posting the request to the API.
{
"status": "success",
"service": "removeface",
"message": "Face id 10 label Karim has been deleted",
"code": "855",
"codename": "facehasbeendeleted",
"date": "2025-01-16 12:21:33",
"time": 0.0733,
"data":
{
"id": "10",
"label": "Karim"
}
}
Next topic Service removegallery
Service removegallery
The service removegallery will remove a gallery record by id
Beware that the gallery does not need to contain any face enrolled to be successfully removed
Cost: 0 Credit [Free]
removegallery Client Request | |||
Parameter Key | Parameter Values | Mandatory | Optional | Remarks |
kservice | removegallery | Mandatory | |
kid | Remove record id | Mandatory | Must be a number |
removegallery API Response | |||
Parameter Key | Parameter Values | Type/Format | Remarks |
status | success | error | String | |
service | removegallery | String | |
message | Gallery id [id] label [label] has been deleted | String | |
code | 805 | 705 | Number | |
codename | galleryhasbeendeleted | String | |
data | - | Array | See sub-table in purple color |
data Parameter Response | |||
id | The id of the record deleted | Number | |
label | The label of the record deleted | String |
Test the service removegallery on Postman
From previous example, inside topic API account credentials, select Body and form-data and add the key kservice with value removegallery, kid as example 2
The result of posting the request to the API.
{
"status": "success",
"service": "removegallery",
"message": "Gallery id 2 label accounting department has been deleted",
"code": "855",
"codename": "galleryhasbeendeleted",
"date": "2025-01-16 12:36:48",
"time": 0.0547,
"data":
{
"id": "2",
"label": "accounting department"
}
}
Next topic Codes by Service status
Service Codes by Service status
Codes by Service status | |||||
Service Name | Status | Code | Codename | Message | Remarks |
Not Available | success | 801 | welcometovisodeeapi | Welcome to Visodee API. Please provide a valid account credentials to access the Visodee services | When test the API url |
Any Service | error | 701 | invalidaccountcredentials | Invalid Account Credentials. Please provide a valid UID and Secret. | Authorization access process |
Any Service | error | 702 | accounthasbeensuspended | Account has been Suspended. Please contact support for more information. | Authorization access process |
Next topic Examples in PHP
Service Examples in PHP
The following PHP code examples will test 2 services, getaccountinfo and setgallery
Please replace ACCOUNTUID and ACCOUNTSECRET with your account information
Example service getaccountinfo:
<?php //API url $url = "http://34.124.148.18/vsdee//ws.php?oitcreq=blliVnBOdUczY2haZGphSy82SzVKUT09"; //Account Credentials in the headers $a_headers = []; $a_headers[] = "Content-Type:multipart/form-data"; $a_headers[] = "kuid:ACCOUNTUID"; $a_headers[] = "ksecret:ACCOUNTSECRET"; //Service parameters $apostdata = []; $apostdata["kservice"] = "getaccountinfo"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS,$apostdata); curl_setopt($ch, CURLOPT_HTTPHEADER, $aheaders); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); //Server respons curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $server_output = curl_exec($ch); $errstr=null; $errno = null; if(curl_errno($ch)) { $curl_errno = curl_errno($ch); $curl_errormsg = curl_error($ch); $a_result = array( "curlstatus"=>"error", "data"=>"No ".$curl_errno.":".$curl_errormsg, ); } else { $a_result = array( "curlstatus"=>"success", "data"=>$server_output, ); } curl_close ($ch); echo "<pre>"; echo print_r($a_result,true); echo "</pre>"; ?>
Example service setgallery:
<?php //API url $url = "http://34.124.148.18/vsdee//ws.php?oitcreq=blliVnBOdUczY2haZGphSy82SzVKUT09"; //Account Credentials in the headers $a_headers = []; $a_headers[] = "Content-Type:multipart/form-data"; $a_headers[] = "kuid:ACCOUNTUID"; $a_headers[] = "ksecret:ACCOUNTSECRET"; //Service parameters $apostdata = []; $apostdata["kservice"] = "setgallery"; $apostdata["kgalleryname"] = "Private"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS,$apostdata); curl_setopt($ch, CURLOPT_HTTPHEADER, $aheaders); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // Receive server response ... curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $server_output = curl_exec($ch); $errstr=null; $errno = null; if(curl_errno($ch)) { $curl_errno = curl_errno($ch); $curl_errormsg = curl_error($ch); $a_result = array( "curlstatus"=>"error", "data"=>"No ".$curl_errno.":".$curl_errormsg, ); } else { $a_result = array( "curlstatus"=>"success", "data"=>$server_output, ); } curl_close ($ch); echo "<pre>"; echo print_r($a_result,true); echo "</pre>"; ?>
Next topic About the API
Service About the API
Version: 1.0
Date: 2025-01-06
Authors: MauC & TawS