Introduction
This documentation provides all the information you will need to work with CUPID v2 API. The application is built with Laravel 9 PHP framework & is systematically versioned (SEMVER) to replace CUPID API v1.
This documentation aims to provide all the information you need to work with our API.
Base URL
https://cupidapiv2.smartflowtech.org/
Authenticating requests
Authenticate requests to this API's endpoints by sending a Authorization header with the value "Bearer {YOUR_AUTH_KEY}".
All authenticated endpoints are marked with a requires authentication badge in the documentation below.
You can retrieve your access_token by logging in using the Login a user endpoint
ACL Endpoints
Display a listing of the roles or filter by query
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/acl/roles?term=possimus" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/roles"
);
const params = {
"term": "possimus",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=4oxSGxZxMSCV0NClSwvUVUSwcDiotAzRsb1qaTxs; expires=Fri, 03 Jul 2026 14:33:24 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/acl/roles could not be found."
}
Received response:
Request failed with error:
Add a new role
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/roles" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"facilis\",
\"permissions\": [
1
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/roles"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "facilis",
"permissions": [
1
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "super admin",
"guard_name": "api",
"created_at": null,
"updated_at": null,
"permissions": []
}
}
Received response:
Request failed with error:
Update a specific role
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/acl/roles/5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"ipsum\",
\"permissions\": [
13
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/roles/5"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "ipsum",
"permissions": [
13
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "super admin",
"guard_name": "api",
"created_at": null,
"updated_at": null,
"permissions": []
}
}
Received response:
Request failed with error:
Delete a specific role
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/acl/roles/12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/roles/12"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "super admin",
"guard_name": "api",
"created_at": null,
"updated_at": null,
"permissions": []
}
}
Received response:
Request failed with error:
Display a listing of the permission or filter by query
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/acl/permissions?term=pariatur" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/permissions"
);
const params = {
"term": "pariatur",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=zJAm7iuy7MbteSHTjKDbrd6pemxCsGZVNKjE81gj; expires=Fri, 03 Jul 2026 14:33:24 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/acl/permissions could not be found."
}
Received response:
Request failed with error:
Add a new permission
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/permissions" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"perferendis\",
\"module\": \"Fleet\",
\"guard_name\": \"web\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/permissions"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "perferendis",
"module": "Fleet",
"guard_name": "web"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "view",
"module": "General",
"guard_name": "api",
"created_at": null,
"updated_at": null
}
}
Received response:
Request failed with error:
Update a specific permission
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/acl/permissions/15" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"recusandae\",
\"module\": \"Roles\",
\"guard_name\": \"api\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/permissions/15"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "recusandae",
"module": "Roles",
"guard_name": "api"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "view",
"module": "General",
"guard_name": "api",
"created_at": null,
"updated_at": null
}
}
Received response:
Request failed with error:
Delete a specific permission
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/acl/permissions/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/permissions/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Assign permissions to a user
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/user_assign_permissions?permission_names[]=a&email=repellendus" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"permission_names\": [
\"magni\"
],
\"email\": \"vbrakus@example.net\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/user_assign_permissions"
);
const params = {
"permission_names[]": "a",
"email": "repellendus",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"permission_names": [
"magni"
],
"email": "vbrakus@example.net"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Assign roles to a user
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/user_assign_roles?role_names[]=vitae&email=nam" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"role_names\": [
\"est\"
],
\"email\": \"alexandra47@example.net\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/user_assign_roles"
);
const params = {
"role_names[]": "vitae",
"email": "nam",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"role_names": [
"est"
],
"email": "alexandra47@example.net"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Revoke user roles
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/revoke_user_role?role_names[]=esse&email=ea" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"role_names\": [
\"quia\"
],
\"email\": \"hellen29@example.net\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/revoke_user_role"
);
const params = {
"role_names[]": "esse",
"email": "ea",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"role_names": [
"quia"
],
"email": "hellen29@example.net"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Revoke user permissions
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/revoke_user_permission?permission_names[]=voluptatem&email=aut" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"permission_names\": [
\"qui\"
],
\"email\": \"cschneider@example.org\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/revoke_user_permission"
);
const params = {
"permission_names[]": "voluptatem",
"email": "aut",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"permission_names": [
"qui"
],
"email": "cschneider@example.org"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Assign permissions to role
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/assign_permissions_to_role?permission_names[]=voluptate&role=consequatur" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"role\": \"aut\",
\"permission_names\": [
\"ratione\"
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/assign_permissions_to_role"
);
const params = {
"permission_names[]": "voluptate",
"role": "consequatur",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"role": "aut",
"permission_names": [
"ratione"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Revoke permissions to role
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/acl/detach_permissions_from_role?permission_names[]=et&role=neque" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"role\": \"laudantium\",
\"permission_names\": [
\"sapiente\"
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/acl/detach_permissions_from_role"
);
const params = {
"permission_names[]": "et",
"role": "neque",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"role": "laudantium",
"permission_names": [
"sapiente"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Authentication Endpoints
Login a user
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/oauth/login" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "client_id: The application client ID provided by the SSO application" \
--header "client_secret: The application client secret key provided by the SSO application" \
--data "{
\"email\": \"vitae\",
\"password\": \"quisquam\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/oauth/login"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"client_id": "The application client ID provided by the SSO application",
"client_secret": "The application client secret key provided by the SSO application",
};
let body = {
"email": "vitae",
"password": "quisquam"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"message": "Login was successful",
"data": {f
"access_token": "eyJ0eXAiOiJKV1QiLCJh...",
"refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGci...",
"user": {
"id": 1,
"name": "John Doe",
"email": "useremail@example.org",
"other_user_info": "other user information"
},
"vendor": {
"id": 14,
"name": "Company Name Ltd"
}
}
}
Received response:
Request failed with error:
Reset user password
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/reset_password" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"quia\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/reset_password"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "quia"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Register a user for self on-boarding
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/register" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"iure\",
\"name\": \"velit\",
\"email\": \"laboriosam\",
\"username\": \"aut\",
\"phone\": \"est\",
\"gender\": \"sit\",
\"suspended\": \"et\",
\"active\": \"consequatur\",
\"is_admin\": \"non\",
\"is_vendor\": \"voluptate\",
\"create_company\": true,
\"create_company_wallet\": false,
\"vendor_id\": 8,
\"vehicles\": [
{
\"cost_center_id\": 16,
\"driver_id\": 18,
\"group_id\": 6,
\"registration_number\": \"vgswcpmpmbhpsztkmacobvgacdwxmdatlpipvkmlwkpyudfdairpddhtesndbfcxyvrrfmyijgfxtdhbofldmomscejwmlhyvpplchqdtebjgsvimgmbbsgrwihclvtnmsuvundykrpkfevaqonlkukukg\",
\"tank_capacity\": 329800047.186603,
\"auth_type\": \"kyyrabgtcbdchkwnjjfxfbjzarqgalyqhrqlgzvbqobcwyaxyqnixzjwbndhvczrvpesojmbtqpnrfttkcwdeziscbmldjfckjbswkzrvhpgfauffyipsjnzozlzwsiiyfjnwjyilbrhusshdwu\",
\"nfc_tag_id\": 12,
\"tracker_id\": 6,
\"model\": \"qozzmfhpnmsaulkbbvooylrfssyoayqxetzmrnvkulgczljqzznvnrcljijomfryepvnbvwhleeadzqzplmjtqwudxlxtojmtdtqkcrjarxmjidvnnqiylnsfjnuovpjfmexgvlgfhzdbdydyve\",
\"engine_capacity\": 271989.947,
\"fuel_type\": \"fcnhxrpeaqeaftfrhrhxfgljtxcovuyyhfkeuivtuqycpshqrjlentijistuiimxm\",
\"color\": \"absmrlnacuzgdbtfxdzwvfhesyvxbudmpwfsmsp\",
\"brand\": \"yuac\",
\"reward_type\": \"fppdnsgoukovqmzxkpqjgtljhfuzgddmqatzasuumbzrmfonphsvafqsbctfkhvphehbtkiatrbnsawadyyfujvmprpbbnrkpkcccrpdxgdtlbjinpmrduywfrtuwhermlbihghsvwfirsheugdagvakmhavipypetexozehtivdemeamksmvgkbnhxkwxhlkhcmygyevtuxbqmnmwkqneieegkvwk\",
\"active\": true
}
],
\"company_id\": 17
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/register"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"title": "iure",
"name": "velit",
"email": "laboriosam",
"username": "aut",
"phone": "est",
"gender": "sit",
"suspended": "et",
"active": "consequatur",
"is_admin": "non",
"is_vendor": "voluptate",
"create_company": true,
"create_company_wallet": false,
"vendor_id": 8,
"vehicles": [
{
"cost_center_id": 16,
"driver_id": 18,
"group_id": 6,
"registration_number": "vgswcpmpmbhpsztkmacobvgacdwxmdatlpipvkmlwkpyudfdairpddhtesndbfcxyvrrfmyijgfxtdhbofldmomscejwmlhyvpplchqdtebjgsvimgmbbsgrwihclvtnmsuvundykrpkfevaqonlkukukg",
"tank_capacity": 329800047.186603,
"auth_type": "kyyrabgtcbdchkwnjjfxfbjzarqgalyqhrqlgzvbqobcwyaxyqnixzjwbndhvczrvpesojmbtqpnrfttkcwdeziscbmldjfckjbswkzrvhpgfauffyipsjnzozlzwsiiyfjnwjyilbrhusshdwu",
"nfc_tag_id": 12,
"tracker_id": 6,
"model": "qozzmfhpnmsaulkbbvooylrfssyoayqxetzmrnvkulgczljqzznvnrcljijomfryepvnbvwhleeadzqzplmjtqwudxlxtojmtdtqkcrjarxmjidvnnqiylnsfjnuovpjfmexgvlgfhzdbdydyve",
"engine_capacity": 271989.947,
"fuel_type": "fcnhxrpeaqeaftfrhrhxfgljtxcovuyyhfkeuivtuqycpshqrjlentijistuiimxm",
"color": "absmrlnacuzgdbtfxdzwvfhesyvxbudmpwfsmsp",
"brand": "yuac",
"reward_type": "fppdnsgoukovqmzxkpqjgtljhfuzgddmqatzasuumbzrmfonphsvafqsbctfkhvphehbtkiatrbnsawadyyfujvmprpbbnrkpkcccrpdxgdtlbjinpmrduywfrtuwhermlbihghsvwfirsheugdagvakmhavipypetexozehtivdemeamksmvgkbnhxkwxhlkhcmygyevtuxbqmnmwkqneieegkvwk",
"active": true
}
],
"company_id": 17
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Get Vendor OnBoarding details by hostname
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_vendor_on_boarding_details" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_vendor_on_boarding_details"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=0ll9XTm0i7xaIs0pMP4QiQovUv98e5hyeX3n91N4; expires=Fri, 03 Jul 2026 14:33:24 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/get_vendor_on_boarding_details could not be found."
}
Received response:
Request failed with error:
Get logged in user profile
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/user" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"title": "Mr.",
"name": "Rhianna Mann PhD",
"email": "dana12@example.net",
"phone": "1-747-700-7593",
"avatar": "https://via.placeholder.com/200x200.png/008811?text=avatar+et",
"username": "marilou.corkery",
"gender": "Male",
"newsletter": true,
"active": true,
"card_brand": "Visa",
"card_last_four": "9447",
"is_vendor": false,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 348,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 23,
"name": "update fleet"
},
{
"id": 39,
"name": "view user wallet"
},
{
"id": 46,
"name": "create sub-wallet"
},
{
"id": 71,
"name": "destination delete"
},
{
"id": 77,
"name": "truck contract create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
},
{
"title": "Dr.",
"name": "Mr. Clint Volkman",
"email": "edward.watsica@example.com",
"phone": "+1.516.592.4237",
"avatar": "https://via.placeholder.com/200x200.png/00ee77?text=avatar+nisi",
"username": "jonas.brekke",
"gender": "Female",
"newsletter": true,
"active": true,
"card_brand": "Visa",
"card_last_four": "5277",
"is_vendor": true,
"is_admin": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 349,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 2,
"name": "create"
},
{
"id": 13,
"name": "view company group"
},
{
"id": 55,
"name": "view vendor group"
},
{
"id": 63,
"name": "request delete"
},
{
"id": 74,
"name": "destination_allocation update"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
]
}
Received response:
Request failed with error:
Set the user active vendor
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/set_user_active_vendor/5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/set_user_active_vendor/5"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=4WCcjAcTgfCxEYv7jn5Cx5Takzp59Jz4aksimizG; expires=Fri, 03 Jul 2026 14:33:24 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/set_user_active_vendor/5 could not be found."
}
Received response:
Request failed with error:
Send OTP to a user
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/issue_otp" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/issue_otp"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=3paJDf2oyvYlQXuTGd283Q61dwudDmueWtHZ9gWV; expires=Fri, 03 Jul 2026 14:33:24 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/issue_otp could not be found."
}
Received response:
Request failed with error:
Get a users active vendors.This will return the vendors of the authenticated user, if email is empty
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_user_active_vendor?email=enim" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_user_active_vendor"
);
const params = {
"email": "enim",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Hauck-Wolff",
"email": "everardo49@little.com",
"phone_number": "1-458-859-4538",
"country": "Swaziland",
"state": "North Carolina",
"city": "South Darrell",
"postcode": "11821-9050",
"address": "728 Rice Camp Suite 098",
"registration_number": "RC-450389",
"contact_person": "Weldon Denesik",
"sm_company_id": 5,
"products_sold": "PMS",
"payment_type": "nihil",
"status": true,
"has_active_paga_account": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 41,
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
},
{
"name": "Jacobson, Spinka and Leffler",
"email": "marcelle.moore@fahey.com",
"phone_number": "+19049218217",
"country": "Mayotte",
"state": "Nevada",
"city": "Bruenborough",
"postcode": "37239",
"address": "2842 Monserrate Overpass Apt. 552",
"registration_number": "RC-933527",
"contact_person": "Dr. Stevie Pagac III",
"sm_company_id": 3,
"products_sold": "ATK",
"payment_type": "dolor",
"status": false,
"has_active_paga_account": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 42,
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
}
]
}
Received response:
Request failed with error:
Update user profile & password
requires authentication
Example request:
curl --request PATCH \
"https://cupidapiv2.smartflowtech.org/api/profile/update_profile/20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"cupid_id\": 10,
\"name\": \"hic\",
\"email\": \"bethany.berge@example.net\",
\"username\": \"et\",
\"gender\": \"Female\",
\"phone\": \"commodi\",
\"current_password\": \"illo\",
\"password\": \"non\",
\"user_agent\": \"customer_app\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/profile/update_profile/20"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"cupid_id": 10,
"name": "hic",
"email": "bethany.berge@example.net",
"username": "et",
"gender": "Female",
"phone": "commodi",
"current_password": "illo",
"password": "non",
"user_agent": "customer_app"
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Register user on SSO for Super Admin
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/super_admin_register" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"aut\",
\"title\": \"maxime\",
\"phone\": \"omnis\",
\"email\": \"at\",
\"username\": \"illum\",
\"gender\": \"ullam\",
\"newsletter\": false,
\"active\": \"sequi\",
\"is_admin\": \"dolor\",
\"is_vendor\": \"totam\",
\"suspended\": \"maxime\",
\"vendors\": [
9
],
\"companies\": [
7
],
\"cost_centers\": [
5
],
\"stations\": [
2
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/super_admin_register"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "aut",
"title": "maxime",
"phone": "omnis",
"email": "at",
"username": "illum",
"gender": "ullam",
"newsletter": false,
"active": "sequi",
"is_admin": "dolor",
"is_vendor": "totam",
"suspended": "maxime",
"vendors": [
9
],
"companies": [
7
],
"cost_centers": [
5
],
"stations": [
2
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
POST api/test
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/test" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/test"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Company Endpoints
Display a listing of the companies or search by name, phone number, email, address, city, state, country.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/companies?term=dicta&per_page=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/companies"
);
const params = {
"term": "dicta",
"per_page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 186,
"name": "Barton-Price",
"email": "carter.octavia@skiles.com",
"phone_number": "+1.682.612.8060",
"registration_number": "RC-677961256",
"country": "Iran",
"state": "New York",
"city": "South Tatefurt",
"postcode": "35090",
"address": "10448 Sheridan Extension",
"sector": "cupiditate",
"tin": "863216",
"website": "predovic.com",
"logo": "https://via.placeholder.com/200x200.png/00eedd?text=logo+velit",
"active": true,
"on_loyalty_program": true,
"contact_person_first_name": "Ivah",
"contact_person_lastname": "Turcotte",
"app_uid": "6a47ac1485051",
"created_at": "2026-07-03T12:33:24.000000Z",
"updated_at": "2026-07-03T12:33:24.000000Z",
"permissions": []
},
{
"id": 187,
"name": "Berge Ltd",
"email": "renner.lorna@reichert.com",
"phone_number": "+15076949895",
"registration_number": "RC-520827680",
"country": "Western Sahara",
"state": "Oklahoma",
"city": "Jaststad",
"postcode": "68482-9063",
"address": "49970 Padberg Parkways Apt. 909",
"sector": "sit",
"tin": "530776",
"website": "lesch.com",
"logo": "https://via.placeholder.com/200x200.png/003300?text=logo+quia",
"active": true,
"on_loyalty_program": false,
"contact_person_first_name": "Baylee",
"contact_person_lastname": "Muller",
"app_uid": "6a47ac1488036",
"created_at": "2026-07-03T12:33:24.000000Z",
"updated_at": "2026-07-03T12:33:24.000000Z",
"permissions": []
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new company
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/companies" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "name=quam" \
--form "phone_number=ducimus" \
--form "tin=35.22709755" \
--form "email=franecki.ezequiel@example.net" \
--form "registration_number=fugit" \
--form "country=deserunt" \
--form "state=fugit" \
--form "city=laborum" \
--form "postcode=53375385.2063" \
--form "address=optio" \
--form "sector=quis" \
--form "website=https://www.muller.com/voluptates-reprehenderit-fugiat-laborum-natus" \
--form "active=" \
--form "on_loyalty_program=1" \
--form "loyalty_points_by_group=" \
--form "loyalty_reward_percentage=728919254" \
--form "loyalty_reward_points=42.40243" \
--form "loyalty_min_purchase_amount=156627966.60575" \
--form "loyalty_min_point=4.949" \
--form "contact_person_first_name=ut" \
--form "contact_person_lastname=incidunt" \
--form "permission_ids[]=neque" \
--form "logo=@/tmp/phpi415vec0gpjmfelYYJJ" const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/companies"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('name', 'quam');
body.append('phone_number', 'ducimus');
body.append('tin', '35.22709755');
body.append('email', 'franecki.ezequiel@example.net');
body.append('registration_number', 'fugit');
body.append('country', 'deserunt');
body.append('state', 'fugit');
body.append('city', 'laborum');
body.append('postcode', '53375385.2063');
body.append('address', 'optio');
body.append('sector', 'quis');
body.append('website', 'https://www.muller.com/voluptates-reprehenderit-fugiat-laborum-natus');
body.append('active', '');
body.append('on_loyalty_program', '1');
body.append('loyalty_points_by_group', '');
body.append('loyalty_reward_percentage', '728919254');
body.append('loyalty_reward_points', '42.40243');
body.append('loyalty_min_purchase_amount', '156627966.60575');
body.append('loyalty_min_point', '4.949');
body.append('contact_person_first_name', 'ut');
body.append('contact_person_lastname', 'incidunt');
body.append('permission_ids[]', 'neque');
body.append('logo', document.querySelector('input[name="logo"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 188,
"name": "Botsford Group",
"email": "nbuckridge@schumm.com",
"phone_number": "+1-801-562-6162",
"registration_number": "RC-295832045",
"country": "Hong Kong",
"state": "Arizona",
"city": "Beiermouth",
"postcode": "33896-1602",
"address": "21327 Goodwin Isle Apt. 638",
"sector": "amet",
"tin": "591477",
"website": "davis.com",
"logo": "https://via.placeholder.com/200x200.png/0077ff?text=logo+magni",
"active": true,
"on_loyalty_program": true,
"contact_person_first_name": "Selena",
"contact_person_lastname": "Kirlin",
"app_uid": "6a47ac148f25b",
"created_at": "2026-07-03T12:33:24.000000Z",
"updated_at": "2026-07-03T12:33:24.000000Z",
"permissions": []
}
}
Received response:
Request failed with error:
Show a specified company.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/companies/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/companies/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 189,
"name": "Hintz Inc",
"email": "shyann93@koss.biz",
"phone_number": "1-563-542-4741",
"registration_number": "RC-862560692",
"country": "Jordan",
"state": "Michigan",
"city": "Weissnattown",
"postcode": "86946-1720",
"address": "38002 Sawayn Brook",
"sector": "nostrum",
"tin": "600002",
"website": "altenwerth.biz",
"logo": "https://via.placeholder.com/200x200.png/000022?text=logo+sint",
"active": true,
"on_loyalty_program": true,
"contact_person_first_name": "Arch",
"contact_person_lastname": "Berge",
"app_uid": "6a47ac14916d4",
"created_at": "2026-07-03T12:33:24.000000Z",
"updated_at": "2026-07-03T12:33:24.000000Z",
"permissions": []
}
}
Received response:
Request failed with error:
Update the specified company
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/companies/5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "name=neque" \
--form "phone_number=nulla" \
--form "tin=14134845.1" \
--form "email=denesik.thad@example.net" \
--form "registration_number=enim" \
--form "country=laudantium" \
--form "state=sit" \
--form "city=earum" \
--form "postcode=0.67381" \
--form "address=in" \
--form "sector=nisi" \
--form "website=http://www.romaguera.com/deserunt-tempore-at-nobis-pariatur-inventore-qui" \
--form "active=1" \
--form "on_loyalty_program=" \
--form "loyalty_points_by_group=" \
--form "loyalty_reward_percentage=14534" \
--form "loyalty_reward_points=577946253.164" \
--form "loyalty_min_purchase_amount=37612.4616" \
--form "loyalty_min_point=121.9884" \
--form "contact_person_first_name=dignissimos" \
--form "contact_person_lastname=nisi" \
--form "permission_ids[]=consequuntur" \
--form "logo=@/tmp/phpevb6f6ev3860bKZsXwN" const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/companies/5"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('name', 'neque');
body.append('phone_number', 'nulla');
body.append('tin', '14134845.1');
body.append('email', 'denesik.thad@example.net');
body.append('registration_number', 'enim');
body.append('country', 'laudantium');
body.append('state', 'sit');
body.append('city', 'earum');
body.append('postcode', '0.67381');
body.append('address', 'in');
body.append('sector', 'nisi');
body.append('website', 'http://www.romaguera.com/deserunt-tempore-at-nobis-pariatur-inventore-qui');
body.append('active', '1');
body.append('on_loyalty_program', '');
body.append('loyalty_points_by_group', '');
body.append('loyalty_reward_percentage', '14534');
body.append('loyalty_reward_points', '577946253.164');
body.append('loyalty_min_purchase_amount', '37612.4616');
body.append('loyalty_min_point', '121.9884');
body.append('contact_person_first_name', 'dignissimos');
body.append('contact_person_lastname', 'nisi');
body.append('permission_ids[]', 'consequuntur');
body.append('logo', document.querySelector('input[name="logo"]').files[0]);
fetch(url, {
method: "PUT",
headers,
body,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 190,
"name": "Jaskolski-Koch",
"email": "skiles.adelia@lang.com",
"phone_number": "+1 (479) 529-0528",
"registration_number": "RC-275374146",
"country": "Bermuda",
"state": "Nebraska",
"city": "Ronaldochester",
"postcode": "65405-5580",
"address": "8062 Danny Pines Suite 723",
"sector": "voluptas",
"tin": "882923",
"website": "carroll.com",
"logo": "https://via.placeholder.com/200x200.png/00ffee?text=logo+quasi",
"active": true,
"on_loyalty_program": false,
"contact_person_first_name": "Annabelle",
"contact_person_lastname": "Harris",
"app_uid": "6a47ac14964b5",
"created_at": "2026-07-03T12:33:24.000000Z",
"updated_at": "2026-07-03T12:33:24.000000Z",
"permissions": []
}
}
Received response:
Request failed with error:
Delete a company
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/companies/14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/companies/14"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the company user or search by name, phone number, email, card last four digits, company name.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/company_users?company_id=3&per_page=7&term=quas" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_users"
);
const params = {
"company_id": "3",
"per_page": "7",
"term": "quas",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"title": "Mr.",
"name": "Prof. Sandrine Luettgen DDS",
"email": "ocronin@example.com",
"phone": "+1.662.893.1755",
"avatar": "https://via.placeholder.com/200x200.png/00cc22?text=avatar+ducimus",
"username": "brenda75",
"gender": "Male",
"newsletter": true,
"active": true,
"card_brand": "MasterCard",
"card_last_four": "2168",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 358,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 28,
"name": "delete user"
},
{
"id": 29,
"name": "view payment"
},
{
"id": 63,
"name": "request delete"
},
{
"id": 92,
"name": "attendant admin"
},
{
"id": 93,
"name": "testing"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
},
{
"title": "Miss",
"name": "Chaim Thiel",
"email": "benny.hackett@example.org",
"phone": "601.785.3796",
"avatar": "https://via.placeholder.com/200x200.png/008877?text=avatar+porro",
"username": "jamaal.little",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "Discover Card",
"card_last_four": "0671",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 359,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 12,
"name": "delete company"
},
{
"id": 43,
"name": "fund user wallet"
},
{
"id": 44,
"name": "view wallet history"
},
{
"id": 45,
"name": "delete wallet history"
},
{
"id": 61,
"name": "request create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new company user
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/company_users?company_id=1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"qui\",
\"phone\": 5556.6,
\"email\": \"daniel.michele@example.net\",
\"username\": \"fuga\",
\"gender\": \"qui\",
\"newsletter\": true,
\"active\": true,
\"is_admin\": true,
\"is_vendor\": true,
\"suspended\": false,
\"vendors\": [
9
],
\"companies\": [
8
],
\"cost_centers\": [
15
],
\"stations\": [
18
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_users"
);
const params = {
"company_id": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "qui",
"phone": 5556.6,
"email": "daniel.michele@example.net",
"username": "fuga",
"gender": "qui",
"newsletter": true,
"active": true,
"is_admin": true,
"is_vendor": true,
"suspended": false,
"vendors": [
9
],
"companies": [
8
],
"cost_centers": [
15
],
"stations": [
18
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Prof.",
"name": "Kaya Ferry",
"email": "zkiehn@example.net",
"phone": "+1-828-459-9969",
"avatar": "https://via.placeholder.com/200x200.png/00ffdd?text=avatar+aut",
"username": "ywilkinson",
"gender": "Female",
"newsletter": true,
"active": true,
"card_brand": "Visa",
"card_last_four": "8082",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 360,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 22,
"name": "create fleet"
},
{
"id": 23,
"name": "update fleet"
},
{
"id": 44,
"name": "view wallet history"
},
{
"id": 72,
"name": "destination_allocation view"
},
{
"id": 86,
"name": "trip allocation create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Show a specified company user.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/company_users/2?company_id=15" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_users/2"
);
const params = {
"company_id": "15",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Prof.",
"name": "Erwin VonRueden",
"email": "caitlyn17@example.org",
"phone": "+1-512-210-9643",
"avatar": "https://via.placeholder.com/200x200.png/00cc99?text=avatar+mollitia",
"username": "dzemlak",
"gender": "Female",
"newsletter": true,
"active": true,
"card_brand": "JCB",
"card_last_four": "5846",
"is_vendor": false,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 361,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 8,
"name": "delete acl"
},
{
"id": 14,
"name": "create company group"
},
{
"id": 30,
"name": "create payment"
},
{
"id": 32,
"name": "delete payment"
},
{
"id": 59,
"name": "restore user"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Update the specified company user without detaching the user from other companies
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/company_users/9?company_id=12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"cum\",
\"phone\": 94.57,
\"email\": \"aaron.mohr@example.org\",
\"username\": \"necessitatibus\",
\"gender\": \"dolor\",
\"newsletter\": true,
\"active\": false,
\"is_admin\": true,
\"is_vendor\": false,
\"suspended\": false,
\"vendors\": [
1
],
\"companies\": [
10
],
\"cost_centers\": [
9
],
\"stations\": [
11
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_users/9"
);
const params = {
"company_id": "12",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "cum",
"phone": 94.57,
"email": "aaron.mohr@example.org",
"username": "necessitatibus",
"gender": "dolor",
"newsletter": true,
"active": false,
"is_admin": true,
"is_vendor": false,
"suspended": false,
"vendors": [
1
],
"companies": [
10
],
"cost_centers": [
9
],
"stations": [
11
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 191,
"name": "Bins-Hauck",
"email": "umorissette@senger.com",
"phone_number": "+16612786378",
"registration_number": "RC-665284376",
"country": "Pakistan",
"state": "Kentucky",
"city": "Guillermoshire",
"postcode": "32766",
"address": "82860 Gerard Rapids Apt. 543",
"sector": "dignissimos",
"tin": "044790",
"website": "blick.info",
"logo": "https://via.placeholder.com/200x200.png/00bb88?text=logo+ut",
"active": true,
"on_loyalty_program": true,
"contact_person_first_name": "Maribel",
"contact_person_lastname": "Cassin",
"app_uid": "6a47ac14b0dba",
"created_at": "2026-07-03T12:33:24.000000Z",
"updated_at": "2026-07-03T12:33:24.000000Z",
"permissions": []
}
}
Received response:
Request failed with error:
Detach a user from a company
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/company_users/1?company_id=18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_users/1"
);
const params = {
"company_id": "18",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the company permission or search by permission name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/company_permissions?company_id=6&per_page=4&term=quisquam" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_permissions"
);
const params = {
"company_id": "6",
"per_page": "4",
"term": "quisquam",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"name": "view",
"module": "General",
"guard_name": "api",
"created_at": null,
"updated_at": null
},
{
"id": 1,
"name": "view",
"module": "General",
"guard_name": "api",
"created_at": null,
"updated_at": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Synchronise company permissions
requires authentication
Example request:
curl --request PATCH \
"https://cupidapiv2.smartflowtech.org/api/company_permissions?company_id=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"permission_ids\": [
\"ad\"
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_permissions"
);
const params = {
"company_id": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"permission_ids": [
"ad"
]
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
GET api/company_permissions/{permission_id}
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/company_permissions/error" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_permissions/error"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=cqhuKEoYl4WjXqC5vIry2fVfG0OYXsPhaTj9vaaO; expires=Fri, 03 Jul 2026 14:33:24 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/company_permissions/error could not be found."
}
Received response:
Request failed with error:
Detach a permission from a company
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/company_permissions/14?company_id=20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_permissions/14"
);
const params = {
"company_id": "20",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Company Station Endpoints
Display a listing of the stations or search by name, email, address, state, country.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/stations?term=ipsum&per_page=17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/stations"
);
const params = {
"term": "ipsum",
"per_page": "17",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Okuneva PLC",
"email": "aubrey.murphy@kohler.com",
"phone_number": "847-798-4942",
"country": "Benin",
"state": "Arkansas",
"city": "Scottiemouth",
"postcode": "63566-1799",
"address": "29269 Macy Points",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 27
},
{
"name": "Kling, Waters and Howell",
"email": "wolff.delta@sanford.net",
"phone_number": "283.993.7119",
"country": "Liechtenstein",
"state": "Pennsylvania",
"city": "Port Shawn",
"postcode": "01913",
"address": "467 Kennedy Vista",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 28
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new station
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/stations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"similique\",
\"phone_number\": 3932.25,
\"email\": \"gsauer@example.com\",
\"country\": \"aut\",
\"state\": \"omnis\",
\"city\": \"facere\",
\"postcode\": 65.034009979,
\"address\": \"tempora\",
\"vendor_id\": 4
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/stations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "similique",
"phone_number": 3932.25,
"email": "gsauer@example.com",
"country": "aut",
"state": "omnis",
"city": "facere",
"postcode": 65.034009979,
"address": "tempora",
"vendor_id": 4
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Crooks and Sons",
"email": "elakin@howe.com",
"phone_number": "+1 (352) 929-8803",
"country": "Afghanistan",
"state": "Alaska",
"city": "East Damien",
"postcode": "03393",
"address": "252 Margarita Gateway Suite 209",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 29
}
}
Received response:
Request failed with error:
Show a specified station.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/stations/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/stations/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Hudson, Klein and Cormier",
"email": "iva26@spencer.biz",
"phone_number": "(650) 672-6337",
"country": "Malta",
"state": "Idaho",
"city": "Dejuantown",
"postcode": "62799-7231",
"address": "29693 Schowalter Loaf",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 30
}
}
Received response:
Request failed with error:
Update the specified station
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/stations/12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"nisi\",
\"phone_number\": 2863.684,
\"email\": \"kgrimes@example.org\",
\"country\": \"assumenda\",
\"state\": \"nulla\",
\"city\": \"aliquam\",
\"postcode\": 3.8930818,
\"address\": \"voluptas\",
\"vendor_id\": 20
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/stations/12"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "nisi",
"phone_number": 2863.684,
"email": "kgrimes@example.org",
"country": "assumenda",
"state": "nulla",
"city": "aliquam",
"postcode": 3.8930818,
"address": "voluptas",
"vendor_id": 20
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Fahey-Streich",
"email": "quigley.valentine@donnelly.com",
"phone_number": "+17127184534",
"country": "Cote d'Ivoire",
"state": "Mississippi",
"city": "New Christianaberg",
"postcode": "51476-0459",
"address": "802 O'Reilly Track",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 31
}
}
Received response:
Request failed with error:
Delete a station
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/stations/14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/stations/14"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Roob-Macejkovic",
"email": "rmurray@kuphal.org",
"phone_number": "+1-281-728-7128",
"country": "United Arab Emirates",
"state": "Maryland",
"city": "West Stanstad",
"postcode": "65156",
"address": "76357 Doyle Hollow",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 32
}
}
Received response:
Request failed with error:
Display a list of stations by vendor
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_stations/10?per_page=10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_stations/10"
);
const params = {
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Ferry Ltd",
"email": "jailyn64@hayes.org",
"phone_number": "850-207-8821",
"country": "Egypt",
"state": "Florida",
"city": "North Hallie",
"postcode": "10606",
"address": "5936 Kassulke Tunnel Apt. 418",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 33
},
{
"name": "Cormier Ltd",
"email": "pacocha.myriam@fritsch.com",
"phone_number": "484-632-3668",
"country": "Saudi Arabia",
"state": "North Carolina",
"city": "West Ethelyn",
"postcode": "24918",
"address": "792 Torphy Roads Apt. 892",
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 34
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Cost Center Endpoints
Display a listing of the cost centers or search by name, phone number, email, address, city, state, country.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/cost_centers?term=sunt&per_page=1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cost_centers"
);
const params = {
"term": "sunt",
"per_page": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Balistreri-Howell",
"email": "christiansen.zechariah@farrell.biz",
"phone_number": "+1-601-707-4226",
"company_id": 61,
"daily_purchase_budget": 10867891.47,
"weekly_purchase_budget": 28,
"monthly_purchase_budget": 21957572.1,
"license_type": "449osl",
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 65,
"company": {
"id": 61,
"name": "NIGERIA BREWERIES PLC",
"email": "MLecjmM@tolaram.com",
"phone_number": "182-520-7067",
"registration_number": "XvPWE",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "6887251",
"website": "https://www.tolaram.com",
"logo": null,
"active": true,
"on_loyalty_program": false,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "BWbGGcpVEm4H74p",
"created_at": "2023-09-19T16:09:18.000000Z",
"updated_at": "2023-09-19T16:09:18.000000Z",
"permissions": []
},
"users": [
{
"id": 2,
"title": "Mr",
"name": "Victor Chinonso Ugwu",
"email": "victor.ugwu@smartflowtech.com",
"phone": "08136834496",
"avatar": null,
"username": "victor",
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": "332418",
"created_at": "2023-09-19T12:14:06.000000Z",
"updated_at": "2025-11-15T22:59:04.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 65,
"user_id": 2
}
},
{
"id": 38,
"title": "Mrs",
"name": "Kalu Chinonso",
"email": "kchukwunonso.bhn@gmail.com",
"phone": "713-761-9803",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=kalu.chinonso_cXc",
"username": "kalu.chinonso_cXc",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "3980866",
"created_at": "2023-09-20T00:44:17.000000Z",
"updated_at": "2023-09-20T00:44:17.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 65,
"user_id": 38
}
},
{
"id": 77,
"title": "Mr.",
"name": "Joseph Anajekwu",
"email": "joseph.anajekwu@smartflowtech.com",
"phone": "1989325089",
"avatar": null,
"username": "joseph.anajekwu",
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-20T10:26:17.000000Z",
"updated_at": "2023-12-04T14:20:41.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 65,
"user_id": 77
}
},
{
"id": 82,
"title": "Mr",
"name": "QA Dispatcher",
"email": "qa_dispatcher@smartflowtech.com",
"phone": "251-056-8408",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=qa.dispatcher",
"username": "qa.dispatcher",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "4792406",
"created_at": "2023-09-28T13:53:43.000000Z",
"updated_at": "2023-09-28T13:53:43.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 65,
"user_id": 82
}
},
{
"id": 98,
"title": null,
"name": "Provident voluptate",
"email": "duse@mailinator.com",
"phone": "324567677",
"avatar": null,
"username": "Aliquam explicabo N",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-11-29T16:57:16.000000Z",
"updated_at": "2023-11-30T15:51:28.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 65,
"user_id": 98
}
}
]
},
{
"name": "Pacocha-Raynor",
"email": "ubradtke@rohan.org",
"phone_number": "623-366-7075",
"company_id": 166,
"daily_purchase_budget": 5283.81,
"weekly_purchase_budget": 2727966.61,
"monthly_purchase_budget": 677.52,
"license_type": "906shm",
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 66,
"company": {
"id": 166,
"name": "Frontend Devs Azeez",
"email": "frontend@mailinator.dev",
"phone_number": "07272828828282",
"registration_number": "4564433",
"country": "nigeria",
"state": "Bauchi",
"city": "Gamawa",
"postcode": null,
"address": "Hilltop",
"sector": "finance",
"tin": "665333",
"website": "https://frontend.dev",
"logo": null,
"active": true,
"on_loyalty_program": false,
"contact_person_first_name": "Fromtemd",
"contact_person_lastname": "Tester",
"app_uid": "6876a164b33e6",
"created_at": "2025-07-15T18:43:48.000000Z",
"updated_at": "2025-09-03T09:10:00.000000Z",
"permissions": [
{
"id": 89,
"name": "update transaction id",
"module": "Fleet",
"guard_name": "api",
"created_at": "2023-10-23T13:07:49.000000Z",
"updated_at": "2023-10-23T13:07:49.000000Z",
"pivot": {
"company_id": 166,
"permission_id": 89
}
},
{
"id": 90,
"name": "view vendor companies",
"module": "Fleet",
"guard_name": "api",
"created_at": "2023-10-23T13:07:49.000000Z",
"updated_at": "2023-10-23T13:07:49.000000Z",
"pivot": {
"company_id": 166,
"permission_id": 90
}
},
{
"id": 92,
"name": "attendant admin",
"module": "Fleet",
"guard_name": "api",
"created_at": "2023-10-23T13:07:49.000000Z",
"updated_at": "2023-10-23T13:07:49.000000Z",
"pivot": {
"company_id": 166,
"permission_id": 92
}
}
]
},
"users": [
{
"id": 76,
"title": "Mr.",
"name": "Muhammad Salihu",
"email": "muhammad.salihu@smartflowtech.com",
"phone": "480-412-6627",
"avatar": null,
"username": "muhammad.salihu",
"gender": null,
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-20T10:19:49.000000Z",
"updated_at": "2023-09-20T10:19:49.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 66,
"user_id": 76
}
},
{
"id": 84,
"title": "Mr",
"name": "QA Approver",
"email": "qa_approver@smartflowtech.com",
"phone": "686-090-8671",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=qa.approver",
"username": "qa.approver",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "2182103",
"created_at": "2023-09-28T14:05:36.000000Z",
"updated_at": "2023-09-28T14:05:36.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 66,
"user_id": 84
}
},
{
"id": 92,
"title": null,
"name": "Victor Test Account",
"email": "victortest@test.com",
"phone": "09098776544",
"avatar": null,
"username": "Test account",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-11-23T15:42:31.000000Z",
"updated_at": "2023-11-23T15:42:31.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 66,
"user_id": 92
}
},
{
"id": 166,
"title": "Mr",
"name": "DofuserUser",
"email": "dofuser@mailinator.com",
"phone": "03838488551",
"avatar": null,
"username": "DofuserUser",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-12-19T11:32:04.000000Z",
"updated_at": "2023-12-19T11:32:04.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 66,
"user_id": 166
}
},
{
"id": 212,
"title": null,
"name": "consequatur",
"email": "paduckek.delfina@example.com",
"phone": "03478028234",
"avatar": null,
"username": "dquki",
"gender": "Female",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2024-02-29T22:44:21.000000Z",
"updated_at": "2024-02-29T22:44:21.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 66,
"user_id": 212
}
}
]
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new cost center
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/cost_centers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"autem\",
\"phone_number\": 210.479403,
\"email\": \"expedita\",
\"company_id\": 14,
\"daily_purchase_budget\": 52211609.3384,
\"weekly_purchase_budget\": 79635095.19191717,
\"monthly_purchase_budget\": 229656.41406,
\"license_type\": \"ipsum\",
\"active\": false,
\"user_ids\": [
\"quis\"
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cost_centers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "autem",
"phone_number": 210.479403,
"email": "expedita",
"company_id": 14,
"daily_purchase_budget": 52211609.3384,
"weekly_purchase_budget": 79635095.19191717,
"monthly_purchase_budget": 229656.41406,
"license_type": "ipsum",
"active": false,
"user_ids": [
"quis"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Friesen, Turcotte and Nader",
"email": "jbogisich@tromp.com",
"phone_number": "+1 (530) 601-0092",
"company_id": 43,
"daily_purchase_budget": 19938418.29,
"weekly_purchase_budget": 21310215.32,
"monthly_purchase_budget": 507281768.95,
"license_type": "369pob",
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 67,
"company": {
"id": 43,
"name": "KINGS FLOUR MILL",
"email": "DazWcRR@tolaram.com",
"phone_number": "999-731-7392",
"registration_number": "62PuM",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "7959581",
"website": "https://www.tolaram.com",
"logo": null,
"active": true,
"on_loyalty_program": false,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "sQMPY0IV6Z0HZ1T",
"created_at": "2023-09-19T16:08:06.000000Z",
"updated_at": "2023-09-19T16:08:06.000000Z",
"permissions": []
},
"users": [
{
"id": 37,
"title": "Mr",
"name": "Dan Kpama Samuel",
"email": "samdan71@gmail.com",
"phone": "537-378-0743",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=dan.kpama.samuel_T1z",
"username": "dan.kpama.samuel_T1z",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "9853504",
"created_at": "2023-09-20T00:44:17.000000Z",
"updated_at": "2023-09-20T00:44:17.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 67,
"user_id": 37
}
},
{
"id": 44,
"title": "Mrs",
"name": "Oki Wunmi",
"email": "preciouomowunmi@gmail.com",
"phone": "151-115-1486",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=oki.wunmi_d5m",
"username": "oki.wunmi_d5m",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "8477675",
"created_at": "2023-09-20T00:44:21.000000Z",
"updated_at": "2023-09-20T00:44:21.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 67,
"user_id": 44
}
},
{
"id": 96,
"title": null,
"name": "Aid Us Azeez",
"email": "ainmn@us.com",
"phone": "9748495989889",
"avatar": null,
"username": "AUNMK",
"gender": "Male",
"newsletter": 0,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-11-29T15:29:05.000000Z",
"updated_at": "2025-11-15T00:17:17.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 67,
"user_id": 96
}
},
{
"id": 99,
"title": null,
"name": "Et provident odio l",
"email": "bajo@mailinator.com",
"phone": "87649644756",
"avatar": null,
"username": "Voluptatem quis lib",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-11-30T10:05:00.000000Z",
"updated_at": "2023-11-30T10:06:28.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 67,
"user_id": 99
}
},
{
"id": 221,
"title": "Mr",
"name": "Jamiu Adeyemi",
"email": "jamiu.adeyemi@smartflowtech.com",
"phone": "9492186921",
"avatar": null,
"username": "jamiu.adeyemi",
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2024-04-25T14:20:29.000000Z",
"updated_at": "2024-06-07T14:12:15.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 67,
"user_id": 221
}
}
]
}
}
Received response:
Request failed with error:
Show a specified cost center.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/cost_centers/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cost_centers/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Huels and Sons",
"email": "shad.reilly@bednar.org",
"phone_number": "+1.209.431.0762",
"company_id": 47,
"daily_purchase_budget": 63.94,
"weekly_purchase_budget": 16.26,
"monthly_purchase_budget": 34.17,
"license_type": "100ktc",
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 68,
"company": {
"id": 47,
"name": "MAGIK - MULTIPRO",
"email": "rbOhhDP@tolaram.com",
"phone_number": "197-146-5409",
"registration_number": "OI80V",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "6270900",
"website": "https://www.tolaram.com",
"logo": null,
"active": true,
"on_loyalty_program": false,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "Jf3pu0i34IFcUNR",
"created_at": "2023-09-19T16:08:09.000000Z",
"updated_at": "2023-09-19T16:08:09.000000Z",
"permissions": []
},
"users": [
{
"id": 2,
"title": "Mr",
"name": "Victor Chinonso Ugwu",
"email": "victor.ugwu@smartflowtech.com",
"phone": "08136834496",
"avatar": null,
"username": "victor",
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": "332418",
"created_at": "2023-09-19T12:14:06.000000Z",
"updated_at": "2025-11-15T22:59:04.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 68,
"user_id": 2
}
},
{
"id": 38,
"title": "Mrs",
"name": "Kalu Chinonso",
"email": "kchukwunonso.bhn@gmail.com",
"phone": "713-761-9803",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=kalu.chinonso_cXc",
"username": "kalu.chinonso_cXc",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "3980866",
"created_at": "2023-09-20T00:44:17.000000Z",
"updated_at": "2023-09-20T00:44:17.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 68,
"user_id": 38
}
},
{
"id": 49,
"title": "Mrs",
"name": "Adeleye Damilola Grace",
"email": "adeleyegrace1999@gmail.com",
"phone": "442-765-7263",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=adeleye.damilola.grace_Ew9",
"username": "adeleye.damilola.grace_Ew9",
"gender": "Female",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "9708755",
"created_at": "2023-09-20T00:44:26.000000Z",
"updated_at": "2023-09-20T00:44:26.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 68,
"user_id": 49
}
},
{
"id": 91,
"title": "Mr",
"name": "Miracle Ukaka",
"email": "miracle.ukaka@smartflowtech.org",
"phone": "08108392892",
"avatar": null,
"username": "Miracle lala",
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 1,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-11-23T10:37:52.000000Z",
"updated_at": "2023-11-23T10:37:52.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 68,
"user_id": 91
}
},
{
"id": 303,
"title": null,
"name": "Afolayan Maria",
"email": "aafolayan409@gmail.com",
"phone": "09011234523",
"avatar": null,
"username": "Ms",
"gender": "Female",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2025-08-06T08:17:56.000000Z",
"updated_at": "2025-08-06T11:43:30.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 68,
"user_id": 303
}
}
]
}
}
Received response:
Request failed with error:
Update the specified cost center
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/cost_centers/1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"repellendus\",
\"phone_number\": 56788303,
\"email\": \"omnis\",
\"company_id\": 12,
\"daily_purchase_budget\": 0.6,
\"weekly_purchase_budget\": 15.182285,
\"monthly_purchase_budget\": 19691259.6054416,
\"license_type\": \"exercitationem\",
\"active\": true,
\"user_ids\": [
\"distinctio\"
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cost_centers/1"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "repellendus",
"phone_number": 56788303,
"email": "omnis",
"company_id": 12,
"daily_purchase_budget": 0.6,
"weekly_purchase_budget": 15.182285,
"monthly_purchase_budget": 19691259.6054416,
"license_type": "exercitationem",
"active": true,
"user_ids": [
"distinctio"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Schulist-Von",
"email": "virgie22@wintheiser.com",
"phone_number": "1-248-412-9550",
"company_id": 96,
"daily_purchase_budget": 37857317.18,
"weekly_purchase_budget": 22112.29,
"monthly_purchase_budget": 1152.02,
"license_type": "323pnu",
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 69,
"company": {
"id": 96,
"name": "EXTERNAL",
"email": "leAgtPP@tolaram.com",
"phone_number": "892-699-2133",
"registration_number": "uxTgA",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "8205719",
"website": "https://www.tolaram.com",
"logo": null,
"active": true,
"on_loyalty_program": false,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "iRcHJVCPw15pW7x",
"created_at": "2023-09-19T19:09:48.000000Z",
"updated_at": "2023-09-19T19:09:48.000000Z",
"permissions": []
},
"users": [
{
"id": 3,
"title": "Eng",
"name": "Super Admin",
"email": "super_admin_0X0@smartflowtech.com",
"phone": "+1 (458) 549-8512",
"avatar": null,
"username": "user_one",
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-19T12:25:41.000000Z",
"updated_at": "2023-09-19T12:25:41.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 69,
"user_id": 3
}
},
{
"id": 19,
"title": "Mr",
"name": "Estifanos Motima",
"email": "estifanos.bhn@tolaram.com",
"phone": "227-210-8248",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=estifanos.motima_a9p",
"username": "estifanos.motima_a9p",
"gender": "Female",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "1391694",
"created_at": "2023-09-20T00:44:05.000000Z",
"updated_at": "2023-09-20T00:44:05.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 69,
"user_id": 19
}
},
{
"id": 38,
"title": "Mrs",
"name": "Kalu Chinonso",
"email": "kchukwunonso.bhn@gmail.com",
"phone": "713-761-9803",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=kalu.chinonso_cXc",
"username": "kalu.chinonso_cXc",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "3980866",
"created_at": "2023-09-20T00:44:17.000000Z",
"updated_at": "2023-09-20T00:44:17.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 69,
"user_id": 38
}
},
{
"id": 48,
"title": "Mrs",
"name": "Odekunle Opeyemi Christianah",
"email": "opeyemichristaianah17@gmail.com",
"phone": "879-309-3423",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=odekunle.opeyemi.christianah_hNP",
"username": "odekunle.opeyemi.christianah_hNP",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "9261873",
"created_at": "2023-09-20T00:44:25.000000Z",
"updated_at": "2023-09-20T00:44:25.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 69,
"user_id": 48
}
},
{
"id": 283,
"title": null,
"name": "Emmanuel Olaoluwa",
"email": "emmanuel.adigun@smartflowtech.com",
"phone": "09123456",
"avatar": null,
"username": null,
"gender": "male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2025-06-24T13:55:09.000000Z",
"updated_at": "2025-06-24T14:15:40.000000Z",
"deleted_at": null,
"pivot": {
"cost_center_id": 69,
"user_id": 283
}
}
]
}
}
Received response:
Request failed with error:
Delete a cost center
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/cost_centers/7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cost_centers/7"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Endpoints
Get the latest transactions. Return 10 items if per_page is not provided
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/latest_transactions?per_page=5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/latest_transactions"
);
const params = {
"per_page": "5",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"ref": "cupid-pay-1553285470",
"company_id": 70,
"company_wallet_id": 4,
"vendor_id": 34,
"company_temps_id": 70,
"initiator_id": 42,
"payment_mode_id": 3,
"status": "initiated",
"total_charged_amount": 75181656.14,
"original_amount": 2594.66,
"gateway_charged": 48573.12,
"wallet_amount": 10.84,
"amount_paid": 431447.76,
"fee_paid": 619,
"webhook_confirmed": null,
"date_webhook_confirmed": {
"date": "1988-08-15 21:08:51.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"date_transaction_verified": {
"date": "1978-03-26 06:12:12.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"verification_means": "sheduled_job",
"payment_cause": "customer_onboarding",
"initiating_users_name": "Awe Akinniyi",
"paystack_subaccount_code": 317185486,
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 383
},
{
"ref": "cupid-pay-1038687071",
"company_id": 85,
"company_wallet_id": 3,
"vendor_id": 26,
"company_temps_id": 85,
"initiator_id": 96,
"payment_mode_id": 3,
"status": "successful",
"total_charged_amount": 52919.91,
"original_amount": 653719179.37,
"gateway_charged": 4631.03,
"wallet_amount": 1429067.79,
"amount_paid": 6.34,
"fee_paid": 9446.05,
"webhook_confirmed": null,
"date_webhook_confirmed": {
"date": "2024-08-10 00:57:25.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"date_transaction_verified": {
"date": "2000-08-15 05:51:16.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"verification_means": "web_callback",
"payment_cause": "customer_onboarding",
"initiating_users_name": "Aid Us Azeez",
"paystack_subaccount_code": 347972526,
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 384
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 10,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Get the latest fuel purchases. Return 10 items if per_page is not provided
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/latest_fuel_purchases?per_page=14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/latest_fuel_purchases"
);
const params = {
"per_page": "14",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company_id": 11,
"vendor_id": 1,
"user_id": 67,
"cost_center_id": 9,
"nfctag_id": 217,
"driver_id": 156,
"way_bill_number": "WB-1259",
"vendor_station_name": "Lubowitz-Sipes",
"vehicle_plate_number": "sr-352-iw",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 47586901.01,
"volume": 1.97,
"odometer_reading": 4,
"product": "AGO",
"pump": 6,
"selling_price": 3650680.25,
"current_credit_limit": 125417.08,
"attendant": "DEFAULT",
"last_volume_dispensed": 5909.89,
"last_amount_paid": 782810199.33,
"transaction_seq_no": 6746,
"is_balanced": false,
"oem_station_id": 7,
"sm_station_id": 4,
"balance_refunded": 79696558,
"tapnet_amount": 81695793.19,
"tapnet_volume": 4.47,
"tapnet_transaction_time": {
"date": "2006-03-19 09:22:27.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "NO FCC MODE",
"mac_address": "91:34:28:1D:2D:87",
"release_token": "06",
"is_fdc_value_fill": false,
"fdc_volume": 88064242.8,
"fdc_amount": 193614246.86,
"last_tsn_source": null,
"verified_volume": 1.05,
"verified_amount": 213203.01,
"reconciliation_source": "TAPNET",
"one_time_auth_id": 292,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 896,
"driver": {
"id": 156,
"company_id": 11,
"fullname": "IDRIS ABUBAKER SALEH",
"address": "BHN, Mowe Ogun State",
"phone_number": "774-725-9037",
"email": "niXhpjo@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:32:47.000000Z",
"updated_at": "2023-09-19T18:32:47.000000Z",
"deleted_at": null
},
"company": {
"id": 11,
"name": "CHECKERS AFRICA LIMITED",
"email": "aMtLKHh@tolaram.com",
"phone_number": "855-503-9452",
"registration_number": "kSFpr",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "2647897",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "klzImp5Sz20h5e3",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:50.000000Z",
"updated_at": "2023-09-19T16:07:50.000000Z",
"deleted_at": null
},
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"costCenter": {
"id": 9,
"company_id": 96,
"name": "EXTERNAL",
"email": "tEpio0r@tolaram.com",
"phone_number": "286-553-1174",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:09:49.000000Z",
"updated_at": "2023-09-19T19:09:49.000000Z",
"deleted_at": null
},
"nfcTag": {
"id": 217,
"company_id": 76,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "8047",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7806",
"nfctag_oem_id": "16D35331",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "84351005",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:33:14.000000Z",
"updated_at": "2023-09-19T18:33:14.000000Z",
"deleted_at": null,
"upload_id": null
},
"userWallet": null,
"remark": null
},
{
"company_id": 21,
"vendor_id": 1,
"user_id": 61,
"cost_center_id": 12,
"nfctag_id": 620,
"driver_id": 119,
"way_bill_number": "WB-0904",
"vendor_station_name": "Ledner and Sons",
"vehicle_plate_number": "yz-511-bl",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 0.51,
"volume": 86597639.84,
"odometer_reading": 4,
"product": "AGO",
"pump": 9,
"selling_price": 82.11,
"current_credit_limit": 197.95,
"attendant": "DEFAULT",
"last_volume_dispensed": 9846.95,
"last_amount_paid": 3.19,
"transaction_seq_no": 26620,
"is_balanced": true,
"oem_station_id": 9,
"sm_station_id": 5,
"balance_refunded": 380781.74,
"tapnet_amount": 1574.78,
"tapnet_volume": 5347.22,
"tapnet_transaction_time": {
"date": "2008-03-01 15:37:52.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "NO FCC MODE",
"mac_address": "BD:E3:BE:00:5F:E6",
"release_token": "09",
"is_fdc_value_fill": false,
"fdc_volume": 4.91,
"fdc_amount": 44.68,
"last_tsn_source": null,
"verified_volume": 75018.26,
"verified_amount": 1045444.21,
"reconciliation_source": "TAPNET",
"one_time_auth_id": 506,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 897,
"driver": {
"id": 119,
"company_id": 12,
"fullname": "ABUBAKAR MUHAMMED.A",
"address": "BHN, Mowe Ogun State",
"phone_number": "754-719-7513",
"email": "INlXIRf@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:27:26.000000Z",
"updated_at": "2023-09-19T18:27:26.000000Z",
"deleted_at": null
},
"company": {
"id": 21,
"name": "DEEKAY AND SONS (NIGERIA) LIMITED",
"email": "oCRLjiG@tolaram.com",
"phone_number": "273-530-1850",
"registration_number": "CRFha",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "7744399",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "Q8kV6JZ68oKUSQQ",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:55.000000Z",
"updated_at": "2023-09-19T16:07:55.000000Z",
"deleted_at": null
},
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"costCenter": {
"id": 12,
"company_id": 99,
"name": "FLOUR INTERNAL MOV (PHC)",
"email": "XWjMd0r@tolaram.com",
"phone_number": "169-695-4814",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T20:18:54.000000Z",
"updated_at": "2023-09-19T20:18:54.000000Z",
"deleted_at": null
},
"nfcTag": {
"id": 620,
"company_id": 8,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "2495",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-9828",
"nfctag_oem_id": "91772620",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "91772620",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": "MCPL PH",
"active": 1,
"created_at": "2024-07-02T23:15:30.000000Z",
"updated_at": "2024-07-02T23:15:30.000000Z",
"deleted_at": null,
"upload_id": null
},
"userWallet": null,
"remark": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 10,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Get the top purchasing customer vehicles
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/top_purchasing_vehicles" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/top_purchasing_vehicles"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=AyRvCFP4Pswhvi2ivYfHqbKxtd7tp2QGCWuwOrJc; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/kpi/top_purchasing_vehicles could not be found."
}
Received response:
Request failed with error:
Get the top purchasing customer
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/top_purchasing_customers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/top_purchasing_customers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=QcV173rc4gQRt6ezGFbxDwEp4JQnxBMaVSSy93da; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/kpi/top_purchasing_customers could not be found."
}
Received response:
Request failed with error:
Get vendor last purchases
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/vendor_last_purchases" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/vendor_last_purchases"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=tIM2QY330teqj1r3YB4d8dMBVdFl9peyiIeuv4TJ; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/kpi/vendor_last_purchases could not be found."
}
Received response:
Request failed with error:
Get KPI summary for dashboard
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/summary" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/summary"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=FsFRHJlMWIgzw9N4fFts1hts7BEls3W8VFMGITlL; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/kpi/summary could not be found."
}
Received response:
Request failed with error:
Get Vendor KPI summary for dashboard
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/vendor_summary" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/vendor_summary"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=qacB8OsHseT4Qtp9iQQw1rfqLwaYWGwKYOLApAGA; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/kpi/vendor_summary could not be found."
}
Received response:
Request failed with error:
Get trends of fuel purchase
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/trends_of_purchase" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/trends_of_purchase"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=GMMF5mIpQm2vzySTR4TbOL9es7tsDK8cIYojTDtz; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/kpi/trends_of_purchase could not be found."
}
Received response:
Request failed with error:
Get trends of fuel sale
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/kpi/latest_fuel_sales" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/kpi/latest_fuel_sales"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=4MQYtdc3X1OL7DfPcUcBa3bz4GP8h4S5UGKZXhGz; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/kpi/latest_fuel_sales could not be found."
}
Received response:
Request failed with error:
Display a listing of the FuelPay Transaction or search by mac address, ip address.
requires authentication
Create a new FuelPay Transaction
requires authentication
Show a specified FuelPay Transaction.
requires authentication
Delete a FuelPay Transaction
requires authentication
This endpoint would be used to get the allocated diesel quantity for a given trip.
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/diesel_trip_allocation" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"way_bill_number\": \"ab\",
\"vehicle_id\": 15,
\"company_id\": 3,
\"source_id\": 19,
\"destination_id\": 15,
\"tonnage\": \"voluptatibus\",
\"contract_type\": \"id\",
\"trailer_type\": \"quo\",
\"weight\": \"light\",
\"age\": \"enim\",
\"model\": \"velit\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/diesel_trip_allocation"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"way_bill_number": "ab",
"vehicle_id": 15,
"company_id": 3,
"source_id": 19,
"destination_id": 15,
"tonnage": "voluptatibus",
"contract_type": "id",
"trailer_type": "quo",
"weight": "light",
"age": "enim",
"model": "velit"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of Trip Allocation.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/trip_allocations?term=architecto&contract_type=expedita&company_id=10&source_id=18&active=1&per_page=8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/trip_allocations"
);
const params = {
"term": "architecto",
"contract_type": "expedita",
"company_id": "10",
"source_id": "18",
"active": "1",
"per_page": "8",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"company_id": 92,
"source_id": 180,
"destination_id": 4,
"tonnage": "30",
"trailer_type": "CHECKERED BODY",
"contract_type": "FIXED",
"make": "HOWO",
"weight": "LIGHT",
"age": "NEW",
"diesel_quantity": 441,
"active": true,
"deleted_at": null,
"created_at": "2023-09-19T23:15:07.000000Z",
"updated_at": "2023-09-28T10:15:14.000000Z",
"company_name": "MCPL",
"source_name": "LEKKI",
"destination_name": "ABA"
},
{
"id": 1,
"company_id": 92,
"source_id": 180,
"destination_id": 4,
"tonnage": "30",
"trailer_type": "CHECKERED BODY",
"contract_type": "FIXED",
"make": "HOWO",
"weight": "LIGHT",
"age": "NEW",
"diesel_quantity": 441,
"active": true,
"deleted_at": null,
"created_at": "2023-09-19T23:15:07.000000Z",
"updated_at": "2023-09-28T10:15:14.000000Z",
"company_name": "MCPL",
"source_name": "LEKKI",
"destination_name": "ABA"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Store a new trip allocation
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/trip_allocations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 11,
\"source_id\": 10,
\"destination_id\": 18,
\"tonnage\": \"voluptatem\",
\"trailer_type\": \"similique\",
\"weight\": \"molestiae\",
\"contract_type\": \"floating\",
\"make\": \"asperiores\",
\"age\": \"corrupti\",
\"diesel_quantity\": 2,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/trip_allocations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 11,
"source_id": 10,
"destination_id": 18,
"tonnage": "voluptatem",
"trailer_type": "similique",
"weight": "molestiae",
"contract_type": "floating",
"make": "asperiores",
"age": "corrupti",
"diesel_quantity": 2,
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"company_id": 92,
"source_id": 180,
"destination_id": 4,
"tonnage": "30",
"trailer_type": "CHECKERED BODY",
"contract_type": "FIXED",
"make": "HOWO",
"weight": "LIGHT",
"age": "NEW",
"diesel_quantity": 441,
"active": true,
"deleted_at": null,
"created_at": "2023-09-19T23:15:07.000000Z",
"updated_at": "2023-09-28T10:15:14.000000Z",
"company_name": "MCPL",
"source_name": "LEKKI",
"destination_name": "ABA"
}
}
Received response:
Request failed with error:
Show a specified Trip Request.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/trip_allocations/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/trip_allocations/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"company_id": 92,
"source_id": 180,
"destination_id": 4,
"tonnage": "30",
"trailer_type": "CHECKERED BODY",
"contract_type": "FIXED",
"make": "HOWO",
"weight": "LIGHT",
"age": "NEW",
"diesel_quantity": 441,
"active": true,
"deleted_at": null,
"created_at": "2023-09-19T23:15:07.000000Z",
"updated_at": "2023-09-28T10:15:14.000000Z",
"company_name": "MCPL",
"source_name": "LEKKI",
"destination_name": "ABA"
}
}
Received response:
Request failed with error:
Update the specific trip allocation
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/trip_allocations/quaerat" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 19,
\"source_id\": 11,
\"destination_id\": 14,
\"tonnage\": \"pariatur\",
\"trailer_type\": \"fuga\",
\"weight\": \"voluptas\",
\"contract_type\": \"FLOATING\",
\"make\": \"aliquid\",
\"age\": \"ipsum\",
\"diesel_quantity\": 19,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/trip_allocations/quaerat"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 19,
"source_id": 11,
"destination_id": 14,
"tonnage": "pariatur",
"trailer_type": "fuga",
"weight": "voluptas",
"contract_type": "FLOATING",
"make": "aliquid",
"age": "ipsum",
"diesel_quantity": 19,
"active": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"company_id": 92,
"source_id": 180,
"destination_id": 4,
"tonnage": "30",
"trailer_type": "CHECKERED BODY",
"contract_type": "FIXED",
"make": "HOWO",
"weight": "LIGHT",
"age": "NEW",
"diesel_quantity": 441,
"active": true,
"deleted_at": null,
"created_at": "2023-09-19T23:15:07.000000Z",
"updated_at": "2023-09-28T10:15:14.000000Z",
"company_name": "MCPL",
"source_name": "LEKKI",
"destination_name": "ABA"
}
}
Received response:
Request failed with error:
Delete the specified Trip allocation.
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/trip_allocations/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/trip_allocations/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Get pumps from station manager
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/sm_pumps?station_id=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/sm_pumps"
);
const params = {
"station_id": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=nJ1c9uQaBrlpQwWscrHWNv0OFduXNQcKozgB8zlu; expires=Fri, 03 Jul 2026 14:33:29 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/sm_pumps could not be found."
}
Received response:
Request failed with error:
Endpoint to get the list of companies from SmartEye (Vendors on CUPID)
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_smarteye_companies" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_smarteye_companies"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=x0bq4cXqaiWvHbwwhh7BntaOmi2zd2gRQj5yArWA; expires=Fri, 03 Jul 2026 14:33:25 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/get_smarteye_companies could not be found."
}
Received response:
Request failed with error:
Endpoint to get the list of pumps by site from SmartEye
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_smarteye_pumps/dignissimos" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_smarteye_pumps/dignissimos"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=iFTPez7dJEiUiJ2UxJp7RKFR1Rb2bK6nAcMVM78C; expires=Fri, 03 Jul 2026 14:33:25 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/get_smarteye_pumps/dignissimos could not be found."
}
Received response:
Request failed with error:
Create a new PAM transaction
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/smart_pump_velox" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/smart_pump_velox"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 10326
}
}
Received response:
Request failed with error:
Update the specified PAM transaction
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/smart_pump_velox/19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/smart_pump_velox/19"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 10327
}
}
Received response:
Request failed with error:
Endpoint to get the list of sites from SmartEye (Stations on CUPID)
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_smarteye_stations/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_smarteye_stations/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=wlWFaJvxxaqBh0vvA4wKH30zc9GVplG0MFUrMSuU; expires=Fri, 03 Jul 2026 14:33:25 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/get_smarteye_stations/architecto could not be found."
}
Received response:
Request failed with error:
Bulk update multiple PAM transactions
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/smart_pump_velox/bulk_update" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/smart_pump_velox/bulk_update"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Fleet Management Endpoints
NFC tag bulk upload
requires authentication
Display a listing of the spend limit groups or search by name, code.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/spend_limit_groups?term=sed&per_page=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups"
);
const params = {
"term": "sed",
"per_page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Mr. Arvel Hegmann",
"company_id": 83,
"cost_center_id": 40,
"description": "Perspiciatis esse consequatur assumenda.",
"daily_volume_limit": 6,
"weekly_volume_limit": 7,
"monthly_volume_limit": 5,
"status": "Inactive",
"code": 0,
"active": false,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 166
},
{
"name": "Dr. Freda Dicki Jr.",
"company_id": 24,
"cost_center_id": 42,
"description": "Sed et et odit doloribus eos aut.",
"daily_volume_limit": 5,
"weekly_volume_limit": 3,
"monthly_volume_limit": 2,
"status": "Active",
"code": 9,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 167
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new spend limit group
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"quod\",
\"company_id\": 4,
\"cost_center_id\": 8,
\"description\": \"explicabo\",
\"code\": \"itaque\",
\"daily_volume_limit\": 98734.0954,
\"weekly_volume_limit\": 70904487.52986038,
\"monthly_volume_limit\": 587474791.7344681,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "quod",
"company_id": 4,
"cost_center_id": 8,
"description": "explicabo",
"code": "itaque",
"daily_volume_limit": 98734.0954,
"weekly_volume_limit": 70904487.52986038,
"monthly_volume_limit": 587474791.7344681,
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Reina Bahringer",
"company_id": 76,
"cost_center_id": 40,
"description": "Aliquam sunt officiis et a qui.",
"daily_volume_limit": 1,
"weekly_volume_limit": 9,
"monthly_volume_limit": 2,
"status": null,
"code": 6,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 168
}
}
Received response:
Request failed with error:
Show a specified spend limit group.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/spend_limit_groups/18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups/18"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Dr. Kaleb Walsh IV",
"company_id": 81,
"cost_center_id": 1,
"description": "Natus ut non sequi esse atque.",
"daily_volume_limit": 1,
"weekly_volume_limit": 9,
"monthly_volume_limit": 1,
"status": "Active",
"code": 4,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 169
}
}
Received response:
Request failed with error:
Update the specified spend limit group
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"daily_volume_limit\": 880302987.4425217,
\"weekly_volume_limit\": 23974069.903531,
\"monthly_volume_limit\": 63.26,
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"daily_volume_limit": 880302987.4425217,
"weekly_volume_limit": 23974069.903531,
"monthly_volume_limit": 63.26,
"active": false
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Crystel Doyle",
"company_id": 57,
"cost_center_id": 10,
"description": "Qui hic itaque et.",
"daily_volume_limit": 5,
"weekly_volume_limit": 9,
"monthly_volume_limit": 1,
"status": null,
"code": 4,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 170
}
}
Received response:
Request failed with error:
Delete a spend group
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/spend_limit_groups/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Ms. Rosanna Schumm IV",
"company_id": 105,
"cost_center_id": 10,
"description": "Perferendis doloribus nihil velit quos aliquam dolor.",
"daily_volume_limit": 4,
"weekly_volume_limit": 1,
"monthly_volume_limit": 6,
"status": "Active",
"code": 6,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 171
}
}
Received response:
Request failed with error:
Display a listing of the drivers or search by fullname, address, phone number, email, driver speciality, status.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/drivers?term=nostrum&per_page=16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/drivers"
);
const params = {
"term": "nostrum",
"per_page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"fullname": "Bernita Mayer",
"email": "hal.runolfsson@yahoo.com",
"phone_number": "+18456228714",
"address": "31080 Dejah Canyon",
"driver_speciality": "Motorbike",
"status": "Suspended",
"company_id": 19,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1315,
"company": {
"id": 19,
"name": "CROWN FLOUR MILL LIMITED - PHC",
"email": "OIsNVpl@tolaram.com",
"phone_number": "308-334-3294",
"registration_number": "ZwqY4",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "7087237",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "UdjqYP6TFJCRAsS",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:54.000000Z",
"updated_at": "2023-09-19T16:07:54.000000Z",
"deleted_at": null
},
"vehicles": []
},
{
"fullname": "Emmet Nienow DDS",
"email": "esther56@raynor.com",
"phone_number": "774-457-0561",
"address": "550 Kim Ville",
"driver_speciality": null,
"status": "Inactive",
"company_id": 30,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1316,
"company": {
"id": 30,
"name": "FORTUNE GLOBAL SHIPPING & LOGISTICS LTD",
"email": "QBLSVxs@tolaram.com",
"phone_number": "351-247-7068",
"registration_number": "tDDXI",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "2049510",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "vJwrIwPYIn7gvfJ",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:59.000000Z",
"updated_at": "2023-09-19T16:07:59.000000Z",
"deleted_at": null
},
"vehicles": []
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new driver
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/drivers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 8,
\"fullname\": \"voluptatum\",
\"address\": \"delectus\",
\"phone_number\": 5.5,
\"email\": \"botsford.camden@example.com\",
\"driver_speciality\": \"accusantium\",
\"status\": \"consequatur\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/drivers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 8,
"fullname": "voluptatum",
"address": "delectus",
"phone_number": 5.5,
"email": "botsford.camden@example.com",
"driver_speciality": "accusantium",
"status": "consequatur"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"fullname": "Markus Hahn",
"email": "flo.green@yahoo.com",
"phone_number": "1-351-364-6248",
"address": "9354 Idell Trafficway",
"driver_speciality": "SUV",
"status": "Active",
"company_id": 10,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1317,
"company": {
"id": 10,
"name": "CASH CUSTOMER",
"email": "QOVgXgN@tolaram.com",
"phone_number": "131-112-7911",
"registration_number": "ubNuJ",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "7432249",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "ra5AI8Cnv4Vtr8L",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:49.000000Z",
"updated_at": "2023-09-19T16:07:49.000000Z",
"deleted_at": null
},
"vehicles": []
}
}
Received response:
Request failed with error:
Show a specified driver.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/drivers/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/drivers/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"fullname": "Prof. Stanford Mosciski Jr.",
"email": "owen52@yahoo.com",
"phone_number": "(440) 529-5058",
"address": "537 Wolff Land Suite 522",
"driver_speciality": "Jeep",
"status": "Inactive",
"company_id": 70,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1318,
"company": {
"id": 70,
"name": "ORNUA DAIRY PRODUCTS (NIG) LIMITED",
"email": "jlPyZqx@tolaram.com",
"phone_number": "590-279-9259",
"registration_number": "dfhOF",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "9034283",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "tTGNtbgxvuVtmWJ",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:22.000000Z",
"updated_at": "2023-09-19T16:09:22.000000Z",
"deleted_at": null
},
"vehicles": []
}
}
Received response:
Request failed with error:
Update the specified driver
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/drivers/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 4,
\"fullname\": \"quis\",
\"address\": \"quos\",
\"phone_number\": 15.99300402,
\"email\": \"jeff77@example.com\",
\"driver_speciality\": \"architecto\",
\"status\": \"deleniti\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/drivers/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 4,
"fullname": "quis",
"address": "quos",
"phone_number": 15.99300402,
"email": "jeff77@example.com",
"driver_speciality": "architecto",
"status": "deleniti"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"fullname": "Prof. Devonte Smitham",
"email": "hattie.smitham@price.biz",
"phone_number": "570-600-1326",
"address": "2463 Schaden Loaf Suite 872",
"driver_speciality": "Saloon Car",
"status": "Active",
"company_id": 10,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1319,
"company": {
"id": 10,
"name": "CASH CUSTOMER",
"email": "QOVgXgN@tolaram.com",
"phone_number": "131-112-7911",
"registration_number": "ubNuJ",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "7432249",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "ra5AI8Cnv4Vtr8L",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:49.000000Z",
"updated_at": "2023-09-19T16:07:49.000000Z",
"deleted_at": null
},
"vehicles": []
}
}
Received response:
Request failed with error:
Delete a driver
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/drivers/15" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/drivers/15"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vehicles or search by registration number, tank capacity, model, fuel type, color, brand.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicles?term=atque&per_page=16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicles"
);
const params = {
"term": "atque",
"per_page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company_id": 31,
"cost_center_id": 45,
"driver_id": 8,
"nfc_tag_id": 275,
"group_id": 142,
"registration_number": "ww-275-wt",
"tank_capacity": 77,
"auth_type": null,
"tracker_id": "sax341",
"model": "Patjero",
"engine_capacity": null,
"fuel_type": "PMS",
"color": "Black",
"brand": "HYUNDAI",
"reward_type": null,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1840,
"company": {
"id": 31,
"name": "GREEN ALMONDS INNOVATIVE HUB LTD",
"email": "OShxftb@tolaram.com",
"phone_number": "388-758-3062",
"registration_number": "Nl6Ks",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "5370719",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "Rb2sbT5aFeiT5KC",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:08:00.000000Z",
"updated_at": "2023-09-19T16:08:00.000000Z",
"deleted_at": null
},
"group": [],
"driver": {
"id": 8,
"company_id": 1,
"fullname": "BABATUNDE JAMIU",
"address": "BHN, Mowe Ogun State",
"phone_number": "139-316-0948",
"email": "ApywSdL@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:11:48.000000Z",
"updated_at": "2023-09-19T18:11:48.000000Z",
"deleted_at": null
},
"costCenter": {
"id": 45,
"company_id": 158,
"name": "SmartFlow Demo",
"email": null,
"phone_number": null,
"daily_purchase_budget": 1000,
"weekly_purchase_budget": 1000,
"monthly_purchase_budget": 1000,
"license_type": "lsc",
"active": 1,
"created_at": "2025-05-26T14:13:46.000000Z",
"updated_at": "2025-05-26T14:13:46.000000Z",
"deleted_at": null
},
"vehicle_plate_number": "ww-275-wt",
"nfcTag": {
"id": 275,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "5272",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7863",
"nfctag_oem_id": "D6D25331",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "27530027",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:35:15.000000Z",
"updated_at": "2023-09-19T18:35:15.000000Z",
"deleted_at": null,
"upload_id": null
}
},
{
"company_id": 71,
"cost_center_id": 45,
"driver_id": 172,
"nfc_tag_id": 515,
"group_id": 79,
"registration_number": "qy-730-zs",
"tank_capacity": 35,
"auth_type": null,
"tracker_id": "ehx537",
"model": "Karen",
"engine_capacity": null,
"fuel_type": "HHK",
"color": "Blue",
"brand": "HYUNDAI",
"reward_type": null,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1841,
"company": {
"id": 71,
"name": "PABOD INTERNATIONAL BREWERIES PLC",
"email": "TxuZzWq@tolaram.com",
"phone_number": "161-135-8544",
"registration_number": "m9G60",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "9484452",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "OgpNH05txm5kCf3",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:22.000000Z",
"updated_at": "2023-09-19T16:09:22.000000Z",
"deleted_at": null
},
"group": [],
"driver": {
"id": 172,
"company_id": 11,
"fullname": "MOHAMMED SANI",
"address": "BHN, Mowe Ogun State",
"phone_number": "352-668-9134",
"email": "iTgorST@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:33:19.000000Z",
"updated_at": "2023-09-19T18:33:19.000000Z",
"deleted_at": null
},
"costCenter": {
"id": 45,
"company_id": 158,
"name": "SmartFlow Demo",
"email": null,
"phone_number": null,
"daily_purchase_budget": 1000,
"weekly_purchase_budget": 1000,
"monthly_purchase_budget": 1000,
"license_type": "lsc",
"active": 1,
"created_at": "2025-05-26T14:13:46.000000Z",
"updated_at": "2025-05-26T14:13:46.000000Z",
"deleted_at": null
},
"vehicle_plate_number": "qy-730-zs",
"nfcTag": {
"id": 515,
"company_id": null,
"vendor_id": null,
"user_id": null,
"station_id": null,
"pin": "0",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX 11264",
"nfctag_oem_id": "0A6C3DBE",
"nfctag_url_slug": null,
"created_by": null,
"card_number": null,
"card_on_thankucash": null,
"card_state": null,
"station_name": null,
"active": 1,
"created_at": "2024-05-21T16:27:02.000000Z",
"updated_at": "2024-05-21T16:27:02.000000Z",
"deleted_at": null,
"upload_id": 1
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vehicle
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vehicles" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 12,
\"vendor_id\": 18,
\"driver_id\": 8,
\"nfc_tag_id\": 2,
\"group_id\": 7,
\"registration_number\": \"rerum\",
\"tank_capacity\": \"cupiditate\",
\"auth_type\": \"accusamus\",
\"tracker_id\": \"quasi\",
\"model\": \"soluta\",
\"engine_capacity\": \"minima\",
\"fuel_type\": \"LPFO\",
\"color\": \"repudiandae\",
\"brand\": \"a\",
\"active\": false,
\"weight\": \"ut\",
\"tonnage\": \"nam\",
\"trailer_type\": \"eius\",
\"age\": \"et\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicles"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 12,
"vendor_id": 18,
"driver_id": 8,
"nfc_tag_id": 2,
"group_id": 7,
"registration_number": "rerum",
"tank_capacity": "cupiditate",
"auth_type": "accusamus",
"tracker_id": "quasi",
"model": "soluta",
"engine_capacity": "minima",
"fuel_type": "LPFO",
"color": "repudiandae",
"brand": "a",
"active": false,
"weight": "ut",
"tonnage": "nam",
"trailer_type": "eius",
"age": "et"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 7,
"cost_center_id": 54,
"driver_id": 1002,
"nfc_tag_id": 296,
"group_id": 30,
"registration_number": "ab-785-qp",
"tank_capacity": 21,
"auth_type": null,
"tracker_id": "hzc870",
"model": "Dasun",
"engine_capacity": null,
"fuel_type": "HHK",
"color": "Red",
"brand": "HYUNDAI",
"reward_type": null,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1842,
"company": {
"id": 7,
"name": "BRAMRAJ FOOD & BEVERAGES NIG LTD",
"email": "jnAemxC@tolaram.com",
"phone_number": "200-111-3505",
"registration_number": "kfPm6",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "1457039",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "4tRYQH3YhchsIgn",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:47.000000Z",
"updated_at": "2023-09-19T16:07:47.000000Z",
"deleted_at": null
},
"group": [],
"driver": {
"id": 1002,
"company_id": 45,
"fullname": "RABIU JELILI OLAITAN",
"address": "BHN, Mowe Ogun State",
"phone_number": "247-327-3040",
"email": "vpJYfZz@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T20:33:11.000000Z",
"updated_at": "2023-09-19T20:33:11.000000Z",
"deleted_at": null
},
"costCenter": {
"id": 54,
"company_id": 127,
"name": "Abc comp cost center new",
"email": "muibi.azeezabolade@gmail.com",
"phone_number": "8136834496",
"daily_purchase_budget": 100,
"weekly_purchase_budget": 20,
"monthly_purchase_budget": 14,
"license_type": "basic",
"active": 1,
"created_at": "2025-09-12T11:01:37.000000Z",
"updated_at": "2025-11-20T12:07:17.000000Z",
"deleted_at": null
},
"vehicle_plate_number": "ab-785-qp",
"nfcTag": {
"id": 296,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "2988",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7884",
"nfctag_oem_id": "76275331",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "58528590",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:36:01.000000Z",
"updated_at": "2023-09-19T18:36:01.000000Z",
"deleted_at": null,
"upload_id": null
}
}
}
Received response:
Request failed with error:
Show a specified vehicle.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicles/14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicles/14"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 106,
"cost_center_id": 13,
"driver_id": 142,
"nfc_tag_id": 222,
"group_id": 152,
"registration_number": "su-181-ta",
"tank_capacity": 24,
"auth_type": null,
"tracker_id": "lcg117",
"model": "Corolla",
"engine_capacity": null,
"fuel_type": "ATK",
"color": "White",
"brand": "Toyota",
"reward_type": null,
"active": true,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1843,
"company": {
"id": 106,
"name": "DARAJU INDUSTRIES LIMITED",
"email": "KmHQGon@tolaram.com",
"phone_number": "647-071-9956",
"registration_number": "W62gL",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "MCPL Nigeria",
"sector": "Logistics",
"tin": "1258573",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "Z4pBfQNHiLEKf9F",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-26T18:15:38.000000Z",
"updated_at": "2023-09-26T18:15:38.000000Z",
"deleted_at": null
},
"group": [],
"driver": {
"id": 142,
"company_id": 12,
"fullname": "HARISU MUHAMMAD",
"address": "BHN, Mowe Ogun State",
"phone_number": "116-321-3860",
"email": "GWzWbxC@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:28:55.000000Z",
"updated_at": "2023-09-19T18:28:55.000000Z",
"deleted_at": null
},
"costCenter": {
"id": 13,
"company_id": 100,
"name": "OLAM",
"email": "9bzj8Ae@tolaram.com",
"phone_number": "202-222-0467",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T20:39:24.000000Z",
"updated_at": "2023-09-19T20:39:24.000000Z",
"deleted_at": null
},
"vehicle_plate_number": "su-181-ta",
"nfcTag": {
"id": 222,
"company_id": 76,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "2212",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7810",
"nfctag_oem_id": "B68A5531",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "29904121",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:33:24.000000Z",
"updated_at": "2023-09-19T18:33:24.000000Z",
"deleted_at": null,
"upload_id": null
}
}
}
Received response:
Request failed with error:
Update the specified vehicle
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vehicles/5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 15,
\"driver_id\": 13,
\"nfc_tag_id\": 2,
\"group_id\": 4,
\"registration_number\": \"ea\",
\"tank_capacity\": \"voluptatibus\",
\"auth_type\": \"facilis\",
\"tracker_id\": \"consequatur\",
\"model\": \"eaque\",
\"engine_capacity\": \"aut\",
\"fuel_type\": \"ATK\",
\"color\": \"et\",
\"brand\": \"ipsam\",
\"active\": true,
\"weight\": \"et\",
\"tonnage\": \"ab\",
\"trailer_type\": \"sint\",
\"age\": \"minus\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicles/5"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 15,
"driver_id": 13,
"nfc_tag_id": 2,
"group_id": 4,
"registration_number": "ea",
"tank_capacity": "voluptatibus",
"auth_type": "facilis",
"tracker_id": "consequatur",
"model": "eaque",
"engine_capacity": "aut",
"fuel_type": "ATK",
"color": "et",
"brand": "ipsam",
"active": true,
"weight": "et",
"tonnage": "ab",
"trailer_type": "sint",
"age": "minus"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 105,
"cost_center_id": 14,
"driver_id": 335,
"nfc_tag_id": 331,
"group_id": 93,
"registration_number": "yo-199-hv",
"tank_capacity": 16,
"auth_type": null,
"tracker_id": "gfl567",
"model": "Patjero",
"engine_capacity": null,
"fuel_type": "HHK",
"color": "Red",
"brand": "Mitsubishi",
"reward_type": null,
"active": false,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 1844,
"company": {
"id": 105,
"name": "RAFFLES",
"email": "hFkhrfv@tolaram.com",
"phone_number": "937-722-8588",
"registration_number": "p3jYc",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "MCPL Nigeria",
"sector": "Logistics",
"tin": "2693764",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "xgdm5S7KMSRNAfq",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T23:54:17.000000Z",
"updated_at": "2023-09-19T23:54:17.000000Z",
"deleted_at": null
},
"group": [],
"driver": {
"id": 335,
"company_id": 92,
"fullname": "SULEIMAN ABUBAKAR",
"address": "BHN, Mowe Ogun State",
"phone_number": "125-412-9283",
"email": "ijzWnkR@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:47:18.000000Z",
"updated_at": "2023-09-19T18:47:18.000000Z",
"deleted_at": null
},
"costCenter": {
"id": 14,
"company_id": 108,
"name": "Barcelona Cost Center1",
"email": null,
"phone_number": null,
"daily_purchase_budget": 9999999,
"weekly_purchase_budget": 999999999,
"monthly_purchase_budget": 999999999,
"license_type": "lsc",
"active": 1,
"created_at": "2023-11-30T16:06:38.000000Z",
"updated_at": "2023-11-30T16:06:38.000000Z",
"deleted_at": null
},
"vehicle_plate_number": "yo-199-hv",
"nfcTag": {
"id": 331,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "5246",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7340",
"nfctag_oem_id": "76865231",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "70965362",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:45:03.000000Z",
"updated_at": "2023-09-19T18:45:03.000000Z",
"deleted_at": null,
"upload_id": null
}
}
}
Received response:
Request failed with error:
Delete a vehicle
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vehicles/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicles/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the NFC tags or search by NFC tag type, NFC tag code, NFC tag oem ID, card number, card state, station name.
requires authentication
Create a new NFC tag
requires authentication
Show a specified NFC tag.
requires authentication
Update the specified NFC tag
requires authentication
Delete a NFC tag
requires authentication
Display a listing of the NFC Tag Trackers or search by NFC Tag Tracker Payment History Ref, NFC Tag Tracker Address.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers?term=iure&station_id=4&per_page=13" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers"
);
const params = {
"term": "iure",
"station_id": "4",
"per_page": "13",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vendor_id": 26,
"company_id": 47,
"tag_pickup_location_id": 13,
"payment_history_ref": "cupid_pay_96337614",
"numbers_of_cards": 4,
"total_cards_amount": 88519,
"delivery_status": true,
"delivery_type": "Pickup",
"app_label": "molestias",
"auth_code": "nostrum",
"card_expire_date": "1979-06-08",
"card_holder_name": "non",
"masked_pan": "corrupti",
"message": "voluptatum",
"rrn": "adipisci",
"stan": "et",
"status_code": "voluptatibus",
"terminal_id": 6,
"datetime": {
"date": "2004-08-09 23:12:25.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"channel": "voluptatem",
"delivery_charge": "et",
"delivery_address": "282 Rylan Circles\nCamdenberg, WV 20669",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 16,
"vendor": {
"id": 26,
"name": "Miriam Terry",
"email": "guxem@mailinator.com",
"phone": null,
"address": "Debitis quo"
},
"amount_paid": null,
"company": {
"id": 47,
"name": "MAGIK - MULTIPRO",
"address": "Sagamu"
},
"tag_pickup_location": {
"id": 13,
"name": "Oando Oregun",
"address": "Oregun Ikeja",
"station_id": 297
}
},
{
"vendor_id": 26,
"company_id": 62,
"tag_pickup_location_id": 13,
"payment_history_ref": "cupid_pay_38824703",
"numbers_of_cards": 5,
"total_cards_amount": 99929,
"delivery_status": false,
"delivery_type": "Pickup",
"app_label": "ab",
"auth_code": "reiciendis",
"card_expire_date": "2022-06-08",
"card_holder_name": "doloribus",
"masked_pan": "similique",
"message": "fuga",
"rrn": "repellat",
"stan": "praesentium",
"status_code": "delectus",
"terminal_id": 9,
"datetime": {
"date": "2018-06-20 07:19:53.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"channel": "earum",
"delivery_charge": "corporis",
"delivery_address": "773 Orn Keys Apt. 918\nSouth Trevor, CO 99376-2413",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 17,
"vendor": {
"id": 26,
"name": "Miriam Terry",
"email": "guxem@mailinator.com",
"phone": null,
"address": "Debitis quo"
},
"amount_paid": null,
"company": {
"id": 62,
"name": "NORTHERN NOODLE LIMITED (KADUNA)",
"address": "Sagamu"
},
"tag_pickup_location": {
"id": 13,
"name": "Oando Oregun",
"address": "Oregun Ikeja",
"station_id": 297
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new NFC Tag Tracker
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 34,
"company_id": 75,
"tag_pickup_location_id": 13,
"payment_history_ref": "cupid_pay_96631009",
"numbers_of_cards": 6,
"total_cards_amount": 21349,
"delivery_status": true,
"delivery_type": "Delivery",
"app_label": "cum",
"auth_code": "quo",
"card_expire_date": "2014-10-12",
"card_holder_name": "voluptatem",
"masked_pan": "aperiam",
"message": "commodi",
"rrn": "quaerat",
"stan": "temporibus",
"status_code": "aut",
"terminal_id": 9,
"datetime": {
"date": "1993-06-10 02:28:50.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"channel": "quae",
"delivery_charge": "aut",
"delivery_address": "4081 Athena Village\nNew Katrina, RI 93836",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 18,
"vendor": {
"id": 34,
"name": "Shoprite",
"email": "shoprite@gmail.com",
"phone": null,
"address": "Adeniran Ogunsanya Street"
},
"amount_paid": null,
"company": {
"id": 75,
"name": "POWERGAS GLOBAL INVESTMENTS NIGERIA LIMITED (PGINL)",
"address": "Sagamu"
},
"tag_pickup_location": {
"id": 13,
"name": "Oando Oregun",
"address": "Oregun Ikeja",
"station_id": 297
}
}
}
Received response:
Request failed with error:
Show a specified NFC Tag Tracker.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 2,
"company_id": 172,
"tag_pickup_location_id": 13,
"payment_history_ref": "cupid_pay_94136431",
"numbers_of_cards": 1,
"total_cards_amount": 81238,
"delivery_status": true,
"delivery_type": "Pickup",
"app_label": "velit",
"auth_code": "sint",
"card_expire_date": "1990-08-08",
"card_holder_name": "accusamus",
"masked_pan": "iste",
"message": "minus",
"rrn": "tenetur",
"stan": "provident",
"status_code": "vel",
"terminal_id": 5,
"datetime": {
"date": "2007-04-23 07:23:53.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"channel": "voluptate",
"delivery_charge": "libero",
"delivery_address": "6205 Morissette Valleys\nPort Treva, WI 10834-3966",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 19,
"vendor": {
"id": 2,
"name": "Test SM",
"email": "kasopej@gmail.com",
"phone": null,
"address": "10 Aisa street"
},
"amount_paid": null,
"company": {
"id": 172,
"name": "Unilever Nigeria Plc Agbara",
"address": "3 Sunmola Street Igbesa Ogun State"
},
"tag_pickup_location": {
"id": 13,
"name": "Oando Oregun",
"address": "Oregun Ikeja",
"station_id": 297
}
}
}
Received response:
Request failed with error:
Update the specified NFC Tag Tracker
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 26,
"company_id": 9,
"tag_pickup_location_id": 13,
"payment_history_ref": "cupid_pay_28638191",
"numbers_of_cards": 7,
"total_cards_amount": 7612,
"delivery_status": true,
"delivery_type": "Delivery",
"app_label": "quia",
"auth_code": "accusantium",
"card_expire_date": "2012-02-25",
"card_holder_name": "saepe",
"masked_pan": "illo",
"message": "voluptatum",
"rrn": "in",
"stan": "est",
"status_code": "voluptatum",
"terminal_id": 8,
"datetime": {
"date": "2012-08-14 22:53:42.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"channel": "quod",
"delivery_charge": "ratione",
"delivery_address": "14651 Paucek Island\nHansenhaven, CO 79945",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 20,
"vendor": {
"id": 26,
"name": "Miriam Terry",
"email": "guxem@mailinator.com",
"phone": null,
"address": "Debitis quo"
},
"amount_paid": null,
"company": {
"id": 9,
"name": "BUA SUGAR REFINERY LIMITED",
"address": "Sagamu"
},
"tag_pickup_location": {
"id": 13,
"name": "Oando Oregun",
"address": "Oregun Ikeja",
"station_id": 297
}
}
}
Received response:
Request failed with error:
Delete a NFC Tag Tracker
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers/12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/nfc_tag_trackers/12"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Generate pin for specified NFC Tag
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/generate_pin/19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/generate_pin/19"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=RzXNkNe0MP2OL5xMJRvVmSNdgXVIZTnGSwcwk4CC; expires=Fri, 03 Jul 2026 14:33:26 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/generate_pin/19 could not be found."
}
Received response:
Request failed with error:
Get a paginated list of unassigned NFC tags
requires authentication
Vendor Assign NFC tag
requires authentication
Example request:
curl --request PATCH \
"https://cupidapiv2.smartflowtech.org/api/vendor_assign_nfc_tag/laborum" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vehicle_id\": 8,
\"user_id\": 16,
\"company_id\": 15
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_assign_nfc_tag/laborum"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vehicle_id": 8,
"user_id": 16,
"company_id": 15
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 55,
"vendor_id": 2,
"user_id": 92,
"station_id": 2,
"pin": 6358,
"nfctag_type": "Card",
"nfctag_code": "VLX-386",
"nfctag_oem_id": 32546444,
"nfctag_url_slug": null,
"created_by": 35,
"card_number": 223646240,
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": "BHN Logistic Station 1",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 912,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"station": {
"id": 2,
"sm_station_id": 337,
"vendor_id": 1,
"name": "BHN Logistic Station 1",
"address": "Adeniran Ogunsanya Street",
"postcode": null,
"country": null,
"state": null,
"city": null,
"email": null,
"phone_number": null,
"created_at": "2023-11-28T10:48:58.000000Z",
"updated_at": "2023-11-28T10:48:58.000000Z",
"deleted_at": null
},
"createdBy": {
"id": 35,
"title": "Mr",
"name": "Amao Segun",
"email": "segunamao047@gmail.com",
"phone": "970-447-2612",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=amao.segun_cwJ",
"username": "amao.segun_cwJ",
"gender": "Female",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "7829376",
"created_at": "2023-09-20T00:44:16.000000Z",
"updated_at": "2023-09-20T00:44:16.000000Z",
"deleted_at": null
},
"company": {
"id": 55,
"name": "MULTIPRO CHOBA",
"email": "knJMJAJ@tolaram.com",
"phone_number": "301-874-0033",
"registration_number": "cK2tv",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "5200968",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "8DbKRWESDeQzZD2",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:08:13.000000Z",
"updated_at": "2023-09-19T16:08:13.000000Z",
"deleted_at": null
},
"vehicles": [],
"user": {
"id": 92,
"title": null,
"name": "Victor Test Account",
"email": "victortest@test.com",
"phone": "09098776544",
"avatar": null,
"username": "Test account",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-11-23T15:42:31.000000Z",
"updated_at": "2023-11-23T15:42:31.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Vendor Station NFC tag
requires authentication
Example request:
curl --request PATCH \
"https://cupidapiv2.smartflowtech.org/api/vendor_nfctag_stations/17?station_id=2&station_name=cupiditate" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_nfctag_stations/17"
);
const params = {
"station_id": "2",
"station_name": "cupiditate",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PATCH",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 104,
"vendor_id": 2,
"user_id": 44,
"station_id": 2,
"pin": 4025,
"nfctag_type": "Card",
"nfctag_code": "VLX-405",
"nfctag_oem_id": 87707936,
"nfctag_url_slug": null,
"created_by": 56,
"card_number": 718352572,
"card_on_thankucash": null,
"card_state": "OTA",
"station_name": "BHN Logistic Station 1",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 913,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"station": {
"id": 2,
"sm_station_id": 337,
"vendor_id": 1,
"name": "BHN Logistic Station 1",
"address": "Adeniran Ogunsanya Street",
"postcode": null,
"country": null,
"state": null,
"city": null,
"email": null,
"phone_number": null,
"created_at": "2023-11-28T10:48:58.000000Z",
"updated_at": "2023-11-28T10:48:58.000000Z",
"deleted_at": null
},
"createdBy": {
"id": 56,
"title": "Mrs",
"name": "Gbadebo Adeyemi Joseph",
"email": "adeyemtlr@gmail.com",
"phone": "334-342-7321",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=gbadebo.adeyemi.joseph_bQm",
"username": "gbadebo.adeyemi.joseph_bQm",
"gender": "Female",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "6158243",
"created_at": "2023-09-20T00:45:42.000000Z",
"updated_at": "2023-09-20T00:45:42.000000Z",
"deleted_at": null
},
"company": {
"id": 104,
"name": "GREEN PACKAGING LIMITED",
"email": "qMuYSmw@tolaram.com",
"phone_number": "102-551-8254",
"registration_number": "3G5pf",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "MCPL Nigeria",
"sector": "Logistics",
"tin": "6080236",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "pPCpD3Uv1b8w6gv",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T23:54:04.000000Z",
"updated_at": "2023-09-19T23:54:04.000000Z",
"deleted_at": null
},
"vehicles": [],
"user": {
"id": 44,
"title": "Mrs",
"name": "Oki Wunmi",
"email": "preciouomowunmi@gmail.com",
"phone": "151-115-1486",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=oki.wunmi_d5m",
"username": "oki.wunmi_d5m",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "8477675",
"created_at": "2023-09-20T00:44:21.000000Z",
"updated_at": "2023-09-20T00:44:21.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Create a manual purchase upload
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/manual_purchase_upload" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"sm_station_id\": \"nisi\",
\"station_name\": \"quaerat\",
\"app_mode\": \"NO FCC MODE\",
\"group_id\": 19,
\"product\": \"PMS\",
\"volume\": \"\",
\"selling_price\": \"consequatur\",
\"pin\": \"quam\",
\"pump\": \"ut\",
\"way_bill_number\": \"atque\",
\"pos_transaction_id\": \"quas\",
\"nozzle_id\": \"et\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/manual_purchase_upload"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"sm_station_id": "nisi",
"station_name": "quaerat",
"app_mode": "NO FCC MODE",
"group_id": 19,
"product": "PMS",
"volume": "",
"selling_price": "consequatur",
"pin": "quam",
"pump": "ut",
"way_bill_number": "atque",
"pos_transaction_id": "quas",
"nozzle_id": "et"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
POST api/terminal_nfctag_payment
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/terminal_nfctag_payment" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"sm_station_id\": \"libero\",
\"station_name\": \"ducimus\",
\"app_mode\": \"FCC MODE\",
\"group_id\": 3,
\"product\": \"DPK\",
\"volume\": \"\",
\"selling_price\": \"quisquam\",
\"pin\": \"ea\",
\"pump\": \"laborum\",
\"way_bill_number\": \"amet\",
\"pos_transaction_id\": \"minima\",
\"nozzle_id\": \"voluptas\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/terminal_nfctag_payment"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"sm_station_id": "libero",
"station_name": "ducimus",
"app_mode": "FCC MODE",
"group_id": 3,
"product": "DPK",
"volume": "",
"selling_price": "quisquam",
"pin": "ea",
"pump": "laborum",
"way_bill_number": "amet",
"pos_transaction_id": "minima",
"nozzle_id": "voluptas"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the Destination
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_destination?term=rerum" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination"
);
const params = {
"term": "rerum",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "autem",
"code": "officiis-cupiditate-maiores-provident-aut-dolore-eum",
"description": "THAT in a low, hurried tone. He looked at it gloomily: then he dipped it into one of the court. All this time with one finger, as he came, 'Oh! the Duchess, 'as pigs have to beat them off, and she.",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 805
},
{
"name": "modi",
"code": "perspiciatis-voluptas-impedit-nesciunt-voluptatibus-id-et",
"description": "Duchess; 'and that's the jury, of course--\"I GAVE HER ONE, THEY GAVE HIM TWO--\" why, that must be the right height to rest her chin in salt water. Her first idea was that it felt quite relieved to.",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 806
}
]
}
Received response:
Request failed with error:
Display a listing of the Vehicle
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle?vendor_id=6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle"
);
const params = {
"vendor_id": "6",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company_id": 73,
"cost_center_id": 4,
"driver_id": 626,
"nfc_tag_id": 300,
"group_id": 141,
"registration_number": "ze-071-el",
"tank_capacity": 13,
"auth_type": null,
"tracker_id": "yxh178",
"model": "Corolla",
"engine_capacity": null,
"fuel_type": "PMS",
"color": "White",
"brand": "Isuzu",
"reward_type": null,
"active": true,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 1845,
"company": {
"id": 73,
"name": "PERFETTI VAN MELLE NIGERIA LIMITED",
"email": "lDHAWfE@tolaram.com",
"phone_number": "738-374-5064",
"registration_number": "NPSFG",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "7962303",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "jqN8tsjvgU5fXbb",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:23.000000Z",
"updated_at": "2023-09-19T16:09:23.000000Z",
"deleted_at": null
},
"group": [],
"driver": {
"id": 626,
"company_id": 38,
"fullname": "MALLO INNOCENT JAMES",
"address": "BHN, Mowe Ogun State",
"phone_number": "486-438-5033",
"email": "qyMWUxY@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T19:08:45.000000Z",
"updated_at": "2023-09-19T19:08:45.000000Z",
"deleted_at": null
},
"costCenter": {
"id": 4,
"company_id": 93,
"name": "LAFARGE AFRICA",
"email": "pyraM4l@tolaram.com",
"phone_number": "512-189-8965",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:25.000000Z",
"updated_at": "2023-09-19T19:05:25.000000Z",
"deleted_at": null
},
"vehicle_plate_number": "ze-071-el",
"nfcTag": {
"id": 300,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "4626",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7888",
"nfctag_oem_id": "66F35431",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "80705611",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:36:09.000000Z",
"updated_at": "2023-09-19T18:36:09.000000Z",
"deleted_at": null,
"upload_id": null
}
},
{
"company_id": 60,
"cost_center_id": 12,
"driver_id": 629,
"nfc_tag_id": 622,
"group_id": 74,
"registration_number": "sq-585-ew",
"tank_capacity": 64,
"auth_type": null,
"tracker_id": "wdl452",
"model": "Kahaya",
"engine_capacity": null,
"fuel_type": "DPK",
"color": "Black",
"brand": "Mitsubishi",
"reward_type": null,
"active": true,
"company": {
"id": 60,
"name": "MULTIPRO KANO",
"email": "UgWOgmZ@tolaram.com",
"phone_number": "297-640-2518",
"registration_number": "hreOL",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "1695426",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "jlm5N0KLhphsthq",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:08:15.000000Z",
"updated_at": "2023-09-19T16:08:15.000000Z",
"deleted_at": null
},
"group": [],
"driver": {
"id": 629,
"company_id": 38,
"fullname": "TYONONGO LINUS MKA",
"address": "BHN, Mowe Ogun State",
"phone_number": "477-835-8625",
"email": "lvMdAys@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T19:08:49.000000Z",
"updated_at": "2023-09-19T19:08:49.000000Z",
"deleted_at": null
},
"costCenter": {
"id": 12,
"company_id": 99,
"name": "FLOUR INTERNAL MOV (PHC)",
"email": "XWjMd0r@tolaram.com",
"phone_number": "169-695-4814",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T20:18:54.000000Z",
"updated_at": "2023-09-19T20:18:54.000000Z",
"deleted_at": null
},
"vehicle_plate_number": "sq-585-ew",
"nfcTag": {
"id": 622,
"company_id": 8,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "5020",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-9832",
"nfctag_oem_id": "68882699",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "68882699",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": "MCPL PH",
"active": 1,
"created_at": "2024-07-02T23:15:34.000000Z",
"updated_at": "2024-07-02T23:15:34.000000Z",
"deleted_at": null,
"upload_id": null
}
}
]
}
Received response:
Request failed with error:
Display a listing of the Destination Allocation
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocation" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocation"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "sunt",
"destination_source_id": 213,
"destination_stoppage_id": 213,
"code": "et-harum-vel-id-consequatur-et",
"allocated_quantity": 0,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 91
},
{
"name": "quis",
"destination_source_id": 674,
"destination_stoppage_id": 674,
"code": "cumque-quia-distinctio-praesentium-odit-cupiditate",
"allocated_quantity": 0,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 92
}
]
}
Received response:
Request failed with error:
Display a Realtime Total Quantity of Destination Allocation
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocation_total_quantity?destination_source_id=16&destination_stoppage_id=1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocation_total_quantity"
);
const params = {
"destination_source_id": "16",
"destination_stoppage_id": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "veritatis",
"destination_source_id": 680,
"destination_stoppage_id": 680,
"code": "sit-hic-voluptas-dolores-sed-odit-quae-doloribus",
"allocated_quantity": 3,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 93
},
{
"name": "nostrum",
"destination_source_id": 322,
"destination_stoppage_id": 322,
"code": "qui-qui-ea-facilis-et-dolorum-aut-est",
"allocated_quantity": 0,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 94
}
]
}
Received response:
Request failed with error:
Display a listing of the Category
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_category" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_category"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"parent_id": 1,
"name": "cum",
"code": "aut",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 157,
"is_parent": "nass"
},
{
"parent_id": 6,
"name": "aspernatur",
"code": "voluptatibus",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 158,
"is_parent": "nass"
}
]
}
Received response:
Request failed with error:
Display a listing of the Sub Category
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_sub_category?category_id=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_sub_category"
);
const params = {
"category_id": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"parent_id": 1,
"name": "in",
"code": "et",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 159,
"is_parent": "nass"
},
{
"parent_id": 1,
"name": "itaque",
"code": "qui",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 160,
"is_parent": "nass"
}
]
}
Received response:
Request failed with error:
Display a listing of the BHN Categories or search by name.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_categories?term=vel&per_page=19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_categories"
);
const params = {
"term": "vel",
"per_page": "19",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"parent_id": 1,
"name": "eligendi",
"code": "nulla",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 161,
"is_parent": "nass"
},
{
"parent_id": 3,
"name": "ad",
"code": "eligendi",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 162,
"is_parent": "nass"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new BHN Category
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/bhn_categories" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"parent_id\": 16,
\"name\": \"distinctio\",
\"code\": \"consequuntur\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_categories"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"parent_id": 16,
"name": "distinctio",
"code": "consequuntur"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"parent_id": 2,
"name": "laborum",
"code": "esse",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 163,
"is_parent": "nass"
}
}
Received response:
Request failed with error:
Show a specified BHN Category.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_categories/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_categories/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"parent_id": 7,
"name": "deserunt",
"code": "sit",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 164,
"is_parent": "nass"
}
}
Received response:
Request failed with error:
Update the specified BHN Category
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/bhn_categories/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"parent_id\": 19,
\"name\": \"qui\",
\"code\": \"similique\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_categories/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"parent_id": 19,
"name": "qui",
"code": "similique"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"parent_id": 4,
"name": "et",
"code": "et",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 165,
"is_parent": "nass"
}
}
Received response:
Request failed with error:
Delete a BHN Category
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/bhn_categories/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_categories/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the BHN Categories or search by name.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_contracts?term=blanditiis&per_page=17&company_id=sit&vehicle_id=doloribus&source_id=accusamus" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts"
);
const params = {
"term": "blanditiis",
"per_page": "17",
"company_id": "sit",
"vehicle_id": "doloribus",
"source_id": "accusamus",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company": null,
"vehicle": null,
"source": null
},
{
"company": null,
"vehicle": null,
"source": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new BHN Contract
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": \"qui\",
\"vehicle_id\": \"laboriosam\",
\"source_id\": \"laudantium\",
\"contract_type\": \"enim\",
\"tenure_start_date\": \"2026-07-03T12:33:26\",
\"tenure_end_date\": \"2049-04-15\",
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": "qui",
"vehicle_id": "laboriosam",
"source_id": "laudantium",
"contract_type": "enim",
"tenure_start_date": "2026-07-03T12:33:26",
"tenure_end_date": "2049-04-15",
"active": false
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company": null,
"vehicle": null,
"source": null
}
}
Received response:
Request failed with error:
Show a specified BHN Contract.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_contracts/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"company": null,
"vehicle": null,
"source": null
}
}
Received response:
Request failed with error:
Update the specified BHN Contract
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts/16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": \"sed\",
\"vehicle_id\": \"sunt\",
\"source_id\": \"omnis\",
\"contract_type\": \"totam\",
\"tenure_start_date\": \"2026-07-03T12:33:26\",
\"tenure_end_date\": \"2100-01-11\",
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts/16"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": "sed",
"vehicle_id": "sunt",
"source_id": "omnis",
"contract_type": "totam",
"tenure_start_date": "2026-07-03T12:33:26",
"tenure_end_date": "2100-01-11",
"active": false
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company": null,
"vehicle": null,
"source": null
}
}
Received response:
Request failed with error:
Delete a BHN Contract
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts/12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_contracts/12"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the BHN Destinations or search by name.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_destinations?term=voluptatem&per_page=17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations"
);
const params = {
"term": "voluptatem",
"per_page": "17",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "ipsa",
"code": "unde-maiores-accusamus-ab-id-officia-dignissimos",
"description": "Alice, (she had grown up,' she said these words her foot slipped, and in another moment that it led into the open air. 'IF I don't understand. Where did they live at the corners: next the ten.",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 807
},
{
"name": "sed",
"code": "consectetur-illo-eum-distinctio-velit-accusantium-rerum-excepturi-quod",
"description": "So she began looking at them with the Duchess, 'and that's a fact.' Alice did not venture to go with Edgar Atheling to meet William and offer him the crown. William's conduct at first was moderate.",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 808
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new BHN Destination
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"est\",
\"code\": \"dolores\",
\"description\": \"fugiat\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "est",
"code": "dolores",
"description": "fugiat"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "facilis",
"code": "deleniti-cumque-quisquam-neque-incidunt",
"description": "Alice quietly said, just as if he were trying which word sounded best. Some of the garden: the roses growing on it but tea. 'I don't know where Dinn may be,' said the Gryphon: 'I went to the jury.",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 809
}
}
Received response:
Request failed with error:
Show a specified BHN Destination.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_destinations/12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations/12"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "doloremque",
"code": "velit-nobis-ut-tempora-itaque-et",
"description": "Gryphon. 'The reason is,' said the King, with an M--' 'Why with an M--' 'Why with an M--' 'Why with an M?' said Alice. The King and Queen of Hearts, who only bowed and smiled in reply. 'That's.",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 810
}
}
Received response:
Request failed with error:
Update the specified BHN Destination
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"recusandae\",
\"code\": \"numquam\",
\"description\": \"ipsum\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "recusandae",
"code": "numquam",
"description": "ipsum"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "provident",
"code": "repellat-ullam-impedit-cum-perspiciatis",
"description": "Said his father; 'don't give yourself airs! Do you think you could only hear whispers now and then raised himself upon tiptoe, put his mouth close to her, 'if we had the best plan.' It sounded an.",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 811
}
}
Received response:
Request failed with error:
Delete a BHN Destination
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations/10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destinations/10"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the BHN Destinations Allocations or search by name.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations?term=modi&per_page=7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations"
);
const params = {
"term": "modi",
"per_page": "7",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "ut",
"destination_source_id": 589,
"destination_stoppage_id": 589,
"code": "non-dolorem-quae-consectetur-a-rerum",
"allocated_quantity": 9,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 95
},
{
"name": "fuga",
"destination_source_id": 300,
"destination_stoppage_id": 300,
"code": "sint-voluptatem-sit-vitae",
"allocated_quantity": 0,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 96
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new BHN Destination
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"et\",
\"destination_source_id\": \"aut\",
\"destination_stoppage_id\": \"occaecati\",
\"code\": \"reiciendis\",
\"allocated_quantity\": \"ipsam\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "et",
"destination_source_id": "aut",
"destination_stoppage_id": "occaecati",
"code": "reiciendis",
"allocated_quantity": "ipsam"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "et",
"destination_source_id": 143,
"destination_stoppage_id": 143,
"code": "molestias-voluptas-sed-est",
"allocated_quantity": 9,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 97
}
}
Received response:
Request failed with error:
Show a specified BHN Destination.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "cumque",
"destination_source_id": 518,
"destination_stoppage_id": 518,
"code": "quos-voluptatum-esse-velit-eum-illum",
"allocated_quantity": 1,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 98
}
}
Received response:
Request failed with error:
Update the specified BHN Destination
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"impedit\",
\"destination_source_id\": \"et\",
\"destination_stoppage_id\": \"repudiandae\",
\"code\": \"maiores\",
\"allocated_quantity\": \"rerum\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "impedit",
"destination_source_id": "et",
"destination_stoppage_id": "repudiandae",
"code": "maiores",
"allocated_quantity": "rerum"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "illum",
"destination_source_id": 418,
"destination_stoppage_id": 418,
"code": "est-ab-consequatur-quasi",
"allocated_quantity": 1,
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 99
}
}
Received response:
Request failed with error:
Delete a BHN Destination
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations/20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_destination_allocations/20"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the BHN Requests or search by registration number and waybill number.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_requests?term=velit&status=dignissimos&type=aut&per_page=18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_requests"
);
const params = {
"term": "velit",
"status": "dignissimos",
"type": "aut",
"per_page": "18",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vendor_id": 1,
"company_id": 71,
"type": "loading_request",
"vehicle_id": 1572,
"category_id": 27,
"sub_category_id": 27,
"way_bill_number": 285161928,
"data": {
"key": "value",
"another_key": "another_value",
"total_quantity": 0
},
"remarks": "Hatter. 'You might just as I'd taken the highest tree in front of the Shark, But, when the White Rabbit interrupted: 'UNimportant, your Majesty means, of course,' said the Caterpillar. 'Well, I've.",
"rejection_reason": "The Mouse did not sneeze, were the two creatures, who had been found and handed back to the Mock Turtle with a whiting. Now you know.' 'I DON'T know,' said Alice thoughtfully: 'but then--I shouldn't.",
"status": "Rejected",
"cleared": "Not yet dispensed",
"requested_total_volume": null,
"total_dispensed_volume": 0,
"dispensed_status": "Not Yet Dispensed",
"company": {
"id": 71,
"company_name": "PABOD INTERNATIONAL BREWERIES PLC"
}
},
{
"id": 1,
"vendor_id": 1,
"company_id": 93,
"type": "loading_request",
"vehicle_id": 707,
"source": null,
"stoppage": null,
"category_id": 3,
"sub_category_id": 18,
"way_bill_number": "123",
"data": {
"added_quantity": "0",
"total_quantity": 1000,
"new_total_quantity": "498"
},
"remarks": "Velox integration",
"rejection_reason": null,
"status": "Approved",
"transaction_status": "Partially Dispensed",
"cleared": "Pending",
"created_at": "2024-06-01T01:00:00.000000Z",
"updated_at": "2023-09-21T13:37:20.000000Z",
"deleted_at": null,
"load_type": null,
"tonnage": null,
"age": null,
"trailer_type": null,
"make": null,
"contract": null,
"submitted_date": "2023-09-20 00:00:00",
"approve_date": "2023-09-20 00:00:00",
"reject_date": null,
"station_name": "BHN Logistic Station 1",
"transaction_type": "VELOX",
"transaction_attempt_count": 0,
"requested_total_volume": 1000,
"total_dispensed_volume": 502,
"dispensed_status": "Partially Dispensed",
"company": {
"id": 93,
"company_name": "LOGISTICS COMPANY"
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new BHN Request
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/bhn_requests" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 9,
\"type\": \"waybill_request\",
\"vehicle_id\": 16,
\"category_id\": 10,
\"sub_category_id\": 7,
\"way_bill_number\": \"eum\",
\"source\": 16,
\"stoppage\": 1,
\"status\": \"Pending\",
\"allocated_quantity\": 1,
\"destination_allocation_ids\": [
5
],
\"remarks\": \"odit\",
\"load_type\": \"light\",
\"submitted_user_id\": 6,
\"tonnage\": \"dolores\",
\"age\": \"iure\",
\"trailer_type\": \"nisi\",
\"make\": \"quis\",
\"contract\": \"aut\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_requests"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 9,
"type": "waybill_request",
"vehicle_id": 16,
"category_id": 10,
"sub_category_id": 7,
"way_bill_number": "eum",
"source": 16,
"stoppage": 1,
"status": "Pending",
"allocated_quantity": 1,
"destination_allocation_ids": [
5
],
"remarks": "odit",
"load_type": "light",
"submitted_user_id": 6,
"tonnage": "dolores",
"age": "iure",
"trailer_type": "nisi",
"make": "quis",
"contract": "aut"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"vendor_id": 34,
"company_id": 51,
"type": "loading_request",
"vehicle_id": 983,
"category_id": 13,
"sub_category_id": 13,
"way_bill_number": 1604,
"data": {
"status": "active",
"created_at": "2026-07-03T12:33:26.791971Z",
"total_quantity": 0
},
"remarks": "With gently smiling jaws!' 'I'm sure those are not the smallest notice of her going, though she felt very curious to see what was going to happen next. The first thing she heard a little shriek, and.",
"rejection_reason": "I suppose I ought to be ashamed of yourself for asking such a fall as this, I shall fall right THROUGH the earth! How funny it'll seem to come before that!' 'Call the next witness!' said the one who.",
"status": "Pending",
"cleared": "Pending",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 18785,
"requested_total_volume": null,
"total_dispensed_volume": 0,
"dispensed_status": "Not Yet Dispensed",
"company": {
"id": 51,
"company_name": "MINIMIE - MULTIPRO"
}
}
Received response:
Request failed with error:
Show a specified BHN Request.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bhn_requests/7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_requests/7"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"vendor_id": 34,
"company_id": 89,
"type": "loading_request",
"vehicle_id": 1124,
"category_id": 12,
"sub_category_id": 12,
"way_bill_number": 5,
"data": {
"status": "active",
"created_at": "2026-07-03T12:33:26.832905Z",
"total_quantity": 0
},
"remarks": "I don't believe you do lessons?' said Alice, looking down with wonder at the other bit. Her chin was pressed hard against it, that attempt proved a failure. Alice heard it before,' said Alice,) and.",
"rejection_reason": "Alice, in a natural way again. 'I wonder if I've been changed for any lesson-books!' And so it was impossible to say anything. 'Why,' said the Caterpillar called after it; and the Queen till she was.",
"status": "Approved",
"cleared": "Not yet dispensed",
"updated_at": "2026-07-03T12:33:26.000000Z",
"created_at": "2026-07-03T12:33:26.000000Z",
"id": 18786,
"requested_total_volume": null,
"total_dispensed_volume": 0,
"dispensed_status": "Not Yet Dispensed",
"company": {
"id": 89,
"company_name": "VALENCY AGRO NIGERIA LIMITED"
}
}
Received response:
Request failed with error:
Update the specified BHN Request
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/bhn_requests/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"type\": \"waybill_request\",
\"vehicle_id\": 3,
\"category_id\": 2,
\"sub_category_id\": 10,
\"way_bill_number\": \"non\",
\"source\": 14,
\"stoppage\": 14,
\"allocated_quantity\": 15,
\"destination_allocation_ids\": [
7
],
\"remarks\": \"dignissimos\",
\"load_type\": \"light\",
\"rejection_reason\": \"non\",
\"submitted_user_id\": 4,
\"approved_user_id\": 3,
\"rejected_user_id\": 18,
\"status\": \"Pending\",
\"tonnage\": \"possimus\",
\"age\": \"sunt\",
\"trailer_type\": \"sint\",
\"make\": \"eius\",
\"contract\": \"delectus\",
\"approve_date\": \"2017-07-16\",
\"reject_date\": \"2006-04-19\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_requests/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"type": "waybill_request",
"vehicle_id": 3,
"category_id": 2,
"sub_category_id": 10,
"way_bill_number": "non",
"source": 14,
"stoppage": 14,
"allocated_quantity": 15,
"destination_allocation_ids": [
7
],
"remarks": "dignissimos",
"load_type": "light",
"rejection_reason": "non",
"submitted_user_id": 4,
"approved_user_id": 3,
"rejected_user_id": 18,
"status": "Pending",
"tonnage": "possimus",
"age": "sunt",
"trailer_type": "sint",
"make": "eius",
"contract": "delectus",
"approve_date": "2017-07-16",
"reject_date": "2006-04-19"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"id": 1,
"vendor_id": 1,
"company_id": 93,
"type": "loading_request",
"vehicle_id": 707,
"source": null,
"stoppage": null,
"category_id": 3,
"sub_category_id": 18,
"way_bill_number": "123",
"data": {
"added_quantity": "0",
"total_quantity": 1000,
"new_total_quantity": "498"
},
"remarks": "Velox integration",
"rejection_reason": null,
"status": "Approved",
"transaction_status": "Partially Dispensed",
"cleared": "Pending",
"created_at": "2024-06-01T01:00:00.000000Z",
"updated_at": "2023-09-21T13:37:20.000000Z",
"deleted_at": null,
"load_type": null,
"tonnage": null,
"age": null,
"trailer_type": null,
"make": null,
"contract": null,
"submitted_date": "2023-09-20 00:00:00",
"approve_date": "2023-09-20 00:00:00",
"reject_date": null,
"station_name": "BHN Logistic Station 1",
"transaction_type": "VELOX",
"transaction_attempt_count": 0,
"requested_total_volume": 1000,
"total_dispensed_volume": 502,
"dispensed_status": "Partially Dispensed",
"company": {
"id": 93,
"company_name": "LOGISTICS COMPANY"
}
}
Received response:
Request failed with error:
Delete a BHN Request
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/bhn_requests/7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bhn_requests/7"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
This endpoint would be used to process the truck number sent from the mobile app when a request is initialized.
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/truck_data_map" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vehicle_id\": 10
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/truck_data_map"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vehicle_id": 10
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
This endpoint would be used to update customer transaction id.
requires authentication
Example request:
curl --request PATCH \
"https://cupidapiv2.smartflowtech.org/api/update_transaction_id" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"transaction_type\": \"cash\",
\"id\": 18,
\"transaction_id\": 2
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/update_transaction_id"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"transaction_type": "cash",
"id": 18,
"transaction_id": 2
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
This endpoint would be used to get the CUPID FLEET report.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/cupid_fleet_report" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cupid_fleet_report"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=54ZJsMXbyAyr1PT7Tp0wE5XiFTJ7gdNbO4pQ0I1A; expires=Fri, 03 Jul 2026 14:33:26 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/cupid_fleet_report could not be found."
}
Received response:
Request failed with error:
Get drivers for dropdown.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_drivers?term=quae&per_page=18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_drivers"
);
const params = {
"term": "quae",
"per_page": "18",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1320,
"fullname": "Jennifer Hodkiewicz",
"company_id": 94
},
{
"id": 1321,
"fullname": "Ottilie Brekke",
"company_id": 61
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Get Vehicles for dropdown.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_vehicles?vendor_id=11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_vehicles"
);
const params = {
"vendor_id": "11",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": null,
"company_id": 85,
"vendor_id": null,
"registration_number": "tf-067-xz"
},
{
"id": null,
"company_id": 42,
"vendor_id": null,
"registration_number": "ba-763-cu"
}
]
}
Received response:
Request failed with error:
Get NfcTags for dropdown.
requires authentication
This endpoint would be used to validate the waybill number.
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/validate_waybill_number" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/validate_waybill_number"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
POST api/validate_velox_transaction
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/validate_velox_transaction" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/validate_velox_transaction"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
POST api/unlock_waybill
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/unlock_waybill" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/unlock_waybill"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
General Endpoints
List of audit trail logs
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/audit_trail?per_page=18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/audit_trail"
);
const params = {
"per_page": "18",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"company_group_id": null,
"company_id": null,
"user_type": null,
"user_id": null,
"event": "created",
"auditable_type": "App\\Models\\User",
"auditable_id": 1,
"old_values": [],
"new_values": {
"title": "mr",
"name": "Adeyemi Olando",
"email": "dispatch@donebyngle.com",
"phone": "97889588",
"username": null,
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"card_token": null,
"is_admin": 0,
"is_vendor": 1,
"updated_at": "2023-09-19 11:07:53",
"created_at": "2023-09-19 11:07:53",
"id": 1
},
"url": "https://cupidapiv2.smartflowtech.org/api/oauth/login",
"ip_address": "102.89.23.244",
"user_agent": "okhttp/5.0.0-alpha.3",
"tags": null,
"created_at": "2023-09-19T12:07:53.000000Z",
"updated_at": "2023-09-19T12:07:53.000000Z",
"deleted_at": null,
"user": null
},
{
"id": 1,
"company_group_id": null,
"company_id": null,
"user_type": null,
"user_id": null,
"event": "created",
"auditable_type": "App\\Models\\User",
"auditable_id": 1,
"old_values": [],
"new_values": {
"title": "mr",
"name": "Adeyemi Olando",
"email": "dispatch@donebyngle.com",
"phone": "97889588",
"username": null,
"gender": "Male",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"card_token": null,
"is_admin": 0,
"is_vendor": 1,
"updated_at": "2023-09-19 11:07:53",
"created_at": "2023-09-19 11:07:53",
"id": 1
},
"url": "https://cupidapiv2.smartflowtech.org/api/oauth/login",
"ip_address": "102.89.23.244",
"user_agent": "okhttp/5.0.0-alpha.3",
"tags": null,
"created_at": "2023-09-19T12:07:53.000000Z",
"updated_at": "2023-09-19T12:07:53.000000Z",
"deleted_at": null,
"user": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Test Redis connection
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/test_redis" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/test_redis"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=sC7D58zzX7wqKV8mW0s7jg12z0hlrhcTHg1N8vM5; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/test_redis could not be found."
}
Received response:
Request failed with error:
Display a listing of the states or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/states?term=sed&per_page=9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/states"
);
const params = {
"term": "sed",
"per_page": "9",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"country": {
"id": 101,
"code": "IN",
"name": "India",
"slug": "",
"phonecode": 91,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
},
{
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"country": {
"id": 101,
"code": "IN",
"name": "India",
"slug": "",
"phonecode": 91,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new state
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/states" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"qui\",
\"country_id\": 5
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/states"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "qui",
"country_id": 5
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"country": {
"id": 101,
"code": "IN",
"name": "India",
"slug": "",
"phonecode": 91,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Show a specified state.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/states/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/states/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"country": {
"id": 101,
"code": "IN",
"name": "India",
"slug": "",
"phonecode": 91,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Update the specified state
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/states/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"odit\",
\"country_id\": 9
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/states/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "odit",
"country_id": 9
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"country": {
"id": 101,
"code": "IN",
"name": "India",
"slug": "",
"phonecode": 91,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Delete a state
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/states/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/states/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the countries or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/countries?term=sunt&per_page=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/countries"
);
const params = {
"term": "sunt",
"per_page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
[],
[]
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new country
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/countries" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"qui\",
\"code\": 7,
\"phonecode\": 3
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/countries"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "qui",
"code": 7,
"phonecode": 3
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": []
}
Received response:
Request failed with error:
Show a specified country.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/countries/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/countries/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": []
}
Received response:
Request failed with error:
Update the specified country
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/countries/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"dolorem\",
\"code\": 2,
\"phonecode\": 19
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/countries/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "dolorem",
"code": 2,
"phonecode": 19
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": []
}
Received response:
Request failed with error:
Delete a country
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/countries/16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/countries/16"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the cities or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/cities?term=deleniti&per_page=6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cities"
);
const params = {
"term": "deleniti",
"per_page": "6",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"name": "Bombuflat",
"slug": "",
"state_id": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"state": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
},
{
"id": 1,
"name": "Bombuflat",
"slug": "",
"state_id": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"state": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new city
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/cities" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"quia\",
\"state_id\": 13
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cities"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "quia",
"state_id": 13
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "Bombuflat",
"slug": "",
"state_id": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"state": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Show a specified city.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/cities/15" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cities/15"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "Bombuflat",
"slug": "",
"state_id": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"state": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Update the specified city
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/cities/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"pariatur\",
\"state_id\": 14
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cities/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "pariatur",
"state_id": 14
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"name": "Bombuflat",
"slug": "",
"state_id": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"state": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Delete a city
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/cities/19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/cities/19"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the Vehicle Makes or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_make" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_make"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vehicleModel": []
},
{
"vehicleModel": []
}
]
}
Received response:
Request failed with error:
Display a listing of the Vehicle Models or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_model?vehicle_make_id=18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_model"
);
const params = {
"vehicle_make_id": "18",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vehicleMake": null
},
{
"vehicleMake": null
}
]
}
Received response:
Request failed with error:
Display a listing of the Vehicle Types or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_type" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_type"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
[],
[]
]
}
Received response:
Request failed with error:
Display a listing of the Vehicle Makes or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_makes?term=est&per_page=7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes"
);
const params = {
"term": "est",
"per_page": "7",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vehicleModel": []
},
{
"vehicleModel": []
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new Vehicle Make
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"accusantium\",
\"code\": \"commodi\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "accusantium",
"code": "commodi"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vehicleModel": []
}
}
Received response:
Request failed with error:
Show a specified Vehicle Make.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_makes/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vehicleModel": []
}
}
Received response:
Request failed with error:
Update the specified Vehicle Make
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"hic\",
\"code\": \"culpa\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "hic",
"code": "culpa"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vehicleModel": []
}
}
Received response:
Request failed with error:
Delete a Vehicle Make
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_makes/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vehicle Models or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_models?term=vero&per_page=14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_models"
);
const params = {
"term": "vero",
"per_page": "14",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vehicleMake": null
},
{
"vehicleMake": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new Vehicle Model
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vehicle_models" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"nihil\",
\"code\": \"vel\",
\"vehicle_make_id\": \"ea\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_models"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "nihil",
"code": "vel",
"vehicle_make_id": "ea"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vehicleMake": null
}
}
Received response:
Request failed with error:
Show a specified Vehicle Model.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_models/10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_models/10"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vehicleMake": null
}
}
Received response:
Request failed with error:
Update the specified Vehicle Model
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vehicle_models/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"eum\",
\"code\": \"sit\",
\"vehicle_make_id\": \"sapiente\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_models/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "eum",
"code": "sit",
"vehicle_make_id": "sapiente"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vehicleMake": null
}
}
Received response:
Request failed with error:
Delete a Vehicle Model
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vehicle_models/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_models/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vehicleTypes or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_types?term=quo&per_page=10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_types"
);
const params = {
"term": "quo",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
[],
[]
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vehicleType
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vehicle_types" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"voluptas\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_types"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "voluptas"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": []
}
Received response:
Request failed with error:
Show a specified vehicleType.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vehicle_types/20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_types/20"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": []
}
Received response:
Request failed with error:
Update the specified vehicleType
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vehicle_types/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"non\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_types/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "non"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": []
}
Received response:
Request failed with error:
Delete a vehicleType
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vehicle_types/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vehicle_types/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the countries or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/country?term=corporis" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/country"
);
const params = {
"term": "corporis",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
[],
[]
]
}
Received response:
Request failed with error:
Display a listing of the states or search by names
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/country/state?country_id=hic&term=esse" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/country/state"
);
const params = {
"country_id": "hic",
"term": "esse",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"country": {
"id": 101,
"code": "IN",
"name": "India",
"slug": "",
"phonecode": 91,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
},
{
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"country": {
"id": 101,
"code": "IN",
"name": "India",
"slug": "",
"phonecode": 91,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
]
}
Received response:
Request failed with error:
Display a listing of the cities or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/state/city?state_id=ea&term=voluptatem" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/state/city"
);
const params = {
"state_id": "ea",
"term": "voluptatem",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"name": "Bombuflat",
"slug": "",
"state_id": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"state": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
},
{
"id": 1,
"name": "Bombuflat",
"slug": "",
"state_id": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"state": {
"id": 1,
"name": "Andaman and Nicobar Islands",
"slug": "",
"country_id": 101,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
]
}
Received response:
Request failed with error:
Display a listing of the products or search by name, code.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/products?term=magnam&per_page=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/products"
);
const params = {
"term": "magnam",
"per_page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Diesel",
"code": "HHK",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 51
},
{
"name": "Kerosine",
"code": "LPFO",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 52
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new product
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/products" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"ad\",
\"code\": \"numquam\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/products"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "ad",
"code": "numquam"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Diesel",
"code": "LPG",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 53
}
}
Received response:
Request failed with error:
Show a specified product.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/products/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/products/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Gas",
"code": "DPK",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 54
}
}
Received response:
Request failed with error:
Update the specified product
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/products/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"odio\",
\"code\": \"dolores\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/products/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "odio",
"code": "dolores"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Kerosine",
"code": "LPG",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 55
}
}
Received response:
Request failed with error:
Delete a product
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/products/15" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/products/15"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the payment methods or search by name, key, merchant code.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payment_methods?term=qui&per_page=6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_methods"
);
const params = {
"term": "qui",
"per_page": "6",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Paystacks",
"key": "paystack",
"pay_percent": 1.5,
"cap_fee": 2500,
"max_commission": 2000,
"verification_url": "https://api.paystack.co/transaction/verify/",
"url": "https://api.paystack.co/",
"public_key": "pk_test_226b36f5c5965953a578ba834bb9e8d9b8ceb1a2",
"secret_key": "sk_test_c2c5584f2bb181d9620ceca8341bbcdadb6ac2a6",
"merchant_no": "",
"active": true,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 53
},
{
"name": "Paystacks",
"key": "paystack",
"pay_percent": 1.5,
"cap_fee": 2500,
"max_commission": 2000,
"verification_url": "https://api.paystack.co/transaction/verify/",
"url": "https://api.paystack.co/",
"public_key": "pk_test_226b36f5c5965953a578ba834bb9e8d9b8ceb1a2",
"secret_key": "sk_test_c2c5584f2bb181d9620ceca8341bbcdadb6ac2a6",
"merchant_no": "",
"active": true,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 54
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new payment method
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/payment_methods" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"asperiores\",
\"key\": \"id\",
\"pay_percent\": 1,
\"cap_fee\": 469.327426,
\"max_commission\": 4.8,
\"verification_url\": \"https:\\/\\/kirlin.com\\/et-quia-minima-voluptatem-culpa-sequi-quia.html\",
\"public_key\": \"non\",
\"secret_key\": \"at\",
\"merchant_no\": \"dignissimos\",
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_methods"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "asperiores",
"key": "id",
"pay_percent": 1,
"cap_fee": 469.327426,
"max_commission": 4.8,
"verification_url": "https:\/\/kirlin.com\/et-quia-minima-voluptatem-culpa-sequi-quia.html",
"public_key": "non",
"secret_key": "at",
"merchant_no": "dignissimos",
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Paystacks",
"key": "paystack",
"pay_percent": 1.5,
"cap_fee": 2500,
"max_commission": 2000,
"verification_url": "https://api.paystack.co/transaction/verify/",
"url": "https://api.paystack.co/",
"public_key": "pk_test_226b36f5c5965953a578ba834bb9e8d9b8ceb1a2",
"secret_key": "sk_test_c2c5584f2bb181d9620ceca8341bbcdadb6ac2a6",
"merchant_no": "",
"active": true,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 55
}
}
Received response:
Request failed with error:
Show a specified payment method.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payment_methods/20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_methods/20"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Paystacks",
"key": "paystack",
"pay_percent": 1.5,
"cap_fee": 2500,
"max_commission": 2000,
"verification_url": "https://api.paystack.co/transaction/verify/",
"url": "https://api.paystack.co/",
"public_key": "pk_test_226b36f5c5965953a578ba834bb9e8d9b8ceb1a2",
"secret_key": "sk_test_c2c5584f2bb181d9620ceca8341bbcdadb6ac2a6",
"merchant_no": "",
"active": true,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 56
}
}
Received response:
Request failed with error:
Update the specified payment method
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/payment_methods/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"aut\",
\"key\": \"consequatur\",
\"pay_percent\": 14021.3,
\"cap_fee\": 5757738.732,
\"max_commission\": 0.41137715,
\"verification_url\": \"http:\\/\\/mann.com\\/enim-illo-molestiae-tenetur\",
\"public_key\": \"dolores\",
\"secret_key\": \"qui\",
\"merchant_no\": \"sint\",
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_methods/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "aut",
"key": "consequatur",
"pay_percent": 14021.3,
"cap_fee": 5757738.732,
"max_commission": 0.41137715,
"verification_url": "http:\/\/mann.com\/enim-illo-molestiae-tenetur",
"public_key": "dolores",
"secret_key": "qui",
"merchant_no": "sint",
"active": false
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Paystacks",
"key": "paystack",
"pay_percent": 1.5,
"cap_fee": 2500,
"max_commission": 2000,
"verification_url": "https://api.paystack.co/transaction/verify/",
"url": "https://api.paystack.co/",
"public_key": "pk_test_226b36f5c5965953a578ba834bb9e8d9b8ceb1a2",
"secret_key": "sk_test_c2c5584f2bb181d9620ceca8341bbcdadb6ac2a6",
"merchant_no": "",
"active": true,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 57
}
}
Received response:
Request failed with error:
Delete a payment method
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/payment_methods/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_methods/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the banks or search by name, ussd code.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/banks?term=harum&per_page=14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/banks"
);
const params = {
"term": "harum",
"per_page": "14",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"bank_name": "Access Bank",
"bank_logo": "https://i0.wp.com/naijaknowhow.net/wp-content/uploads/2019/04/access-bank-new-logo.jpg",
"bank_ussd_code": "*901#",
"created_at": null,
"updated_at": null,
"deleted_at": null
},
{
"id": 1,
"bank_name": "Access Bank",
"bank_logo": "https://i0.wp.com/naijaknowhow.net/wp-content/uploads/2019/04/access-bank-new-logo.jpg",
"bank_ussd_code": "*901#",
"created_at": null,
"updated_at": null,
"deleted_at": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new bank
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/banks" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "bank_name=facilis" \
--form "bank_logo=@/tmp/php8jssvg3itlir14JQsmI" const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/banks"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('bank_name', 'facilis');
body.append('bank_logo', document.querySelector('input[name="bank_logo"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"bank_name": "Access Bank",
"bank_logo": "https://i0.wp.com/naijaknowhow.net/wp-content/uploads/2019/04/access-bank-new-logo.jpg",
"bank_ussd_code": "*901#",
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
Received response:
Request failed with error:
Show a specified bank.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/banks/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/banks/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"bank_name": "Access Bank",
"bank_logo": "https://i0.wp.com/naijaknowhow.net/wp-content/uploads/2019/04/access-bank-new-logo.jpg",
"bank_ussd_code": "*901#",
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
Received response:
Request failed with error:
Update the specified bank
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/banks/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "bank_name=dolor" \
--form "bank_logo=@/tmp/phpmaqu3qobqhud2UhUPsD" const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/banks/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('bank_name', 'dolor');
body.append('bank_logo', document.querySelector('input[name="bank_logo"]').files[0]);
fetch(url, {
method: "PUT",
headers,
body,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"bank_name": "Access Bank",
"bank_logo": "https://i0.wp.com/naijaknowhow.net/wp-content/uploads/2019/04/access-bank-new-logo.jpg",
"bank_ussd_code": "*901#",
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
Received response:
Request failed with error:
Delete a bank
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/banks/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/banks/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Get a list of Paystacks banks
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/paystack_bank_lists" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/paystack_bank_lists"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=vnKgLra5LsDfco7EbgsouunAPx1Qve3hHRU5pm5k; expires=Fri, 03 Jul 2026 14:33:29 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/paystack_bank_lists could not be found."
}
Received response:
Request failed with error:
Display a listing of the banks or search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/bank_list?term=modi" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/bank_list"
);
const params = {
"term": "modi",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"bank_name": "Access Bank",
"bank_logo": "https://i0.wp.com/naijaknowhow.net/wp-content/uploads/2019/04/access-bank-new-logo.jpg",
"bank_ussd_code": "*901#",
"created_at": null,
"updated_at": null,
"deleted_at": null
},
{
"id": 1,
"bank_name": "Access Bank",
"bank_logo": "https://i0.wp.com/naijaknowhow.net/wp-content/uploads/2019/04/access-bank-new-logo.jpg",
"bank_ussd_code": "*901#",
"created_at": null,
"updated_at": null,
"deleted_at": null
}
]
}
Received response:
Request failed with error:
PAM Endpoints
Display a listing of the PAM devices or search by mac address, ip address or codename.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pam_devices?term=dicta&per_page=14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_devices"
);
const params = {
"term": "dicta",
"per_page": "14",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"mac_address": "41:B2:8C:A6:C5:67",
"last_time_online": {
"date": "1994-02-11 13:55:30.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"ip_address": "27.83.152.190",
"current_station_name": "Bergnaum-DuBuque",
"current_oem_station_id": "059037",
"current_app_version": "7.36.72",
"expected_app_version": "9.94.84",
"current_sm_company_id": 7,
"current_sm_station_id": 2,
"expected_sm_company_id": 8,
"expected_sm_station_id": 3,
"expected_oem_station_id": 7,
"expected_station_name": "E9:2F:74:D5:EF:12",
"app_mode": null,
"codename": "PAM-1",
"last_local_mapping_updated_at": {
"date": "2017-11-10 04:28:12.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"last_remote_mapping_updated_at": {
"date": "2019-06-28 12:13:33.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 51
},
{
"mac_address": "FC:15:0F:A4:B4:09",
"last_time_online": {
"date": "2021-01-27 19:44:25.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"ip_address": "35.164.127.64",
"current_station_name": "Hill-Funk",
"current_oem_station_id": "182364",
"current_app_version": "0.30.98",
"expected_app_version": "3.62.40",
"current_sm_company_id": 8,
"current_sm_station_id": 5,
"expected_sm_company_id": 6,
"expected_sm_station_id": 7,
"expected_oem_station_id": 4,
"expected_station_name": "2F:7D:B1:C4:4C:5A",
"app_mode": "NO FCC MODE",
"codename": "PAM-1",
"last_local_mapping_updated_at": {
"date": "1984-05-19 07:22:51.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"last_remote_mapping_updated_at": {
"date": "1982-01-26 14:50:28.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 52
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new PAM device
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/pam_devices" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"mac_address\": \"et\",
\"ip_address\": \"116.209.241.6\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_devices"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"mac_address": "et",
"ip_address": "116.209.241.6"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"mac_address": "FC:99:27:85:C2:D1",
"last_time_online": {
"date": "1986-08-06 09:52:18.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"ip_address": "39.80.68.148",
"current_station_name": "Borer Ltd",
"current_oem_station_id": "156858",
"current_app_version": "6.88.89",
"expected_app_version": "2.97.63",
"current_sm_company_id": 2,
"current_sm_station_id": 8,
"expected_sm_company_id": 6,
"expected_sm_station_id": 5,
"expected_oem_station_id": 6,
"expected_station_name": "AA:8F:04:AE:39:76",
"app_mode": "NO FCC MODE",
"codename": "PAM-DUGBE",
"last_local_mapping_updated_at": {
"date": "2008-05-18 09:18:31.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"last_remote_mapping_updated_at": {
"date": "1980-02-28 08:24:06.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 53
}
}
Received response:
Request failed with error:
Show a specified PAM device.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pam_devices/2?mac_address=omnis" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_devices/2"
);
const params = {
"mac_address": "omnis",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"mac_address": "F8:76:B4:55:BE:53",
"last_time_online": {
"date": "1984-06-26 18:28:12.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"ip_address": "54.116.21.22",
"current_station_name": "Gorczany LLC",
"current_oem_station_id": "666951",
"current_app_version": "0.34.72",
"expected_app_version": "1.62.0",
"current_sm_company_id": 4,
"current_sm_station_id": 5,
"expected_sm_company_id": 1,
"expected_sm_station_id": 2,
"expected_oem_station_id": 8,
"expected_station_name": "E9:6A:C2:23:D6:EF",
"app_mode": "FCC MODE",
"codename": "PAM-1",
"last_local_mapping_updated_at": {
"date": "1999-02-26 12:05:32.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"last_remote_mapping_updated_at": {
"date": "1970-06-24 08:54:04.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 54
}
}
Received response:
Request failed with error:
Update the specified PAM device
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/pam_devices/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"mac_address\": \"in\",
\"ip_address\": \"102.154.132.56\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_devices/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"mac_address": "in",
"ip_address": "102.154.132.56"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"mac_address": "95:18:20:63:8B:A5",
"last_time_online": {
"date": "1994-08-15 00:43:27.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"ip_address": "178.193.155.112",
"current_station_name": "Braun-Lesch",
"current_oem_station_id": "391625",
"current_app_version": "8.92.48",
"expected_app_version": "1.35.43",
"current_sm_company_id": 3,
"current_sm_station_id": 9,
"expected_sm_company_id": 4,
"expected_sm_station_id": 1,
"expected_oem_station_id": 1,
"expected_station_name": "2A:65:6D:1B:E2:0C",
"app_mode": null,
"codename": "PAM-DUGBE",
"last_local_mapping_updated_at": {
"date": "2023-06-09 03:53:14.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"last_remote_mapping_updated_at": {
"date": "1970-04-15 14:57:42.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 55
}
}
Received response:
Request failed with error:
Delete a PAM device
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/pam_devices/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_devices/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the PAM transaction or search by mac address, ip address.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pam_transactions?term=ut&sm_company_id=nemo&start_date=exercitationem&end_date=animi&per_page=20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_transactions"
);
const params = {
"term": "ut",
"sm_company_id": "nemo",
"start_date": "exercitationem",
"end_date": "animi",
"per_page": "20",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 10321
},
{
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 10322
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new PAM transaction
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/pam_transactions" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_transactions"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 10323
}
}
Received response:
Request failed with error:
Show a specified PAM transaction.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pam_transactions/3?mac_address=quas" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_transactions/3"
);
const params = {
"mac_address": "quas",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 10324
}
}
Received response:
Request failed with error:
Update the specified PAM transaction
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/pam_transactions/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_transactions/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"updated_at": "2026-07-03T12:33:23.000000Z",
"created_at": "2026-07-03T12:33:23.000000Z",
"id": 10325
}
}
Received response:
Request failed with error:
Delete a PAM transaction
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/pam_transactions/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_transactions/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the PAM attached devices or search by mac address, ip address, app client or station name.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pam_attached_devices?term=ad&per_page=6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices"
);
const params = {
"term": "ad",
"per_page": "6",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"last_time_online": {
"date": "2022-12-06 03:58:05.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": "6C:3E:8A:5E:46:0F",
"ip_address": "167.238.161.25",
"station_name": "Cartwright, Crona and Hoeger",
"oem_station_id": 5,
"sm_company_id": 9,
"sm_station_id": 2,
"app_client": "PABOD INTERNATIONAL BREWERIES PLC"
},
{
"last_time_online": {
"date": "2026-05-22 02:31:56.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": "B7:B5:38:5B:40:D3",
"ip_address": "93.52.185.117",
"station_name": "Pfeffer-Funk",
"oem_station_id": 9,
"sm_company_id": 7,
"sm_station_id": 5,
"app_client": "ADDMIE MULTIPRO"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new PAM attached device
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"mac_address\": \"nostrum\",
\"ip_address\": \"221.176.144.42\",
\"station_name\": \"aperiam\",
\"oem_station_id\": 10,
\"sm_company_id\": 7,
\"sm_station_id\": 6,
\"pam_device_id\": 15,
\"app_client\": \"non\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"mac_address": "nostrum",
"ip_address": "221.176.144.42",
"station_name": "aperiam",
"oem_station_id": 10,
"sm_company_id": 7,
"sm_station_id": 6,
"pam_device_id": 15,
"app_client": "non"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"last_time_online": {
"date": "2025-03-20 13:14:36.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": "D6:61:37:F3:B4:05",
"ip_address": "236.215.26.219",
"station_name": "Schmitt-Daniel",
"oem_station_id": 8,
"sm_company_id": 5,
"sm_station_id": 8,
"app_client": "ONEPORT 365 COMPANY"
}
}
Received response:
Request failed with error:
Show a specified PAM attached device.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pam_attached_devices/4?mac_address=adipisci" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices/4"
);
const params = {
"mac_address": "adipisci",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"last_time_online": {
"date": "1974-03-15 20:47:00.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": "4A:BF:53:46:C0:B3",
"ip_address": "162.114.127.177",
"station_name": "Heathcote, Gutmann and Reinger",
"oem_station_id": 7,
"sm_company_id": 8,
"sm_station_id": 7,
"app_client": "FAREAST IMPERIAL BRANDS NIG LTD"
}
}
Received response:
Request failed with error:
Update the specified PAM attached device
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices/1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"mac_address\": \"mollitia\",
\"ip_address\": \"146.121.76.167\",
\"station_name\": \"magnam\",
\"oem_station_id\": 13,
\"sm_company_id\": 11,
\"sm_station_id\": 16,
\"pam_device_id\": 17,
\"app_client\": \"ut\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices/1"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"mac_address": "mollitia",
"ip_address": "146.121.76.167",
"station_name": "magnam",
"oem_station_id": 13,
"sm_company_id": 11,
"sm_station_id": 16,
"pam_device_id": 17,
"app_client": "ut"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"last_time_online": {
"date": "1972-09-08 19:49:52.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": "35:EC:1C:40:BC:E5",
"ip_address": "231.144.254.46",
"station_name": "Collins Inc",
"oem_station_id": 2,
"sm_company_id": 3,
"sm_station_id": 5,
"app_client": "GREEN ALMONDS INNOVATIVE HUB LTD"
}
}
Received response:
Request failed with error:
Delete a PAM attached device
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_attached_devices/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
POST api/pam_error_logs
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/pam_error_logs" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"station_name\": \"laudantium\",
\"sm_company_id\": 8,
\"sm_station_id\": 16,
\"error_message\": \"debitis\",
\"error_activity\": \"vero\",
\"error_body\": \"sint\",
\"error_date_time\": \"temporibus\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_error_logs"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"station_name": "laudantium",
"sm_company_id": 8,
"sm_station_id": 16,
"error_message": "debitis",
"error_activity": "vero",
"error_body": "sint",
"error_date_time": "temporibus"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
PATCH api/transactions_flags
requires authentication
Example request:
curl --request PATCH \
"https://cupidapiv2.smartflowtech.org/api/transactions_flags" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/transactions_flags"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PATCH",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Create a specific PAM user
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/pam_user" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"schiller.lela@example.org\",
\"password\": \"vhmnq\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_user"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "schiller.lela@example.org",
"password": "vhmnq"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Get the list of PAM users
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pam_user" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pam_user"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=yK2tFzJ0mFgG8KdWEG48FmxYPd5OkdpJzgBMETUq; expires=Fri, 03 Jul 2026 14:33:23 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/pam_user could not be found."
}
Received response:
Request failed with error:
POS Endpoints
Display a listing of the fuel purchase history, filtered by company, vendor, cost center, driver, way bill, station, mac address and date range. When the date range spans more than one month, the report is generated asynchronously and emailed to the authenticated user instead of being returned inline.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history?per_page=20&company_id=1&vendor_id=1&driver_id=1&way_bill_number=WB-0001&cost_center_id=1&sm_station_id=1&mac_address=00%3A1B%3A44%3A11%3A3A%3AB7&station_name=Ikeja&start_date=2026-01-01&end_date=2026-01-31" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history"
);
const params = {
"per_page": "20",
"company_id": "1",
"vendor_id": "1",
"driver_id": "1",
"way_bill_number": "WB-0001",
"cost_center_id": "1",
"sm_station_id": "1",
"mac_address": "00:1B:44:11:3A:B7",
"station_name": "Ikeja",
"start_date": "2026-01-01",
"end_date": "2026-01-31",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company_id": 5,
"vendor_id": 2,
"user_id": 49,
"cost_center_id": 53,
"nfctag_id": 518,
"driver_id": 2,
"way_bill_number": "WB-2992",
"vendor_station_name": "Okuneva-Feest",
"vehicle_plate_number": "cd-367-ak",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 147754248.76,
"volume": 3.19,
"odometer_reading": 1,
"product": "ATK",
"pump": 2,
"selling_price": 43958955.1,
"current_credit_limit": 1.11,
"attendant": "DEFAULT",
"last_volume_dispensed": 7604.99,
"last_amount_paid": 171.6,
"transaction_seq_no": 81545,
"is_balanced": false,
"oem_station_id": 2,
"sm_station_id": 6,
"balance_refunded": 57.14,
"tapnet_amount": 96898.29,
"tapnet_volume": 87.27,
"tapnet_transaction_time": {
"date": "2022-12-04 03:18:29.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": "1F:91:DB:5B:D7:0E",
"release_token": "29",
"is_fdc_value_fill": false,
"fdc_volume": 2185729.7,
"fdc_amount": 0,
"last_tsn_source": null,
"verified_volume": 1156.72,
"verified_amount": 611940284.77,
"reconciliation_source": "MANUAL",
"one_time_auth_id": 643,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 898,
"driver": {
"id": 2,
"company_id": 5,
"fullname": "BHN Driver",
"address": "BHN, Mowe Ogun State",
"phone_number": "169-355-6842",
"email": "okkyqTb@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T14:53:15.000000Z",
"updated_at": "2025-06-27T14:48:49.000000Z",
"deleted_at": null
},
"company": {
"id": 5,
"name": "BHN PLC",
"email": "aWlfgoJ@tolaram.com",
"phone_number": "175-629-5931",
"registration_number": "mq3RK",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "4525538",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "yDttYT4osnTmfy4",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:08.000000Z",
"updated_at": "2023-09-19T16:07:08.000000Z",
"deleted_at": null
},
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"costCenter": {
"id": 53,
"company_id": 5,
"name": "X-Room",
"email": null,
"phone_number": null,
"daily_purchase_budget": 1000,
"weekly_purchase_budget": 5000,
"monthly_purchase_budget": 20000,
"license_type": "lsc",
"active": 0,
"created_at": "2025-07-25T01:47:26.000000Z",
"updated_at": "2025-08-14T07:49:44.000000Z",
"deleted_at": null
},
"nfcTag": {
"id": 518,
"company_id": 5,
"vendor_id": 1,
"user_id": null,
"station_id": null,
"pin": null,
"nfctag_type": "Key Tag",
"nfctag_code": "VLX 7318",
"nfctag_oem_id": "A6B54831",
"nfctag_url_slug": null,
"created_by": null,
"card_number": null,
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2024-05-25T13:50:46.000000Z",
"updated_at": "2025-04-04T11:56:53.000000Z",
"deleted_at": null,
"upload_id": 1
},
"userWallet": null,
"remark": null
},
{
"company_id": 79,
"vendor_id": 2,
"user_id": 13,
"cost_center_id": 6,
"nfctag_id": 332,
"driver_id": 813,
"way_bill_number": "WB-3368",
"vendor_station_name": "VonRueden-Schmidt",
"vehicle_plate_number": "ne-993-ea",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 118068082.81,
"volume": 5304.28,
"odometer_reading": 4,
"product": "LPFO",
"pump": 8,
"selling_price": 43963074.68,
"current_credit_limit": 4716.19,
"attendant": "DEFAULT",
"last_volume_dispensed": 13241.24,
"last_amount_paid": 5.91,
"transaction_seq_no": 69526,
"is_balanced": false,
"oem_station_id": 7,
"sm_station_id": 3,
"balance_refunded": 52852.07,
"tapnet_amount": 35.42,
"tapnet_volume": 14.75,
"tapnet_transaction_time": {
"date": "1987-03-19 04:47:21.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": "C7:C9:45:15:1C:26",
"release_token": "09",
"is_fdc_value_fill": true,
"fdc_volume": 2531650.65,
"fdc_amount": 580446928.72,
"last_tsn_source": null,
"verified_volume": 51.34,
"verified_amount": 693.3,
"reconciliation_source": "MANUAL",
"one_time_auth_id": 542,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 899,
"driver": {
"id": 813,
"company_id": 92,
"fullname": "SHEHU BUBA",
"address": "BHN, Mowe Ogun State",
"phone_number": "508-753-6002",
"email": "VGgRlal@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T19:12:54.000000Z",
"updated_at": "2023-09-19T19:12:54.000000Z",
"deleted_at": null
},
"company": {
"id": 79,
"name": "PURE FLOUR MILLS LIMITED",
"email": "NvpRWcl@tolaram.com",
"phone_number": "956-373-5185",
"registration_number": "sPLN8",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "6844798",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "KH9TJNhCdtRvuYZ",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:27.000000Z",
"updated_at": "2023-09-19T16:09:27.000000Z",
"deleted_at": null
},
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"costCenter": {
"id": 6,
"company_id": 92,
"name": "MCPL",
"email": "9FX7NIt@tolaram.com",
"phone_number": "140-513-6611",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:50.000000Z",
"updated_at": "2025-09-02T00:09:11.000000Z",
"deleted_at": null
},
"nfcTag": {
"id": 332,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "7002",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7341",
"nfctag_oem_id": "46985231",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "21740519",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:45:05.000000Z",
"updated_at": "2023-09-19T18:45:05.000000Z",
"deleted_at": null,
"upload_id": null
},
"userWallet": null,
"remark": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new Fuel purchase history
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 20,
\"vendor_id\": 9,
\"cost_center_id\": 16,
\"nfctag_id\": 19,
\"driver_id\": 3,
\"way_bill_number\": \"ut\",
\"vendor_station_name\": \"facere\",
\"vehicle_plate_number\": \"similique\",
\"auth_type\": \"Card\",
\"barcode_id\": \"quae\",
\"amount_paid\": 27.45,
\"volume\": 3.030878,
\"odometer_reading\": 28.98191,
\"product\": \"AGO\",
\"pump\": 14,
\"selling_price\": 5.1,
\"current_credit_limit\": 33086.21426187,
\"attendant\": \"quas\",
\"last_volume_dispensed\": 21.744,
\"last_amount_paid\": 11039.329,
\"transaction_seq_no\": 16,
\"is_balanced\": false,
\"oem_station_id\": 10,
\"sm_station_id\": 7,
\"balance_refunded\": 109718.168,
\"tapnet_amount\": 28.2996,
\"tapnet_volume\": 1969807.377,
\"tapnet_transaction_time\": \"2026-07-03 12:33:27\",
\"thankucash_reward_applied\": \"ratione\",
\"thankucash_reward_value\": \"est\",
\"app_mode\": \"FCC MODE\",
\"release_token\": \"rh\",
\"is_fdc_value_fill\": true,
\"fdc_volume\": 22810.277492,
\"fdc_amount\": 4752136.30646,
\"last_tsn_source\": \"consectetur\",
\"verified_volume\": 216863,
\"verified_amount\": 190.87,
\"reconciliation_source\": \"FDC\",
\"one_time_auth_id\": 13,
\"recon_balance_refunded\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 20,
"vendor_id": 9,
"cost_center_id": 16,
"nfctag_id": 19,
"driver_id": 3,
"way_bill_number": "ut",
"vendor_station_name": "facere",
"vehicle_plate_number": "similique",
"auth_type": "Card",
"barcode_id": "quae",
"amount_paid": 27.45,
"volume": 3.030878,
"odometer_reading": 28.98191,
"product": "AGO",
"pump": 14,
"selling_price": 5.1,
"current_credit_limit": 33086.21426187,
"attendant": "quas",
"last_volume_dispensed": 21.744,
"last_amount_paid": 11039.329,
"transaction_seq_no": 16,
"is_balanced": false,
"oem_station_id": 10,
"sm_station_id": 7,
"balance_refunded": 109718.168,
"tapnet_amount": 28.2996,
"tapnet_volume": 1969807.377,
"tapnet_transaction_time": "2026-07-03 12:33:27",
"thankucash_reward_applied": "ratione",
"thankucash_reward_value": "est",
"app_mode": "FCC MODE",
"release_token": "rh",
"is_fdc_value_fill": true,
"fdc_volume": 22810.277492,
"fdc_amount": 4752136.30646,
"last_tsn_source": "consectetur",
"verified_volume": 216863,
"verified_amount": 190.87,
"reconciliation_source": "FDC",
"one_time_auth_id": 13,
"recon_balance_refunded": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 100,
"vendor_id": 1,
"user_id": 83,
"cost_center_id": 13,
"nfctag_id": 781,
"driver_id": 1072,
"way_bill_number": "WB-1812",
"vendor_station_name": "Hoeger PLC",
"vehicle_plate_number": "ga-694-ni",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 398480924.94,
"volume": 46977.54,
"odometer_reading": 0,
"product": "ATK",
"pump": 7,
"selling_price": 935.25,
"current_credit_limit": 19.18,
"attendant": "DEFAULT",
"last_volume_dispensed": 69.12,
"last_amount_paid": 170.35,
"transaction_seq_no": 27899,
"is_balanced": true,
"oem_station_id": 9,
"sm_station_id": 8,
"balance_refunded": 15.07,
"tapnet_amount": 44.01,
"tapnet_volume": 71.08,
"tapnet_transaction_time": {
"date": "1972-09-28 02:06:18.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": "8E:01:94:A0:AD:0B",
"release_token": "21",
"is_fdc_value_fill": true,
"fdc_volume": 33.2,
"fdc_amount": 8176.68,
"last_tsn_source": null,
"verified_volume": 87.81,
"verified_amount": 195.02,
"reconciliation_source": "MANUAL",
"one_time_auth_id": 703,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 900,
"driver": {
"id": 1072,
"company_id": 8,
"fullname": "ABDULHAMID AYUBA",
"address": "BHN, Mowe Ogun State",
"phone_number": "741-006-4298",
"email": "asQBEvP@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T20:41:46.000000Z",
"updated_at": "2023-09-19T20:41:46.000000Z",
"deleted_at": null
},
"company": {
"id": 100,
"name": "OLAM",
"email": "JOhnAZz@tolaram.com",
"phone_number": "568-618-5923",
"registration_number": "qwMA0",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "6811827",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "ezbRghRm1Acfgru",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T20:39:23.000000Z",
"updated_at": "2023-09-19T20:39:23.000000Z",
"deleted_at": null
},
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"costCenter": {
"id": 13,
"company_id": 100,
"name": "OLAM",
"email": "9bzj8Ae@tolaram.com",
"phone_number": "202-222-0467",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T20:39:24.000000Z",
"updated_at": "2023-09-19T20:39:24.000000Z",
"deleted_at": null
},
"nfcTag": {
"id": 781,
"company_id": 100,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "6462",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-10313",
"nfctag_oem_id": "38456675",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "38456675",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": "MCPL PH",
"active": 1,
"created_at": "2024-07-02T23:21:06.000000Z",
"updated_at": "2024-07-02T23:21:06.000000Z",
"deleted_at": null,
"upload_id": null
},
"userWallet": null,
"remark": null
}
}
Received response:
Request failed with error:
Show a specified Fuel purchase history.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 32,
"vendor_id": 1,
"user_id": 38,
"cost_center_id": 41,
"nfctag_id": 313,
"driver_id": 300,
"way_bill_number": "WB-1636",
"vendor_station_name": "Ferry, Mohr and Rohan",
"vehicle_plate_number": "sj-438-qg",
"auth_type": "Key Tag",
"barcode_id": null,
"amount_paid": 617405.65,
"volume": 611025923.4,
"odometer_reading": 1,
"product": "LPG",
"pump": 1,
"selling_price": 113445.16,
"current_credit_limit": 33183188.54,
"attendant": "DEFAULT",
"last_volume_dispensed": 0.65,
"last_amount_paid": 24242.34,
"transaction_seq_no": 58941,
"is_balanced": true,
"oem_station_id": 5,
"sm_station_id": 4,
"balance_refunded": 838.75,
"tapnet_amount": 644.03,
"tapnet_volume": 16435.05,
"tapnet_transaction_time": {
"date": "2011-11-20 00:36:08.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": "94:B8:5F:18:90:75",
"release_token": "36",
"is_fdc_value_fill": true,
"fdc_volume": 1021.84,
"fdc_amount": 132751.29,
"last_tsn_source": null,
"verified_volume": 672.58,
"verified_amount": 97.37,
"reconciliation_source": "MANUAL",
"one_time_auth_id": 896,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 901,
"driver": {
"id": 300,
"company_id": 92,
"fullname": "ABUBAKAR SHEHU",
"address": "BHN, Mowe Ogun State",
"phone_number": "289-051-4000",
"email": "sKXZJfs@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:45:55.000000Z",
"updated_at": "2023-09-19T18:45:55.000000Z",
"deleted_at": null
},
"company": {
"id": 32,
"name": "HFN",
"email": "lopEKRE@tolaram.com",
"phone_number": "620-696-9628",
"registration_number": "dfwbU",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "1226571",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "MOd4VI3OjwhGHcO",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:08:00.000000Z",
"updated_at": "2023-09-19T16:08:00.000000Z",
"deleted_at": null
},
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"costCenter": {
"id": 41,
"company_id": 10,
"name": "Test SM",
"email": "TestSm@gmail.com",
"phone_number": "09012123434",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2024-05-08T07:48:29.000000Z",
"updated_at": "2024-05-08T07:48:29.000000Z",
"deleted_at": null
},
"nfcTag": {
"id": 313,
"company_id": 1,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "8449",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7319",
"nfctag_oem_id": "B6464931",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "33277056",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:36:35.000000Z",
"updated_at": "2024-06-28T11:24:12.000000Z",
"deleted_at": null,
"upload_id": null
},
"userWallet": null,
"remark": null
}
}
Received response:
Request failed with error:
Update the specified Fuel purchase history
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 16,
\"vendor_id\": 15,
\"cost_center_id\": 8,
\"nfctag_id\": 5,
\"driver_id\": 17,
\"way_bill_number\": \"voluptatem\",
\"vendor_station_name\": \"ea\",
\"vehicle_plate_number\": \"suscipit\",
\"auth_type\": \"Key Tag\",
\"barcode_id\": \"numquam\",
\"amount_paid\": 1630448.7763072,
\"volume\": 375.98,
\"odometer_reading\": 103.2,
\"product\": \"LPFO\",
\"pump\": 8,
\"selling_price\": 165606265.277,
\"current_credit_limit\": 4168.9,
\"attendant\": \"tempora\",
\"last_volume_dispensed\": 81714340.27015,
\"last_amount_paid\": 4.3,
\"transaction_seq_no\": 8,
\"is_balanced\": true,
\"oem_station_id\": 5,
\"sm_station_id\": 14,
\"balance_refunded\": 291072.5,
\"tapnet_amount\": 1.938636681,
\"tapnet_volume\": 6496.59,
\"tapnet_transaction_time\": \"2026-07-03 12:33:27\",
\"thankucash_reward_applied\": \"modi\",
\"thankucash_reward_value\": \"fugit\",
\"app_mode\": \"NO FCC MODE\",
\"release_token\": \"kg\",
\"is_fdc_value_fill\": false,
\"fdc_volume\": 156378776.3,
\"fdc_amount\": 0.87844,
\"last_tsn_source\": \"quis\",
\"verified_volume\": 290382.23958,
\"verified_amount\": 0,
\"reconciliation_source\": \"MANUAL\",
\"one_time_auth_id\": 18,
\"recon_balance_refunded\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 16,
"vendor_id": 15,
"cost_center_id": 8,
"nfctag_id": 5,
"driver_id": 17,
"way_bill_number": "voluptatem",
"vendor_station_name": "ea",
"vehicle_plate_number": "suscipit",
"auth_type": "Key Tag",
"barcode_id": "numquam",
"amount_paid": 1630448.7763072,
"volume": 375.98,
"odometer_reading": 103.2,
"product": "LPFO",
"pump": 8,
"selling_price": 165606265.277,
"current_credit_limit": 4168.9,
"attendant": "tempora",
"last_volume_dispensed": 81714340.27015,
"last_amount_paid": 4.3,
"transaction_seq_no": 8,
"is_balanced": true,
"oem_station_id": 5,
"sm_station_id": 14,
"balance_refunded": 291072.5,
"tapnet_amount": 1.938636681,
"tapnet_volume": 6496.59,
"tapnet_transaction_time": "2026-07-03 12:33:27",
"thankucash_reward_applied": "modi",
"thankucash_reward_value": "fugit",
"app_mode": "NO FCC MODE",
"release_token": "kg",
"is_fdc_value_fill": false,
"fdc_volume": 156378776.3,
"fdc_amount": 0.87844,
"last_tsn_source": "quis",
"verified_volume": 290382.23958,
"verified_amount": 0,
"reconciliation_source": "MANUAL",
"one_time_auth_id": 18,
"recon_balance_refunded": false
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 76,
"vendor_id": 2,
"user_id": 167,
"cost_center_id": 6,
"nfctag_id": 195,
"driver_id": 147,
"way_bill_number": "WB-5412",
"vendor_station_name": "Witting Inc",
"vehicle_plate_number": "ut-297-ro",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 2.15,
"volume": 59278037.72,
"odometer_reading": 8,
"product": "DPK",
"pump": 5,
"selling_price": 5354.74,
"current_credit_limit": 3.19,
"attendant": "DEFAULT",
"last_volume_dispensed": 3060725.01,
"last_amount_paid": 340241.98,
"transaction_seq_no": 22783,
"is_balanced": false,
"oem_station_id": 7,
"sm_station_id": 4,
"balance_refunded": 27.16,
"tapnet_amount": 2095.52,
"tapnet_volume": 2129882.46,
"tapnet_transaction_time": {
"date": "2021-06-01 08:03:55.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "NO FCC MODE",
"mac_address": "C1:D7:F0:50:8C:BF",
"release_token": "21",
"is_fdc_value_fill": true,
"fdc_volume": 3376.66,
"fdc_amount": 442423.26,
"last_tsn_source": null,
"verified_volume": 11207.09,
"verified_amount": 0,
"reconciliation_source": "FDC",
"one_time_auth_id": 147,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 902,
"driver": {
"id": 147,
"company_id": 76,
"fullname": "IBRAHIM HARUNA",
"address": "BHN, Mowe Ogun State",
"phone_number": "938-529-6495",
"email": "UVdtxVp@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:29:31.000000Z",
"updated_at": "2023-09-19T18:29:31.000000Z",
"deleted_at": null
},
"company": {
"id": 76,
"name": "PURE FLOUR MILL",
"email": "puGjNcZ@tolaram.com",
"phone_number": "769-170-8955",
"registration_number": "qgdyi",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "5593564",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "vP6ipc4SCSjQUhc",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:25.000000Z",
"updated_at": "2023-09-19T16:09:25.000000Z",
"deleted_at": null
},
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"costCenter": {
"id": 6,
"company_id": 92,
"name": "MCPL",
"email": "9FX7NIt@tolaram.com",
"phone_number": "140-513-6611",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:50.000000Z",
"updated_at": "2025-09-02T00:09:11.000000Z",
"deleted_at": null
},
"nfcTag": {
"id": 195,
"company_id": 76,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "8545",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7993",
"nfctag_oem_id": "E6965231",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "48036898",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:29:31.000000Z",
"updated_at": "2023-09-19T18:29:31.000000Z",
"deleted_at": null,
"upload_id": null
},
"userWallet": null,
"remark": null
}
}
Received response:
Request failed with error:
Delete a Fuel purchase history
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history/7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/fuel_purchase_history/7"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the refund history or filter by company id, vendor id, start_date and end_date
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/refund_history?per_page=16&company_id=2&vendor_id=6&start_date=dolores&end_date=modi" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/refund_history"
);
const params = {
"per_page": "16",
"company_id": "2",
"vendor_id": "6",
"start_date": "dolores",
"end_date": "modi",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vendor_id": 2,
"company_id": 103,
"user_id": 79,
"amount_refunded": 1559.56,
"start_company_balance": 29.87,
"end_company_balance": 93705451.78,
"refund_date": {
"date": "2007-09-09 13:53:37.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"fuel_purchase_history_id": 479,
"vendor_station_name": "Dicki-Mayert",
"vehicle_plate_number": "LUCKY FIBRE",
"auth_type": "f",
"amount_paid": 256746026.56,
"verified_amount": 3.28,
"nfctag_id": 559,
"driver_id": 1080,
"volume": 2473245.74,
"product": "DPK",
"pump": 3,
"selling_price": 21.63,
"transaction_date": {
"date": "1971-08-10 12:16:23.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": 6,
"one_time_auth_id": 1,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 31,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"company": {
"id": 103,
"name": "LUCKY FIBRE",
"email": "GXymlJL@tolaram.com",
"phone_number": "311-441-4004",
"registration_number": "OqxBL",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "MCPL Nigeria",
"sector": "Logistics",
"tin": "4523056",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "TojLwqoDWqpJMPP",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T23:50:51.000000Z",
"updated_at": "2023-09-19T23:50:51.000000Z",
"deleted_at": null
},
"user": {
"id": 79,
"title": "IoT",
"name": "PAM User",
"email": "pamuser@smartflowvelox.com",
"phone": "390-112-0098",
"avatar": null,
"username": "pam.user",
"gender": "Neutral",
"newsletter": 1,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-20T17:45:24.000000Z",
"updated_at": "2023-09-20T17:45:24.000000Z",
"deleted_at": null
},
"fuel_purchase_history": {
"id": 479,
"company_id": 93,
"vendor_id": 1,
"user_id": 74,
"cost_center_id": 4,
"way_bill_number": "KM4DO3",
"nfctag_id": 870,
"driver_id": 223,
"vendor_station_name": "SFT LAB",
"vehicle_plate_number": "VEHICLE_TEST_20",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 1200,
"volume": 100,
"odometer_reading": "0",
"product": "AGO",
"pump": 1,
"selling_price": 12,
"current_credit_limit": 0,
"attendant": "DEFAULT",
"last_volume_dispensed": null,
"last_amount_paid": null,
"transaction_seq_no": null,
"is_balanced": 0,
"oem_station_id": 98,
"sm_station_id": 338,
"balance_refunded": null,
"tapnet_amount": null,
"tapnet_volume": null,
"tapnet_transaction_time": null,
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "NO FCC MODE",
"mac_address": null,
"release_token": "Ko",
"is_fdc_value_fill": 0,
"fdc_volume": null,
"fdc_amount": null,
"last_tsn_source": null,
"verified_volume": 0,
"verified_amount": 0,
"reconciliation_source": null,
"one_time_auth_id": null,
"recon_balance_refunded": 0,
"created_at": "2025-08-27T10:09:20.000000Z",
"updated_at": "2025-08-27T10:09:20.000000Z",
"deleted_at": null,
"transaction_id": null,
"fleet_request_volume": "100",
"pos_transaction_id": null,
"nozzle_id": null,
"cost_center": {
"id": 4,
"company_id": 93,
"name": "LAFARGE AFRICA",
"email": "pyraM4l@tolaram.com",
"phone_number": "512-189-8965",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:25.000000Z",
"updated_at": "2023-09-19T19:05:25.000000Z",
"deleted_at": null
}
},
"nfc_tag": {
"id": 559,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "7484",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-10243",
"nfctag_oem_id": "46964121",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "46964121",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": "MCPL PH",
"active": 1,
"created_at": "2024-07-02T23:13:27.000000Z",
"updated_at": "2024-07-02T23:13:27.000000Z",
"deleted_at": null,
"upload_id": null
},
"driver": {
"id": 1080,
"company_id": 8,
"fullname": "MOHAMMED MOHAMMED",
"address": "BHN, Mowe Ogun State",
"phone_number": "690-005-8104",
"email": "gOCuOJG@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T20:42:29.000000Z",
"updated_at": "2023-09-19T20:42:29.000000Z",
"deleted_at": null
},
"cost_center": {
"id": 4,
"company_id": 93,
"name": "LAFARGE AFRICA",
"email": "pyraM4l@tolaram.com",
"phone_number": "512-189-8965",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:25.000000Z",
"updated_at": "2023-09-19T19:05:25.000000Z",
"deleted_at": null
}
},
{
"vendor_id": 34,
"company_id": 3,
"user_id": 33,
"amount_refunded": 7210.26,
"start_company_balance": 5835.51,
"end_company_balance": 6987.76,
"refund_date": {
"date": "2004-12-30 12:32:28.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"fuel_purchase_history_id": 598,
"vendor_station_name": "Aufderhar-Parisian",
"vehicle_plate_number": "ADDMIE MULTIPRO",
"auth_type": "o",
"amount_paid": 2303.34,
"verified_amount": 4657.38,
"nfctag_id": 382,
"driver_id": 392,
"volume": 7447.1,
"product": "DPK",
"pump": 4,
"selling_price": 0.2,
"transaction_date": {
"date": "1992-01-02 06:00:23.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": 7,
"one_time_auth_id": 1,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 32,
"vendor": {
"id": 34,
"sm_company_id": 676,
"name": "Shoprite",
"address": "Adeniran Ogunsanya Street",
"email": "shoprite@gmail.com",
"phone_number": "17300476",
"country": "Nigeria",
"state": "Lagos",
"city": null,
"postcode": "110011",
"products_sold": "PMS,AGO,DPK,LPG",
"payment_type": "paystack",
"contact_person": "Shoprite",
"registration_number": "21388",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T21:36:48.000000Z",
"deleted_at": null,
"se_company_id": 987
},
"company": {
"id": 3,
"name": "ADDMIE MULTIPRO",
"email": "poYokKz@tolaram.com",
"phone_number": "708-034-9041",
"registration_number": "VL3IK",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "4628446",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "EF79xIGjA4L4HqT",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:08.000000Z",
"updated_at": "2023-09-19T16:07:08.000000Z",
"deleted_at": null
},
"user": {
"id": 33,
"title": "Mrs",
"name": "Oladele Folake",
"email": "folakeoladele92@gmail.com",
"phone": "994-880-7639",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=oladele.folake_MrM",
"username": "oladele.folake_MrM",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "5063691",
"created_at": "2023-09-20T00:44:15.000000Z",
"updated_at": "2023-09-20T00:44:15.000000Z",
"deleted_at": null
},
"fuel_purchase_history": {
"id": 598,
"company_id": 93,
"vendor_id": 1,
"user_id": 74,
"cost_center_id": 4,
"way_bill_number": null,
"nfctag_id": 870,
"driver_id": 223,
"vendor_station_name": "SFTLAB",
"vehicle_plate_number": "VEHICLE_TEST_20",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 166320,
"volume": 5544,
"odometer_reading": "222222",
"product": "AGO",
"pump": 1,
"selling_price": 30,
"current_credit_limit": 0,
"attendant": "DEFAULT",
"last_volume_dispensed": null,
"last_amount_paid": null,
"transaction_seq_no": null,
"is_balanced": 0,
"oem_station_id": 1,
"sm_station_id": 5,
"balance_refunded": null,
"tapnet_amount": null,
"tapnet_volume": null,
"tapnet_transaction_time": null,
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": null,
"release_token": "5O",
"is_fdc_value_fill": 0,
"fdc_volume": null,
"fdc_amount": null,
"last_tsn_source": null,
"verified_volume": 0,
"verified_amount": 0,
"reconciliation_source": null,
"one_time_auth_id": null,
"recon_balance_refunded": 0,
"created_at": "2025-10-09T17:00:22.000000Z",
"updated_at": "2025-10-09T16:00:23.000000Z",
"deleted_at": null,
"transaction_id": null,
"fleet_request_volume": "5544",
"pos_transaction_id": null,
"nozzle_id": null,
"cost_center": {
"id": 4,
"company_id": 93,
"name": "LAFARGE AFRICA",
"email": "pyraM4l@tolaram.com",
"phone_number": "512-189-8965",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:25.000000Z",
"updated_at": "2023-09-19T19:05:25.000000Z",
"deleted_at": null
}
},
"nfc_tag": {
"id": 382,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "3802",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-7391",
"nfctag_oem_id": "66254831",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "66803487",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": null,
"active": 1,
"created_at": "2023-09-19T18:46:55.000000Z",
"updated_at": "2023-09-19T18:46:55.000000Z",
"deleted_at": null,
"upload_id": null
},
"driver": {
"id": 392,
"company_id": 8,
"fullname": "ABDULSAMAD SAHABI",
"address": "BHN, Mowe Ogun State",
"phone_number": "560-038-4049",
"email": "OLntHgV@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T19:00:31.000000Z",
"updated_at": "2023-09-19T19:00:31.000000Z",
"deleted_at": null
},
"cost_center": {
"id": 4,
"company_id": 93,
"name": "LAFARGE AFRICA",
"email": "pyraM4l@tolaram.com",
"phone_number": "512-189-8965",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:25.000000Z",
"updated_at": "2023-09-19T19:05:25.000000Z",
"deleted_at": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a refund history
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/refund_history" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/refund_history"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Show a specified refund history.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/refund_history/18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/refund_history/18"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 34,
"company_id": 46,
"user_id": 217,
"amount_refunded": 14.08,
"start_company_balance": 2.6,
"end_company_balance": 104.14,
"refund_date": {
"date": "1999-01-25 15:51:52.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"fuel_purchase_history_id": 803,
"vendor_station_name": "Bins, Parker and Kiehn",
"vehicle_plate_number": "LUCKY FIBRES PLC (TRPT)",
"auth_type": "c",
"amount_paid": 4.11,
"verified_amount": 15922.27,
"nfctag_id": 762,
"driver_id": 247,
"volume": 1103.86,
"product": "PMS",
"pump": 4,
"selling_price": 48.58,
"transaction_date": {
"date": "2007-08-13 15:40:20.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"mac_address": 6,
"one_time_auth_id": 4,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 33,
"vendor": {
"id": 34,
"sm_company_id": 676,
"name": "Shoprite",
"address": "Adeniran Ogunsanya Street",
"email": "shoprite@gmail.com",
"phone_number": "17300476",
"country": "Nigeria",
"state": "Lagos",
"city": null,
"postcode": "110011",
"products_sold": "PMS,AGO,DPK,LPG",
"payment_type": "paystack",
"contact_person": "Shoprite",
"registration_number": "21388",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T21:36:48.000000Z",
"deleted_at": null,
"se_company_id": 987
},
"company": {
"id": 46,
"name": "LUCKY FIBRES PLC (TRPT)",
"email": "WKstmEK@tolaram.com",
"phone_number": "304-344-4925",
"registration_number": "2Udra",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "4659542",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "pAwL9EtLTRGaWgc",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:08:08.000000Z",
"updated_at": "2023-09-19T16:08:08.000000Z",
"deleted_at": null
},
"user": {
"id": 217,
"title": "Mr",
"name": "SimonCoop",
"email": "simoncoop@mailinator.com",
"phone": "09056373383",
"avatar": null,
"username": "SimonCoop",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2024-03-26T14:57:17.000000Z",
"updated_at": "2024-03-26T14:57:17.000000Z",
"deleted_at": null
},
"fuel_purchase_history": {
"id": 803,
"company_id": 93,
"vendor_id": 1,
"user_id": 74,
"cost_center_id": 4,
"way_bill_number": "rs3x7m",
"nfctag_id": 870,
"driver_id": 223,
"vendor_station_name": "SFTLAB",
"vehicle_plate_number": "VEHICLE_TEST_20",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 47460,
"volume": 42,
"odometer_reading": null,
"product": "AGO",
"pump": 1,
"selling_price": 1130,
"current_credit_limit": 0,
"attendant": "DEFAULT",
"last_volume_dispensed": 0,
"last_amount_paid": 0,
"transaction_seq_no": null,
"is_balanced": 0,
"oem_station_id": 0,
"sm_station_id": 0,
"balance_refunded": null,
"tapnet_amount": null,
"tapnet_volume": null,
"tapnet_transaction_time": null,
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": null,
"release_token": "3V",
"is_fdc_value_fill": 0,
"fdc_volume": null,
"fdc_amount": null,
"last_tsn_source": null,
"verified_volume": 0,
"verified_amount": 0,
"reconciliation_source": null,
"one_time_auth_id": null,
"recon_balance_refunded": 0,
"created_at": "2025-12-15T16:11:04.000000Z",
"updated_at": "2025-12-15T15:11:22.000000Z",
"deleted_at": null,
"transaction_id": null,
"fleet_request_volume": "1250",
"pos_transaction_id": null,
"nozzle_id": null,
"cost_center": {
"id": 4,
"company_id": 93,
"name": "LAFARGE AFRICA",
"email": "pyraM4l@tolaram.com",
"phone_number": "512-189-8965",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:25.000000Z",
"updated_at": "2023-09-19T19:05:25.000000Z",
"deleted_at": null
}
},
"nfc_tag": {
"id": 762,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"station_id": null,
"pin": "5751",
"nfctag_type": "Key Tag",
"nfctag_code": "VLX-10229",
"nfctag_oem_id": "21467732",
"nfctag_url_slug": null,
"created_by": null,
"card_number": "21467732",
"card_on_thankucash": null,
"card_state": "Generic",
"station_name": "MCPL PH",
"active": 1,
"created_at": "2024-07-02T23:20:27.000000Z",
"updated_at": "2024-07-02T23:20:27.000000Z",
"deleted_at": null,
"upload_id": null
},
"driver": {
"id": 247,
"company_id": 92,
"fullname": "BASHIRU USMAN LAWAL",
"address": "BHN, Mowe Ogun State",
"phone_number": "255-552-7254",
"email": "bJPZyRx@tolaram.com",
"driver_speciality": "Trucks",
"status": "active",
"created_at": "2023-09-19T18:36:08.000000Z",
"updated_at": "2023-09-19T18:36:08.000000Z",
"deleted_at": null
},
"cost_center": {
"id": 4,
"company_id": 93,
"name": "LAFARGE AFRICA",
"email": "pyraM4l@tolaram.com",
"phone_number": "512-189-8965",
"daily_purchase_budget": 0,
"weekly_purchase_budget": 0,
"monthly_purchase_budget": 0,
"license_type": "lsc",
"active": 1,
"created_at": "2023-09-19T19:05:25.000000Z",
"updated_at": "2023-09-19T19:05:25.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Update a refund history
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/refund_history/ducimus" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/refund_history/ducimus"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Delete a Refund history
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/refund_history/18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/refund_history/18"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the refund history or filter by company id, vendor id, start_date and end_date
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/debit_history?per_page=18&company_id=15&vendor_id=15&start_date=excepturi&end_date=voluptatem" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/debit_history"
);
const params = {
"per_page": "18",
"company_id": "15",
"vendor_id": "15",
"start_date": "excepturi",
"end_date": "voluptatem",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company_id": 102,
"vendor_id": 2,
"user_id": 38,
"fuel_purchase_history_id": 602,
"start_company_balance": 7.86,
"end_company_balance": 10894371.59,
"current_credit_limit": 9,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 31,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"company": {
"id": 102,
"name": "QUANTAM PACKAGING",
"email": "zMIcpRo@tolaram.com",
"phone_number": "456-232-2535",
"registration_number": "5zYSo",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "MCPL Nigeria",
"sector": "Logistics",
"tin": "2732809",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "6hrdMfSDZM4dSx5",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T22:34:39.000000Z",
"updated_at": "2023-09-19T22:34:39.000000Z",
"deleted_at": null
},
"fuel_purchase_history": {
"id": 602,
"company_id": 93,
"vendor_id": 1,
"user_id": 74,
"cost_center_id": 4,
"way_bill_number": "6PR5WE",
"nfctag_id": 870,
"driver_id": 223,
"vendor_station_name": "SFT LAB",
"vehicle_plate_number": "VEHICLE_TEST_20",
"auth_type": "Card",
"barcode_id": null,
"amount_paid": 1200,
"volume": 100,
"odometer_reading": "0",
"product": "AGO",
"pump": 1,
"selling_price": 12,
"current_credit_limit": 0,
"attendant": "DEFAULT",
"last_volume_dispensed": null,
"last_amount_paid": null,
"transaction_seq_no": null,
"is_balanced": 0,
"oem_station_id": 98,
"sm_station_id": 338,
"balance_refunded": null,
"tapnet_amount": null,
"tapnet_volume": null,
"tapnet_transaction_time": null,
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "NO FCC MODE",
"mac_address": null,
"release_token": "iF",
"is_fdc_value_fill": 0,
"fdc_volume": null,
"fdc_amount": null,
"last_tsn_source": null,
"verified_volume": 0,
"verified_amount": 0,
"reconciliation_source": null,
"one_time_auth_id": null,
"recon_balance_refunded": 0,
"created_at": "2025-10-09T00:00:00.000000Z",
"updated_at": "2025-10-09T16:11:08.000000Z",
"deleted_at": null,
"transaction_id": null,
"fleet_request_volume": "100",
"pos_transaction_id": null,
"nozzle_id": null
},
"user": {
"id": 38,
"title": "Mrs",
"name": "Kalu Chinonso",
"email": "kchukwunonso.bhn@gmail.com",
"phone": "713-761-9803",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=kalu.chinonso_cXc",
"username": "kalu.chinonso_cXc",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "3980866",
"created_at": "2023-09-20T00:44:17.000000Z",
"updated_at": "2023-09-20T00:44:17.000000Z",
"deleted_at": null
}
},
{
"company_id": 62,
"vendor_id": 34,
"user_id": 9,
"fuel_purchase_history_id": 82,
"start_company_balance": 929.83,
"end_company_balance": 18078833.28,
"current_credit_limit": 5,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 32,
"vendor": {
"id": 34,
"sm_company_id": 676,
"name": "Shoprite",
"address": "Adeniran Ogunsanya Street",
"email": "shoprite@gmail.com",
"phone_number": "17300476",
"country": "Nigeria",
"state": "Lagos",
"city": null,
"postcode": "110011",
"products_sold": "PMS,AGO,DPK,LPG",
"payment_type": "paystack",
"contact_person": "Shoprite",
"registration_number": "21388",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T21:36:48.000000Z",
"deleted_at": null,
"se_company_id": 987
},
"company": {
"id": 62,
"name": "NORTHERN NOODLE LIMITED (KADUNA)",
"email": "QATqHKO@tolaram.com",
"phone_number": "483-470-3193",
"registration_number": "OFlj0",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "9465920",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "p1D8Nsa3vaQWgzF",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:18.000000Z",
"updated_at": "2023-09-19T16:09:18.000000Z",
"deleted_at": null
},
"fuel_purchase_history": {
"id": 82,
"company_id": 92,
"vendor_id": 1,
"user_id": 1,
"cost_center_id": 6,
"way_bill_number": "GEN-U99cdo",
"nfctag_id": 400,
"driver_id": 11,
"vendor_station_name": "SFT LAB",
"vehicle_plate_number": "EKY 609 XJ",
"auth_type": "Key Tag",
"barcode_id": null,
"amount_paid": 1500,
"volume": 15,
"odometer_reading": "0",
"product": "AGO",
"pump": 1,
"selling_price": 100,
"current_credit_limit": 0,
"attendant": "DEFAULT",
"last_volume_dispensed": null,
"last_amount_paid": null,
"transaction_seq_no": null,
"is_balanced": 0,
"oem_station_id": 204,
"sm_station_id": 364,
"balance_refunded": null,
"tapnet_amount": null,
"tapnet_volume": null,
"tapnet_transaction_time": null,
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": "88:12:E4:41:D3:55",
"release_token": "P2",
"is_fdc_value_fill": 0,
"fdc_volume": null,
"fdc_amount": null,
"last_tsn_source": null,
"verified_volume": 0,
"verified_amount": 0,
"reconciliation_source": null,
"one_time_auth_id": null,
"recon_balance_refunded": 0,
"created_at": "2023-09-26T13:00:51.000000Z",
"updated_at": "2023-09-26T13:00:51.000000Z",
"deleted_at": null,
"transaction_id": null,
"fleet_request_volume": null,
"pos_transaction_id": null,
"nozzle_id": null
},
"user": {
"id": 9,
"title": "Mrs",
"name": "Sarthak Goyal",
"email": "sarthak.goyal@tolaram.com",
"phone": "260-076-5115",
"avatar": "https://via.placeholder.com/200x200.png/0033ee?text=sarthak.goyal_vC1",
"username": "sarthak.goyal_vC1",
"gender": "Female",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 0,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": "3267412",
"created_at": "2023-09-20T00:43:57.000000Z",
"updated_at": "2023-09-20T00:43:57.000000Z",
"deleted_at": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
POST api/debit_history
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/debit_history" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/debit_history"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Show a specified refund history.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/debit_history/18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/debit_history/18"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 62,
"vendor_id": 26,
"user_id": 305,
"fuel_purchase_history_id": 368,
"start_company_balance": 0.9,
"end_company_balance": 248.25,
"current_credit_limit": 1,
"updated_at": "2026-07-03T12:33:27.000000Z",
"created_at": "2026-07-03T12:33:27.000000Z",
"id": 33,
"vendor": {
"id": 26,
"sm_company_id": 96,
"name": "Miriam Terry",
"address": "Debitis quo",
"email": "guxem@mailinator.com",
"phone_number": "9023973574",
"country": "Nigeria",
"state": "Lagos",
"city": "Dolorem",
"postcode": null,
"products_sold": "AGO,DPK",
"payment_type": "bank_transfer",
"contact_person": "Obcaecati",
"registration_number": "918",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-05-26T13:11:58.000000Z",
"updated_at": "2025-11-20T15:41:39.000000Z",
"deleted_at": null,
"se_company_id": 61
},
"company": {
"id": 62,
"name": "NORTHERN NOODLE LIMITED (KADUNA)",
"email": "QATqHKO@tolaram.com",
"phone_number": "483-470-3193",
"registration_number": "OFlj0",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "9465920",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "p1D8Nsa3vaQWgzF",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:18.000000Z",
"updated_at": "2023-09-19T16:09:18.000000Z",
"deleted_at": null
},
"fuel_purchase_history": {
"id": 368,
"company_id": 37,
"vendor_id": 1,
"user_id": 1,
"cost_center_id": 1,
"way_bill_number": null,
"nfctag_id": 833,
"driver_id": 525,
"vendor_station_name": "SFT LAB",
"vehicle_plate_number": "test timezone",
"auth_type": "Key Tag",
"barcode_id": null,
"amount_paid": 40000,
"volume": 200,
"odometer_reading": "12548",
"product": "AGO",
"pump": 2,
"selling_price": 200,
"current_credit_limit": 0,
"attendant": "DEFAULT",
"last_volume_dispensed": null,
"last_amount_paid": null,
"transaction_seq_no": null,
"is_balanced": 0,
"oem_station_id": 98,
"sm_station_id": 338,
"balance_refunded": null,
"tapnet_amount": null,
"tapnet_volume": null,
"tapnet_transaction_time": null,
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "NO FCC MODE",
"mac_address": "AAEA0DBBB8C2E295",
"release_token": "wy",
"is_fdc_value_fill": 0,
"fdc_volume": null,
"fdc_amount": null,
"last_tsn_source": null,
"verified_volume": 0,
"verified_amount": 0,
"reconciliation_source": null,
"one_time_auth_id": null,
"recon_balance_refunded": 0,
"created_at": "2025-03-25T14:00:06.000000Z",
"updated_at": "2025-03-25T14:00:06.000000Z",
"deleted_at": null,
"transaction_id": null,
"fleet_request_volume": null,
"pos_transaction_id": null,
"nozzle_id": null
},
"user": {
"id": 305,
"title": "Mr",
"name": "Azeez",
"email": "azeeez1@gmail.com",
"phone": "90239724562",
"avatar": null,
"username": "haeyzed125",
"gender": "Male",
"newsletter": 0,
"active": 1,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2025-08-31T15:51:54.000000Z",
"updated_at": "2025-11-16T20:15:19.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
PUT api/debit_history/{id}
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/debit_history/nam" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/debit_history/nam"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Delete a Refund history
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/debit_history/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/debit_history/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the one time authorizations or search by status, registration number, product.
requires authentication
Create a new one time authorization
requires authentication
Show a specified one time authorization.
requires authentication
Update the specified one time authorization
requires authentication
Delete a one time authorization
requires authentication
Check a customers' wallet balance
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/check_user_wallet_balance?email=praesentium&vendor_id=6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/check_user_wallet_balance"
);
const params = {
"email": "praesentium",
"vendor_id": "6",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=K1JWZbEgedViFMEwGseM54joSyUNhAQCTUsoRTiB; expires=Fri, 03 Jul 2026 14:33:28 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/check_user_wallet_balance could not be found."
}
Received response:
Request failed with error:
Onboarding of a customer(driver, vehicle, user, wallet, loyalty) via terminal/POS
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/customers/pos/onboarding" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 2,
\"sm_company_id\": 10,
\"vendor_id\": 20,
\"phone_number\": 273418.00853649,
\"email\": \"hazle83@example.com\",
\"name\": \"eos\",
\"address\": \"natus\",
\"driver_speciality\": \"dolores\",
\"gross_amount\": 41,
\"wallet_amount\": 15769010.1286095,
\"reference\": \"et\",
\"nfc_tag\": \"voluptas\",
\"pin\": 8,
\"vehicle_plate_number\": \"minus\",
\"vehicle_fuel_type\": \"AGO\",
\"vehicle_tank_capacity\": \"ipsam\",
\"vehicle_auth_type\": \"dolore\",
\"vehicle_tracker_id\": \"unde\",
\"vehicle_model\": \"numquam\",
\"vehicle_engine_capacity\": \"voluptatum\",
\"vehicle_color\": \"corporis\",
\"vehicle_brand\": \"perspiciatis\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/customers/pos/onboarding"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 2,
"sm_company_id": 10,
"vendor_id": 20,
"phone_number": 273418.00853649,
"email": "hazle83@example.com",
"name": "eos",
"address": "natus",
"driver_speciality": "dolores",
"gross_amount": 41,
"wallet_amount": 15769010.1286095,
"reference": "et",
"nfc_tag": "voluptas",
"pin": 8,
"vehicle_plate_number": "minus",
"vehicle_fuel_type": "AGO",
"vehicle_tank_capacity": "ipsam",
"vehicle_auth_type": "dolore",
"vehicle_tracker_id": "unde",
"vehicle_model": "numquam",
"vehicle_engine_capacity": "voluptatum",
"vehicle_color": "corporis",
"vehicle_brand": "perspiciatis"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Debit funds from a users wallet
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/debit_customer_wallet" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"amount\": 12,
\"vendor_id\": 20,
\"email\": \"lexus.miller@example.net\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/debit_customer_wallet"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"amount": 12,
"vendor_id": 20,
"email": "lexus.miller@example.net"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Export Fuel Purchase History by date range.
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/purchase_report?company_id=aut&vendor_id=soluta&email=non&start_date=ipsum&end_date=beatae&extension=%22xlsx%22%2C+%22xls%22%2C+%22pdf%22%2C+%22csv%22%2C+%22html%22%2C+%22dompdf%22%2C+%22xml%22" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/purchase_report"
);
const params = {
"company_id": "aut",
"vendor_id": "soluta",
"email": "non",
"start_date": "ipsum",
"end_date": "beatae",
"extension": ""xlsx", "xls", "pdf", "csv", "html", "dompdf", "xml"",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the unverified transactions,
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/unverified_transactions?start_date=rerum&end_date=architecto&company_id=consequatur&vendor_id=voluptas&per_page=12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/unverified_transactions"
);
const params = {
"start_date": "rerum",
"end_date": "architecto",
"company_id": "consequatur",
"vendor_id": "voluptas",
"per_page": "12",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company_id": 22,
"vendor_id": 1,
"user_id": 208,
"cost_center_id": 41,
"nfctag_id": 671,
"driver_id": 1003,
"way_bill_number": "WB-3106",
"vendor_station_name": "Anderson PLC",
"vehicle_plate_number": "pk-357-sv",
"auth_type": "Key Tag",
"barcode_id": null,
"amount_paid": 22.64,
"volume": 753.33,
"odometer_reading": 9,
"product": "ATK",
"pump": 1,
"selling_price": 782184740.95,
"current_credit_limit": 32540.9,
"attendant": "DEFAULT",
"last_volume_dispensed": 41.95,
"last_amount_paid": 18957.09,
"transaction_seq_no": 32854,
"is_balanced": false,
"oem_station_id": 3,
"sm_station_id": 2,
"balance_refunded": 142739,
"tapnet_amount": 0,
"tapnet_volume": 19249102.08,
"tapnet_transaction_time": {
"date": "1973-07-23 03:39:18.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "NO FCC MODE",
"mac_address": "01:AA:23:E2:47:DA",
"release_token": "41",
"is_fdc_value_fill": true,
"fdc_volume": 18954584.54,
"fdc_amount": 45.9,
"last_tsn_source": null,
"verified_volume": 1944.21,
"verified_amount": 3018.05,
"reconciliation_source": "FDC",
"one_time_auth_id": 69,
"recon_balance_refunded": true,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 903,
"company": {
"id": 22,
"name": "DUFIL - NOODLE (PHC)",
"email": "JRjhYgo@tolaram.com",
"phone_number": "973-596-7242",
"registration_number": "4halC",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "1105240",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "au9cdypIO7hficN",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:55.000000Z",
"updated_at": "2023-09-19T16:07:55.000000Z",
"deleted_at": null
},
"userWallet": null
},
{
"company_id": 22,
"vendor_id": 26,
"user_id": 83,
"cost_center_id": 43,
"nfctag_id": 161,
"driver_id": 939,
"way_bill_number": "WB-4583",
"vendor_station_name": "Lehner and Sons",
"vehicle_plate_number": "xf-936-cj",
"auth_type": "Key Tag",
"barcode_id": null,
"amount_paid": 41.93,
"volume": 198122816.98,
"odometer_reading": 7,
"product": "HHK",
"pump": 4,
"selling_price": 9474.71,
"current_credit_limit": 40083.09,
"attendant": "DEFAULT",
"last_volume_dispensed": 22755.16,
"last_amount_paid": 155038.86,
"transaction_seq_no": 808,
"is_balanced": false,
"oem_station_id": 7,
"sm_station_id": 5,
"balance_refunded": 3.58,
"tapnet_amount": 4291346.69,
"tapnet_volume": 1568159.93,
"tapnet_transaction_time": {
"date": "2020-01-05 00:35:04.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"thankucash_reward_applied": null,
"thankucash_reward_value": null,
"app_mode": "FCC MODE",
"mac_address": "AF:B6:19:E1:2A:82",
"release_token": "39",
"is_fdc_value_fill": true,
"fdc_volume": 2564.52,
"fdc_amount": 2113.56,
"last_tsn_source": null,
"verified_volume": 9.82,
"verified_amount": 28428934.64,
"reconciliation_source": "TAPNET",
"one_time_auth_id": 760,
"recon_balance_refunded": false,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 904,
"company": {
"id": 22,
"name": "DUFIL - NOODLE (PHC)",
"email": "JRjhYgo@tolaram.com",
"phone_number": "973-596-7242",
"registration_number": "4halC",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "1105240",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "au9cdypIO7hficN",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:55.000000Z",
"updated_at": "2023-09-19T16:07:55.000000Z",
"deleted_at": null
},
"userWallet": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Endpoint to reconcile undispensed transactions.
requires authentication
This endpoint allows you to reconcile undispensed transactions by performing various actions such as updating user wallets, creating refund history, and deleting records.
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/un_dispensed_transactions" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/un_dispensed_transactions"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Example response (200):
{
"message": "Reconciliation Transaction Successful"
}
Received response:
Request failed with error:
POST api/dispensed_transactions
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/dispensed_transactions" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/dispensed_transactions"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Update a POS config
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/pos_config/qui" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"mac_address\": \"quis\",
\"oem_station_id\": 20,
\"station_name\": \"sunt\",
\"current_app_version\": \"ullam\",
\"expected_app_version\": \"quisquam\",
\"velox_mode\": \"expedita\",
\"loyalty_mode\": \"ut\",
\"sm_company_id\": 19,
\"sm_station_id\": 3,
\"filter_per_days\": 11,
\"manager_password\": \"animi\",
\"loyalty_card_name\": \"odit\",
\"port\": \"sed\",
\"additional_config\": [
{
\"allowed_payment_method\": [
{
\"cash\": true,
\"bank_card\": false,
\"loyalty_card\": true
}
],
\"admin_control_for_cash\": false,
\"request_phone_number\": false
}
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pos_config/qui"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"mac_address": "quis",
"oem_station_id": 20,
"station_name": "sunt",
"current_app_version": "ullam",
"expected_app_version": "quisquam",
"velox_mode": "expedita",
"loyalty_mode": "ut",
"sm_company_id": 19,
"sm_station_id": 3,
"filter_per_days": 11,
"manager_password": "animi",
"loyalty_card_name": "odit",
"port": "sed",
"additional_config": [
{
"allowed_payment_method": [
{
"cash": true,
"bank_card": false,
"loyalty_card": true
}
],
"admin_control_for_cash": false,
"request_phone_number": false
}
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the pos heartbeats or filter by mac address and ip address
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pos_heartbeats?per_page=5&mac_address=est&ip_address=commodi" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats"
);
const params = {
"per_page": "5",
"mac_address": "est",
"ip_address": "commodi",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"mac_address": "3E:FB:7C:FB:D9:17",
"ip_address": "75.29.147.93",
"oem_station_id": 8,
"station_name": "Senger LLC",
"last_time_online": "2 years ago",
"current_app_version": "rerum",
"expected_app_version": "ullam",
"velox_mode": "laboriosam",
"loyalty_mode": "nam",
"sm_company_id": 8,
"sm_station_id": 6,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 41,
"status": "offline"
},
{
"mac_address": "A6:69:1B:6B:1C:F3",
"ip_address": "234.196.21.102",
"oem_station_id": 2,
"station_name": "Tillman, Hamill and Kihn",
"last_time_online": "26 years ago",
"current_app_version": "expedita",
"expected_app_version": "voluptas",
"velox_mode": "veniam",
"loyalty_mode": "odio",
"sm_company_id": 3,
"sm_station_id": 6,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 42,
"status": "offline"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Display a particular POS config by the mac address
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/get_pos_config" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_pos_config"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Create a Pos heartbeat
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Show a specified Pos Heartbeat.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/pos_heartbeats/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"mac_address": "6E:41:D0:83:9A:43",
"ip_address": "81.7.143.117",
"oem_station_id": 4,
"station_name": "Zulauf-Morissette",
"last_time_online": "34 years ago",
"current_app_version": "tenetur",
"expected_app_version": "commodi",
"velox_mode": "optio",
"loyalty_mode": "adipisci",
"sm_company_id": 2,
"sm_station_id": 3,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 43,
"status": "offline"
}
}
Received response:
Request failed with error:
Update a Pos Heartbeat
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"last_time_online\": \"2026-07-03T12:33:28\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"last_time_online": "2026-07-03T12:33:28"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"mac_address": "6C:0B:10:8B:CA:5C",
"ip_address": "93.54.138.36",
"oem_station_id": 2,
"station_name": "McGlynn, Reynolds and Paucek",
"last_time_online": "46 years ago",
"current_app_version": "ducimus",
"expected_app_version": "voluptatum",
"velox_mode": "quia",
"loyalty_mode": "sed",
"sm_company_id": 2,
"sm_station_id": 4,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 44,
"status": "offline"
}
}
Received response:
Request failed with error:
Delete a Pos heartbeat
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats/19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pos_heartbeats/19"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Retrieve the purchase history for a user's company.
requires authentication
This endpoint calculates and returns the credit and debit history for a user's company.
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/total_debit_credit_history?company_id=13" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/total_debit_credit_history"
);
const params = {
"company_id": "13",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"message": "Fetch Debit and Credit History Successful",
"credit_history": 5000,
"debit_history": 3000
}
Example response (403):
{
"message": "Forbidden. You do not have permission to access this resource."
}
Example response (500):
{
"message": "Internal Server Error. Failed to retrieve purchase history."
}
Received response:
Request failed with error:
Display a listing of the Anomaly Report
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/anomaly_report?per_page=17&company_id=10&station_name=tempore&start_date=sit&end_date=possimus" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/anomaly_report"
);
const params = {
"per_page": "17",
"company_id": "10",
"station_name": "tempore",
"start_date": "sit",
"end_date": "possimus",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"company_id": 1,
"date": "2023-09-19",
"station_name": "MCPL MOWE",
"total_tapnet_volume": "10000",
"total_cupid_volume": "15000",
"difference": "5000",
"deleted_at": null,
"created_at": "2023-09-19T16:07:07.000000Z",
"updated_at": "2023-09-19T16:07:07.000000Z",
"company": {
"id": 1,
"company_name": null
}
},
{
"id": 1,
"company_id": 1,
"date": "2023-09-19",
"station_name": "MCPL MOWE",
"total_tapnet_volume": "10000",
"total_cupid_volume": "15000",
"difference": "5000",
"deleted_at": null,
"created_at": "2023-09-19T16:07:07.000000Z",
"updated_at": "2023-09-19T16:07:07.000000Z",
"company": {
"id": 1,
"company_name": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a POS config
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/pos_config" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"mac_address\": \"ut\",
\"oem_station_id\": 9,
\"station_name\": \"qui\",
\"current_app_version\": \"ea\",
\"expected_app_version\": \"aliquam\",
\"velox_mode\": \"aliquam\",
\"loyalty_mode\": \"sunt\",
\"sm_company_id\": 1,
\"sm_station_id\": 7,
\"filter_per_days\": 20,
\"manager_password\": \"quae\",
\"loyalty_card_name\": \"enim\",
\"port\": \"at\",
\"additional_config\": [
{
\"allowed_payment_method\": [
{
\"cash\": true,
\"bank_card\": false,
\"loyalty_card\": false
}
],
\"admin_control_for_cash\": true,
\"request_phone_number\": true
}
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/pos_config"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"mac_address": "ut",
"oem_station_id": 9,
"station_name": "qui",
"current_app_version": "ea",
"expected_app_version": "aliquam",
"velox_mode": "aliquam",
"loyalty_mode": "sunt",
"sm_company_id": 1,
"sm_station_id": 7,
"filter_per_days": 20,
"manager_password": "quae",
"loyalty_card_name": "enim",
"port": "at",
"additional_config": [
{
"allowed_payment_method": [
{
"cash": true,
"bank_card": false,
"loyalty_card": false
}
],
"admin_control_for_cash": true,
"request_phone_number": true
}
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Payment Endpoints
Initialise a new Paystack payment
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/payments/initiate/paystack" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_bank_account_id\": 17,
\"company_id\": 3,
\"amount_to_pay\": 3
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/initiate/paystack"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_bank_account_id": 17,
"company_id": 3,
"amount_to_pay": 3
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"ref": "cupid-pay-1438478962",
"company_id": 35,
"company_wallet_id": 4,
"vendor_id": 2,
"company_temps_id": 35,
"initiator_id": 94,
"payment_mode_id": 3,
"status": "initiated",
"total_charged_amount": 13025.61,
"original_amount": 26.23,
"gateway_charged": 67334.01,
"wallet_amount": 0.91,
"amount_paid": 459.8,
"fee_paid": 376229.29,
"webhook_confirmed": null,
"date_webhook_confirmed": {
"date": "1980-07-30 20:46:45.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"date_transaction_verified": {
"date": "2009-10-03 12:50:01.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"verification_means": "web_callback",
"payment_cause": "cupid_recharge",
"initiating_users_name": "nass",
"paystack_subaccount_code": 228864150,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 385
}
}
Received response:
Request failed with error:
Verify Paystack payment & give value for purchase
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/payments/paystack?trxref=possimus" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reference\": \"est\",
\"company_id\": 11,
\"payment_uploaded_by\": \"perspiciatis\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/paystack"
);
const params = {
"trxref": "possimus",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reference": "est",
"company_id": 11,
"payment_uploaded_by": "perspiciatis"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Verify Paystack payment & give value for purchase
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payments/paystack/callback?trxref=consequatur" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reference\": \"officia\",
\"company_id\": 19,
\"payment_uploaded_by\": \"est\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/paystack/callback"
);
const params = {
"trxref": "consequatur",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reference": "officia",
"company_id": 19,
"payment_uploaded_by": "est"
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=Zx7l7DBCiJ880vrPVWATgvzTMZOBlb2DzjesUNPY; expires=Fri, 03 Jul 2026 14:33:28 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/payments/paystack/callback could not be found."
}
Received response:
Request failed with error:
Display a listing of the payments or search by ref, initiating users name, total charged amount, amount paid, payment cause, verification means.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payments?term=iusto&per_page=6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments"
);
const params = {
"term": "iusto",
"per_page": "6",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"ref": "cupid-pay-1688222583",
"company_id": 157,
"company_wallet_id": 3,
"vendor_id": 1,
"company_temps_id": 157,
"initiator_id": 227,
"payment_mode_id": 1,
"status": "successful",
"total_charged_amount": 96816.52,
"original_amount": 1663.46,
"gateway_charged": 21795.62,
"wallet_amount": 122437221.13,
"amount_paid": 350854.98,
"fee_paid": 24.89,
"webhook_confirmed": null,
"date_webhook_confirmed": {
"date": "2025-05-26 02:30:13.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"date_transaction_verified": {
"date": "1983-08-11 18:17:29.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"verification_means": "web_callback",
"payment_cause": "cupid_recharge",
"initiating_users_name": "mary",
"paystack_subaccount_code": 38616488,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 386
},
{
"ref": "cupid-pay-812866182",
"company_id": 54,
"company_wallet_id": 3,
"vendor_id": 26,
"company_temps_id": 54,
"initiator_id": 59,
"payment_mode_id": 3,
"status": "failed",
"total_charged_amount": 0.72,
"original_amount": 34.2,
"gateway_charged": 0.11,
"wallet_amount": 880.6,
"amount_paid": 1.04,
"fee_paid": 44118.18,
"webhook_confirmed": null,
"date_webhook_confirmed": {
"date": "1972-01-08 22:33:32.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"date_transaction_verified": {
"date": "2024-12-26 18:08:31.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"verification_means": "web_callback",
"payment_cause": "cupid_recharge",
"initiating_users_name": "Odemakin Oladeji",
"paystack_subaccount_code": 662163679,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 387
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new payment
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/payments" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Show a specified payment.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payments/10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/10"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"ref": "cupid-pay-1199835658",
"company_id": 39,
"company_wallet_id": 4,
"vendor_id": 2,
"company_temps_id": 39,
"initiator_id": 25,
"payment_mode_id": 2,
"status": "failed",
"total_charged_amount": 123.41,
"original_amount": 33981.89,
"gateway_charged": 551.39,
"wallet_amount": 1362900.17,
"amount_paid": 50260521.5,
"fee_paid": 41.76,
"webhook_confirmed": null,
"date_webhook_confirmed": {
"date": "1973-09-02 11:21:45.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"date_transaction_verified": {
"date": "2010-03-05 22:11:58.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"verification_means": "web_callback",
"payment_cause": "customer_onboarding",
"initiating_users_name": "Mushrif Ali",
"paystack_subaccount_code": 189038685,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 388
}
}
Received response:
Request failed with error:
Update the specified payment
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/payments/13" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reference\": \"temporibus\",
\"company_id\": 18,
\"payment_uploaded_by\": \"commodi\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/13"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reference": "temporibus",
"company_id": 18,
"payment_uploaded_by": "commodi"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"ref": "cupid-pay-1469691074",
"company_id": 97,
"company_wallet_id": 3,
"vendor_id": 2,
"company_temps_id": 97,
"initiator_id": 98,
"payment_mode_id": 1,
"status": "successful",
"total_charged_amount": 4.6,
"original_amount": 458431947.72,
"gateway_charged": 1050.04,
"wallet_amount": 518105.3,
"amount_paid": 1982466.7,
"fee_paid": 12700.67,
"webhook_confirmed": null,
"date_webhook_confirmed": {
"date": "2016-01-08 09:13:40.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"date_transaction_verified": {
"date": "2006-04-08 21:07:38.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"verification_means": "web_callback",
"payment_cause": "cupid_recharge",
"initiating_users_name": "Provident voluptate",
"paystack_subaccount_code": 742367818,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 389
}
}
Received response:
Request failed with error:
Delete a payment
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/payments/20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/20"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Get Paystack Sub Account
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack/modi" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack/modi"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=SpMoxwtgH2SDZIk45K4iF219ktSt9CZS7IQkTfXH; expires=Fri, 03 Jul 2026 14:33:28 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/payments/subaccount/paystack/modi could not be found."
}
Received response:
Request failed with error:
List Paystack Sub Account
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack?int=3&datetime=12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack"
);
const params = {
"int": "3",
"datetime": "12",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=9G6lSiVzhJlUqsTlHDeNoruH7aZ3eQnJH2KcRj1w; expires=Fri, 03 Jul 2026 14:33:28 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/payments/subaccount/paystack could not be found."
}
Received response:
Request failed with error:
Update Paystack Sub Account
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack/dolor" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"business_name\": \"perferendis\",
\"settlement_bank\": \"porro\",
\"account_number\": \"est\",
\"percentage_charge\": 66,
\"description\": \"laudantium\",
\"primary_contact_email\": \"impedit\",
\"primary_contact_name\": \"exercitationem\",
\"primary_contact_phone\": \"consequatur\",
\"metadata\": \"neque\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack/dolor"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"business_name": "perferendis",
"settlement_bank": "porro",
"account_number": "est",
"percentage_charge": 66,
"description": "laudantium",
"primary_contact_email": "impedit",
"primary_contact_name": "exercitationem",
"primary_contact_phone": "consequatur",
"metadata": "neque"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Create Paystack Sub Account
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"business_name\": \"ratione\",
\"settlement_bank\": \"dolorem\",
\"account_number\": \"voluptas\",
\"percentage_charge\": 709295667.45981,
\"description\": \"non\",
\"primary_contact_email\": \"commodi\",
\"primary_contact_name\": \"blanditiis\",
\"primary_contact_phone\": \"unde\",
\"metadata\": \"quibusdam\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payments/subaccount/paystack"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"business_name": "ratione",
"settlement_bank": "dolorem",
"account_number": "voluptas",
"percentage_charge": 709295667.45981,
"description": "non",
"primary_contact_email": "commodi",
"primary_contact_name": "blanditiis",
"primary_contact_phone": "unde",
"metadata": "quibusdam"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the payment histories or search by amount paid, payment made by, payment status, payment uploaded by, payment approved by, reference, channel, amount paid, payment cause, verification means.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payment_histories?term=deserunt&per_page=5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_histories"
);
const params = {
"term": "deserunt",
"per_page": "5",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"payment_id": 280,
"vendor_id": 2,
"company_id": 66,
"amount_paid": 22107551.06,
"start_company_balance": 16570792.56,
"end_company_balance": 1169.9,
"current_credit_limit": 7680669.29,
"payment_made_by": "ONE TIME CUSTOMER-CALABAR",
"payment_date": {
"date": "2009-11-21 14:35:21.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"payment_status": "Approved",
"payment_uploaded_by": "Clemmie Wolf",
"payment_approved_by": "Test users azeez",
"reference": 525863710,
"channel": "Paystack Online",
"amount_net": 192.07,
"amount_gross": 745056810.57,
"fee": 716.35,
"paystack_subaccount_code": "ACCT_2a6g8s3h1",
"evidence_path": "https://via.placeholder.com/640x480.png/000055?text=expedita",
"status_message": null,
"wallet_amount": null,
"app_label": null,
"auth_code": null,
"card_expire_date": null,
"card_holder_name": null,
"masked_pan": null,
"message": null,
"rrn": null,
"stan": null,
"status_code": null,
"terminal_id": null,
"payment_provider": null,
"payment_transaction_id": 1204042209,
"ussd_wallet_pay_id": 926897663,
"ussd_onboard_id": 722784146,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 305,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
}
},
{
"payment_id": 186,
"vendor_id": 26,
"company_id": 67,
"amount_paid": 102.98,
"start_company_balance": 0,
"end_company_balance": 516002.89,
"current_credit_limit": 121.57,
"payment_made_by": "ONEPORT 365 COMPANY",
"payment_date": {
"date": "1971-12-22 07:54:56.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"payment_status": "Pending",
"payment_uploaded_by": "Jayme Stehr Sr.",
"payment_approved_by": "Emmanuel Olaoluwa",
"reference": 865027364,
"channel": "Paystack Online",
"amount_net": 77.88,
"amount_gross": 84375.53,
"fee": 6293.51,
"paystack_subaccount_code": "ACCT_3t1j7w4d2",
"evidence_path": "https://via.placeholder.com/640x480.png/0033cc?text=qui",
"status_message": null,
"wallet_amount": null,
"app_label": null,
"auth_code": null,
"card_expire_date": null,
"card_holder_name": null,
"masked_pan": null,
"message": null,
"rrn": null,
"stan": null,
"status_code": null,
"terminal_id": null,
"payment_provider": null,
"payment_transaction_id": 1451971964,
"ussd_wallet_pay_id": 620819840,
"ussd_onboard_id": 641437553,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 306,
"vendor": {
"id": 26,
"sm_company_id": 96,
"name": "Miriam Terry",
"address": "Debitis quo",
"email": "guxem@mailinator.com",
"phone_number": "9023973574",
"country": "Nigeria",
"state": "Lagos",
"city": "Dolorem",
"postcode": null,
"products_sold": "AGO,DPK",
"payment_type": "bank_transfer",
"contact_person": "Obcaecati",
"registration_number": "918",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-05-26T13:11:58.000000Z",
"updated_at": "2025-11-20T15:41:39.000000Z",
"deleted_at": null,
"se_company_id": 61
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new payment history
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/payment_histories" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"customer_vendor_wallet_id\": 1,
\"amount_paid\": 0.801,
\"s3_url\": \"aut\",
\"velox_vendor_id\": 2,
\"velox_customer_id\": \"et\",
\"velox_customer_name\": \"minus\",
\"uploaded_by\": \"voluptates\",
\"payment_date\": \"2026-07-03\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_histories"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"customer_vendor_wallet_id": 1,
"amount_paid": 0.801,
"s3_url": "aut",
"velox_vendor_id": 2,
"velox_customer_id": "et",
"velox_customer_name": "minus",
"uploaded_by": "voluptates",
"payment_date": "2026-07-03"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"payment_id": 206,
"vendor_id": 34,
"company_id": 44,
"amount_paid": 26.15,
"start_company_balance": 78344.98,
"end_company_balance": 1793.12,
"current_credit_limit": 5.65,
"payment_made_by": "KT LFTZ ENTERPRISE",
"payment_date": {
"date": "1977-02-17 14:47:15.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"payment_status": "Pending",
"payment_uploaded_by": "Kaylee Doyle",
"payment_approved_by": "Ola Commercial",
"reference": 768695051,
"channel": "Manual Upload",
"amount_net": 21836.87,
"amount_gross": 230064.19,
"fee": 402882383.46,
"paystack_subaccount_code": "ACCT_2c6r6i0t8",
"evidence_path": "https://via.placeholder.com/640x480.png/00ff22?text=rerum",
"status_message": null,
"wallet_amount": null,
"app_label": null,
"auth_code": null,
"card_expire_date": null,
"card_holder_name": null,
"masked_pan": null,
"message": null,
"rrn": null,
"stan": null,
"status_code": null,
"terminal_id": null,
"payment_provider": "paystack",
"payment_transaction_id": 1111323879,
"ussd_wallet_pay_id": 376178239,
"ussd_onboard_id": 818876898,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 307,
"vendor": {
"id": 34,
"sm_company_id": 676,
"name": "Shoprite",
"address": "Adeniran Ogunsanya Street",
"email": "shoprite@gmail.com",
"phone_number": "17300476",
"country": "Nigeria",
"state": "Lagos",
"city": null,
"postcode": "110011",
"products_sold": "PMS,AGO,DPK,LPG",
"payment_type": "paystack",
"contact_person": "Shoprite",
"registration_number": "21388",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T21:36:48.000000Z",
"deleted_at": null,
"se_company_id": 987
}
}
}
Received response:
Request failed with error:
Show a specified payment history
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/payment_histories/13" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_histories/13"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"payment_id": 331,
"vendor_id": 26,
"company_id": 60,
"amount_paid": 6860.73,
"start_company_balance": 16206.22,
"end_company_balance": 86521.14,
"current_credit_limit": 660360.18,
"payment_made_by": "MULTIPRO KANO",
"payment_date": {
"date": "2004-04-18 03:16:16.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"payment_status": "Success",
"payment_uploaded_by": "Kellie Weissnat I",
"payment_approved_by": "Miracle Ukaka",
"reference": 349454525,
"channel": "Manual Upload",
"amount_net": 21.07,
"amount_gross": 1074991.34,
"fee": 4.01,
"paystack_subaccount_code": "ACCT_0k9e2r8g2",
"evidence_path": "https://via.placeholder.com/640x480.png/0055ee?text=necessitatibus",
"status_message": null,
"wallet_amount": null,
"app_label": null,
"auth_code": null,
"card_expire_date": null,
"card_holder_name": null,
"masked_pan": null,
"message": null,
"rrn": null,
"stan": null,
"status_code": null,
"terminal_id": null,
"payment_provider": null,
"payment_transaction_id": 545804221,
"ussd_wallet_pay_id": 731709173,
"ussd_onboard_id": 147533745,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 308,
"vendor": {
"id": 26,
"sm_company_id": 96,
"name": "Miriam Terry",
"address": "Debitis quo",
"email": "guxem@mailinator.com",
"phone_number": "9023973574",
"country": "Nigeria",
"state": "Lagos",
"city": "Dolorem",
"postcode": null,
"products_sold": "AGO,DPK",
"payment_type": "bank_transfer",
"contact_person": "Obcaecati",
"registration_number": "918",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-05-26T13:11:58.000000Z",
"updated_at": "2025-11-20T15:41:39.000000Z",
"deleted_at": null,
"se_company_id": 61
}
}
}
Received response:
Request failed with error:
Update the specified payment history
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/payment_histories/18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"selected_customer\": \"ut\",
\"payment_status\": \"iusto\",
\"amount_paid\": 133265.045,
\"payment_approved_by\": \"commodi\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_histories/18"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"selected_customer": "ut",
"payment_status": "iusto",
"amount_paid": 133265.045,
"payment_approved_by": "commodi"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"payment_id": 56,
"vendor_id": 1,
"company_id": 25,
"amount_paid": 0.65,
"start_company_balance": 5827.41,
"end_company_balance": 87775.3,
"current_credit_limit": 6583608.76,
"payment_made_by": "ELEPHANT GROUP LIMITED",
"payment_date": {
"date": "1992-01-25 18:55:06.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"payment_status": "Approved",
"payment_uploaded_by": "Rodrigo Russel V",
"payment_approved_by": "Company Only",
"reference": 484357361,
"channel": "Paystack Online",
"amount_net": 1573.4,
"amount_gross": 0.42,
"fee": 109694452.59,
"paystack_subaccount_code": "ACCT_5n1h9i0p5",
"evidence_path": "https://via.placeholder.com/640x480.png/00dd11?text=est",
"status_message": null,
"wallet_amount": null,
"app_label": null,
"auth_code": null,
"card_expire_date": null,
"card_holder_name": null,
"masked_pan": null,
"message": null,
"rrn": null,
"stan": null,
"status_code": null,
"terminal_id": null,
"payment_provider": null,
"payment_transaction_id": 281866138,
"ussd_wallet_pay_id": 687488526,
"ussd_onboard_id": 342095473,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 309,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
}
}
}
Received response:
Request failed with error:
Delete a payment history
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/payment_histories/16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/payment_histories/16"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Push Notifications Endpoints
Create a new User Device Token
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/store_user_device_token" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": 13,
\"device_token\": \"dolorum\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/store_user_device_token"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": 13,
"device_token": "dolorum"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"user_id": 3,
"device_token": "eshNn0FvR_yYyfm_rbRqQS:APA91bGB-8VaruHZH8-QE_29nGaC4M2XOvPPwDxxtbnr7UDNSL7I0mupyXoA50BbR_zdvLP_5hp6bAYmBDRguvp9xvMX5m3ht1ZEUpfJVw0fsnfWRDYogqDiiKnKMSrG5rDEryFnrUYV",
"created_at": "2023-09-20T12:20:06.000000Z",
"updated_at": "2023-09-20T12:20:06.000000Z",
"deleted_at": null
}
}
Received response:
Request failed with error:
Update a new User Device Token
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/store_user_device_token" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/store_user_device_token"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"user_id": 3,
"device_token": "eshNn0FvR_yYyfm_rbRqQS:APA91bGB-8VaruHZH8-QE_29nGaC4M2XOvPPwDxxtbnr7UDNSL7I0mupyXoA50BbR_zdvLP_5hp6bAYmBDRguvp9xvMX5m3ht1ZEUpfJVw0fsnfWRDYogqDiiKnKMSrG5rDEryFnrUYV",
"created_at": "2023-09-20T12:20:06.000000Z",
"updated_at": "2023-09-20T12:20:06.000000Z",
"deleted_at": null
}
}
Received response:
Request failed with error:
Default function for sending push notification
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/push_notification_message" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/push_notification_message"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the User Push Notification Message.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/push_notification_message?per_page=16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/push_notification_message"
);
const params = {
"per_page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 8,
"user_id": 1,
"title": "Approved Request",
"message": "Your request for WDE 313 YE has been approved.",
"is_read": true,
"created_at": "2023-09-20T15:47:19.000000Z",
"updated_at": "2023-09-20T15:48:46.000000Z",
"deleted_at": null,
"bhn_request_id": 5,
"bhn_request": {
"id": 5,
"vendor_id": 1,
"company_id": 1,
"type": "loading_request",
"vehicle_id": 2,
"source": null,
"stoppage": null,
"category_id": 1,
"sub_category_id": 8,
"way_bill_number": "GEN-GTAZcw",
"data": {
"added_quantity": "0",
"total_quantity": 31,
"new_total_quantity": 31
},
"remarks": "testing now",
"rejection_reason": null,
"status": "Approved",
"transaction_status": "Not yet dispensed",
"cleared": "Not yet dispensed",
"created_at": "2024-06-01T01:00:00.000000Z",
"updated_at": "2023-09-20T15:47:19.000000Z",
"deleted_at": null,
"load_type": null,
"tonnage": null,
"age": null,
"trailer_type": null,
"make": null,
"contract": null,
"submitted_date": "2023-09-20 00:00:00",
"approve_date": "2023-09-20 00:00:00",
"reject_date": null,
"station_name": null,
"transaction_type": null,
"transaction_attempt_count": 0,
"requested_total_volume": 31,
"total_dispensed_volume": 0,
"dispensed_status": "Not Yet Dispensed",
"company": {
"id": 1,
"company_name": "QUANTUM PACKAGING"
}
}
},
{
"id": 8,
"user_id": 1,
"title": "Approved Request",
"message": "Your request for WDE 313 YE has been approved.",
"is_read": true,
"created_at": "2023-09-20T15:47:19.000000Z",
"updated_at": "2023-09-20T15:48:46.000000Z",
"deleted_at": null,
"bhn_request_id": 5,
"bhn_request": {
"id": 5,
"vendor_id": 1,
"company_id": 1,
"type": "loading_request",
"vehicle_id": 2,
"source": null,
"stoppage": null,
"category_id": 1,
"sub_category_id": 8,
"way_bill_number": "GEN-GTAZcw",
"data": {
"added_quantity": "0",
"total_quantity": 31,
"new_total_quantity": 31
},
"remarks": "testing now",
"rejection_reason": null,
"status": "Approved",
"transaction_status": "Not yet dispensed",
"cleared": "Not yet dispensed",
"created_at": "2024-06-01T01:00:00.000000Z",
"updated_at": "2023-09-20T15:47:19.000000Z",
"deleted_at": null,
"load_type": null,
"tonnage": null,
"age": null,
"trailer_type": null,
"make": null,
"contract": null,
"submitted_date": "2023-09-20 00:00:00",
"approve_date": "2023-09-20 00:00:00",
"reject_date": null,
"station_name": null,
"transaction_type": null,
"transaction_attempt_count": 0,
"requested_total_volume": 31,
"total_dispensed_volume": 0,
"dispensed_status": "Not Yet Dispensed",
"company": {
"id": 1,
"company_name": "QUANTUM PACKAGING"
}
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Update the group of Push Notification Messages.
requires authentication
Example request:
curl --request PATCH \
"https://cupidapiv2.smartflowtech.org/api/push_notification_message" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"id\": [
14
],
\"is_read\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/push_notification_message"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"id": [
14
],
"is_read": true
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 8,
"user_id": 1,
"title": "Approved Request",
"message": "Your request for WDE 313 YE has been approved.",
"is_read": true,
"created_at": "2023-09-20T15:47:19.000000Z",
"updated_at": "2023-09-20T15:48:46.000000Z",
"deleted_at": null,
"bhn_request_id": 5,
"bhn_request": {
"id": 5,
"vendor_id": 1,
"company_id": 1,
"type": "loading_request",
"vehicle_id": 2,
"source": null,
"stoppage": null,
"category_id": 1,
"sub_category_id": 8,
"way_bill_number": "GEN-GTAZcw",
"data": {
"added_quantity": "0",
"total_quantity": 31,
"new_total_quantity": 31
},
"remarks": "testing now",
"rejection_reason": null,
"status": "Approved",
"transaction_status": "Not yet dispensed",
"cleared": "Not yet dispensed",
"created_at": "2024-06-01T01:00:00.000000Z",
"updated_at": "2023-09-20T15:47:19.000000Z",
"deleted_at": null,
"load_type": null,
"tonnage": null,
"age": null,
"trailer_type": null,
"make": null,
"contract": null,
"submitted_date": "2023-09-20 00:00:00",
"approve_date": "2023-09-20 00:00:00",
"reject_date": null,
"station_name": null,
"transaction_type": null,
"transaction_attempt_count": 0,
"requested_total_volume": 31,
"total_dispensed_volume": 0,
"dispensed_status": "Not Yet Dispensed",
"company": {
"id": 1,
"company_name": "QUANTUM PACKAGING"
}
}
}
}
Received response:
Request failed with error:
Delete a group of Push Notification Messages.
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/push_notification_message/12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/push_notification_message/12"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
User Endpoints
Permanently delete a user
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/users/force_delete_user/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users/force_delete_user/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Restore a deleted user
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/users/restore/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users/restore/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=iOOgiTJQBkuZ8glwcgEc2Wi66l5tNwn9d3CGKIS9; expires=Fri, 03 Jul 2026 14:33:24 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/users/restore/4 could not be found."
}
Received response:
Request failed with error:
Display a listing of trash users.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/users/trash?term=voluptas&per_page=3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users/trash"
);
const params = {
"term": "voluptas",
"per_page": "3",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Ms.",
"name": "Miss Vida Bins",
"email": "chackett@example.net",
"phone": "253-696-0704",
"avatar": "https://via.placeholder.com/200x200.png/0000aa?text=avatar+et",
"username": "stamm.laurel",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "Visa",
"card_last_four": "2551",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 347,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 5,
"name": "view acl"
},
{
"id": 16,
"name": "delete company group"
},
{
"id": 31,
"name": "update payment"
},
{
"id": 63,
"name": "request delete"
},
{
"id": 73,
"name": "destination_allocation create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Display a listing of the users or search by name, email, phone
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/users?term=consectetur&per_page=16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users"
);
const params = {
"term": "consectetur",
"per_page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"title": "Mr.",
"name": "Forest Kassulke MD",
"email": "desmond.dare@example.org",
"phone": "1-562-310-1305",
"avatar": "https://via.placeholder.com/200x200.png/006633?text=avatar+qui",
"username": "ugusikowski",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "Visa",
"card_last_four": "1748",
"is_vendor": false,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 350,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 7,
"name": "update acl"
},
{
"id": 9,
"name": "view company"
},
{
"id": 38,
"name": "debit customer wallet"
},
{
"id": 52,
"name": "create vendor"
},
{
"id": 86,
"name": "trip allocation create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
},
{
"title": "Prof.",
"name": "Miss Diana Toy I",
"email": "lexus99@example.com",
"phone": "445-977-0437",
"avatar": "https://via.placeholder.com/200x200.png/00aa44?text=avatar+ducimus",
"username": "kim57",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "Visa Retired",
"card_last_four": "5416",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 351,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 6,
"name": "create acl"
},
{
"id": 38,
"name": "debit customer wallet"
},
{
"id": 50,
"name": "delete vendor wallet"
},
{
"id": 71,
"name": "destination delete"
},
{
"id": 78,
"name": "truck contract update"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new user
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/users?vendor_id=3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"in\",
\"phone\": 2112911,
\"email\": \"hudson.fay@example.com\",
\"username\": \"et\",
\"gender\": \"omnis\",
\"newsletter\": false,
\"active\": true,
\"is_admin\": true,
\"is_vendor\": false,
\"suspended\": false,
\"vendors\": [
12
],
\"companies\": [
6
],
\"cost_centers\": [
5
],
\"stations\": [
10
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users"
);
const params = {
"vendor_id": "3",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "in",
"phone": 2112911,
"email": "hudson.fay@example.com",
"username": "et",
"gender": "omnis",
"newsletter": false,
"active": true,
"is_admin": true,
"is_vendor": false,
"suspended": false,
"vendors": [
12
],
"companies": [
6
],
"cost_centers": [
5
],
"stations": [
10
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Mrs.",
"name": "Felipa Skiles",
"email": "murray.denis@example.net",
"phone": "1-678-340-8346",
"avatar": "https://via.placeholder.com/200x200.png/003311?text=avatar+minus",
"username": "aliyah.carroll",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "Discover Card",
"card_last_four": "7079",
"is_vendor": false,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 352,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 2,
"name": "create"
},
{
"id": 7,
"name": "update acl"
},
{
"id": 28,
"name": "delete user"
},
{
"id": 34,
"name": "create pos"
},
{
"id": 63,
"name": "request delete"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Show a specified user.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/users/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Miss",
"name": "Dr. Jane Hickle DVM",
"email": "wilma91@example.org",
"phone": "1-347-477-6687",
"avatar": "https://via.placeholder.com/200x200.png/00cc55?text=avatar+repellat",
"username": "taryn.daniel",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "JCB",
"card_last_four": "4989",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 353,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 19,
"name": "update cost center"
},
{
"id": 34,
"name": "create pos"
},
{
"id": 41,
"name": "update user wallet"
},
{
"id": 60,
"name": "request view"
},
{
"id": 85,
"name": "trip allocation view"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Update the specified user
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/users/7?vendor_id=5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"dolore\",
\"phone\": 183612.35371952,
\"email\": \"hillary92@example.org\",
\"username\": \"sapiente\",
\"gender\": \"asperiores\",
\"newsletter\": true,
\"active\": false,
\"is_admin\": true,
\"is_vendor\": false,
\"suspended\": false,
\"vendors\": [
4
],
\"companies\": [
18
],
\"cost_centers\": [
18
],
\"stations\": [
2
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users/7"
);
const params = {
"vendor_id": "5",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "dolore",
"phone": 183612.35371952,
"email": "hillary92@example.org",
"username": "sapiente",
"gender": "asperiores",
"newsletter": true,
"active": false,
"is_admin": true,
"is_vendor": false,
"suspended": false,
"vendors": [
4
],
"companies": [
18
],
"cost_centers": [
18
],
"stations": [
2
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Ms.",
"name": "Otilia Berge",
"email": "phirthe@example.com",
"phone": "+1-678-233-7785",
"avatar": "https://via.placeholder.com/200x200.png/00aa88?text=avatar+corporis",
"username": "pat.johnston",
"gender": "Female",
"newsletter": false,
"active": true,
"card_brand": "Visa",
"card_last_four": "8282",
"is_vendor": false,
"is_admin": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 354,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 9,
"name": "view company"
},
{
"id": 42,
"name": "delete user wallet"
},
{
"id": 48,
"name": "create vendor wallet"
},
{
"id": 66,
"name": "category create"
},
{
"id": 69,
"name": "destination create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Delete a user
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/users/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/users/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Mr.",
"name": "Ramiro King",
"email": "eveline.dietrich@example.com",
"phone": "1-585-773-2428",
"avatar": "https://via.placeholder.com/200x200.png/00aaaa?text=avatar+ut",
"username": "lea.baumbach",
"gender": "Female",
"newsletter": true,
"active": true,
"card_brand": "MasterCard",
"card_last_four": "4288",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 355,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 11,
"name": "update company"
},
{
"id": 12,
"name": "delete company"
},
{
"id": 29,
"name": "view payment"
},
{
"id": 48,
"name": "create vendor wallet"
},
{
"id": 49,
"name": "update vendor wallet"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Get users by vendor. You can also search by name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_users/2?term=consequuntur&per_page=5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_users/2"
);
const params = {
"term": "consequuntur",
"per_page": "5",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"title": "Mrs.",
"name": "Treva Funk Jr.",
"email": "emmy.reynolds@example.net",
"phone": "(318) 725-1835",
"avatar": "https://via.placeholder.com/200x200.png/00ccdd?text=avatar+ipsum",
"username": "dale03",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "Visa",
"card_last_four": "2381",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 356,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 19,
"name": "update cost center"
},
{
"id": 39,
"name": "view user wallet"
},
{
"id": 52,
"name": "create vendor"
},
{
"id": 61,
"name": "request create"
},
{
"id": 74,
"name": "destination_allocation update"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
},
{
"title": "Dr.",
"name": "Dr. Perry Raynor",
"email": "qmiller@example.com",
"phone": "938-875-7427",
"avatar": "https://via.placeholder.com/200x200.png/006699?text=avatar+in",
"username": "marie.powlowski",
"gender": "Female",
"newsletter": true,
"active": true,
"card_brand": "Visa",
"card_last_four": "8999",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 357,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 10,
"name": "create company"
},
{
"id": 28,
"name": "delete user"
},
{
"id": 66,
"name": "category create"
},
{
"id": 71,
"name": "destination delete"
},
{
"id": 86,
"name": "trip allocation create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
User Wallet Endpoints
Display a list of wallets by company
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_wallets_by_company/18?per_page=19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_wallets_by_company/18"
);
const params = {
"per_page": "19",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 65,
"wallet_id": "166905058158",
"balance": 514.5322,
"credit_limit": 6190281.6619683,
"vendor_id": 18,
"vendor_wallet_id": 4,
"active": true,
"created_by": 308,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
},
"company": {
"id": 65,
"name": "OMNIBIZ AFRICA",
"email": "ObPDvga@tolaram.com",
"phone_number": "119-141-0955",
"registration_number": "ILoWj",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "9069142",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "ck32k299LcGlls8",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:20.000000Z",
"updated_at": "2023-09-19T16:09:20.000000Z",
"deleted_at": null
},
"nfctag": null
}
}
Received response:
Request failed with error:
Display a list of wallets by user
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_wallets_by_user/12?per_page=8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_wallets_by_user/12"
);
const params = {
"per_page": "8",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"user_id": 24,
"wallet_id": "475505102757",
"balance": 352.60139,
"credit_limit": 42737.8,
"vendor_id": 34,
"vendor_wallet_id": 4,
"active": true,
"created_by": 222,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 31,
"vendor_current_credit_limit": null,
"vendor": {
"id": 34,
"sm_company_id": 676,
"name": "Shoprite",
"address": "Adeniran Ogunsanya Street",
"email": "shoprite@gmail.com",
"phone_number": "17300476",
"country": "Nigeria",
"state": "Lagos",
"city": null,
"postcode": "110011",
"products_sold": "PMS,AGO,DPK,LPG",
"payment_type": "paystack",
"contact_person": "Shoprite",
"registration_number": "21388",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T21:36:48.000000Z",
"deleted_at": null,
"se_company_id": 987
},
"vendorWallet": {
"id": 4,
"vendor_id": 34,
"current_balance": null,
"current_credit_limit": null,
"active": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T20:36:37.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Display a listing of the company wallets or search by wallet ID.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/company_wallets?term=et&per_page=4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_wallets"
);
const params = {
"term": "et",
"per_page": "4",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"company_id": 48,
"wallet_id": "662674693897",
"balance": 27.8,
"credit_limit": 9218495.4386079,
"vendor_id": 2,
"vendor_wallet_id": 3,
"active": true,
"created_by": 305,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"company": {
"id": 48,
"name": "MBH POWER",
"email": "KnAOzeD@tolaram.com",
"phone_number": "821-224-1985",
"registration_number": "PlbFE",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "3766754",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "Dz3fzgCWvO0Iy9y",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:08:09.000000Z",
"updated_at": "2023-09-19T16:08:09.000000Z",
"deleted_at": null
},
"nfctag": null
},
{
"company_id": 99,
"wallet_id": "875767063954",
"balance": 2994,
"credit_limit": 233347777.333561,
"vendor_id": 1,
"vendor_wallet_id": 3,
"active": true,
"created_by": 100,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"company": {
"id": 99,
"name": "FLOUR INTERNAL MOV (PHC)",
"email": "HqWvQBm@tolaram.com",
"phone_number": "512-198-5606",
"registration_number": "c1Brq",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "8415199",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "JtIcK6o6hyI83H7",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T20:18:53.000000Z",
"updated_at": "2023-09-19T20:18:53.000000Z",
"deleted_at": null
},
"nfctag": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new company wallet
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/company_wallets" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"otp\": 5,
\"company_id\": 1,
\"vendor_id\": 13,
\"vendor_wallet_id\": 2,
\"balance\": 4937582.7291232,
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_wallets"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"otp": 5,
"company_id": 1,
"vendor_id": 13,
"vendor_wallet_id": 2,
"balance": 4937582.7291232,
"active": false
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 52,
"wallet_id": "192478932420",
"balance": 103874.68707942,
"credit_limit": 12,
"vendor_id": 1,
"vendor_wallet_id": 4,
"active": true,
"created_by": 306,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"company": {
"id": 52,
"name": "MUKESH AS TEST CUSTOMER",
"email": "LCHDDIP@tolaram.com",
"phone_number": "405-431-6216",
"registration_number": "Henup",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "5468056",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "h1V5qrIAEYeWChB",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:08:11.000000Z",
"updated_at": "2023-09-19T16:08:11.000000Z",
"deleted_at": null
},
"nfctag": null
}
}
Received response:
Request failed with error:
Show a specified company wallet.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/company_wallets/7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_wallets/7"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 4,
"wallet_id": "820595447658",
"balance": 2.770352877,
"credit_limit": 9316.2,
"vendor_id": 2,
"vendor_wallet_id": 4,
"active": true,
"created_by": 81,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"company": {
"id": 4,
"name": "ARLA - MULTIPRO",
"email": "xRrEXPw@tolaram.com",
"phone_number": "360-617-0569",
"registration_number": "E2Clg",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "3945981",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "xHTRe08e1wq80Hc",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:07:08.000000Z",
"updated_at": "2023-09-19T16:07:08.000000Z",
"deleted_at": null
},
"nfctag": null
}
}
Received response:
Request failed with error:
Update the specified company wallet
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/company_wallets/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"otp\": 14,
\"company_id\": 16,
\"vendor_id\": 5,
\"vendor_wallet_id\": 18,
\"balance\": 14780888.549941357,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_wallets/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"otp": 14,
"company_id": 16,
"vendor_id": 5,
"vendor_wallet_id": 18,
"balance": 14780888.549941357,
"active": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"company_id": 62,
"wallet_id": "567452122072",
"balance": 1173213.83966,
"credit_limit": 35.6879,
"vendor_id": 34,
"vendor_wallet_id": 4,
"active": true,
"created_by": 100,
"vendor": {
"id": 34,
"sm_company_id": 676,
"name": "Shoprite",
"address": "Adeniran Ogunsanya Street",
"email": "shoprite@gmail.com",
"phone_number": "17300476",
"country": "Nigeria",
"state": "Lagos",
"city": null,
"postcode": "110011",
"products_sold": "PMS,AGO,DPK,LPG",
"payment_type": "paystack",
"contact_person": "Shoprite",
"registration_number": "21388",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T21:36:48.000000Z",
"deleted_at": null,
"se_company_id": 987
},
"company": {
"id": 62,
"name": "NORTHERN NOODLE LIMITED (KADUNA)",
"email": "QATqHKO@tolaram.com",
"phone_number": "483-470-3193",
"registration_number": "OFlj0",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": "230415",
"address": "Sagamu",
"sector": "Logistics",
"tin": "9465920",
"website": "https://www.tolaram.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": null,
"contact_person_lastname": null,
"app_uid": "p1D8Nsa3vaQWgzF",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-09-19T16:09:18.000000Z",
"updated_at": "2023-09-19T16:09:18.000000Z",
"deleted_at": null
},
"nfctag": null
}
}
Received response:
Request failed with error:
Delete a company wallet
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/company_wallets/19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/company_wallets/19"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the user wallets or search by wallet ID.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/user_wallets?term=dolorem&per_page=12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallets"
);
const params = {
"term": "dolorem",
"per_page": "12",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"user_id": 276,
"wallet_id": "334880200002",
"balance": 4106.11907105,
"credit_limit": 26267.4,
"vendor_id": 18,
"vendor_wallet_id": 3,
"active": true,
"created_by": 92,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 32,
"vendor_current_credit_limit": 370.6,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
},
"vendorWallet": {
"id": 3,
"vendor_id": 1,
"current_balance": 999999,
"current_credit_limit": 370.6,
"active": 1,
"created_at": "2024-02-21T04:03:24.000000Z",
"updated_at": "2024-02-21T04:03:24.000000Z",
"deleted_at": null
}
},
{
"user_id": 220,
"wallet_id": "444983675172",
"balance": 79.794262,
"credit_limit": 16661.818584,
"vendor_id": 2,
"vendor_wallet_id": 4,
"active": true,
"created_by": 307,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 33,
"vendor_current_credit_limit": null,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"vendorWallet": {
"id": 4,
"vendor_id": 34,
"current_balance": null,
"current_credit_limit": null,
"active": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T20:36:37.000000Z",
"deleted_at": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new user wallet
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/user_wallets" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"otp\": 11,
\"user_id\": 8,
\"vendor_id\": 17,
\"vendor_wallet_id\": 13,
\"balance\": 271783.0997564,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallets"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"otp": 11,
"user_id": 8,
"vendor_id": 17,
"vendor_wallet_id": 13,
"balance": 271783.0997564,
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"user_id": 228,
"wallet_id": "431948917952",
"balance": 56607795.0817,
"credit_limit": 76.208,
"vendor_id": 18,
"vendor_wallet_id": 3,
"active": true,
"created_by": 73,
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 34,
"vendor_current_credit_limit": 370.6,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
},
"vendorWallet": {
"id": 3,
"vendor_id": 1,
"current_balance": 999999,
"current_credit_limit": 370.6,
"active": 1,
"created_at": "2024-02-21T04:03:24.000000Z",
"updated_at": "2024-02-21T04:03:24.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Show a specified user wallet.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/user_wallets/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallets/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"user_id": 82,
"wallet_id": "582640499112",
"balance": 238621990.73794544,
"credit_limit": 599667.82,
"vendor_id": 1,
"vendor_wallet_id": 4,
"active": true,
"created_by": 81,
"vendor_current_credit_limit": null,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"vendorWallet": {
"id": 4,
"vendor_id": 34,
"current_balance": null,
"current_credit_limit": null,
"active": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T20:36:37.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Update the specified user wallet
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/user_wallets/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"otp\": 11,
\"user_id\": 12,
\"vendor_id\": 3,
\"vendor_wallet_id\": 5,
\"balance\": 14386.271141566,
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallets/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"otp": 11,
"user_id": 12,
"vendor_id": 3,
"vendor_wallet_id": 5,
"balance": 14386.271141566,
"active": false
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"user_id": 213,
"wallet_id": "545296780365",
"balance": 2088.2,
"credit_limit": 4.29731,
"vendor_id": 2,
"vendor_wallet_id": 3,
"active": true,
"created_by": 2,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 35,
"vendor_current_credit_limit": 370.6,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"vendorWallet": {
"id": 3,
"vendor_id": 1,
"current_balance": 999999,
"current_credit_limit": 370.6,
"active": 1,
"created_at": "2024-02-21T04:03:24.000000Z",
"updated_at": "2024-02-21T04:03:24.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Delete a user wallet
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/user_wallets/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallets/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the user wallet histories or search by status, payment reference.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/user_wallet_histories?term=ullam&per_page=3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallet_histories"
);
const params = {
"term": "ullam",
"per_page": "3",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"user_id": 81,
"user_wallet_id": 2,
"vendor_id": 1,
"amount": 130.03,
"comment": "Repellat ut aperiam autem est autem et. Quis corporis autem dolorem dolor temporibus aut et. Autem quaerat non rerum non atque. Aut et ratione quos fugit excepturi.",
"payment_ref": "6a47ac1907086",
"status": "successful",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 91
},
{
"user_id": 78,
"user_wallet_id": 6,
"vendor_id": 34,
"amount": 31.99,
"comment": "Reiciendis delectus voluptatem accusantium quidem. Aliquam asperiores blanditiis quia perspiciatis non. Officia a laudantium sit pariatur eos error fugit provident.",
"payment_ref": "6a47ac19097cb",
"status": "successful",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 92
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Show a specified user wallet history
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/user_wallet_histories/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallet_histories/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"user_id": 100,
"user_wallet_id": 8,
"vendor_id": 26,
"amount": 10216.7476,
"comment": "Ea quidem cupiditate quia praesentium quam voluptate id quasi. Dignissimos earum debitis non. Qui dicta consequatur est cupiditate numquam. Ea asperiores fugit id nisi asperiores officia commodi.",
"payment_ref": "6a47ac190d43c",
"status": "initialised",
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 93
}
}
Received response:
Request failed with error:
Delete a user wallet history
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/user_wallet_histories/15" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_wallet_histories/15"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the user wallet or search by status, payment reference.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/user_company_wallets?term=voluptatem&per_page=16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets"
);
const params = {
"term": "voluptatem",
"per_page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vendor_id": 18,
"user_id": 74,
"user_wallet_id": 5,
"membership_no": "2670549096",
"balance": 2.84,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 16,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
}
},
{
"vendor_id": 18,
"user_id": 74,
"user_wallet_id": 5,
"membership_no": "0780813947",
"balance": 228214,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 17,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new user vendor wallet
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 10,
\"user_id\": 20,
\"balance\": 848375.4265681,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 10,
"user_id": 20,
"balance": 848375.4265681,
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 26,
"user_id": 74,
"user_wallet_id": 5,
"membership_no": "7470834663",
"balance": 3255.891811312,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 18,
"vendor": {
"id": 26,
"sm_company_id": 96,
"name": "Miriam Terry",
"address": "Debitis quo",
"email": "guxem@mailinator.com",
"phone_number": "9023973574",
"country": "Nigeria",
"state": "Lagos",
"city": "Dolorem",
"postcode": null,
"products_sold": "AGO,DPK",
"payment_type": "bank_transfer",
"contact_person": "Obcaecati",
"registration_number": "918",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-05-26T13:11:58.000000Z",
"updated_at": "2025-11-20T15:41:39.000000Z",
"deleted_at": null,
"se_company_id": 61
}
}
}
Received response:
Request failed with error:
Show a specified user vendor wallet
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/user_company_wallets/1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets/1"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 26,
"user_id": 78,
"user_wallet_id": 6,
"membership_no": "3203110866",
"balance": 273.23,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 19,
"vendor": {
"id": 26,
"sm_company_id": 96,
"name": "Miriam Terry",
"address": "Debitis quo",
"email": "guxem@mailinator.com",
"phone_number": "9023973574",
"country": "Nigeria",
"state": "Lagos",
"city": "Dolorem",
"postcode": null,
"products_sold": "AGO,DPK",
"payment_type": "bank_transfer",
"contact_person": "Obcaecati",
"registration_number": "918",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-05-26T13:11:58.000000Z",
"updated_at": "2025-11-20T15:41:39.000000Z",
"deleted_at": null,
"se_company_id": 61
}
}
}
Received response:
Request failed with error:
Update the specified user vendor wallet
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets/2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 15,
\"user_id\": 8,
\"balance\": 3644598.5064964,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets/2"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 15,
"user_id": 8,
"balance": 3644598.5064964,
"active": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 1,
"user_id": 100,
"user_wallet_id": 8,
"membership_no": "3280612174",
"balance": 1836.8147,
"updated_at": "2026-07-03T12:33:29.000000Z",
"created_at": "2026-07-03T12:33:29.000000Z",
"id": 20,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
}
}
}
Received response:
Request failed with error:
Delete a user vendor wallet
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/user_company_wallets/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
This endpoint allows users to create wallet(join loyalty program) themselves(if they don't already have one with the vendor)
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/create_wallet/soluta" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/create_wallet/soluta"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
This endpoint allows users to create a vendor wallet(join loyalty program) themselves(if they don't already have one). This should be implemented only if the customer knows the vendor
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/create_company_wallet/12/sed" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/create_company_wallet/12/sed"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Fund a users' wallet after verifying payment
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/fund_wallet/12/quo/facilis" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/fund_wallet/12/quo/facilis"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Fund a company's wallet after verifying payment
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/fund_company_wallet/14/10/earum/quisquam/aut" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/fund_company_wallet/14/10/earum/quisquam/aut"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the Credit Limit History or search by name, .
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/credit_limit_history?term=autem&per_page=1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history"
);
const params = {
"term": "autem",
"per_page": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"id": 1,
"vendor_id": 1,
"company_id": 127,
"user_id": 81,
"current_credit_limit": 0,
"requested_credit_limit": 100000,
"status": "Approved",
"limit_requested_by": 81,
"limit_approved_by": 81,
"created_at": "2024-05-13T09:19:09.000000Z",
"updated_at": "2024-05-13T09:22:57.000000Z",
"deleted_at": null,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"company": {
"id": 127,
"name": "ABC Comp",
"email": "info@abccompany.com",
"phone_number": "9876543210",
"registration_number": "XYZ123",
"country": "Country",
"state": "State",
"city": "City",
"postcode": "12345",
"address": "123 Main Street",
"sector": "Technology",
"tin": "123456789",
"website": "http://www.abccompany.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": "Jane",
"contact_person_lastname": "Doe",
"app_uid": "658069af90cbf",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-12-18T16:47:59.000000Z",
"updated_at": "2025-02-26T02:57:56.000000Z",
"deleted_at": null
},
"user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_requested_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_approved_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
}
},
{
"id": 1,
"vendor_id": 1,
"company_id": 127,
"user_id": 81,
"current_credit_limit": 0,
"requested_credit_limit": 100000,
"status": "Approved",
"limit_requested_by": 81,
"limit_approved_by": 81,
"created_at": "2024-05-13T09:19:09.000000Z",
"updated_at": "2024-05-13T09:22:57.000000Z",
"deleted_at": null,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"company": {
"id": 127,
"name": "ABC Comp",
"email": "info@abccompany.com",
"phone_number": "9876543210",
"registration_number": "XYZ123",
"country": "Country",
"state": "State",
"city": "City",
"postcode": "12345",
"address": "123 Main Street",
"sector": "Technology",
"tin": "123456789",
"website": "http://www.abccompany.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": "Jane",
"contact_person_lastname": "Doe",
"app_uid": "658069af90cbf",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-12-18T16:47:59.000000Z",
"updated_at": "2025-02-26T02:57:56.000000Z",
"deleted_at": null
},
"user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_requested_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_approved_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new Credit Limit History
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 20,
\"company_id\": 6,
\"user_id\": 5,
\"credit_limit\": 480778197.29679406,
\"limit_requested_by\": 12,
\"limit_approved_by\": 2,
\"status\": \"Approved\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 20,
"company_id": 6,
"user_id": 5,
"credit_limit": 480778197.29679406,
"limit_requested_by": 12,
"limit_approved_by": 2,
"status": "Approved"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"vendor_id": 1,
"company_id": 127,
"user_id": 81,
"current_credit_limit": 0,
"requested_credit_limit": 100000,
"status": "Approved",
"limit_requested_by": 81,
"limit_approved_by": 81,
"created_at": "2024-05-13T09:19:09.000000Z",
"updated_at": "2024-05-13T09:22:57.000000Z",
"deleted_at": null,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"company": {
"id": 127,
"name": "ABC Comp",
"email": "info@abccompany.com",
"phone_number": "9876543210",
"registration_number": "XYZ123",
"country": "Country",
"state": "State",
"city": "City",
"postcode": "12345",
"address": "123 Main Street",
"sector": "Technology",
"tin": "123456789",
"website": "http://www.abccompany.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": "Jane",
"contact_person_lastname": "Doe",
"app_uid": "658069af90cbf",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-12-18T16:47:59.000000Z",
"updated_at": "2025-02-26T02:57:56.000000Z",
"deleted_at": null
},
"user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_requested_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_approved_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Show a specified Credit Limit History.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/credit_limit_history/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"vendor_id": 1,
"company_id": 127,
"user_id": 81,
"current_credit_limit": 0,
"requested_credit_limit": 100000,
"status": "Approved",
"limit_requested_by": 81,
"limit_approved_by": 81,
"created_at": "2024-05-13T09:19:09.000000Z",
"updated_at": "2024-05-13T09:22:57.000000Z",
"deleted_at": null,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"company": {
"id": 127,
"name": "ABC Comp",
"email": "info@abccompany.com",
"phone_number": "9876543210",
"registration_number": "XYZ123",
"country": "Country",
"state": "State",
"city": "City",
"postcode": "12345",
"address": "123 Main Street",
"sector": "Technology",
"tin": "123456789",
"website": "http://www.abccompany.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": "Jane",
"contact_person_lastname": "Doe",
"app_uid": "658069af90cbf",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-12-18T16:47:59.000000Z",
"updated_at": "2025-02-26T02:57:56.000000Z",
"deleted_at": null
},
"user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_requested_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_approved_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Update the specified Credit Limit History
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 20,
\"company_id\": 4,
\"user_id\": 3,
\"credit_limit\": 0,
\"limit_requested_by\": 16,
\"limit_approved_by\": 7,
\"status\": \"Disapproved\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 20,
"company_id": 4,
"user_id": 3,
"credit_limit": 0,
"limit_requested_by": 16,
"limit_approved_by": 7,
"status": "Disapproved"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"id": 1,
"vendor_id": 1,
"company_id": 127,
"user_id": 81,
"current_credit_limit": 0,
"requested_credit_limit": 100000,
"status": "Approved",
"limit_requested_by": 81,
"limit_approved_by": 81,
"created_at": "2024-05-13T09:19:09.000000Z",
"updated_at": "2024-05-13T09:22:57.000000Z",
"deleted_at": null,
"vendor": {
"id": 1,
"sm_company_id": 71,
"name": "Logistics",
"address": "Sagamu",
"email": "sanganeria@demo.com",
"phone_number": "08028268504",
"country": "Nigeria",
"state": "Ogun",
"city": "Shagamu",
"postcode": null,
"products_sold": "PMS,AGO",
"payment_type": "modi",
"contact_person": "Sourabh sanganeria",
"registration_number": "1005",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-02-16T12:23:28.000000Z",
"updated_at": "2025-02-20T09:23:50.000000Z",
"deleted_at": null,
"se_company_id": 90
},
"company": {
"id": 127,
"name": "ABC Comp",
"email": "info@abccompany.com",
"phone_number": "9876543210",
"registration_number": "XYZ123",
"country": "Country",
"state": "State",
"city": "City",
"postcode": "12345",
"address": "123 Main Street",
"sector": "Technology",
"tin": "123456789",
"website": "http://www.abccompany.com",
"logo": null,
"active": 1,
"on_loyalty_program": 0,
"contact_person_first_name": "Jane",
"contact_person_lastname": "Doe",
"app_uid": "658069af90cbf",
"loyalty_points_by_group": 0,
"loyalty_reward_percentage": null,
"loyalty_reward_points": null,
"loyalty_min_purchase_amount": null,
"loyalty_min_point": null,
"created_at": "2023-12-18T16:47:59.000000Z",
"updated_at": "2025-02-26T02:57:56.000000Z",
"deleted_at": null
},
"user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_requested_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
},
"limit_approved_user": {
"id": 81,
"title": "Mr",
"name": "Kasope Johnson",
"email": "kasope.johnson@smartflowtech.com",
"phone": "9029646400",
"avatar": null,
"username": "Kasope Johnson",
"gender": "male",
"newsletter": 1,
"active": 0,
"card_brand": null,
"card_last_four": null,
"is_admin": 1,
"is_vendor": 0,
"active_vendor_group": null,
"active_vendor": null,
"otp": null,
"created_at": "2023-09-22T09:01:16.000000Z",
"updated_at": "2025-08-07T07:56:29.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Delete a Credit Limit History
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history/7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/credit_limit_history/7"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Vendor Customer Boarding Endpoints
Display a listing of the vendor onboard details or search by contact_number.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details?term=iusto&per_page=20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details"
);
const params = {
"term": "iusto",
"per_page": "20",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vendor_id": 2,
"min_wallet_recharge": 166810,
"tag_cost": 836,
"contact_number": "907.532.7524",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 21,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
}
},
{
"vendor_id": 34,
"min_wallet_recharge": 0,
"tag_cost": 9,
"contact_number": "+1.928.435.7979",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 22,
"vendor": {
"id": 34,
"sm_company_id": 676,
"name": "Shoprite",
"address": "Adeniran Ogunsanya Street",
"email": "shoprite@gmail.com",
"phone_number": "17300476",
"country": "Nigeria",
"state": "Lagos",
"city": null,
"postcode": "110011",
"products_sold": "PMS,AGO,DPK,LPG",
"payment_type": "paystack",
"contact_person": "Shoprite",
"registration_number": "21388",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-11-15T20:36:37.000000Z",
"updated_at": "2025-11-15T21:36:48.000000Z",
"deleted_at": null,
"se_company_id": 987
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor onboard details
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 20,
\"min_wallet_recharge\": 1725,
\"tag_cost\": 10367668.789,
\"contact_number\": 15.81744
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 20,
"min_wallet_recharge": 1725,
"tag_cost": 10367668.789,
"contact_number": 15.81744
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 18,
"min_wallet_recharge": 105144638,
"tag_cost": 0,
"contact_number": "+1-419-859-1035",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 23,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
}
}
}
Received response:
Request failed with error:
Show a specified vendor onboard details.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/18"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 26,
"min_wallet_recharge": 1063,
"tag_cost": 26953017,
"contact_number": "1-908-337-9248",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 24,
"vendor": {
"id": 26,
"sm_company_id": 96,
"name": "Miriam Terry",
"address": "Debitis quo",
"email": "guxem@mailinator.com",
"phone_number": "9023973574",
"country": "Nigeria",
"state": "Lagos",
"city": "Dolorem",
"postcode": null,
"products_sold": "AGO,DPK",
"payment_type": "bank_transfer",
"contact_person": "Obcaecati",
"registration_number": "918",
"status": 1,
"has_active_paga_account": 1,
"on_loyalty_program": 1,
"created_at": "2025-05-26T13:11:58.000000Z",
"updated_at": "2025-11-20T15:41:39.000000Z",
"deleted_at": null,
"se_company_id": 61
}
}
}
Received response:
Request failed with error:
Update the specified vendor onboard details
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 14,
\"min_wallet_recharge\": 32269898,
\"tag_cost\": 354417,
\"contact_number\": 96.96
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/14"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 14,
"min_wallet_recharge": 32269898,
"tag_cost": 354417,
"contact_number": 96.96
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 2,
"min_wallet_recharge": 6,
"tag_cost": 1,
"contact_number": "+1-636-385-5215",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 25,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
}
}
}
Received response:
Request failed with error:
Delete a vendor onboard details
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/5"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Get vendor onboard details by sm_company_id
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/get_by_sm_company_id/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/get_by_sm_company_id/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=Kb8OPJa4RFyDNB7LpnTxLzCOU2utNnPFc8NUFr4u; expires=Fri, 03 Jul 2026 14:33:28 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/vendors_onboarding_details/get_by_sm_company_id/8 could not be found."
}
Received response:
Request failed with error:
Get vendor onboard details by vendor hostname
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/get_by_hostname/et" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_onboarding_details/get_by_hostname/et"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=SRvdt26gF4iMIIiz9wMFNcU9sMS0nKjYOOozWPRG; expires=Fri, 03 Jul 2026 14:33:28 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/vendors_onboarding_details/get_by_hostname/et could not be found."
}
Received response:
Request failed with error:
Display a listing of the tag pickup locations or search by name, address or contact_number.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations?term=sed&per_page=1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations"
);
const params = {
"term": "sed",
"per_page": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vendor_id": 2,
"station_id": 2,
"cod_id": 2,
"name": "Davis, Harber and Bins",
"address": "274 Jovani Place Suite 558\nWest Martamouth, AK 46267",
"contact_number": "+1-620-758-0535",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 39,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"station": {
"id": 2,
"sm_station_id": 337,
"vendor_id": 1,
"name": "BHN Logistic Station 1",
"address": "Adeniran Ogunsanya Street",
"postcode": null,
"country": null,
"state": null,
"city": null,
"email": null,
"phone_number": null,
"created_at": "2023-11-28T10:48:58.000000Z",
"updated_at": "2023-11-28T10:48:58.000000Z",
"deleted_at": null
}
},
{
"vendor_id": 18,
"station_id": 1,
"cod_id": 8,
"name": "Morar PLC",
"address": "195 Fadel Stream\nNew Hettie, NC 75676",
"contact_number": "+1-479-779-5955",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 40,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
},
"station": {
"id": 1,
"sm_station_id": null,
"vendor_id": 1,
"name": "Oando Oregun",
"address": "Plot E Ikosi Road",
"postcode": "882966",
"country": "Nigeria",
"state": "Lagos",
"city": "Apapa",
"email": "arnaldo59@example.net",
"phone_number": "1234567890",
"created_at": "2023-11-16T09:48:34.000000Z",
"updated_at": "2023-11-16T09:49:44.000000Z",
"deleted_at": null
}
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new tag pickup location
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 10,
\"vendor_id\": 4,
\"station_id\": 17,
\"name\": \"veniam\",
\"address\": \"iusto\",
\"cod_id\": 17,
\"contact_number\": 11616.545
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 10,
"vendor_id": 4,
"station_id": 17,
"name": "veniam",
"address": "iusto",
"cod_id": 17,
"contact_number": 11616.545
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 18,
"station_id": 2,
"cod_id": 2,
"name": "Morissette-Greenfelder",
"address": "321 Karen Orchard Suite 597\nSouth Kristinaton, NC 64807-7805",
"contact_number": "1-781-755-8556",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 41,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
},
"station": {
"id": 2,
"sm_station_id": 337,
"vendor_id": 1,
"name": "BHN Logistic Station 1",
"address": "Adeniran Ogunsanya Street",
"postcode": null,
"country": null,
"state": null,
"city": null,
"email": null,
"phone_number": null,
"created_at": "2023-11-28T10:48:58.000000Z",
"updated_at": "2023-11-28T10:48:58.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Show a specified tag pickup location.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/14"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 2,
"station_id": 1,
"cod_id": 9,
"name": "Reinger LLC",
"address": "68275 Octavia Pike\nNorth Gunnar, SC 78854",
"contact_number": "+1-956-473-8934",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 42,
"vendor": {
"id": 2,
"sm_company_id": 20,
"name": "Test SM",
"address": "10 Aisa street",
"email": "kasopej@gmail.com",
"phone_number": "083940303545",
"country": "Nigeria",
"state": "Abia",
"city": "Arochukwu",
"postcode": null,
"products_sold": "PMS,AGO,DPK",
"payment_type": "neque",
"contact_person": "Freddy",
"registration_number": "350",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2023-09-27T03:57:48.000000Z",
"updated_at": "2024-12-10T16:05:16.000000Z",
"deleted_at": null,
"se_company_id": null
},
"station": {
"id": 1,
"sm_station_id": null,
"vendor_id": 1,
"name": "Oando Oregun",
"address": "Plot E Ikosi Road",
"postcode": "882966",
"country": "Nigeria",
"state": "Lagos",
"city": "Apapa",
"email": "arnaldo59@example.net",
"phone_number": "1234567890",
"created_at": "2023-11-16T09:48:34.000000Z",
"updated_at": "2023-11-16T09:49:44.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Update the specified tag pickup location
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 5,
\"vendor_id\": 8,
\"station_id\": 12,
\"name\": \"sed\",
\"address\": \"quisquam\",
\"cod_id\": 11,
\"contact_number\": 147
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/10"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 5,
"vendor_id": 8,
"station_id": 12,
"name": "sed",
"address": "quisquam",
"cod_id": 11,
"contact_number": 147
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_id": 18,
"station_id": 2,
"cod_id": 9,
"name": "Jenkins-Russel",
"address": "109 Minnie Motorway\nGrahamton, NC 54608",
"contact_number": "+1.479.661.0579",
"updated_at": "2026-07-03T12:33:28.000000Z",
"created_at": "2026-07-03T12:33:28.000000Z",
"id": 43,
"vendor": {
"id": 18,
"sm_company_id": 12,
"name": "New Test SM",
"address": "Kash home",
"email": "newtest@mailinator.com",
"phone_number": "02828292922",
"country": "Nigeria",
"state": "Adamawa",
"city": "Demsa",
"postcode": null,
"products_sold": null,
"payment_type": null,
"contact_person": "Kash",
"registration_number": "02020",
"status": 1,
"has_active_paga_account": 0,
"on_loyalty_program": 0,
"created_at": "2024-12-10T16:08:14.000000Z",
"updated_at": "2025-02-26T03:05:32.000000Z",
"deleted_at": null,
"se_company_id": null
},
"station": {
"id": 2,
"sm_station_id": 337,
"vendor_id": 1,
"name": "BHN Logistic Station 1",
"address": "Adeniran Ogunsanya Street",
"postcode": null,
"country": null,
"state": null,
"city": null,
"email": null,
"phone_number": null,
"created_at": "2023-11-28T10:48:58.000000Z",
"updated_at": "2023-11-28T10:48:58.000000Z",
"deleted_at": null
}
}
}
Received response:
Request failed with error:
Delete a tag pickup location
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/14"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Get tag pickup location by vendor hostname
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/get_by_hostname/aperiam" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors_tag_pickup_locations/get_by_hostname/aperiam"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
set-cookie: cupid_session=z8mkMbEhRQdBxWiqVCJH0Mlt2yNJ7TMVHP9gVDYQ; expires=Fri, 03 Jul 2026 14:33:28 GMT; Max-Age=7200; path=/; httponly; samesite=lax
{
"message": "The route api/vendors_tag_pickup_locations/get_by_hostname/aperiam could not be found."
}
Received response:
Request failed with error:
Vendor Endpoints
Display a listing of the vendor app configurations by hostname
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_app_config?hostname=minima" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_app_config"
);
const params = {
"hostname": "minima",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"hostname": "hahn.com",
"logo_path": "https://via.placeholder.com/640x480.png/00ffcc?text=cum",
"app_name": "Beatty-Buckridge",
"app_name_font_size": 36,
"app_header_color": "#0088bb",
"app_body_color": "#0099ee",
"menu_header_color": "#0011cc",
"menu_body_color": "#008822",
"loyalty_reward_percentage": 1,
"loyalty_min_purchase_amount": 3,
"loyalty_min_point": 5,
"status": null
},
{
"hostname": "olson.org",
"logo_path": "https://via.placeholder.com/640x480.png/00ee44?text=in",
"app_name": "Vandervort, Heller and Gleichner",
"app_name_font_size": 80,
"app_header_color": "#009966",
"app_body_color": "#0044cc",
"menu_header_color": "#00cc99",
"menu_body_color": "#000022",
"loyalty_reward_percentage": 2,
"loyalty_min_purchase_amount": 5,
"loyalty_min_point": 9,
"status": null
}
]
}
Received response:
Request failed with error:
Display a listing of the vendor user or search by name, phone number, email, card last four digits, vendor name.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_users?vendor_id=13&per_page=16&term=sed" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_users"
);
const params = {
"vendor_id": "13",
"per_page": "16",
"term": "sed",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"title": "Mr.",
"name": "Dr. Gerard Robel",
"email": "zpaucek@example.com",
"phone": "+1-973-987-5473",
"avatar": "https://via.placeholder.com/200x200.png/003377?text=avatar+excepturi",
"username": "pvon",
"gender": "Male",
"newsletter": false,
"active": true,
"card_brand": "MasterCard",
"card_last_four": "4746",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 362,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 14,
"name": "create company group"
},
{
"id": 20,
"name": "delete cost center"
},
{
"id": 30,
"name": "create payment"
},
{
"id": 46,
"name": "create sub-wallet"
},
{
"id": 73,
"name": "destination_allocation create"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
},
{
"title": "Mr.",
"name": "Kiarra Powlowski",
"email": "carmel16@example.com",
"phone": "341-347-5942",
"avatar": "https://via.placeholder.com/200x200.png/00bb33?text=avatar+quo",
"username": "hmccullough",
"gender": "Male",
"newsletter": true,
"active": true,
"card_brand": "JCB",
"card_last_four": "0811",
"is_vendor": false,
"is_admin": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 363,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 7,
"name": "update acl"
},
{
"id": 27,
"name": "update user"
},
{
"id": 34,
"name": "create pos"
},
{
"id": 69,
"name": "destination create"
},
{
"id": 85,
"name": "trip allocation view"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor user
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendor_users?vendor_id=3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"quisquam\",
\"phone\": 894725.34153,
\"email\": \"santiago.murazik@example.org\",
\"username\": \"dignissimos\",
\"gender\": \"reiciendis\",
\"newsletter\": true,
\"active\": true,
\"is_admin\": true,
\"is_vendor\": true,
\"suspended\": false,
\"vendors\": [
2
],
\"companies\": [
2
],
\"cost_centers\": [
5
],
\"stations\": [
19
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_users"
);
const params = {
"vendor_id": "3",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "quisquam",
"phone": 894725.34153,
"email": "santiago.murazik@example.org",
"username": "dignissimos",
"gender": "reiciendis",
"newsletter": true,
"active": true,
"is_admin": true,
"is_vendor": true,
"suspended": false,
"vendors": [
2
],
"companies": [
2
],
"cost_centers": [
5
],
"stations": [
19
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Mrs.",
"name": "Dr. Pattie Moore MD",
"email": "tkoch@example.net",
"phone": "615.622.9496",
"avatar": "https://via.placeholder.com/200x200.png/00aa66?text=avatar+fugit",
"username": "julio57",
"gender": "Male",
"newsletter": true,
"active": true,
"card_brand": "MasterCard",
"card_last_four": "8118",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 364,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 8,
"name": "delete acl"
},
{
"id": 47,
"name": "view vendor wallet"
},
{
"id": 56,
"name": "create vendor group"
},
{
"id": 86,
"name": "trip allocation create"
},
{
"id": 92,
"name": "attendant admin"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Show a specified vendor user.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_users/12?vendor_id=11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_users/12"
);
const params = {
"vendor_id": "11",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"title": "Mr.",
"name": "Miss Abigail Wiza",
"email": "roma60@example.com",
"phone": "+1-248-303-3240",
"avatar": "https://via.placeholder.com/200x200.png/0044bb?text=avatar+expedita",
"username": "cathy.wisoky",
"gender": "Female",
"newsletter": false,
"active": true,
"card_brand": "Visa Retired",
"card_last_four": "6704",
"is_vendor": true,
"is_admin": false,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 365,
"companies": [],
"vendors": [],
"bankAccount": null,
"permissions": [
{
"id": 1,
"name": "view"
},
{
"id": 12,
"name": "delete company"
},
{
"id": 20,
"name": "delete cost center"
},
{
"id": 21,
"name": "view fleet"
},
{
"id": 88,
"name": "trip allocation delete"
}
],
"costCenters": [],
"roles": [],
"stations": [],
"wallet_details": null
}
}
Received response:
Request failed with error:
Update the specified vendor user without detaching the user from other vendors
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendor_users/6?vendor_id=4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"odio\",
\"phone\": 2.46,
\"email\": \"douglas.malachi@example.com\",
\"username\": \"vel\",
\"gender\": \"modi\",
\"newsletter\": false,
\"active\": false,
\"is_admin\": false,
\"is_vendor\": false,
\"suspended\": true,
\"vendors\": [
12
],
\"companies\": [
4
],
\"cost_centers\": [
12
],
\"stations\": [
20
]
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_users/6"
);
const params = {
"vendor_id": "4",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "odio",
"phone": 2.46,
"email": "douglas.malachi@example.com",
"username": "vel",
"gender": "modi",
"newsletter": false,
"active": false,
"is_admin": false,
"is_vendor": false,
"suspended": true,
"vendors": [
12
],
"companies": [
4
],
"cost_centers": [
12
],
"stations": [
20
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Pfeffer-Walker",
"email": "yasmin26@jacobi.com",
"phone_number": "925.296.2533",
"country": "Togo",
"state": "Nebraska",
"city": "East Kaitlin",
"postcode": "43238-5062",
"address": "39866 Crooks Plaza",
"registration_number": "RC-171596",
"contact_person": "Raven Reichel Sr.",
"sm_company_id": 5,
"products_sold": "ATK",
"payment_type": "consequatur",
"status": true,
"has_active_paga_account": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 43,
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
}
}
Received response:
Request failed with error:
Detach a user from a vendor
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendor_users/11?vendor_id=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_users/11"
);
const params = {
"vendor_id": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the groups or search by name, code.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/groups?term=ad&per_page=12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/groups"
);
const params = {
"term": "ad",
"per_page": "12",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"name": "Miss Jaida Grimes",
"description": "Et id id iusto rerum.",
"active": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 61,
"vendors": []
},
{
"name": "Tyra Price",
"description": "Alias provident omnis rerum aut error consequuntur eum eaque.",
"active": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 62,
"vendors": []
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new group
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/groups" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"molestiae\",
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/groups"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "molestiae",
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Mrs. Electa Watsica II",
"description": "Alias deleniti et veniam molestiae.",
"active": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 63,
"vendors": []
}
}
Received response:
Request failed with error:
Show a specified group.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/groups/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/groups/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Jessika Blanda",
"description": "Saepe blanditiis animi et.",
"active": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 64,
"vendors": []
}
}
Received response:
Request failed with error:
Update the specified group
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/groups/16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"id\",
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/groups/16"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "id",
"active": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Johnny Lemke Jr.",
"description": "Enim enim veniam dicta et omnis voluptatum.",
"active": true,
"updated_at": "2026-07-03T12:33:24.000000Z",
"created_at": "2026-07-03T12:33:24.000000Z",
"id": 65,
"vendors": []
}
}
Received response:
Request failed with error:
Delete a group
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/groups/18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/groups/18"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"name": "Kellie Witting Jr.",
"description": "Iste et quia quia perspiciatis doloribus tenetur ipsa.",
"active": false,
"updated_at": "2026-07-03T12:33:25.000000Z",
"created_at": "2026-07-03T12:33:25.000000Z",
"id": 66,
"vendors": []
}
}
Received response:
Request failed with error:
Display a listing of the vendors or search by name, phone number, email, address, state, country.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors?term=tempore&per_page=10&status=18" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors"
);
const params = {
"term": "tempore",
"per_page": "10",
"status": "18",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
},
{
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendors" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"sm_company_id\": 7,
\"se_company_id\": 3,
\"name\": \"omnis\",
\"address\": \"aut\",
\"phone_number\": 1471903.76,
\"email\": \"illo\",
\"country\": \"minima\",
\"state\": \"quam\",
\"city\": \"illum\",
\"registration_number\": \"fuga\",
\"contact_person\": \"ad\",
\"products_sold\": \"non\",
\"payment_type\": \"dolores\",
\"has_active_paga_account\": true,
\"status\": false,
\"on_loyalty_program\": false,
\"create_wallet\": false,
\"group_id\": 13
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"sm_company_id": 7,
"se_company_id": 3,
"name": "omnis",
"address": "aut",
"phone_number": 1471903.76,
"email": "illo",
"country": "minima",
"state": "quam",
"city": "illum",
"registration_number": "fuga",
"contact_person": "ad",
"products_sold": "non",
"payment_type": "dolores",
"has_active_paga_account": true,
"status": false,
"on_loyalty_program": false,
"create_wallet": false,
"group_id": 13
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
}
}
Received response:
Request failed with error:
Show a specified vendor.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendors/5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors/5"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
}
}
Received response:
Request failed with error:
Update the specified vendor
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendors/1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"sm_company_id\": 9,
\"se_company_id\": 2,
\"name\": \"delectus\",
\"address\": \"consequatur\",
\"phone_number\": 24995473.418,
\"email\": \"nobis\",
\"country\": \"perspiciatis\",
\"state\": \"aliquid\",
\"city\": \"nisi\",
\"registration_number\": \"vel\",
\"contact_person\": \"minima\",
\"products_sold\": \"laborum\",
\"payment_type\": \"quasi\",
\"has_active_paga_account\": true,
\"status\": true,
\"on_loyalty_program\": false,
\"create_wallet\": false,
\"group_id\": 1
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors/1"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"sm_company_id": 9,
"se_company_id": 2,
"name": "delectus",
"address": "consequatur",
"phone_number": 24995473.418,
"email": "nobis",
"country": "perspiciatis",
"state": "aliquid",
"city": "nisi",
"registration_number": "vel",
"contact_person": "minima",
"products_sold": "laborum",
"payment_type": "quasi",
"has_active_paga_account": true,
"status": true,
"on_loyalty_program": false,
"create_wallet": false,
"group_id": 1
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"vendor_additional_details": null,
"bank_accounts": null,
"wallet_details": null,
"app_config": null,
"paga_details": null,
"groups": []
}
}
Received response:
Request failed with error:
Delete a vendor
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendors/7" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendors/7"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vendor companies or search by partnership code, status
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_companies?per_page=20&term=totam&vendor_id=et&company_id=iusto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_companies"
);
const params = {
"per_page": "20",
"term": "totam",
"vendor_id": "et",
"company_id": "iusto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"status": "Partnership Declined",
"partnership_code": "8468503",
"active": true,
"partnership_ppv_mode": "CUSTOM",
"pms_ppv": "24",
"ago_ppv": "62",
"discount_mode": "MONETARY_VALUE_DISCOUNT",
"vendor": null,
"company": null
},
{
"status": "Partnership Declined",
"partnership_code": "7053295",
"active": true,
"partnership_ppv_mode": null,
"pms_ppv": "04",
"ago_ppv": "84",
"discount_mode": "MONETARY_VALUE_DISCOUNT",
"vendor": null,
"company": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor company
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendor_companies" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 11,
\"vendor_id\": 11,
\"status\": \"similique\",
\"partnership_code\": \"iste\",
\"active\": false,
\"partnership_ppv_mode\": \"nihil\",
\"pms_ppv\": \"expedita\",
\"ago_ppv\": \"qui\",
\"discount_mode\": \"cupiditate\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_companies"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 11,
"vendor_id": 11,
"status": "similique",
"partnership_code": "iste",
"active": false,
"partnership_ppv_mode": "nihil",
"pms_ppv": "expedita",
"ago_ppv": "qui",
"discount_mode": "cupiditate"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"status": "In Partnership",
"partnership_code": "3647946",
"active": true,
"partnership_ppv_mode": "ON_SITE",
"pms_ppv": "97",
"ago_ppv": "22",
"discount_mode": "MONETARY_VALUE_DISCOUNT",
"vendor": null,
"company": null
}
}
Received response:
Request failed with error:
Show a specified vendor company.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_companies/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_companies/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"status": "Partnership Declined",
"partnership_code": "0891574",
"active": true,
"partnership_ppv_mode": null,
"pms_ppv": "76",
"ago_ppv": "84",
"discount_mode": null,
"vendor": null,
"company": null
}
}
Received response:
Request failed with error:
Update the specified vendor company
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendor_companies/3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"company_id\": 2,
\"vendor_id\": 12,
\"status\": \"odio\",
\"partnership_code\": \"ut\",
\"active\": false,
\"partnership_ppv_mode\": \"qui\",
\"pms_ppv\": \"consectetur\",
\"ago_ppv\": \"quasi\",
\"discount_mode\": \"impedit\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_companies/3"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"company_id": 2,
"vendor_id": 12,
"status": "odio",
"partnership_code": "ut",
"active": false,
"partnership_ppv_mode": "qui",
"pms_ppv": "consectetur",
"ago_ppv": "quasi",
"discount_mode": "impedit"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"status": "In Partnership",
"partnership_code": "1443778",
"active": false,
"partnership_ppv_mode": "ON_SITE",
"pms_ppv": "02",
"ago_ppv": "47",
"discount_mode": null,
"vendor": null,
"company": null
}
}
Received response:
Request failed with error:
Delete a vendor company
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendor_companies/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_companies/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vendor application configurations or search by app name, hostname
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_app_configs?per_page=14&term=nesciunt" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs"
);
const params = {
"per_page": "14",
"term": "nesciunt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"hostname": "beer.com",
"logo_path": "https://via.placeholder.com/640x480.png/004455?text=suscipit",
"app_name": "Feeney, Gottlieb and Steuber",
"app_name_font_size": 31,
"app_header_color": "#0011ee",
"app_body_color": "#0011ff",
"menu_header_color": "#002255",
"menu_body_color": "#0088dd",
"loyalty_reward_percentage": 6,
"loyalty_min_purchase_amount": 8,
"loyalty_min_point": 4,
"status": null
},
{
"hostname": "reichel.com",
"logo_path": "https://via.placeholder.com/640x480.png/00ddee?text=et",
"app_name": "Cartwright, Stracke and Lind",
"app_name_font_size": 83,
"app_header_color": "#00cc33",
"app_body_color": "#00ff88",
"menu_header_color": "#004400",
"menu_body_color": "#00aaee",
"loyalty_reward_percentage": 7,
"loyalty_min_purchase_amount": 8,
"loyalty_min_point": 9,
"status": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor application configuration
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "vendor_id=15" \
--form "hostname=http://franecki.com/quibusdam-voluptatibus-consequatur-laudantium-dicta-ut-et-id.html" \
--form "app_name=odio" \
--form "app_name_font_size=458748.490115" \
--form "app_header_color=cum" \
--form "app_body_color=architecto" \
--form "menu_header_color=saepe" \
--form "menu_body_color=maiores" \
--form "status=deleniti" \
--form "logo_path=@/tmp/phpqfban2hcb8929ThU7dr" const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('vendor_id', '15');
body.append('hostname', 'http://franecki.com/quibusdam-voluptatibus-consequatur-laudantium-dicta-ut-et-id.html');
body.append('app_name', 'odio');
body.append('app_name_font_size', '458748.490115');
body.append('app_header_color', 'cum');
body.append('app_body_color', 'architecto');
body.append('menu_header_color', 'saepe');
body.append('menu_body_color', 'maiores');
body.append('status', 'deleniti');
body.append('logo_path', document.querySelector('input[name="logo_path"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());Example response (200):
{
"data": {
"hostname": "ohara.com",
"logo_path": "https://via.placeholder.com/640x480.png/006622?text=eum",
"app_name": "Shields-Hintz",
"app_name_font_size": 70,
"app_header_color": "#00ccff",
"app_body_color": "#00ffbb",
"menu_header_color": "#00dd88",
"menu_body_color": "#004466",
"loyalty_reward_percentage": 9,
"loyalty_min_purchase_amount": 5,
"loyalty_min_point": 5,
"status": null
}
}
Received response:
Request failed with error:
Show a specified vendor application configuration.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_app_configs/9" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs/9"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"hostname": "johnson.com",
"logo_path": "https://via.placeholder.com/640x480.png/00dd44?text=sunt",
"app_name": "Kutch and Sons",
"app_name_font_size": 72,
"app_header_color": "#003388",
"app_body_color": "#007700",
"menu_header_color": "#0099ff",
"menu_body_color": "#00bb22",
"loyalty_reward_percentage": 1,
"loyalty_min_purchase_amount": 2,
"loyalty_min_point": 5,
"status": null
}
}
Received response:
Request failed with error:
Update the specified vendor application configuration
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs/20" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "vendor_id=4" \
--form "hostname=http://www.murray.net/quia-maiores-esse-quae-tenetur" \
--form "app_name=nemo" \
--form "app_name_font_size=322268.0192017" \
--form "app_header_color=esse" \
--form "app_body_color=maiores" \
--form "menu_header_color=et" \
--form "menu_body_color=sint" \
--form "status=ab" \
--form "logo_path=@/tmp/phphetsi9bvl23n9nOQE3D" const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs/20"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('vendor_id', '4');
body.append('hostname', 'http://www.murray.net/quia-maiores-esse-quae-tenetur');
body.append('app_name', 'nemo');
body.append('app_name_font_size', '322268.0192017');
body.append('app_header_color', 'esse');
body.append('app_body_color', 'maiores');
body.append('menu_header_color', 'et');
body.append('menu_body_color', 'sint');
body.append('status', 'ab');
body.append('logo_path', document.querySelector('input[name="logo_path"]').files[0]);
fetch(url, {
method: "PUT",
headers,
body,
}).then(response => response.json());Example response (200):
{
"data": {
"hostname": "waters.biz",
"logo_path": "https://via.placeholder.com/640x480.png/0088dd?text=est",
"app_name": "Armstrong and Sons",
"app_name_font_size": 94,
"app_header_color": "#001166",
"app_body_color": "#00cc88",
"menu_header_color": "#008822",
"menu_body_color": "#00bb99",
"loyalty_reward_percentage": 8,
"loyalty_min_purchase_amount": 6,
"loyalty_min_point": 2,
"status": null
}
}
Received response:
Request failed with error:
Delete a vendor application configuration
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs/16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_app_configs/16"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a list of the vendor banking details or search by account number, bank name, account name, paystack ID, paystack sub-account code
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts?per_page=6&term=amet" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts"
);
const params = {
"per_page": "6",
"term": "amet",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"account_number": "LI8613826113FXI1EZ13S",
"bank_name": "Block, Graham and Marvin",
"account_name": "Eichmann Ltd",
"paystack_id": 2,
"paystack_subaccount_code": "ACCT_105123138",
"payment_mode": "paystack",
"merchantcodes": "628776684064",
"active": true,
"vendor": null
},
{
"account_number": "CH6730496VK2W05P682NY",
"bank_name": "Wolff, Rippin and Kshlerin",
"account_name": "Beatty, Johns and Tillman",
"paystack_id": 9,
"paystack_subaccount_code": "ACCT_019067360",
"payment_mode": "paystack",
"merchantcodes": "551173744951",
"active": true,
"vendor": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor banking details
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 18,
\"account_number\": 14408027,
\"bank_name\": \"reiciendis\",
\"account_name\": \"deserunt\",
\"paystack_id\": 353.01702177,
\"paystack_subaccount_code\": \"possimus\",
\"payment_mode\": \"others\",
\"merchantcodes\": \"praesentium\",
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 18,
"account_number": 14408027,
"bank_name": "reiciendis",
"account_name": "deserunt",
"paystack_id": 353.01702177,
"paystack_subaccount_code": "possimus",
"payment_mode": "others",
"merchantcodes": "praesentium",
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"account_number": "MC3177599302568527FVR3F7G48",
"bank_name": "Mann-Nicolas",
"account_name": "Littel PLC",
"paystack_id": 3,
"paystack_subaccount_code": "ACCT_991152078",
"payment_mode": null,
"merchantcodes": "016686425131",
"active": true,
"vendor": null
}
}
Received response:
Request failed with error:
Show a specified vendor banking details.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts/6?vendor_id=2" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts/6"
);
const params = {
"vendor_id": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"account_number": "DO78RWKV59300906466367681228",
"bank_name": "Von PLC",
"account_name": "Mitchell-Rempel",
"paystack_id": 6,
"paystack_subaccount_code": "ACCT_081864833",
"payment_mode": null,
"merchantcodes": "723161748797",
"active": true,
"vendor": null
}
}
Received response:
Request failed with error:
Update the specified vendor banking details
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts/1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 5,
\"account_number\": 542.32506387,
\"bank_name\": \"et\",
\"account_name\": \"recusandae\",
\"paystack_id\": 117.6773,
\"paystack_subaccount_code\": \"voluptas\",
\"payment_mode\": \"paystack\",
\"merchantcodes\": \"laborum\",
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts/1"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 5,
"account_number": 542.32506387,
"bank_name": "et",
"account_name": "recusandae",
"paystack_id": 117.6773,
"paystack_subaccount_code": "voluptas",
"payment_mode": "paystack",
"merchantcodes": "laborum",
"active": false
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"account_number": "MC1904200558786S2962XXMP233",
"bank_name": "Spinka Ltd",
"account_name": "McKenzie Group",
"paystack_id": 4,
"paystack_subaccount_code": "ACCT_040054025",
"payment_mode": "paystack",
"merchantcodes": "633561594810",
"active": true,
"vendor": null
}
}
Received response:
Request failed with error:
Delete a vendor banking details
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts/12" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_bank_accounts/12"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vendor Paga details
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials?per_page=19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials"
);
const params = {
"per_page": "19",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"hmac": "16eaa361-b153-362d-8104-fe243a5d0a75",
"secret_key": "6fd7f78d-2072-3ae2-97d1-cc3ea8d01fd0",
"public_key": "bd021267-55e5-38f8-ba3f-41bf41ffed44",
"active": true
},
{
"hmac": "f3bb99d5-d14e-342c-a8b8-5b88ea30f12c",
"secret_key": "f1645bd6-8c2e-312f-b92f-a88e345ef275",
"public_key": "8ed783ad-013b-3715-aa36-b4e1016fffc6",
"active": true
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor Paga credential
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 11,
\"hmac\": \"optio\",
\"secret_key\": \"voluptas\",
\"public_key\": \"similique\",
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 11,
"hmac": "optio",
"secret_key": "voluptas",
"public_key": "similique",
"active": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"hmac": "f37e040c-bc73-3443-9570-5f59c306ac40",
"secret_key": "eec47aa4-40b1-32d2-8b65-9e1219c17e7b",
"public_key": "6c022b7b-18e6-391d-a58f-48537baeb093",
"active": true
}
}
Received response:
Request failed with error:
Show a specified vendor Paga credential.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials/16" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials/16"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"hmac": "ca6baa0f-b29c-3e6b-9e55-a626c874596f",
"secret_key": "9906c83c-575c-3d8c-81e5-49294d9697f1",
"public_key": "1f417e29-959d-32dc-a4e4-263c2cf05b90",
"active": true
}
}
Received response:
Request failed with error:
Update the specified vendor Paga credential
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials/6" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 10,
\"hmac\": \"illo\",
\"secret_key\": \"nesciunt\",
\"public_key\": \"culpa\",
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials/6"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 10,
"hmac": "illo",
"secret_key": "nesciunt",
"public_key": "culpa",
"active": false
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"hmac": "5a1e0780-329a-3645-97c2-3a103fb4f45d",
"secret_key": "e069e273-9a24-3da1-b4a3-3ae06330d703",
"public_key": "e03e1c5d-3441-35fa-896c-f38879dc8763",
"active": true
}
}
Received response:
Request failed with error:
Delete a vendor Paga credential
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials/5" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_paga_credentials/5"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vendor assign delivery stations or search by station name
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations?per_page=11&term=deserunt" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations"
);
const params = {
"per_page": "11",
"term": "deserunt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"station_id": 1,
"user_id": 30,
"station_name": "Oando Oregun"
},
{
"station_id": 2,
"user_id": 69,
"station_name": "BHN Logistic Station 1"
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor assigned delivery station
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 1,
\"station_id\": 15,
\"user_id\": 2,
\"station_name\": \"quisquam\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 1,
"station_id": 15,
"user_id": 2,
"station_name": "quisquam"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"station_id": 1,
"user_id": 218,
"station_name": "Oando Oregun"
}
}
Received response:
Request failed with error:
Show a specified vendor assigned delivery station.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations/17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations/17"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"station_id": 1,
"user_id": 281,
"station_name": "Oando Oregun"
}
}
Received response:
Request failed with error:
Update the specified vendor assigned delivery station
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations/19" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 5,
\"station_id\": 1,
\"user_id\": 19,
\"station_name\": \"laboriosam\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations/19"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 5,
"station_id": 1,
"user_id": 19,
"station_name": "laboriosam"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"station_id": 1,
"user_id": 38,
"station_name": "Oando Oregun"
}
}
Received response:
Request failed with error:
Delete a vendor assigned delivery station
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations/10" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_assigned_delivery_stations/10"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Display a listing of the vendor wallets
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_wallets?per_page=3" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets"
);
const params = {
"per_page": "3",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"current_balance": 5337216.096892,
"current_credit_limit": 2926.843,
"active": true
},
{
"current_balance": 2362.24351408,
"current_credit_limit": 24.3445093,
"active": true
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Create a new vendor wallet
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 18,
\"current_balance\": 427,
\"current_credit_limit\": 0.62295444,
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 18,
"current_balance": 427,
"current_credit_limit": 0.62295444,
"active": false
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"current_balance": 0,
"current_credit_limit": 243117813.6045508,
"active": true
}
}
Received response:
Request failed with error:
Show a specified vendor wallet.
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/vendor_wallets/8" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets/8"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": {
"current_balance": 29852.5766,
"current_credit_limit": 15584.37491073,
"active": true
}
}
Received response:
Request failed with error:
Update the specified vendor wallet
requires authentication
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets/14" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 17,
\"current_balance\": 7173891.5,
\"current_credit_limit\": 131025.29972,
\"active\": true
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets/14"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 17,
"current_balance": 7173891.5,
"current_credit_limit": 131025.29972,
"active": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (200):
{
"data": {
"current_balance": 1250.897865647,
"current_credit_limit": 4079.108176,
"active": true
}
}
Received response:
Request failed with error:
Delete a vendor wallet
requires authentication
Example request:
curl --request DELETE \
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets/15" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/vendor_wallets/15"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Attach a vendor to a group.
requires authentication
Note: Vendors within the same group will have access to each other's data according to their respective privileges. You need to generate an otp (api/issue_otp) to complete this action
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/attach_vendor_to_group" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"group_id\": 15,
\"vendor_id\": 15,
\"otp\": \"autem\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/attach_vendor_to_group"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"group_id": 15,
"vendor_id": 15,
"otp": "autem"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Detach a vendor from a group.
requires authentication
Note: The referenced vendor will no longer have access to the data of the group it was attached to You need to generate an otp (api/issue_otp) to complete this action
Example request:
curl --request PUT \
"https://cupidapiv2.smartflowtech.org/api/detach_vendor_from_group" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"group_id\": 8,
\"vendor_id\": 13,
\"otp\": \"hic\"
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/detach_vendor_from_group"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"group_id": 8,
"vendor_id": 13,
"otp": "hic"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Display a list of companies by vendor
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/companies_by_vendor/10?per_page=1" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/companies_by_vendor/10"
);
const params = {
"per_page": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"status": "Request Pending",
"partnership_code": "2837564",
"active": true,
"partnership_ppv_mode": "CUSTOM",
"pms_ppv": "25",
"ago_ppv": "73",
"discount_mode": "MONETARY_VALUE_DISCOUNT",
"vendor": null,
"company": null
},
{
"status": "Request Pending",
"partnership_code": "3326981",
"active": true,
"partnership_ppv_mode": null,
"pms_ppv": "84",
"ago_ppv": "77",
"discount_mode": "MONETARY_VALUE_DISCOUNT",
"vendor": null,
"company": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
Display a list of companies by vendor
requires authentication
Example request:
curl --request GET \
--get "https://cupidapiv2.smartflowtech.org/api/get_companies_by_vendor/11?per_page=17" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/get_companies_by_vendor/11"
);
const params = {
"per_page": "17",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (200):
{
"data": [
{
"status": "Partnership Declined",
"partnership_code": "2078787",
"active": true,
"partnership_ppv_mode": "CUSTOM",
"pms_ppv": "71",
"ago_ppv": "11",
"discount_mode": null,
"vendor": null,
"company": null
},
{
"status": "Request Pending",
"partnership_code": "5911484",
"active": true,
"partnership_ppv_mode": null,
"pms_ppv": "75",
"ago_ppv": "66",
"discount_mode": "MONETARY_VALUE_DISCOUNT",
"vendor": null,
"company": null
}
],
"links": {
"first": "/?page=1",
"last": "/?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "/?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "/",
"per_page": 20,
"to": 2,
"total": 2
}
}
Received response:
Request failed with error:
POST api/create_vendor_ussd_account
requires authentication
Example request:
curl --request POST \
"https://cupidapiv2.smartflowtech.org/api/create_vendor_ussd_account" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"vendor_id\": 6,
\"payment_mode\": \"ussd\",
\"merchantcodes\": \"quis\",
\"active\": false
}"
const url = new URL(
"https://cupidapiv2.smartflowtech.org/api/create_vendor_ussd_account"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"vendor_id": 6,
"payment_mode": "ussd",
"merchantcodes": "quis",
"active": false
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error: