Introduction
KeepMyAccount Cloud ERP Solution API Documentation
This documentation aims to provide all the information you need to work with our API.
Authenticating requests
To authenticate requests, include an Authorization
header with the value "Bearer {access_token}"
.
All authenticated endpoints are marked with a requires authentication
badge in the documentation below.
Getting access_token
- Get client_id & client_secret: Login to your account. Go to Connector > Clients, click on Create Client button.
- Requesting Tokens: Send request with client_id, client_secret, username & password as given in laravel documentation. In response, you get access_token
Attendance management
Get Attendance
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/get-attendance/1" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/get-attendance/1"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/get-attendance/1';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 4,
"user_id": 1,
"business_id": 1,
"clock_in_time": "2020-09-12 13:13:00",
"clock_out_time": "2020-09-12 13:15:00",
"essentials_shift_id": 3,
"ip_address": null,
"clock_in_note": "test clock in from api",
"clock_out_note": "test clock out from api",
"created_at": "2020-09-12 13:14:39",
"updated_at": "2020-09-12 13:15:39"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Clock In
requires authentication
[User must have "essentials.allow_users_for_attendance_from_api" permission to Clock in]
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/clock-in" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": 1,
\"clock_in_time\": \"2000-06-13 13:13:00\",
\"clock_in_note\": \"distinctio\",
\"ip_address\": \"quibusdam\",
\"latitude\": \"animi\",
\"longitude\": \"consequatur\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/clock-in"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": 1,
"clock_in_time": "2000-06-13 13:13:00",
"clock_in_note": "distinctio",
"ip_address": "quibusdam",
"latitude": "animi",
"longitude": "consequatur"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/clock-in';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'user_id' => 1,
'clock_in_time' => '2000-06-13 13:13:00',
'clock_in_note' => 'distinctio',
'ip_address' => 'quibusdam',
'latitude' => 'animi',
'longitude' => 'consequatur',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"success": true,
"msg": "Clocked In successfully",
"type": "clock_in"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Clock Out
requires authentication
[User must have "essentials.allow_users_for_attendance_from_api" permission to Clock out]
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/clock-out" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"user_id\": 1,
\"clock_out_time\": \"2000-06-13 13:13:00\",
\"clock_out_note\": \"commodi\",
\"latitude\": \"velit\",
\"longitude\": \"tempore\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/clock-out"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"user_id": 1,
"clock_out_time": "2000-06-13 13:13:00",
"clock_out_note": "commodi",
"latitude": "velit",
"longitude": "tempore"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/clock-out';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'user_id' => 1,
'clock_out_time' => '2000-06-13 13:13:00',
'clock_out_note' => 'commodi',
'latitude' => 'velit',
'longitude' => 'tempore',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"success": true,
"msg": "Clocked Out successfully",
"type": "clock_out"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List Holidays
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/holidays?location_id=1&start_date=2020-06-25&end_date=2020-06-25" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/holidays"
);
const params = {
"location_id": "1",
"start_date": "2020-06-25",
"end_date": "2020-06-25",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/holidays';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'location_id' => '1',
'start_date' => '2020-06-25',
'end_date' => '2020-06-25',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 2,
"name": "Independence Day",
"start_date": "2020-08-15",
"end_date": "2020-09-15",
"business_id": 1,
"location_id": null,
"note": "test holiday",
"created_at": "2020-09-15 11:25:56",
"updated_at": "2020-09-15 11:25:56"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Brand management
List brands
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/brand" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/brand"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/brand';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"name": "Levis",
"description": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 21:19:47",
"updated_at": "2018-01-03 21:19:47"
},
{
"id": 2,
"business_id": 1,
"name": "Espirit",
"description": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 21:19:58",
"updated_at": "2018-01-03 21:19:58"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified brand
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/brand/consequatur" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/brand/consequatur"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/brand/consequatur';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"name": "Levis",
"description": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 21:19:47",
"updated_at": "2018-01-03 21:19:47"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Business Location management
List business locations
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/business-location" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/business-location"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/business-location';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"location_id": null,
"name": "Awesome Shop",
"landmark": "Linking Street",
"country": "USA",
"state": "Arizona",
"city": "Phoenix",
"zip_code": "85001",
"invoice_scheme_id": 1,
"invoice_layout_id": 1,
"selling_price_group_id": null,
"print_receipt_on_invoice": 1,
"receipt_printer_type": "browser",
"printer_id": null,
"mobile": null,
"alternate_number": null,
"email": null,
"website": null,
"featured_products": [
"5",
"71"
],
"is_active": 1,
"payment_methods": [
{
"name": "cash",
"label": "Cash",
"account_id": "1"
},
{
"name": "card",
"label": "Card",
"account_id": null
},
{
"name": "cheque",
"label": "Cheque",
"account_id": null
},
{
"name": "bank_transfer",
"label": "Bank Transfer",
"account_id": null
},
{
"name": "other",
"label": "Other",
"account_id": null
},
{
"name": "custom_pay_1",
"label": "Custom Payment 1",
"account_id": null
},
{
"name": "custom_pay_2",
"label": "Custom Payment 2",
"account_id": null
},
{
"name": "custom_pay_3",
"label": "Custom Payment 3",
"account_id": null
}
],
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:20",
"updated_at": "2020-06-05 00:56:54"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified business location
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/business-location/quod" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/business-location/quod"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/business-location/quod';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"location_id": null,
"name": "Awesome Shop",
"landmark": "Linking Street",
"country": "USA",
"state": "Arizona",
"city": "Phoenix",
"zip_code": "85001",
"invoice_scheme_id": 1,
"invoice_layout_id": 1,
"selling_price_group_id": null,
"print_receipt_on_invoice": 1,
"receipt_printer_type": "browser",
"printer_id": null,
"mobile": null,
"alternate_number": null,
"email": null,
"website": null,
"featured_products": [
"5",
"71"
],
"is_active": 1,
"payment_methods": [
{
"name": "cash",
"label": "Cash",
"account_id": "1"
},
{
"name": "card",
"label": "Card",
"account_id": null
},
{
"name": "cheque",
"label": "Cheque",
"account_id": null
},
{
"name": "bank_transfer",
"label": "Bank Transfer",
"account_id": null
},
{
"name": "other",
"label": "Other",
"account_id": null
},
{
"name": "custom_pay_1",
"label": "Custom Payment 1",
"account_id": null
},
{
"name": "custom_pay_2",
"label": "Custom Payment 2",
"account_id": null
},
{
"name": "custom_pay_3",
"label": "Custom Payment 3",
"account_id": null
}
],
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:20",
"updated_at": "2020-06-05 00:56:54"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
CRM
List Follow ups
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/crm/follow-ups?start_date=2020-12-16&end_date=2020-12-16&status=qui&follow_up_type=consequatur&followup_category_id=magnam&order_by=start_datetime&direction=desc&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/crm/follow-ups"
);
const params = {
"start_date": "2020-12-16",
"end_date": "2020-12-16",
"status": "qui",
"follow_up_type": "consequatur",
"followup_category_id": "magnam",
"order_by": "start_datetime",
"direction": "desc",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/crm/follow-ups';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'start_date' => '2020-12-16',
'end_date' => '2020-12-16',
'status' => 'qui',
'follow_up_type' => 'consequatur',
'followup_category_id' => 'magnam',
'order_by' => 'start_datetime',
'direction' => 'desc',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"contact_id": 50,
"title": "Test Follow up",
"status": "scheduled",
"start_datetime": "2020-12-16 15:15:00",
"end_datetime": "2020-12-16 15:15:00",
"description": "<p>tst</p>",
"schedule_type": "call",
"allow_notification": 0,
"notify_via": {
"sms": 0,
"mail": 1
},
"notify_before": null,
"notify_type": "minute",
"created_by": 1,
"followup_additional_info": null,
"created_at": "2020-12-16 03:15:23",
"updated_at": "2020-12-16 15:46:34",
"customer": {
"id": 50,
"business_id": 1,
"type": "lead",
"supplier_business_name": null,
"name": " Lead 4 ",
"prefix": null,
"first_name": "Lead 4",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CO0011",
"contact_status": "active",
"tax_number": null,
"city": null,
"state": null,
"country": null,
"address_line_1": null,
"address_line_2": null,
"zip_code": null,
"dob": null,
"mobile": "234567",
"landline": null,
"alternate_number": null,
"pay_term_number": null,
"pay_term_type": null,
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 0,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": "55",
"crm_life_stage": "62",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"deleted_at": null,
"created_at": "2020-12-15 23:14:48",
"updated_at": "2021-01-07 15:32:52",
"remember_token": null,
"password": null
}
},
{
"id": 2,
"business_id": 1,
"contact_id": 50,
"title": "Test Follow up 1",
"status": "completed",
"start_datetime": "2020-12-16 15:46:00",
"end_datetime": "2020-12-16 15:46:00",
"description": "<p>Test Follow up</p>",
"schedule_type": "call",
"allow_notification": 0,
"notify_via": {
"sms": 0,
"mail": 1
},
"notify_before": null,
"notify_type": "minute",
"created_by": 1,
"followup_additional_info": null,
"created_at": "2020-12-16 15:46:57",
"updated_at": "2020-12-17 10:24:11",
"customer": {
"id": 50,
"business_id": 1,
"type": "lead",
"supplier_business_name": null,
"name": " Lead 4 ",
"prefix": null,
"first_name": "Lead 4",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CO0011",
"contact_status": "active",
"tax_number": null,
"city": null,
"state": null,
"country": null,
"address_line_1": null,
"address_line_2": null,
"zip_code": null,
"dob": null,
"mobile": "234567",
"landline": null,
"alternate_number": null,
"pay_term_number": null,
"pay_term_type": null,
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 0,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": "55",
"crm_life_stage": "62",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"deleted_at": null,
"created_at": "2020-12-15 23:14:48",
"updated_at": "2021-01-07 15:32:52",
"remember_token": null,
"password": null
}
}
],
"links": {
"first": "http://local.pos.com/connector/api/crm/follow-ups?page=1",
"last": "http://local.pos.com/connector/api/crm/follow-ups?page=21",
"prev": null,
"next": "http://local.pos.com/connector/api/crm/follow-ups?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 21,
"path": "http://local.pos.com/connector/api/crm/follow-ups",
"per_page": "2",
"to": 2,
"total": 42
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add follow up
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/crm/follow-ups" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"Meeting with client\",
\"contact_id\": 2,
\"description\": \"Dicta commodi nihil necessitatibus velit iusto.\",
\"schedule_type\": \"veritatis\",
\"user_id\": [
2,
3,
5
],
\"notify_before\": 5,
\"notify_type\": \"minute\",
\"status\": \"open\",
\"notify_via\": [
\"perferendis\"
],
\"start_datetime\": \"2021-01-06 13:05:00\",
\"end_datetime\": \"2021-01-06 13:05:00\",
\"followup_additional_info\": [
\"aliquam\"
],
\"allow_notification\": true
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/crm/follow-ups"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"title": "Meeting with client",
"contact_id": 2,
"description": "Dicta commodi nihil necessitatibus velit iusto.",
"schedule_type": "veritatis",
"user_id": [
2,
3,
5
],
"notify_before": 5,
"notify_type": "minute",
"status": "open",
"notify_via": [
"perferendis"
],
"start_datetime": "2021-01-06 13:05:00",
"end_datetime": "2021-01-06 13:05:00",
"followup_additional_info": [
"aliquam"
],
"allow_notification": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/crm/follow-ups';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'title' => 'Meeting with client',
'contact_id' => 2,
'description' => 'Dicta commodi nihil necessitatibus velit iusto.',
'schedule_type' => 'veritatis',
'user_id' => [
2,
3,
5,
],
'notify_before' => 5,
'notify_type' => 'minute',
'status' => 'open',
'notify_via' => [
'perferendis',
],
'start_datetime' => '2021-01-06 13:05:00',
'end_datetime' => '2021-01-06 13:05:00',
'followup_additional_info' => [
'aliquam',
],
'allow_notification' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"title": "test",
"contact_id": "1",
"description": null,
"schedule_type": "call",
"followup_category_id": "1",
"notify_before": null,
"status": null,
"start_datetime": "2021-01-06 15:27:00",
"end_datetime": "2021-01-06 15:27:00",
"allow_notification": 0,
"notify_via": {
"sms": 1,
"mail": 1
},
"notify_type": "hour",
"business_id": 1,
"created_by": 1,
"updated_at": "2021-01-06 17:04:54",
"created_at": "2021-01-06 17:04:54",
"id": 20
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified followup
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/crm/follow-ups/reiciendis" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/crm/follow-ups/reiciendis"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/crm/follow-ups/reiciendis';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 20,
"business_id": 1,
"contact_id": 1,
"title": "Meeting with client",
"status": null,
"start_datetime": "2021-01-06 15:27:00",
"end_datetime": "2021-01-06 15:27:00",
"description": null,
"schedule_type": "call",
"allow_notification": 0,
"notify_via": {
"sms": 1,
"mail": 1
},
"notify_before": null,
"notify_type": "hour",
"created_by": 1,
"created_at": "2021-01-06 17:04:54",
"updated_at": "2021-01-06 17:04:54",
"customer": {
"id": 1,
"business_id": 1,
"type": "customer",
"supplier_business_name": null,
"name": "Walk-In Customer",
"prefix": null,
"first_name": "Walk-In Customer",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CO0005",
"contact_status": "active",
"tax_number": null,
"city": "Phoenix",
"state": "Arizona",
"country": "USA",
"address_line_1": "Linking Street",
"address_line_2": null,
"zip_code": null,
"dob": null,
"mobile": "(378) 400-1234",
"landline": null,
"alternate_number": null,
"pay_term_number": null,
"pay_term_type": null,
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 1,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"deleted_at": null,
"created_at": "2018-01-03 20:45:20",
"updated_at": "2018-06-11 22:22:05",
"remember_token": null,
"password": null
},
"users": [
{
"id": 2,
"user_type": "user",
"surname": "Mr",
"first_name": "Demo",
"last_name": "Cashier",
"username": "cashier",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:20:58",
"updated_at": "2018-01-04 02:20:58",
"pivot": {
"schedule_id": 20,
"user_id": 2
}
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update follow up
requires authentication
Example request:
curl --request PUT \
"https://app.keepmyaccount.com/connector/api/crm/follow-ups/dolorum" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"Meeting with client\",
\"contact_id\": 2,
\"description\": \"Eaque qui porro sit delectus.\",
\"schedule_type\": \"placeat\",
\"user_id\": [
2,
3,
5
],
\"notify_before\": 5,
\"notify_type\": \"minute\",
\"status\": \"open\",
\"notify_via\": [
\"repellat\"
],
\"followup_additional_info\": [
\"laudantium\"
],
\"start_datetime\": \"2021-01-06 13:05:00\",
\"end_datetime\": \"2021-01-06 13:05:00\",
\"allow_notification\": true
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/crm/follow-ups/dolorum"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"title": "Meeting with client",
"contact_id": 2,
"description": "Eaque qui porro sit delectus.",
"schedule_type": "placeat",
"user_id": [
2,
3,
5
],
"notify_before": 5,
"notify_type": "minute",
"status": "open",
"notify_via": [
"repellat"
],
"followup_additional_info": [
"laudantium"
],
"start_datetime": "2021-01-06 13:05:00",
"end_datetime": "2021-01-06 13:05:00",
"allow_notification": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/crm/follow-ups/dolorum';
$response = $client->put(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'title' => 'Meeting with client',
'contact_id' => 2,
'description' => 'Eaque qui porro sit delectus.',
'schedule_type' => 'placeat',
'user_id' => [
2,
3,
5,
],
'notify_before' => 5,
'notify_type' => 'minute',
'status' => 'open',
'notify_via' => [
'repellat',
],
'followup_additional_info' => [
'laudantium',
],
'start_datetime' => '2021-01-06 13:05:00',
'end_datetime' => '2021-01-06 13:05:00',
'allow_notification' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 20,
"business_id": 1,
"contact_id": "1",
"title": "Meeting with client",
"status": null,
"start_datetime": "2021-01-06 15:27:00",
"end_datetime": "2021-01-06 15:27:00",
"description": null,
"schedule_type": "call",
"allow_notification": 0,
"notify_via": {
"sms": 1,
"mail": 0
},
"notify_before": null,
"notify_type": "hour",
"created_by": 1,
"created_at": "2021-01-06 17:04:54",
"updated_at": "2021-01-06 18:22:21"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get follow up resources
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/crm/follow-up-resources" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/crm/follow-up-resources"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/crm/follow-up-resources';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"statuses": {
"scheduled": "Scheduled",
"open": "Open",
"canceled": "Cancelled",
"completed": "Completed"
},
"follow_up_types": {
"call": "Call",
"sms": "Sms",
"meeting": "Meeting",
"email": "Email"
},
"notify_type": {
"minute": "Minute",
"hour": "Hour",
"day": "Day"
},
"notify_via": {
"sms": "Sms",
"mail": "Email"
}
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List lead
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/crm/leads?assigned_to=1%2C2%2C3&name=deleniti&biz_name=voluptatibus&mobile_num=5&contact_id=modi&order_by=minima&direction=desc&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/crm/leads"
);
const params = {
"assigned_to": "1,2,3",
"name": "deleniti",
"biz_name": "voluptatibus",
"mobile_num": "5",
"contact_id": "modi",
"order_by": "minima",
"direction": "desc",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/crm/leads';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'assigned_to' => '1,2,3',
'name' => 'deleniti',
'biz_name' => 'voluptatibus',
'mobile_num' => '5',
'contact_id' => 'modi',
'order_by' => 'minima',
'direction' => 'desc',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"contact_id": "CO0010",
"name": "mr Lead 3 kr kr 2",
"supplier_business_name": "POS",
"email": null,
"mobile": "9437638555",
"tax_number": null,
"created_at": "2020-12-15 23:14:30",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"alternate_number": null,
"landline": null,
"dob": null,
"contact_status": "active",
"type": "lead",
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"id": 49,
"business_id": 1,
"crm_source": "55",
"crm_life_stage": "60",
"address_line_1": null,
"address_line_2": null,
"city": null,
"state": null,
"country": null,
"zip_code": null,
"last_follow_up_id": 18,
"upcoming_follow_up_id": null,
"last_follow_up": "2021-01-07 10:26:00",
"upcoming_follow_up": null,
"last_follow_up_additional_info": "{\"test\":\"test done\",\"call_duration\":\"1.5 Hour\",\"rand\":1}",
"upcoming_follow_up_additional_info": null,
"source": {
"id": 55,
"name": "Facebook",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "source",
"description": "Facebook",
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2020-12-15 23:07:53",
"updated_at": "2020-12-15 23:07:53"
},
"life_stage": {
"id": 60,
"name": "Open Deal",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "life_stage",
"description": "Open Deal",
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2020-12-15 23:11:05",
"updated_at": "2020-12-15 23:11:05"
},
"lead_users": [
{
"id": 10,
"user_type": "user",
"surname": "Mr.",
"first_name": "WooCommerce",
"last_name": "User",
"username": "woocommerce_user",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-08-02 04:05:55",
"updated_at": "2018-08-02 04:05:55",
"pivot": {
"contact_id": 49,
"user_id": 10
}
}
]
},
{
"contact_id": "CO0011",
"name": " Lead 4 ",
"supplier_business_name": null,
"email": null,
"mobile": "234567",
"tax_number": null,
"created_at": "2020-12-15 23:14:48",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"alternate_number": null,
"landline": null,
"dob": null,
"contact_status": "active",
"type": "lead",
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"id": 50,
"business_id": 1,
"crm_source": "55",
"crm_life_stage": "62",
"address_line_1": null,
"address_line_2": null,
"city": null,
"state": null,
"country": null,
"zip_code": null,
"last_follow_up_id": 32,
"upcoming_follow_up_id": null,
"last_follow_up": "2021-01-08 16:06:00",
"upcoming_follow_up": null,
"last_follow_up_additional_info": "{\"call_durartion\":\"5 hour\"}",
"upcoming_follow_up_additional_info": null,
"source": {
"id": 55,
"name": "Facebook",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "source",
"description": "Facebook",
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2020-12-15 23:07:53",
"updated_at": "2020-12-15 23:07:53"
},
"life_stage": {
"id": 62,
"name": "New",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "life_stage",
"description": "New",
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2020-12-15 23:11:26",
"updated_at": "2020-12-15 23:11:26"
},
"lead_users": [
{
"id": 11,
"user_type": "user",
"surname": "Mr",
"first_name": "Admin Essential",
"last_name": null,
"username": "admin-essentials",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2018-01-04 02:15:19",
"pivot": {
"contact_id": 50,
"user_id": 11
}
}
]
},
{
"contact_id": "CO0015",
"name": " Lead kr ",
"supplier_business_name": null,
"email": null,
"mobile": "9437638555",
"tax_number": null,
"created_at": "2021-01-07 18:31:08",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"alternate_number": null,
"landline": null,
"dob": "2021-01-07",
"contact_status": "active",
"type": "lead",
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"id": 82,
"business_id": 1,
"crm_source": null,
"crm_life_stage": null,
"address_line_1": null,
"address_line_2": null,
"city": null,
"state": null,
"country": null,
"zip_code": null,
"last_follow_up_id": 36,
"upcoming_follow_up_id": null,
"last_follow_up": "2021-01-07 18:31:08",
"upcoming_follow_up": null,
"last_follow_up_additional_info": "{\"call duration\":\"1 hour\",\"call descr\":\"talked to him and all okay\"}",
"upcoming_follow_up_additional_info": null,
"source": null,
"life_stage": null,
"lead_users": [
{
"id": 11,
"user_type": "user",
"surname": "Mr",
"first_name": "Admin Essential",
"last_name": null,
"username": "admin-essentials",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2018-01-04 02:15:19",
"pivot": {
"contact_id": 82,
"user_id": 11
}
}
]
}
],
"links": {
"first": "http://local.pos.com/connector/api/crm/leads?page=1",
"last": "http://local.pos.com/connector/api/crm/leads?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "http://local.pos.com/connector/api/crm/leads",
"per_page": "10",
"to": 3,
"total": 3
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Save Call Logs
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/crm/call-logs" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
const url = new URL(
"https://app.keepmyaccount.com/connector/api/crm/call-logs"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/crm/call-logs';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Cash register management
List Cash Registers
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/cash-register?status=open&user_id=10&start_date=2018-06-25&end_date=2018-06-25&location_id=1&per_page=15" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/cash-register"
);
const params = {
"status": "open",
"user_id": "10",
"start_date": "2018-06-25",
"end_date": "2018-06-25",
"location_id": "1",
"per_page": "15",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/cash-register';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'status' => 'open',
'user_id' => '10',
'start_date' => '2018-06-25',
'end_date' => '2018-06-25',
'location_id' => '1',
'per_page' => '15',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"location_id": 1,
"user_id": 9,
"status": "open",
"closed_at": null,
"closing_amount": "0.0000",
"total_card_slips": 0,
"total_cheques": 0,
"closing_note": null,
"created_at": "2020-07-02 12:03:00",
"updated_at": "2020-07-02 12:03:19",
"cash_register_transactions": [
{
"id": 1,
"cash_register_id": 1,
"amount": "0.0000",
"pay_method": "cash",
"type": "credit",
"transaction_type": "initial",
"transaction_id": null,
"created_at": "2018-07-13 07:39:34",
"updated_at": "2018-07-13 07:39:34"
},
{
"id": 2,
"cash_register_id": 1,
"amount": "42.5000",
"pay_method": "cash",
"type": "credit",
"transaction_type": "sell",
"transaction_id": 41,
"created_at": "2018-07-13 07:44:40",
"updated_at": "2018-07-13 07:44:40"
}
]
},
{
"id": 2,
"business_id": 1,
"location_id": 1,
"user_id": 1,
"status": "",
"closed_at": "2020-07-02 12:03:00",
"closing_amount": "0.0000",
"total_card_slips": 0,
"total_cheques": 0,
"closing_note": null,
"created_at": "2020-07-06 15:38:23",
"updated_at": "2020-07-06 15:38:23",
"cash_register_transactions": [
{
"id": 19,
"cash_register_id": 2,
"amount": "10.0000",
"pay_method": "cash",
"type": "credit",
"transaction_type": "initial",
"transaction_id": null,
"created_at": "2020-07-06 15:38:23",
"updated_at": "2020-07-06 15:38:23"
}
]
}
],
"links": {
"first": "http://local.pos.com/connector/api/cash-register?page=1",
"last": null,
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"path": "http://local.pos.com/connector/api/cash-register",
"per_page": 10,
"to": 2
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create Cash Register
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/cash-register" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"location_id\": 1,
\"initial_amount\": 1656.078058309,
\"created_at\": \"2020-5-7 15:20:22\",
\"closed_at\": \"2020-5-7 15:20:22\",
\"status\": \"close\",
\"closing_amount\": 14735340.9388,
\"total_card_slips\": 11,
\"total_cheques\": 3,
\"closing_note\": \"repudiandae\",
\"transaction_ids\": \"1,2,3\\n\\nresponse {\\n\\\"data\\\": {\\n\\\"status\\\": \\\"closed\\\",\\n\\\"location_id\\\": \\\"1\\\",\\n\\\"closed_at\\\": \\\"2020-07-02 12:03:00\\\",\\n\\\"business_id\\\": 1,\\n\\\"user_id\\\": 1,\\n\\\"updated_at\\\": \\\"2020-07-06 16:28:42\\\",\\n\\\"created_at\\\": \\\"2020-07-06 16:28:42\\\",\\n\\\"id\\\": 3\\n}\\n}\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/cash-register"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"location_id": 1,
"initial_amount": 1656.078058309,
"created_at": "2020-5-7 15:20:22",
"closed_at": "2020-5-7 15:20:22",
"status": "close",
"closing_amount": 14735340.9388,
"total_card_slips": 11,
"total_cheques": 3,
"closing_note": "repudiandae",
"transaction_ids": "1,2,3\n\nresponse {\n\"data\": {\n\"status\": \"closed\",\n\"location_id\": \"1\",\n\"closed_at\": \"2020-07-02 12:03:00\",\n\"business_id\": 1,\n\"user_id\": 1,\n\"updated_at\": \"2020-07-06 16:28:42\",\n\"created_at\": \"2020-07-06 16:28:42\",\n\"id\": 3\n}\n}"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/cash-register';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'location_id' => 1,
'initial_amount' => 1656.078058309,
'created_at' => '2020-5-7 15:20:22',
'closed_at' => '2020-5-7 15:20:22',
'status' => 'close',
'closing_amount' => 14735340.9388,
'total_card_slips' => 11,
'total_cheques' => 3,
'closing_note' => 'repudiandae',
'transaction_ids' => '1,2,3'."\n"
."\n"
.'response {'."\n"
.'"data": {'."\n"
.'"status": "closed",'."\n"
.'"location_id": "1",'."\n"
.'"closed_at": "2020-07-02 12:03:00",'."\n"
.'"business_id": 1,'."\n"
.'"user_id": 1,'."\n"
.'"updated_at": "2020-07-06 16:28:42",'."\n"
.'"created_at": "2020-07-06 16:28:42",'."\n"
.'"id": 3'."\n"
.'}'."\n"
.'}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified Register
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/cash-register/doloribus" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/cash-register/doloribus"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/cash-register/doloribus';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"location_id": 1,
"user_id": 9,
"status": "open",
"closed_at": null,
"closing_amount": "0.0000",
"total_card_slips": 0,
"total_cheques": 0,
"closing_note": null,
"created_at": "2020-07-02 12:03:00",
"updated_at": "2020-07-02 12:03:19",
"cash_register_transactions": [
{
"id": 1,
"cash_register_id": 1,
"amount": "0.0000",
"pay_method": "cash",
"type": "credit",
"transaction_type": "initial",
"transaction_id": null,
"created_at": "2018-07-13 07:39:34",
"updated_at": "2018-07-13 07:39:34"
},
{
"id": 2,
"cash_register_id": 1,
"amount": "42.5000",
"pay_method": "cash",
"type": "credit",
"transaction_type": "sell",
"transaction_id": 41,
"created_at": "2018-07-13 07:44:40",
"updated_at": "2018-07-13 07:44:40"
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Contact management
List contact
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/contactapi?type=consequuntur&name=atque&biz_name=a&mobile_num=4&contact_id=delectus&order_by=animi&direction=quod&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/contactapi"
);
const params = {
"type": "consequuntur",
"name": "atque",
"biz_name": "a",
"mobile_num": "4",
"contact_id": "delectus",
"order_by": "animi",
"direction": "quod",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/contactapi';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'type' => 'consequuntur',
'name' => 'atque',
'biz_name' => 'a',
'mobile_num' => '4',
'contact_id' => 'delectus',
'order_by' => 'animi',
'direction' => 'quod',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 2,
"business_id": 1,
"type": "supplier",
"supplier_business_name": "Alpha Clothings",
"name": "Michael",
"prefix": null,
"first_name": "Michael",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CO0001",
"contact_status": "active",
"tax_number": "4590091535",
"city": "Phoenix",
"state": "Arizona",
"country": "USA",
"address_line_1": "Linking Street",
"address_line_2": null,
"zip_code": null,
"dob": null,
"mobile": "(378) 400-1234",
"landline": null,
"alternate_number": null,
"pay_term_number": 15,
"pay_term_type": "days",
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 0,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"deleted_at": null,
"created_at": "2018-01-03 20:59:38",
"updated_at": "2018-06-11 22:21:03",
"remember_token": null,
"password": null
},
{
"id": 3,
"business_id": 1,
"type": "supplier",
"supplier_business_name": "Manhattan Clothing Ltd.",
"name": "Philip",
"prefix": null,
"first_name": "Philip",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CO0003",
"contact_status": "active",
"tax_number": "54869310093",
"city": "Phoenix",
"state": "Arizona",
"country": "USA",
"address_line_1": "Linking Street",
"address_line_2": null,
"zip_code": null,
"dob": null,
"mobile": "(378) 400-1234",
"landline": null,
"alternate_number": null,
"pay_term_number": 15,
"pay_term_type": "days",
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 0,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"deleted_at": null,
"created_at": "2018-01-03 21:00:55",
"updated_at": "2018-06-11 22:21:36",
"remember_token": null,
"password": null
},
{
"id": 5,
"business_id": 1,
"type": "supplier",
"supplier_business_name": "Digital Ocean",
"name": "Mike McCubbin",
"prefix": null,
"first_name": "Mike McCubbin",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CN0004",
"contact_status": "active",
"tax_number": "52965489001",
"city": "Phoenix",
"state": "Arizona",
"country": "USA",
"address_line_1": "Linking Street",
"address_line_2": null,
"zip_code": null,
"dob": null,
"mobile": "(378) 400-1234",
"landline": null,
"alternate_number": null,
"pay_term_number": 30,
"pay_term_type": "days",
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 0,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"deleted_at": null,
"created_at": "2018-01-06 06:53:22",
"updated_at": "2018-06-11 22:21:47",
"remember_token": null,
"password": null
},
{
"id": 6,
"business_id": 1,
"type": "supplier",
"supplier_business_name": "Univer Suppliers",
"name": "Jackson Hill",
"prefix": null,
"first_name": "Jackson Hill",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CO0002",
"contact_status": "active",
"tax_number": "5459000655",
"city": "Phoenix",
"state": "Arizona",
"country": "USA",
"address_line_1": "Linking Street",
"address_line_2": null,
"zip_code": null,
"dob": null,
"mobile": "(378) 400-1234",
"landline": null,
"alternate_number": null,
"pay_term_number": 45,
"pay_term_type": "days",
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 0,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"deleted_at": null,
"created_at": "2018-01-06 06:55:09",
"updated_at": "2018-06-11 22:21:18",
"remember_token": null,
"password": null
}
],
"links": {
"first": "http://local.pos.com/connector/api/contactapi?page=1",
"last": "http://local.pos.com/connector/api/contactapi?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "http://local.pos.com/connector/api/contactapi",
"per_page": "10",
"to": 4,
"total": 4
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create contact
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/contactapi" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"type\": \"customer\",
\"supplier_business_name\": \"animi\",
\"prefix\": \"reprehenderit\",
\"first_name\": \"dolores\",
\"middle_name\": \"dolor\",
\"last_name\": \"earum\",
\"tax_number\": \"8787fefef\",
\"pay_term_number\": 3,
\"pay_term_type\": \"months\",
\"mobile\": \"4578691009\",
\"landline\": \"5487-8454-4145\",
\"alternate_number\": \"841847541222\",
\"address_line_1\": \"assumenda\",
\"address_line_2\": \"assumenda\",
\"city\": \"repudiandae\",
\"state\": \"necessitatibus\",
\"country\": \"tempora\",
\"zip_code\": \"ratione\",
\"customer_group_id\": \"maiores\",
\"contact_id\": \"voluptatum\",
\"dob\": \"2000-06-13\",
\"custom_field1\": \"sequi\",
\"custom_field2\": \"laboriosam\",
\"custom_field3\": \"doloribus\",
\"custom_field4\": \"occaecati\",
\"email\": \"[email protected]\",
\"shipping_address\": \"quia\",
\"position\": \"impedit\",
\"opening_balance\": 0,
\"source_id\": 10,
\"life_stage_id\": 15,
\"assigned_to\": [
\"neque\"
]
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/contactapi"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"type": "customer",
"supplier_business_name": "animi",
"prefix": "reprehenderit",
"first_name": "dolores",
"middle_name": "dolor",
"last_name": "earum",
"tax_number": "8787fefef",
"pay_term_number": 3,
"pay_term_type": "months",
"mobile": "4578691009",
"landline": "5487-8454-4145",
"alternate_number": "841847541222",
"address_line_1": "assumenda",
"address_line_2": "assumenda",
"city": "repudiandae",
"state": "necessitatibus",
"country": "tempora",
"zip_code": "ratione",
"customer_group_id": "maiores",
"contact_id": "voluptatum",
"dob": "2000-06-13",
"custom_field1": "sequi",
"custom_field2": "laboriosam",
"custom_field3": "doloribus",
"custom_field4": "occaecati",
"email": "[email protected]",
"shipping_address": "quia",
"position": "impedit",
"opening_balance": 0,
"source_id": 10,
"life_stage_id": 15,
"assigned_to": [
"neque"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/contactapi';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'type' => 'customer',
'supplier_business_name' => 'animi',
'prefix' => 'reprehenderit',
'first_name' => 'dolores',
'middle_name' => 'dolor',
'last_name' => 'earum',
'tax_number' => '8787fefef',
'pay_term_number' => 3.0,
'pay_term_type' => 'months',
'mobile' => '4578691009',
'landline' => '5487-8454-4145',
'alternate_number' => '841847541222',
'address_line_1' => 'assumenda',
'address_line_2' => 'assumenda',
'city' => 'repudiandae',
'state' => 'necessitatibus',
'country' => 'tempora',
'zip_code' => 'ratione',
'customer_group_id' => 'maiores',
'contact_id' => 'voluptatum',
'dob' => '2000-06-13',
'custom_field1' => 'sequi',
'custom_field2' => 'laboriosam',
'custom_field3' => 'doloribus',
'custom_field4' => 'occaecati',
'email' => '[email protected]',
'shipping_address' => 'quia',
'position' => 'impedit',
'opening_balance' => 0.0,
'source_id' => 10,
'life_stage_id' => 15,
'assigned_to' => [
'neque',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"type": "customer",
"name": "test customer",
"tax_number": "75879BHF",
"mobile": "7878825008",
"business_id": 1,
"created_by": 9,
"credit_limit": null,
"contact_id": "CO0007",
"updated_at": "2020-06-04 21:59:21",
"created_at": "2020-06-04 21:59:21",
"id": 17
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified contact
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/contactapi/autem" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/contactapi/autem"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/contactapi/autem';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"type": "customer",
"supplier_business_name": null,
"name": " Walk-In Customer ",
"prefix": null,
"first_name": "Walk-In Customer",
"middle_name": null,
"last_name": null,
"email": "[email protected]",
"contact_id": "CO0005",
"contact_status": "active",
"tax_number": null,
"city": "Phoenix",
"state": "Arizona",
"country": "USA",
"address_line_1": "Linking Street",
"address_line_2": null,
"zip_code": "85001",
"dob": null,
"mobile": "(378) 400-1234",
"landline": null,
"alternate_number": null,
"pay_term_number": null,
"pay_term_type": null,
"credit_limit": "0.0000",
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 1,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-03 20:45:20",
"updated_at": "2020-08-10 10:26:45",
"remember_token": null,
"password": null,
"customer_group": null,
"opening_balance": "0.0000",
"opening_balance_paid": "0.0000",
"total_purchase": "0.0000",
"purchase_paid": "0.0000",
"total_purchase_return": "0.0000",
"purchase_return_paid": "0.0000",
"total_invoice": "2050.0000",
"invoice_received": "1987.5000",
"total_sell_return": "0.0000",
"sell_return_paid": "0.0000",
"purchase_due": 0,
"sell_due": 62.5,
"purchase_return_due": 0,
"sell_return_due": 0
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update contact
requires authentication
Example request:
curl --request PUT \
"https://app.keepmyaccount.com/connector/api/contactapi/suscipit" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"type\": \"customer\",
\"supplier_business_name\": \"perspiciatis\",
\"prefix\": \"rerum\",
\"first_name\": \"similique\",
\"middle_name\": \"asperiores\",
\"last_name\": \"id\",
\"tax_number\": \"488744dwd\",
\"pay_term_number\": 3,
\"pay_term_type\": \"months\",
\"mobile\": \"8795461009\",
\"landline\": \"65484-848-848\",
\"alternate_number\": \"9898795220\",
\"address_line_1\": \"rem\",
\"address_line_2\": \"soluta\",
\"city\": \"esse\",
\"state\": \"qui\",
\"country\": \"impedit\",
\"zip_code\": \"cumque\",
\"customer_group_id\": \"facilis\",
\"contact_id\": \"reiciendis\",
\"dob\": \"2000-06-13\",
\"custom_field1\": \"molestiae\",
\"custom_field2\": \"sunt\",
\"custom_field3\": \"iste\",
\"custom_field4\": \"magnam\",
\"email\": \"[email protected]\",
\"shipping_address\": \"voluptates\",
\"position\": \"sit\",
\"opening_balance\": 10.3,
\"source_id\": 3,
\"life_stage_id\": 13,
\"assigned_to\": [
\"sequi\"
]
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/contactapi/suscipit"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"type": "customer",
"supplier_business_name": "perspiciatis",
"prefix": "rerum",
"first_name": "similique",
"middle_name": "asperiores",
"last_name": "id",
"tax_number": "488744dwd",
"pay_term_number": 3,
"pay_term_type": "months",
"mobile": "8795461009",
"landline": "65484-848-848",
"alternate_number": "9898795220",
"address_line_1": "rem",
"address_line_2": "soluta",
"city": "esse",
"state": "qui",
"country": "impedit",
"zip_code": "cumque",
"customer_group_id": "facilis",
"contact_id": "reiciendis",
"dob": "2000-06-13",
"custom_field1": "molestiae",
"custom_field2": "sunt",
"custom_field3": "iste",
"custom_field4": "magnam",
"email": "[email protected]",
"shipping_address": "voluptates",
"position": "sit",
"opening_balance": 10.3,
"source_id": 3,
"life_stage_id": 13,
"assigned_to": [
"sequi"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/contactapi/suscipit';
$response = $client->put(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'type' => 'customer',
'supplier_business_name' => 'perspiciatis',
'prefix' => 'rerum',
'first_name' => 'similique',
'middle_name' => 'asperiores',
'last_name' => 'id',
'tax_number' => '488744dwd',
'pay_term_number' => 3.0,
'pay_term_type' => 'months',
'mobile' => '8795461009',
'landline' => '65484-848-848',
'alternate_number' => '9898795220',
'address_line_1' => 'rem',
'address_line_2' => 'soluta',
'city' => 'esse',
'state' => 'qui',
'country' => 'impedit',
'zip_code' => 'cumque',
'customer_group_id' => 'facilis',
'contact_id' => 'reiciendis',
'dob' => '2000-06-13',
'custom_field1' => 'molestiae',
'custom_field2' => 'sunt',
'custom_field3' => 'iste',
'custom_field4' => 'magnam',
'email' => '[email protected]',
'shipping_address' => 'voluptates',
'position' => 'sit',
'opening_balance' => 10.3,
'source_id' => 3,
'life_stage_id' => 13,
'assigned_to' => [
'sequi',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 21,
"business_id": 1,
"type": "customer",
"supplier_business_name": null,
"name": "created from api",
"prefix": null,
"first_name": "created from api",
"middle_name": null,
"last_name": null,
"email": null,
"contact_id": "CO0009",
"contact_status": "active",
"tax_number": null,
"city": null,
"state": null,
"country": null,
"address_line_1": "test address",
"address_line_2": null,
"zip_code": "54878787",
"dob": "2000-06-13",
"mobile": "8754154872154",
"landline": null,
"alternate_number": null,
"pay_term_number": null,
"pay_term_type": null,
"credit_limit": null,
"created_by": 1,
"balance": "0.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"is_default": 0,
"shipping_address": null,
"position": null,
"customer_group_id": null,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2020-08-10 10:41:42",
"updated_at": "2020-08-10 10:41:42",
"remember_token": null,
"password": null
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Contact payment
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/contactapi-payment" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"contact_id\": 17,
\"amount\": 453.13,
\"method\": \"cash\",
\"paid_on\": \"2020-07-22 15:48:29\",
\"account_id\": 15,
\"card_number\": \"unde\",
\"card_holder_name\": \"ratione\",
\"card_transaction_number\": \"ea\",
\"card_type\": \"voluptate\",
\"card_month\": \"et\",
\"card_year\": \"ipsum\",
\"card_security\": \"placeat\",
\"transaction_no_1\": \"ipsam\",
\"transaction_no_2\": \"deserunt\",
\"transaction_no_3\": \"officia\",
\"cheque_number\": \"repellat\",
\"bank_account_number\": \"dignissimos\",
\"note\": \"quia\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/contactapi-payment"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"contact_id": 17,
"amount": 453.13,
"method": "cash",
"paid_on": "2020-07-22 15:48:29",
"account_id": 15,
"card_number": "unde",
"card_holder_name": "ratione",
"card_transaction_number": "ea",
"card_type": "voluptate",
"card_month": "et",
"card_year": "ipsum",
"card_security": "placeat",
"transaction_no_1": "ipsam",
"transaction_no_2": "deserunt",
"transaction_no_3": "officia",
"cheque_number": "repellat",
"bank_account_number": "dignissimos",
"note": "quia"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/contactapi-payment';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'contact_id' => 17,
'amount' => 453.13,
'method' => 'cash',
'paid_on' => '2020-07-22 15:48:29',
'account_id' => 15,
'card_number' => 'unde',
'card_holder_name' => 'ratione',
'card_transaction_number' => 'ea',
'card_type' => 'voluptate',
'card_month' => 'et',
'card_year' => 'ipsum',
'card_security' => 'placeat',
'transaction_no_1' => 'ipsam',
'transaction_no_2' => 'deserunt',
'transaction_no_3' => 'officia',
'cheque_number' => 'repellat',
'bank_account_number' => 'dignissimos',
'note' => 'quia',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"amount": "20",
"method": "cash",
"paid_on": "2020-07-22 15:48:29",
"created_by": 1,
"payment_for": "19",
"business_id": 1,
"is_advance": 1,
"payment_ref_no": "SP2020/0127",
"document": null,
"updated_at": "2020-07-22 15:48:29",
"created_at": "2020-07-22 15:48:29",
"id": 215
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Endpoints
Authorize a client to access the user's account.
Example request:
curl --request POST \
"https://app.keepmyaccount.com/oauth/token" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/token"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/token';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Authorize a client to access the user's account.
Get a fresh transient token cookie for the authenticated user.
Example request:
curl --request POST \
"https://app.keepmyaccount.com/oauth/token/refresh" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/token/refresh"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/token/refresh';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Approve the authorization request.
Deny the authorization request.
Get all of the authorized tokens for the authenticated user.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/oauth/tokens" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/tokens"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/tokens';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route oauth/tokens could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the given token.
Example request:
curl --request DELETE \
"https://app.keepmyaccount.com/oauth/tokens/quis" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/tokens/quis"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/tokens/quis';
$response = $client->delete(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all of the clients for the authenticated user.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/oauth/clients" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/clients"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/clients';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route oauth/clients could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Store a new client.
Example request:
curl --request POST \
"https://app.keepmyaccount.com/oauth/clients" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/clients"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/clients';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the given client.
Example request:
curl --request PUT \
"https://app.keepmyaccount.com/oauth/clients/eum" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/clients/eum"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/clients/eum';
$response = $client->put(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the given client.
Example request:
curl --request DELETE \
"https://app.keepmyaccount.com/oauth/clients/soluta" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/clients/soluta"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/clients/soluta';
$response = $client->delete(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all of the available scopes for the application.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/oauth/scopes" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/scopes"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/scopes';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route oauth/scopes could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all of the personal access tokens for the authenticated user.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/oauth/personal-access-tokens" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/personal-access-tokens"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/personal-access-tokens';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route oauth/personal-access-tokens could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new personal access token for the user.
Example request:
curl --request POST \
"https://app.keepmyaccount.com/oauth/personal-access-tokens" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/personal-access-tokens"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/personal-access-tokens';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the given token.
Example request:
curl --request DELETE \
"https://app.keepmyaccount.com/oauth/personal-access-tokens/dicta" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/oauth/personal-access-tokens/dicta"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/oauth/personal-access-tokens/dicta';
$response = $client->delete(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List payment accounts
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/payment-accounts" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/payment-accounts"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/payment-accounts';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"name": "Test Account",
"account_number": "8746888847455",
"account_type_id": 0,
"note": null,
"created_by": 9,
"is_closed": 0,
"deleted_at": null,
"created_at": "2020-06-04 21:34:21",
"updated_at": "2020-06-04 21:34:21"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List payment methods
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/payment-methods" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/payment-methods"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/payment-methods';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"cash": "Cash",
"card": "Card",
"cheque": "Cheque",
"bank_transfer": "Bank Transfer",
"other": "Other",
"custom_pay_1": "Custom Payment 1",
"custom_pay_2": "Custom Payment 2",
"custom_pay_3": "Custom Payment 3"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get business details
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/business-details" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/business-details"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/business-details';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 1,
"name": "Awesome Shop",
"currency_id": 2,
"start_date": "2018-01-01",
"tax_number_1": "3412569900",
"tax_label_1": "GSTIN",
"tax_number_2": null,
"tax_label_2": null,
"default_sales_tax": null,
"default_profit_percent": 25,
"owner_id": 1,
"time_zone": "America/Phoenix",
"fy_start_month": 1,
"accounting_method": "fifo",
"default_sales_discount": "10.00",
"sell_price_tax": "includes",
"logo": null,
"sku_prefix": "AS",
"enable_product_expiry": 0,
"expiry_type": "add_expiry",
"on_product_expiry": "keep_selling",
"stop_selling_before": 0,
"enable_tooltip": 1,
"purchase_in_diff_currency": 0,
"purchase_currency_id": null,
"p_exchange_rate": "1.000",
"transaction_edit_days": 30,
"stock_expiry_alert_days": 30,
"keyboard_shortcuts": {
"pos": {
"express_checkout": "shift+e",
"pay_n_ckeckout": "shift+p",
"draft": "shift+d",
"cancel": "shift+c",
"recent_product_quantity": "f2",
"weighing_scale": null,
"edit_discount": "shift+i",
"edit_order_tax": "shift+t",
"add_payment_row": "shift+r",
"finalize_payment": "shift+f",
"add_new_product": "f4"
}
},
"pos_settings": {
"amount_rounding_method": null,
"disable_pay_checkout": 0,
"disable_draft": 0,
"disable_express_checkout": 0,
"hide_product_suggestion": 0,
"hide_recent_trans": 0,
"disable_discount": 0,
"disable_order_tax": 0,
"is_pos_subtotal_editable": 0
},
"weighing_scale_setting": {
"label_prefix": null,
"product_sku_length": "4",
"qty_length": "3",
"qty_length_decimal": "2"
},
"manufacturing_settings": null,
"essentials_settings": null,
"ecom_settings": null,
"woocommerce_wh_oc_secret": null,
"woocommerce_wh_ou_secret": null,
"woocommerce_wh_od_secret": null,
"woocommerce_wh_or_secret": null,
"enable_brand": 1,
"enable_category": 1,
"enable_sub_category": 1,
"enable_price_tax": 1,
"enable_purchase_status": 1,
"enable_lot_number": 0,
"default_unit": null,
"enable_sub_units": 0,
"enable_racks": 0,
"enable_row": 0,
"enable_position": 0,
"enable_editing_product_from_purchase": 1,
"sales_cmsn_agnt": null,
"item_addition_method": 1,
"enable_inline_tax": 1,
"currency_symbol_placement": "before",
"enabled_modules": [
"purchases",
"add_sale",
"pos_sale",
"stock_transfers",
"stock_adjustment",
"expenses",
"account",
"tables",
"modifiers",
"service_staff",
"booking",
"kitchen",
"subscription",
"types_of_service"
],
"date_format": "m/d/Y",
"time_format": "24",
"ref_no_prefixes": {
"purchase": "PO",
"purchase_return": null,
"stock_transfer": "ST",
"stock_adjustment": "SA",
"sell_return": "CN",
"expense": "EP",
"contacts": "CO",
"purchase_payment": "PP",
"sell_payment": "SP",
"expense_payment": null,
"business_location": "BL",
"username": null,
"subscription": null
},
"theme_color": null,
"created_by": null,
"enable_rp": 0,
"rp_name": null,
"amount_for_unit_rp": "1.0000",
"min_order_total_for_rp": "1.0000",
"max_rp_per_order": null,
"redeem_amount_per_unit_rp": "1.0000",
"min_order_total_for_redeem": "1.0000",
"min_redeem_point": null,
"max_redeem_point": null,
"rp_expiry_period": null,
"rp_expiry_type": "year",
"repair_settings": null,
"email_settings": {
"mail_driver": "smtp",
"mail_host": null,
"mail_port": null,
"mail_username": null,
"mail_password": null,
"mail_encryption": null,
"mail_from_address": null,
"mail_from_name": null
},
"sms_settings": {
"url": null,
"send_to_param_name": "to",
"msg_param_name": "text",
"request_method": "post",
"param_1": null,
"param_val_1": null,
"param_2": null,
"param_val_2": null,
"param_3": null,
"param_val_3": null,
"param_4": null,
"param_val_4": null,
"param_5": null,
"param_val_5": null,
"param_6": null,
"param_val_6": null,
"param_7": null,
"param_val_7": null,
"param_8": null,
"param_val_8": null,
"param_9": null,
"param_val_9": null,
"param_10": null,
"param_val_10": null
},
"custom_labels": {
"payments": {
"custom_pay_1": null,
"custom_pay_2": null,
"custom_pay_3": null
},
"contact": {
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null
},
"product": {
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null
},
"location": {
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null
},
"user": {
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null
},
"purchase": {
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null
},
"sell": {
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null
},
"types_of_service": {
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null
}
},
"common_settings": {
"default_datatable_page_entries": "25"
},
"is_active": 1,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2020-06-04 22:33:01",
"locations": [
{
"id": 1,
"business_id": 1,
"location_id": null,
"name": "Awesome Shop",
"landmark": "Linking Street",
"country": "USA",
"state": "Arizona",
"city": "Phoenix",
"zip_code": "85001",
"invoice_scheme_id": 1,
"invoice_layout_id": 1,
"selling_price_group_id": null,
"print_receipt_on_invoice": 1,
"receipt_printer_type": "browser",
"printer_id": null,
"mobile": null,
"alternate_number": null,
"email": null,
"website": null,
"featured_products": [
"5",
"71"
],
"is_active": 1,
"default_payment_accounts": {
"cash": {
"is_enabled": "1",
"account": null
},
"card": {
"is_enabled": "1",
"account": null
},
"cheque": {
"is_enabled": "1",
"account": null
},
"bank_transfer": {
"is_enabled": "1",
"account": null
},
"other": {
"is_enabled": "1",
"account": null
},
"custom_pay_1": {
"is_enabled": "1",
"account": null
},
"custom_pay_2": {
"is_enabled": "1",
"account": null
},
"custom_pay_3": {
"is_enabled": "1",
"account": null
}
},
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:20",
"updated_at": "2020-06-05 00:56:54"
}
],
"currency": {
"id": 2,
"country": "America",
"currency": "Dollars",
"code": "USD",
"symbol": "$",
"thousand_separator": ",",
"decimal_separator": ".",
"created_at": null,
"updated_at": null
},
"printers": [],
"currency_precision": 2,
"quantity_precision": 2
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get profit and loss report
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/profit-loss-report?location_id=1&start_date=2018-06-25&end_date=2018-06-25&user_id=1" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/profit-loss-report"
);
const params = {
"location_id": "1",
"start_date": "2018-06-25",
"end_date": "2018-06-25",
"user_id": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/profit-loss-report';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'location_id' => '1',
'start_date' => '2018-06-25',
'end_date' => '2018-06-25',
'user_id' => '1',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"total_purchase_shipping_charge": 0,
"total_sell_shipping_charge": 0,
"total_transfer_shipping_charges": "0.0000",
"opening_stock": 0,
"closing_stock": "386859.00000000",
"total_purchase": 386936,
"total_purchase_discount": "0.000000000000",
"total_purchase_return": "0.0000",
"total_sell": 9764.5,
"total_sell_discount": "11.550000000000",
"total_sell_return": "0.0000",
"total_sell_round_off": "0.0000",
"total_expense": "0.0000",
"total_adjustment": "0.0000",
"total_recovered": "0.0000",
"total_reward_amount": "0.0000",
"left_side_module_data": [
{
"value": "0.0000",
"label": "Total Payroll",
"add_to_net_profit": true
},
{
"value": 0,
"label": "Total Production Cost",
"add_to_net_profit": true
}
],
"right_side_module_data": [],
"net_profit": 9675.95,
"gross_profit": -11.55,
"total_sell_by_subtype": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get product current stock
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/product-stock-report" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/product-stock-report"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/product-stock-report';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"total_sold": null,
"total_transfered": null,
"total_adjusted": null,
"stock_price": null,
"stock": null,
"sku": "AS0001",
"product": "Men's Reverse Fleece Crew",
"type": "single",
"product_id": 1,
"unit": "Pc(s)",
"enable_stock": 1,
"unit_price": "143.0000",
"product_variation": "DUMMY",
"variation_name": "DUMMY",
"location_name": null,
"location_id": null,
"variation_id": 1
},
{
"total_sold": "50.0000",
"total_transfered": null,
"total_adjusted": null,
"stock_price": "3850.00000000",
"stock": "50.0000",
"sku": "AS0002-1",
"product": "Levis Men's Slimmy Fit Jeans",
"type": "variable",
"product_id": 2,
"unit": "Pc(s)",
"enable_stock": 1,
"unit_price": "77.0000",
"product_variation": "Waist Size",
"variation_name": "28",
"location_name": "Awesome Shop",
"location_id": 1,
"variation_id": 2
},
{
"total_sold": "60.0000",
"total_transfered": null,
"total_adjusted": null,
"stock_price": "6930.00000000",
"stock": "90.0000",
"sku": "AS0002-2",
"product": "Levis Men's Slimmy Fit Jeans",
"type": "variable",
"product_id": 2,
"unit": "Pc(s)",
"enable_stock": 1,
"unit_price": "77.0000",
"product_variation": "Waist Size",
"variation_name": "30",
"location_name": "Awesome Shop",
"location_id": 1,
"variation_id": 3
}
],
"links": {
"first": "http://local.pos.com/connector/api/product-stock-report?page=1",
"last": "http://local.pos.com/connector/api/product-stock-report?page=22",
"prev": null,
"next": "http://local.pos.com/connector/api/product-stock-report?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 22,
"path": "http://local.pos.com/connector/api/product-stock-report",
"per_page": 3,
"to": 3,
"total": 66
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get notifications
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/notifications" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/notifications"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/notifications';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"msg": "Payroll for August/2020 added by Mr. Super Admin. Reference No. 2020/0002",
"icon_class": "fas fa-money-bill-alt bg-green",
"link": "http://local.pos.com/hrm/payroll",
"read_at": null,
"created_at": "3 hours ago"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get location details from coordinates
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/get-location" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"lat\": \"41.40338\",
\"lon\": \"2.17403\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/get-location"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"lat": "41.40338",
"lon": "2.17403"
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/get-location';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'lat' => '41.40338',
'lon' => '2.17403',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"address": "Radhanath Mullick Ln, Tiretta Bazaar, Bow Bazaar, Kolkata, West Bengal, 700 073, India"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Install
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/install" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/install"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/install';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/install could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Installing Connector Module
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/install" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/install"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/install';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Uninstall
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/install/uninstall" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/install/uninstall"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/install/uninstall';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/install/uninstall could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
update module
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/install/update" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/install/update"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/install/update';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/install/update could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Display a listing of the resource.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/api could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Display a listing of the resource.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/client" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/client"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/client';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/client could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Show the form for creating a new resource.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/client/create" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/client/create"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/client/create';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/client/create could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Store a newly created resource in storage.
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/client" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/client"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/client';
$response = $client->post(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Show the specified resource.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/client/eos" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/client/eos"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/client/eos';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/client/eos could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Show the form for editing the specified resource.
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/client/ad/edit" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/client/ad/edit"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/client/ad/edit';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/client/ad/edit could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the specified resource in storage.
Example request:
curl --request PUT \
"https://app.keepmyaccount.com/connector/client/rerum" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/client/rerum"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "PUT",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/client/rerum';
$response = $client->put(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove the specified resource from storage.
Example request:
curl --request DELETE \
"https://app.keepmyaccount.com/connector/client/vitae" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/client/vitae"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/client/vitae';
$response = $client->delete(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET connector/regenerate
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/regenerate" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/regenerate"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/regenerate';
$response = $client->get(
$url,
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/regenerate could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Expense management
List expenses
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/expense?location_id=1&payment_status=paid&start_date=2018-06-25&end_date=2018-06-25&expense_for=similique&per_page=15" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/expense"
);
const params = {
"location_id": "1",
"payment_status": "paid",
"start_date": "2018-06-25",
"end_date": "2018-06-25",
"expense_for": "similique",
"per_page": "15",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/expense';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'location_id' => '1',
'payment_status' => 'paid',
'start_date' => '2018-06-25',
'end_date' => '2018-06-25',
'expense_for' => 'similique',
'per_page' => '15',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 59,
"business_id": 1,
"location_id": 1,
"payment_status": "due",
"ref_no": "EP2020/0001",
"transaction_date": "2020-07-03 12:58:00",
"total_before_tax": "50.0000",
"tax_id": null,
"tax_amount": "0.0000",
"final_total": "50.0000",
"expense_category_id": null,
"document": null,
"created_by": 9,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"created_at": "2020-07-03 12:58:23",
"updated_at": "2020-07-03 12:58:24",
"transaction_for": {
"id": 1,
"user_type": "user",
"surname": "Mr",
"first_name": "Admin",
"last_name": null,
"username": "admin",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2018-01-04 02:15:19"
}
}
],
"links": {
"first": "http://local.pos.com/connector/api/expense?page=1",
"last": null,
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"path": "http://local.pos.com/connector/api/expense",
"per_page": 10,
"to": 1
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create expense / expense refund
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/expense" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"location_id\": 1,
\"final_total\": 40490998.569,
\"transaction_date\": \"2020-5-7 15:20:22\",
\"tax_rate_id\": 2,
\"expense_for\": 9,
\"contact_id\": 10,
\"expense_category_id\": 7,
\"expense_sub_category_id\": 5,
\"additional_notes\": \"blanditiis\",
\"is_refund\": 0,
\"is_recurring\": 0,
\"recur_interval\": 6,
\"recur_interval_type\": \"months\",
\"subscription_repeat_on\": 15,
\"subscription_no\": \"omnis\",
\"recur_repetitions\": 10,
\"payment\": [
\"non\"
]
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/expense"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"location_id": 1,
"final_total": 40490998.569,
"transaction_date": "2020-5-7 15:20:22",
"tax_rate_id": 2,
"expense_for": 9,
"contact_id": 10,
"expense_category_id": 7,
"expense_sub_category_id": 5,
"additional_notes": "blanditiis",
"is_refund": 0,
"is_recurring": 0,
"recur_interval": 6,
"recur_interval_type": "months",
"subscription_repeat_on": 15,
"subscription_no": "omnis",
"recur_repetitions": 10,
"payment": [
"non"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/expense';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'location_id' => 1,
'final_total' => 40490998.569,
'transaction_date' => '2020-5-7 15:20:22',
'tax_rate_id' => 2,
'expense_for' => 9,
'contact_id' => 10,
'expense_category_id' => 7,
'expense_sub_category_id' => 5,
'additional_notes' => 'blanditiis',
'is_refund' => 0,
'is_recurring' => 0,
'recur_interval' => 6,
'recur_interval_type' => 'months',
'subscription_repeat_on' => 15,
'subscription_no' => 'omnis',
'recur_repetitions' => 10,
'payment' => [
'non',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 75,
"business_id": 1,
"location_id": "1",
"payment_status": "due",
"ref_no": "EP2020/0013",
"transaction_date": "2020-07-06T05:31:29.480975Z",
"total_before_tax": "43",
"tax_id": null,
"tax_amount": 0,
"final_total": "43",
"expense_category_id": null,
"document": null,
"created_by": 1,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"created_at": "2020-07-06 11:01:29",
"updated_at": "2020-07-06 11:01:29",
"expense_for": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified expense / expense refund
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/expense/illum" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/expense/illum"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/expense/illum';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 59,
"business_id": 1,
"location_id": 1,
"payment_status": "due",
"ref_no": "EP2020/0001",
"transaction_date": "2020-07-03 12:58:00",
"total_before_tax": "50.0000",
"tax_id": null,
"tax_amount": "0.0000",
"final_total": "50.0000",
"expense_category_id": null,
"document": null,
"created_by": 9,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"created_at": "2020-07-03 12:58:23",
"updated_at": "2020-07-03 12:58:24",
"transaction_for": {
"id": 1,
"user_type": "user",
"surname": "Mr",
"first_name": "Admin",
"last_name": null,
"username": "admin",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2018-01-04 02:15:19"
}
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update expense / expense refund
requires authentication
Example request:
curl --request PUT \
"https://app.keepmyaccount.com/connector/api/expense/vero" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"final_total\": 0,
\"transaction_date\": \"2020-5-7 15:20:22\",
\"tax_rate_id\": 2,
\"expense_for\": 11,
\"contact_id\": 12,
\"expense_category_id\": 4,
\"expense_sub_category_id\": 10,
\"additional_notes\": \"ipsam\",
\"is_recurring\": 0,
\"recur_interval\": 12,
\"recur_interval_type\": \"months\",
\"subscription_repeat_on\": 15,
\"subscription_no\": \"eos\",
\"recur_repetitions\": 6,
\"payment\": [
\"itaque\"
]
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/expense/vero"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"final_total": 0,
"transaction_date": "2020-5-7 15:20:22",
"tax_rate_id": 2,
"expense_for": 11,
"contact_id": 12,
"expense_category_id": 4,
"expense_sub_category_id": 10,
"additional_notes": "ipsam",
"is_recurring": 0,
"recur_interval": 12,
"recur_interval_type": "months",
"subscription_repeat_on": 15,
"subscription_no": "eos",
"recur_repetitions": 6,
"payment": [
"itaque"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/expense/vero';
$response = $client->put(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'final_total' => 0.0,
'transaction_date' => '2020-5-7 15:20:22',
'tax_rate_id' => 2,
'expense_for' => 11,
'contact_id' => 12,
'expense_category_id' => 4,
'expense_sub_category_id' => 10,
'additional_notes' => 'ipsam',
'is_recurring' => 0,
'recur_interval' => 12,
'recur_interval_type' => 'months',
'subscription_repeat_on' => 15,
'subscription_no' => 'eos',
'recur_repetitions' => 6,
'payment' => [
'itaque',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 75,
"business_id": 1,
"location_id": "1",
"payment_status": "due",
"ref_no": "EP2020/0013",
"transaction_date": "2020-07-06T05:31:29.480975Z",
"total_before_tax": "43",
"tax_id": null,
"tax_amount": 0,
"final_total": "43",
"expense_category_id": null,
"document": null,
"created_by": 1,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"created_at": "2020-07-06 11:01:29",
"updated_at": "2020-07-06 11:01:29",
"expense_for": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List expense refunds
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/expense-refund?location_id=1&payment_status=paid&start_date=2018-06-25&end_date=2018-06-25&expense_for=dolore&per_page=15" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/expense-refund"
);
const params = {
"location_id": "1",
"payment_status": "paid",
"start_date": "2018-06-25",
"end_date": "2018-06-25",
"expense_for": "dolore",
"per_page": "15",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/expense-refund';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'location_id' => '1',
'payment_status' => 'paid',
'start_date' => '2018-06-25',
'end_date' => '2018-06-25',
'expense_for' => 'dolore',
'per_page' => '15',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 230,
"business_id": 1,
"location_id": 1,
"payment_status": "partial",
"ref_no": "refund",
"transaction_date": "2020-12-15 11:16:00",
"total_before_tax": "65.0000",
"tax_id": null,
"tax_amount": "0.0000",
"final_total": "65.0000",
"expense_category_id": null,
"document": null,
"created_by": 9,
"created_at": "2020-12-15 11:46:56",
"updated_at": "2020-12-15 12:47:30",
"expense_for": []
}
],
"links": {
"first": "http://local.pos.com/connector/api/expense-refund?page=1",
"last": null,
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"path": "http://local.pos.com/connector/api/expense-refund",
"per_page": 15,
"to": 1
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List expense categories
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/expense-categories" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/expense-categories"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/expense-categories';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "cat 1",
"business_id": 1,
"code": null,
"parent_id": null,
"deleted_at": null,
"created_at": "2021-12-16 17:54:40",
"updated_at": "2021-12-16 17:54:40",
"sub_categories": [
{
"id": 3,
"name": "sub cat 1",
"business_id": 1,
"code": null,
"parent_id": 1,
"deleted_at": null,
"created_at": "2021-12-16 18:12:07",
"updated_at": "2021-12-16 18:12:07"
}
]
},
{
"id": 7,
"name": "cat 2",
"business_id": 1,
"code": null,
"parent_id": null,
"deleted_at": null,
"created_at": "2021-12-17 10:36:13",
"updated_at": "2021-12-17 10:36:13",
"sub_categories": [
{
"id": 8,
"name": "sub cat 2",
"business_id": 1,
"code": null,
"parent_id": 7,
"deleted_at": null,
"created_at": "2021-12-17 10:36:44",
"updated_at": "2021-12-17 10:36:44"
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Field Force
List visits
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/field-force?contact_id=hic&assigned_to=voluptates&status=aut&start_date=2018-06-25&end_date=2018-06-25&per_page=15&order_by_date=0" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/field-force"
);
const params = {
"contact_id": "hic",
"assigned_to": "voluptates",
"status": "aut",
"start_date": "2018-06-25",
"end_date": "2018-06-25",
"per_page": "15",
"order_by_date": "0",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/field-force';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'contact_id' => 'hic',
'assigned_to' => 'voluptates',
'status' => 'aut',
'start_date' => '2018-06-25',
'end_date' => '2018-06-25',
'per_page' => '15',
'order_by_date' => '0',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "The route connector/api/field-force could not be found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create Visit
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/field-force/create" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"contact_id\": 5,
\"visit_to\": \"sequi\",
\"visit_address\": \"praesentium\",
\"assigned_to\": 17,
\"visit_on\": \"2021-12-28 17:23:00\",
\"visit_for\": \"quo\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/field-force/create"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"contact_id": 5,
"visit_to": "sequi",
"visit_address": "praesentium",
"assigned_to": 17,
"visit_on": "2021-12-28 17:23:00",
"visit_for": "quo"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/field-force/create';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'contact_id' => 5,
'visit_to' => 'sequi',
'visit_address' => 'praesentium',
'assigned_to' => 17,
'visit_on' => '2021-12-28 17:23:00',
'visit_for' => 'quo',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"contact_id": "6",
"assigned_to": "9",
"visit_on": "2022-01-15 17:23:00",
"visit_for": "",
"meet_with": "",
"meet_with2": "",
"meet_with3": "",
"meet_with_mobileno": "",
"meet_with_mobileno2": "",
"meet_with_mobileno3": "",
"meet_with_designation": "",
"meet_with_designation2": "",
"meet_with_designation3": "",
"visit_id": "2021/0031",
"status": "assigned",
"business_id": 1,
"updated_at": "2021-12-30 11:00:47",
"created_at": "2021-12-30 11:00:47",
"id": 3
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update Visit status
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/field-force/update-visit-status/17" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "status=finished"\
--form "reason_to_not_meet_contact=sed"\
--form "visited_on=2021-12-28 17:23:00"\
--form "visited_address=Radhanath Mullick Ln, Tiretta Bazaar, Bow Bazaar, Kolkata, West Bengal, 700 073, India"\
--form "latitude=41.40338"\
--form "longitude=2.17403"\
--form "comments=est"\
--form "meet_with=deserunt"\
--form "meet_with_mobileno=reiciendis"\
--form "photo=@/tmp/phpbtL9Q2"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/field-force/update-visit-status/17"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('status', 'finished');
body.append('reason_to_not_meet_contact', 'sed');
body.append('visited_on', '2021-12-28 17:23:00');
body.append('visited_address', 'Radhanath Mullick Ln, Tiretta Bazaar, Bow Bazaar, Kolkata, West Bengal, 700 073, India');
body.append('latitude', '41.40338');
body.append('longitude', '2.17403');
body.append('comments', 'est');
body.append('meet_with', 'deserunt');
body.append('meet_with_mobileno', 'reiciendis');
body.append('photo', document.querySelector('input[name="photo"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/field-force/update-visit-status/17';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'multipart/form-data',
'Accept' => 'application/json',
],
'multipart' => [
[
'name' => 'status',
'contents' => 'finished'
],
[
'name' => 'reason_to_not_meet_contact',
'contents' => 'sed'
],
[
'name' => 'visited_on',
'contents' => '2021-12-28 17:23:00'
],
[
'name' => 'visited_address',
'contents' => 'Radhanath Mullick Ln, Tiretta Bazaar, Bow Bazaar, Kolkata, West Bengal, 700 073, India'
],
[
'name' => 'latitude',
'contents' => '41.40338'
],
[
'name' => 'longitude',
'contents' => '2.17403'
],
[
'name' => 'comments',
'contents' => 'est'
],
[
'name' => 'meet_with',
'contents' => 'deserunt'
],
[
'name' => 'meet_with_mobileno',
'contents' => 'reiciendis'
],
[
'name' => 'photo',
'contents' => fopen('/tmp/phpbtL9Q2', 'r')
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 10,
"business_id": 1,
"contact_id": 6,
"assigned_to": 9,
"latitude": "23.6101808",
"longitude": "85.2799354",
"visited_address": "New address",
"status": "finished",
"visit_on": "2021-12-28 17:23:00",
"visit_for": "assigned from api",
"meet_with": "Name",
"meet_with2": "Name",
"meet_with3": "Name",
"meet_with_mobileno": "123456789",
"meet_with_mobileno2": "123456789",
"meet_with_mobileno3": "123456789",
"meet_with_designation": "dr",
"meet_with_designation2": "dr",
"meet_with_designation3": "dr",
"comments": "Users comment",
"created_at": "2021-12-28 17:35:13",
"updated_at": "2021-12-28 18:06:03"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
New end points
New List products
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/new_product?order_by=error&order_direction=vel&location_custom_field_1=dolor&category_id=veniam&sub_category_id=unde&location_id=1¬_for_sell=eum&send_lot_detail=ut&name=nobis&sku=odit&product_ids=1%2C2&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/new_product"
);
const params = {
"order_by": "error",
"order_direction": "vel",
"location_custom_field_1": "dolor",
"category_id": "veniam",
"sub_category_id": "unde",
"location_id": "1",
"not_for_sell": "eum",
"send_lot_detail": "ut",
"name": "nobis",
"sku": "odit",
"product_ids": "1,2",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/new_product';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'order_by' => 'error',
'order_direction' => 'vel',
'location_custom_field_1' => 'dolor',
'category_id' => 'veniam',
'sub_category_id' => 'unde',
'location_id' => '1',
'not_for_sell' => 'eum',
'send_lot_detail' => 'ut',
'name' => 'nobis',
'sku' => 'odit',
'product_ids' => '1,2',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 2,
"name": "Levis Men's Slimmy Fit Jeans",
"business_id": 1,
"type": "variable",
"exemption_type_id": null,
"enable_stock": 1,
"sku": "AS0002",
"product_custom_field1": null,
"product_custom_field2": null,
"product_custom_field3": null,
"product_custom_field4": null,
"woocommerce_media_id": null,
"product_description": null,
"is_inactive": 0,
"repair_model_id": null,
"not_for_selling": 0,
"ecom_shipping_class_id": null,
"ecom_active_in_store": 1,
"woocommerce_product_id": 627,
"woocommerce_disable_sync": 0,
"image_url": "http://local.pos.com/uploads/img/1528727964_levis_jeans.jpg",
"product_variations": [
{
"id": 2,
"variation_template_id": 5,
"name": "Waist Size",
"product_id": 2,
"is_dummy": 0,
"variations": [
{
"id": 2,
"name": "28",
"product_id": 2,
"sub_sku": "AS0002-1",
"product_variation_id": 2,
"woocommerce_variation_id": 658,
"default_purchase_price": "70.0000",
"dpp_inc_tax": "77.0000",
"default_sell_price": "70.0000",
"sell_price_inc_tax": "77.0000",
"combo_variations": null,
"variation_location_details": [
{
"id": 1,
"product_id": 2,
"product_variation_id": 2,
"variation_id": 2,
"location_id": 1,
"qty_available": "71.0000"
}
],
"media": [],
"discounts": []
},
{
"id": 3,
"name": "30",
"product_id": 2,
"sub_sku": "AS0002-2",
"product_variation_id": 2,
"woocommerce_variation_id": 659,
"default_purchase_price": "70.0000",
"dpp_inc_tax": "77.0000",
"default_sell_price": "70.0000",
"sell_price_inc_tax": "77.0000",
"combo_variations": null,
"variation_location_details": [
{
"id": 2,
"product_id": 2,
"product_variation_id": 2,
"variation_id": 3,
"location_id": 1,
"qty_available": "89.0000"
}
],
"media": [],
"discounts": []
},
{
"id": 4,
"name": "32",
"product_id": 2,
"sub_sku": "AS0002-3",
"product_variation_id": 2,
"woocommerce_variation_id": 660,
"default_purchase_price": "70.0000",
"dpp_inc_tax": "77.0000",
"default_sell_price": "70.0000",
"sell_price_inc_tax": "77.0000",
"combo_variations": null,
"variation_location_details": [
{
"id": 3,
"product_id": 2,
"product_variation_id": 2,
"variation_id": 4,
"location_id": 1,
"qty_available": "127.0000"
},
{
"id": 1371,
"product_id": 2,
"product_variation_id": 2,
"variation_id": 4,
"location_id": 7,
"qty_available": "-1.0000"
}
],
"media": [],
"discounts": []
},
{
"id": 5,
"name": "34",
"product_id": 2,
"sub_sku": "AS0002-4",
"product_variation_id": 2,
"woocommerce_variation_id": 661,
"default_purchase_price": "72.0000",
"dpp_inc_tax": "79.2000",
"default_sell_price": "72.0000",
"sell_price_inc_tax": "79.2000",
"combo_variations": null,
"variation_location_details": [
{
"id": 4,
"product_id": 2,
"product_variation_id": 2,
"variation_id": 5,
"location_id": 1,
"qty_available": "128.0000"
}
],
"media": [],
"discounts": []
},
{
"id": 6,
"name": "36",
"product_id": 2,
"sub_sku": "AS0002-5",
"product_variation_id": 2,
"woocommerce_variation_id": 662,
"default_purchase_price": "72.0000",
"dpp_inc_tax": "79.2000",
"default_sell_price": "72.0000",
"sell_price_inc_tax": "79.2000",
"combo_variations": null,
"variation_location_details": [
{
"id": 5,
"product_id": 2,
"product_variation_id": 2,
"variation_id": 6,
"location_id": 1,
"qty_available": "99.0000"
}
],
"media": [],
"discounts": []
}
]
}
],
"brand": {
"id": 1,
"business_id": 1,
"name": "Levis",
"description": null,
"created_by": 1,
"use_for_repair": 1,
"deleted_at": null,
"created_at": "2018-01-03 21:19:47",
"updated_at": "2018-01-03 21:19:47"
},
"unit": {
"id": 1,
"business_id": 1,
"actual_name": "Pieces",
"short_name": "Pc(s)",
"allow_decimal": 0,
"base_unit_id": null,
"base_unit_multiplier": null
},
"category": {
"id": 1,
"name": "Men's",
"business_id": 1,
"short_code": "sfefef",
"parent_id": 0,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null
},
"sub_category": {
"id": 4,
"name": "Jeans",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null
},
"product_tax": {
"id": 1,
"business_id": 1,
"name": "VAT@10%",
"amount": 10,
"is_tax_group": 0,
"for_tax_group": 0,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:40:07",
"updated_at": "2018-01-04 02:40:07"
},
"product_locations": [
{
"id": 1,
"business_id": 1,
"name": "Location 1",
"custom_field1": "gdgdgd88",
"custom_field2": null,
"custom_field3": null,
"custom_field4": null
}
]
}
],
"links": {
"first": "http://local.pos.com/connector/api/new_product?per_page=1&page=1",
"last": "http://local.pos.com/connector/api/new_product?per_page=1&page=1088",
"prev": null,
"next": "http://local.pos.com/connector/api/new_product?per_page=1&page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1088,
"path": "http://local.pos.com/connector/api/new_product",
"per_page": "1",
"to": 1,
"total": 1088
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
New List sells
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/new_sell?location_id=1&contact_id=occaecati&payment_status=due%2Cpartial&start_date=2018-06-25&end_date=2018-06-25&user_id=dolorum&service_staff_id=ipsum&shipping_status=ordered&source=error&customer_group_id=nesciunt&product_name=cupiditate&product_sku=molestiae&product_custom_field_1=recusandae&location_custom_field_1=sint&location_invoice_scheme_prefix=nesciunt&product_category_id=quos&product_sub_category_id=ut&sell_ids=55%2C64&only_subscriptions=consequatur&send_purchase_details=ea&order_by_date=desc&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/new_sell"
);
const params = {
"location_id": "1",
"contact_id": "occaecati",
"payment_status": "due,partial",
"start_date": "2018-06-25",
"end_date": "2018-06-25",
"user_id": "dolorum",
"service_staff_id": "ipsum",
"shipping_status": "ordered",
"source": "error",
"customer_group_id": "nesciunt",
"product_name": "cupiditate",
"product_sku": "molestiae",
"product_custom_field_1": "recusandae",
"location_custom_field_1": "sint",
"location_invoice_scheme_prefix": "nesciunt",
"product_category_id": "quos",
"product_sub_category_id": "ut",
"sell_ids": "55,64",
"only_subscriptions": "consequatur",
"send_purchase_details": "ea",
"order_by_date": "desc",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/new_sell';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'location_id' => '1',
'contact_id' => 'occaecati',
'payment_status' => 'due,partial',
'start_date' => '2018-06-25',
'end_date' => '2018-06-25',
'user_id' => 'dolorum',
'service_staff_id' => 'ipsum',
'shipping_status' => 'ordered',
'source' => 'error',
'customer_group_id' => 'nesciunt',
'product_name' => 'cupiditate',
'product_sku' => 'molestiae',
'product_custom_field_1' => 'recusandae',
'location_custom_field_1' => 'sint',
'location_invoice_scheme_prefix' => 'nesciunt',
'product_category_id' => 'quos',
'product_sub_category_id' => 'ut',
'sell_ids' => '55,64',
'only_subscriptions' => 'consequatur',
'send_purchase_details' => 'ea',
'order_by_date' => 'desc',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 6,
"business_id": 1,
"location_id": 1,
"res_table_id": null,
"type": "sell",
"status": "final",
"is_quotation": 0,
"payment_status": "paid",
"contact_id": 4,
"customer_group_id": null,
"invoice_no": "AS0001",
"ref_no": "",
"source": null,
"unique_hash": null,
"hash_control": null,
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "2018-04-10 13:23:21",
"total_before_tax": "770.0000",
"tax_id": null,
"tax_amount": "0.0000",
"discount_type": "percentage",
"discount_amount": "0.0000",
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": null,
"shipping_address": null,
"shipping_status": null,
"delivered_to": null,
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": "770.0000",
"expense_sub_category_id": null,
"is_direct_sale": 0,
"is_suspend": 0,
"total_amount_recovered": null,
"crm_is_order_request": 0,
"mfg_production_cost": "0.0000",
"mfg_production_cost_type": "percentage",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_job_sheet_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"repair_updates_notif": 0,
"invoice_token": "00f79f7fd292225e8c303a6bf8626d06",
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": null,
"created_at": "2018-01-06 07:06:11",
"updated_at": "2021-10-23 11:42:13",
"location_name": "Location 1",
"location_custom_field1": "gdgdgd88",
"location_invoice_scheme_prefix": "AS",
"table_name": null,
"table_description": null,
"contact": "Harry",
"customer_group_name": "grp 2",
"sell_lines": [
{
"id": 1,
"transaction_id": 6,
"product_id": 2,
"quantity": 10,
"quantity_returned": "0.0000",
"unit_price_before_discount": "70.0000",
"unit_price": "70.0000",
"line_discount_type": null,
"line_discount_amount": "0.0000",
"unit_price_inc_tax": "77.0000",
"item_tax": "7.0000",
"tax_id": 1,
"discount_id": null,
"lot_no_line_id": null,
"sell_line_note": null,
"woocommerce_line_items_id": null,
"children_type": "",
"created_at": "2018-01-06 07:06:11",
"updated_at": "2018-01-06 07:06:11",
"product_name": "Levis Men's Slimmy Fit Jeans",
"product_custom_field_1": null,
"product_type": "variable",
"product_sku": "AS0002",
"category": {
"id": 1,
"name": "Men's",
"business_id": 1,
"short_code": "sfefef",
"parent_id": 0,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null
},
"sub_category": {
"id": 4,
"name": "Jeans",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null
},
"product_variations": {
"id": 3,
"name": "30",
"product_id": 2,
"sub_sku": "AS0002-2",
"product_variation_id": 2,
"default_purchase_price": "70.0000",
"dpp_inc_tax": "77.0000",
"default_sell_price": "70.0000",
"sell_price_inc_tax": "77.0000"
}
}
],
"payment_lines": [
{
"id": 1,
"transaction_id": 6,
"business_id": null,
"is_return": 0,
"amount": "770.0000",
"method": "cash",
"card_type": "visa",
"paid_on": "2018-01-09 17:30:35",
"payment_ref_no": null
}
],
"invoice_url": "http://local.pos.com/invoice/00f79f7fd292225e8c303a6bf8626d06",
"payment_link": ""
}
],
"links": {
"first": "http://local.pos.com/connector/api/new_sell?per_page=1&page=1",
"last": "http://local.pos.com/connector/api/new_sell?per_page=1&page=213",
"prev": null,
"next": "http://local.pos.com/connector/api/new_sell?per_page=1&page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 213,
"path": "http://local.pos.com/connector/api/new_sell",
"per_page": "1",
"to": 1,
"total": 213
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
New List contact
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/new_contactapi?type=voluptatem&customer_group_id=animi&custom_field_1=repellendus&contact_ids=2%2C3&name=cum&biz_name=voluptatibus&mobile_num=20&contact_id=sint&order_by=eum&direction=asperiores&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/new_contactapi"
);
const params = {
"type": "voluptatem",
"customer_group_id": "animi",
"custom_field_1": "repellendus",
"contact_ids": "2,3",
"name": "cum",
"biz_name": "voluptatibus",
"mobile_num": "20",
"contact_id": "sint",
"order_by": "eum",
"direction": "asperiores",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/new_contactapi';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'type' => 'voluptatem',
'customer_group_id' => 'animi',
'custom_field_1' => 'repellendus',
'contact_ids' => '2,3',
'name' => 'cum',
'biz_name' => 'voluptatibus',
'mobile_num' => '20',
'contact_id' => 'sint',
'order_by' => 'eum',
'direction' => 'asperiores',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 18,
"business_id": 1,
"type": "customer",
"name": "Mr. Rohit Kumar Agrawalla",
"prefix": "Mr.",
"first_name": "Rohit",
"middle_name": "Kumar",
"last_name": "Agrawalla",
"email": null,
"contact_status": "active",
"mobile": "8596859647",
"credit_limit": null,
"converted_by": null,
"converted_on": null,
"balance": "40.0000",
"total_rp": 0,
"total_rp_used": 0,
"total_rp_expired": 0,
"customer_group_id": 1,
"crm_source": null,
"crm_life_stage": null,
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"custom_field5": null,
"custom_field6": null,
"custom_field7": null,
"custom_field8": null,
"custom_field9": null,
"custom_field10": null,
"remember_token": null,
"password": null
}
],
"links": {
"first": "http://local.pos.com/connector/api/new_contactapi?customer_group_id=1&page=1",
"last": "http://local.pos.com/connector/api/new_contactapi?customer_group_id=1&page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "http://local.pos.com/connector/api/new_contactapi",
"per_page": 10,
"to": 1,
"total": 1
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Product management
List products
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/product?order_by=voluptatem&order_direction=accusantium&brand_id=tenetur&category_id=error&sub_category_id=vel&location_id=1&selling_price_group=ut&send_lot_detail=dolor&name=est&sku=ut&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/product"
);
const params = {
"order_by": "voluptatem",
"order_direction": "accusantium",
"brand_id": "tenetur",
"category_id": "error",
"sub_category_id": "vel",
"location_id": "1",
"selling_price_group": "ut",
"send_lot_detail": "dolor",
"name": "est",
"sku": "ut",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/product';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'order_by' => 'voluptatem',
'order_direction' => 'accusantium',
'brand_id' => 'tenetur',
'category_id' => 'error',
'sub_category_id' => 'vel',
'location_id' => '1',
'selling_price_group' => 'ut',
'send_lot_detail' => 'dolor',
'name' => 'est',
'sku' => 'ut',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Men's Reverse Fleece Crew",
"business_id": 1,
"type": "single",
"sub_unit_ids": null,
"enable_stock": 1,
"alert_quantity": "5.0000",
"sku": "AS0001",
"barcode_type": "C128",
"expiry_period": null,
"expiry_period_type": null,
"enable_sr_no": 0,
"weight": null,
"product_custom_field1": null,
"product_custom_field2": null,
"product_custom_field3": null,
"product_custom_field4": null,
"image": null,
"woocommerce_media_id": null,
"product_description": null,
"created_by": 1,
"warranty_id": null,
"is_inactive": 0,
"repair_model_id": null,
"not_for_selling": 0,
"ecom_shipping_class_id": null,
"ecom_active_in_store": 1,
"woocommerce_product_id": 356,
"woocommerce_disable_sync": 0,
"image_url": "http://local.pos.com/img/default.png",
"product_variations": [
{
"id": 1,
"variation_template_id": null,
"name": "DUMMY",
"product_id": 1,
"is_dummy": 1,
"created_at": "2018-01-03 21:29:08",
"updated_at": "2018-01-03 21:29:08",
"variations": [
{
"id": 1,
"name": "DUMMY",
"product_id": 1,
"sub_sku": "AS0001",
"product_variation_id": 1,
"woocommerce_variation_id": null,
"variation_value_id": null,
"default_purchase_price": "130.0000",
"dpp_inc_tax": "143.0000",
"profit_percent": "0.0000",
"default_sell_price": "130.0000",
"sell_price_inc_tax": "143.0000",
"created_at": "2018-01-03 21:29:08",
"updated_at": "2020-06-09 00:23:22",
"deleted_at": null,
"combo_variations": null,
"variation_location_details": [
{
"id": 56,
"product_id": 1,
"product_variation_id": 1,
"variation_id": 1,
"location_id": 1,
"qty_available": "20.0000",
"created_at": "2020-06-08 23:46:40",
"updated_at": "2020-06-08 23:46:40"
}
],
"media": [
{
"id": 1,
"business_id": 1,
"file_name": "1591686466_978227300_nn.jpeg",
"description": null,
"uploaded_by": 9,
"model_type": "App\\Variation",
"woocommerce_media_id": null,
"model_id": 1,
"created_at": "2020-06-09 00:07:46",
"updated_at": "2020-06-09 00:07:46",
"display_name": "nn.jpeg",
"display_url": "http://local.pos.com/uploads/media/1591686466_978227300_nn.jpeg"
}
],
"discounts": [
{
"id": 2,
"name": "FLAT 10%",
"business_id": 1,
"brand_id": null,
"category_id": null,
"location_id": 1,
"priority": 2,
"discount_type": "fixed",
"discount_amount": "5.0000",
"starts_at": "2021-09-01 11:45:00",
"ends_at": "2021-09-30 11:45:00",
"is_active": 1,
"spg": null,
"applicable_in_cg": 1,
"created_at": "2021-09-01 11:46:00",
"updated_at": "2021-09-01 12:12:55",
"formated_starts_at": " 11:45",
"formated_ends_at": " 11:45"
}
],
"selling_price_group": [
{
"id": 2,
"variation_id": 1,
"price_group_id": 1,
"price_inc_tax": "140.0000",
"created_at": "2020-06-09 00:23:31",
"updated_at": "2020-06-09 00:23:31"
}
]
}
]
}
],
"brand": {
"id": 1,
"business_id": 1,
"name": "Levis",
"description": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 21:19:47",
"updated_at": "2018-01-03 21:19:47"
},
"unit": {
"id": 1,
"business_id": 1,
"actual_name": "Pieces",
"short_name": "Pc(s)",
"allow_decimal": 0,
"base_unit_id": null,
"base_unit_multiplier": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 15:15:20",
"updated_at": "2018-01-03 15:15:20"
},
"category": {
"id": 1,
"name": "Men's",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:06:34",
"updated_at": "2018-01-03 21:06:34"
},
"sub_category": {
"id": 5,
"name": "Shirts",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:08:18",
"updated_at": "2018-01-03 21:08:18"
},
"product_tax": {
"id": 1,
"business_id": 1,
"name": "VAT@10%",
"amount": 10,
"is_tax_group": 0,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:40:07",
"updated_at": "2018-01-04 02:40:07"
},
"product_locations": [
{
"id": 1,
"business_id": 1,
"location_id": null,
"name": "Awesome Shop",
"landmark": "Linking Street",
"country": "USA",
"state": "Arizona",
"city": "Phoenix",
"zip_code": "85001",
"invoice_scheme_id": 1,
"invoice_layout_id": 1,
"selling_price_group_id": null,
"print_receipt_on_invoice": 1,
"receipt_printer_type": "browser",
"printer_id": null,
"mobile": null,
"alternate_number": null,
"email": null,
"website": null,
"featured_products": [
"5",
"71"
],
"is_active": 1,
"default_payment_accounts": "{\"cash\":{\"is_enabled\":\"1\",\"account\":\"1\"},\"card\":{\"is_enabled\":\"1\",\"account\":\"3\"},\"cheque\":{\"is_enabled\":\"1\",\"account\":\"2\"},\"bank_transfer\":{\"is_enabled\":\"1\",\"account\":\"1\"},\"other\":{\"is_enabled\":\"1\",\"account\":\"3\"},\"custom_pay_1\":{\"is_enabled\":\"1\",\"account\":\"1\"},\"custom_pay_2\":{\"is_enabled\":\"1\",\"account\":\"2\"},\"custom_pay_3\":{\"is_enabled\":\"1\",\"account\":\"3\"}}",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:20",
"updated_at": "2020-06-09 01:07:05",
"pivot": {
"product_id": 2,
"location_id": 1
}
}
]
}
],
"links": {
"first": "http://local.pos.com/connector/api/product?page=1",
"last": "http://local.pos.com/connector/api/product?page=32",
"prev": null,
"next": "http://local.pos.com/connector/api/product?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"path": "http://local.pos.com/connector/api/product",
"per_page": 10,
"to": 10
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified product
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/product/ut?selling_price_group=tempora&send_lot_detail=eius" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/product/ut"
);
const params = {
"selling_price_group": "tempora",
"send_lot_detail": "eius",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/product/ut';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'selling_price_group' => 'tempora',
'send_lot_detail' => 'eius',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Men's Reverse Fleece Crew",
"business_id": 1,
"type": "single",
"sub_unit_ids": null,
"enable_stock": 1,
"alert_quantity": "5.0000",
"sku": "AS0001",
"barcode_type": "C128",
"expiry_period": null,
"expiry_period_type": null,
"enable_sr_no": 0,
"weight": null,
"product_custom_field1": null,
"product_custom_field2": null,
"product_custom_field3": null,
"product_custom_field4": null,
"image": null,
"woocommerce_media_id": null,
"product_description": null,
"created_by": 1,
"warranty_id": null,
"is_inactive": 0,
"repair_model_id": null,
"not_for_selling": 0,
"ecom_shipping_class_id": null,
"ecom_active_in_store": 1,
"woocommerce_product_id": 356,
"woocommerce_disable_sync": 0,
"image_url": "http://local.pos.com/img/default.png",
"product_variations": [
{
"id": 1,
"variation_template_id": null,
"name": "DUMMY",
"product_id": 1,
"is_dummy": 1,
"created_at": "2018-01-03 21:29:08",
"updated_at": "2018-01-03 21:29:08",
"variations": [
{
"id": 1,
"name": "DUMMY",
"product_id": 1,
"sub_sku": "AS0001",
"product_variation_id": 1,
"woocommerce_variation_id": null,
"variation_value_id": null,
"default_purchase_price": "130.0000",
"dpp_inc_tax": "143.0000",
"profit_percent": "0.0000",
"default_sell_price": "130.0000",
"sell_price_inc_tax": "143.0000",
"created_at": "2018-01-03 21:29:08",
"updated_at": "2020-06-09 00:23:22",
"deleted_at": null,
"combo_variations": null,
"variation_location_details": [
{
"id": 56,
"product_id": 1,
"product_variation_id": 1,
"variation_id": 1,
"location_id": 1,
"qty_available": "20.0000",
"created_at": "2020-06-08 23:46:40",
"updated_at": "2020-06-08 23:46:40"
}
],
"media": [
{
"id": 1,
"business_id": 1,
"file_name": "1591686466_978227300_nn.jpeg",
"description": null,
"uploaded_by": 9,
"model_type": "App\\Variation",
"woocommerce_media_id": null,
"model_id": 1,
"created_at": "2020-06-09 00:07:46",
"updated_at": "2020-06-09 00:07:46",
"display_name": "nn.jpeg",
"display_url": "http://local.pos.com/uploads/media/1591686466_978227300_nn.jpeg"
}
],
"discounts": [
{
"id": 2,
"name": "FLAT 10%",
"business_id": 1,
"brand_id": null,
"category_id": null,
"location_id": 1,
"priority": 2,
"discount_type": "fixed",
"discount_amount": "5.0000",
"starts_at": "2021-09-01 11:45:00",
"ends_at": "2021-09-30 11:45:00",
"is_active": 1,
"spg": null,
"applicable_in_cg": 1,
"created_at": "2021-09-01 11:46:00",
"updated_at": "2021-09-01 12:12:55",
"formated_starts_at": " 11:45",
"formated_ends_at": " 11:45"
}
],
"selling_price_group": [
{
"id": 2,
"variation_id": 1,
"price_group_id": 1,
"price_inc_tax": "140.0000",
"created_at": "2020-06-09 00:23:31",
"updated_at": "2020-06-09 00:23:31"
}
]
}
]
}
],
"brand": {
"id": 1,
"business_id": 1,
"name": "Levis",
"description": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 21:19:47",
"updated_at": "2018-01-03 21:19:47"
},
"unit": {
"id": 1,
"business_id": 1,
"actual_name": "Pieces",
"short_name": "Pc(s)",
"allow_decimal": 0,
"base_unit_id": null,
"base_unit_multiplier": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 15:15:20",
"updated_at": "2018-01-03 15:15:20"
},
"category": {
"id": 1,
"name": "Men's",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:06:34",
"updated_at": "2018-01-03 21:06:34"
},
"sub_category": {
"id": 5,
"name": "Shirts",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:08:18",
"updated_at": "2018-01-03 21:08:18"
},
"product_tax": {
"id": 1,
"business_id": 1,
"name": "VAT@10%",
"amount": 10,
"is_tax_group": 0,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:40:07",
"updated_at": "2018-01-04 02:40:07"
},
"product_locations": [
{
"id": 1,
"business_id": 1,
"location_id": null,
"name": "Awesome Shop",
"landmark": "Linking Street",
"country": "USA",
"state": "Arizona",
"city": "Phoenix",
"zip_code": "85001",
"invoice_scheme_id": 1,
"invoice_layout_id": 1,
"selling_price_group_id": null,
"print_receipt_on_invoice": 1,
"receipt_printer_type": "browser",
"printer_id": null,
"mobile": null,
"alternate_number": null,
"email": null,
"website": null,
"featured_products": [
"5",
"71"
],
"is_active": 1,
"default_payment_accounts": "{\"cash\":{\"is_enabled\":\"1\",\"account\":\"1\"},\"card\":{\"is_enabled\":\"1\",\"account\":\"3\"},\"cheque\":{\"is_enabled\":\"1\",\"account\":\"2\"},\"bank_transfer\":{\"is_enabled\":\"1\",\"account\":\"1\"},\"other\":{\"is_enabled\":\"1\",\"account\":\"3\"},\"custom_pay_1\":{\"is_enabled\":\"1\",\"account\":\"1\"},\"custom_pay_2\":{\"is_enabled\":\"1\",\"account\":\"2\"},\"custom_pay_3\":{\"is_enabled\":\"1\",\"account\":\"3\"}}",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:20",
"updated_at": "2020-06-09 01:07:05",
"pivot": {
"product_id": 2,
"location_id": 1
}
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List Selling Price Group
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/selling-price-group" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/selling-price-group"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/selling-price-group';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Retail",
"description": null,
"business_id": 1,
"is_active": 1,
"deleted_at": null,
"created_at": "2020-10-21 04:30:06",
"updated_at": "2020-11-16 18:23:15"
},
{
"id": 2,
"name": "Wholesale",
"description": null,
"business_id": 1,
"is_active": 1,
"deleted_at": null,
"created_at": "2020-10-21 04:30:21",
"updated_at": "2020-11-16 18:23:00"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List Variations
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/variation/2?product_id=hic&location_id=1&brand_id=eum&category_id=eius&sub_category_id=sed¬_for_selling=nisi&name=quos&sku=voluptatem&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/variation/2"
);
const params = {
"product_id": "hic",
"location_id": "1",
"brand_id": "eum",
"category_id": "eius",
"sub_category_id": "sed",
"not_for_selling": "nisi",
"name": "quos",
"sku": "voluptatem",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/variation/2';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'product_id' => 'hic',
'location_id' => '1',
'brand_id' => 'eum',
'category_id' => 'eius',
'sub_category_id' => 'sed',
'not_for_selling' => 'nisi',
'name' => 'quos',
'sku' => 'voluptatem',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"variation_id": 1,
"variation_name": "",
"sub_sku": "AS0001",
"product_id": 1,
"product_name": "Men's Reverse Fleece Crew",
"sku": "AS0001",
"type": "single",
"business_id": 1,
"barcode_type": "C128",
"expiry_period": null,
"expiry_period_type": null,
"enable_sr_no": 0,
"weight": null,
"product_custom_field1": null,
"product_custom_field2": null,
"product_custom_field3": null,
"product_custom_field4": null,
"product_image": "1528728059_fleece_crew.jpg",
"product_description": null,
"warranty_id": null,
"brand_id": 1,
"brand_name": "Levis",
"unit_id": 1,
"enable_stock": 1,
"not_for_selling": 0,
"unit_name": "Pc(s)",
"unit_allow_decimal": 0,
"category_id": 1,
"category": "Men's",
"sub_category_id": 5,
"sub_category": "Shirts",
"tax_id": 1,
"tax_type": "exclusive",
"tax_name": "VAT@10%",
"tax_amount": 10,
"product_variation_id": 1,
"default_purchase_price": "130.0000",
"dpp_inc_tax": "143.0000",
"profit_percent": "0.0000",
"default_sell_price": "130.0000",
"sell_price_inc_tax": "143.0000",
"product_variation_name": "",
"variation_location_details": [],
"media": [],
"selling_price_group": [],
"product_image_url": "http://local.pos.com/uploads/img/1528728059_fleece_crew.jpg",
"product_locations": [
{
"id": 1,
"business_id": 1,
"location_id": null,
"name": "Awesome Shop",
"landmark": "Linking Street",
"country": "USA",
"state": "Arizona",
"city": "Phoenix",
"zip_code": "85001",
"invoice_scheme_id": 1,
"invoice_layout_id": 1,
"selling_price_group_id": null,
"print_receipt_on_invoice": 1,
"receipt_printer_type": "browser",
"printer_id": null,
"mobile": null,
"alternate_number": null,
"email": null,
"website": null,
"featured_products": null,
"is_active": 1,
"default_payment_accounts": "",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:20",
"updated_at": "2019-12-11 04:53:39",
"pivot": {
"product_id": 1,
"location_id": 1
}
}
]
},
{
"variation_id": 2,
"variation_name": "28",
"sub_sku": "AS0002-1",
"product_id": 2,
"product_name": "Levis Men's Slimmy Fit Jeans",
"sku": "AS0002",
"type": "variable",
"business_id": 1,
"barcode_type": "C128",
"expiry_period": null,
"expiry_period_type": null,
"enable_sr_no": 0,
"weight": null,
"product_custom_field1": null,
"product_custom_field2": null,
"product_custom_field3": null,
"product_custom_field4": null,
"product_image": "1528727964_levis_jeans.jpg",
"product_description": null,
"warranty_id": null,
"brand_id": 1,
"brand_name": "Levis",
"unit_id": 1,
"enable_stock": 1,
"not_for_selling": 0,
"unit_name": "Pc(s)",
"unit_allow_decimal": 0,
"category_id": 1,
"category": "Men's",
"sub_category_id": 4,
"sub_category": "Jeans",
"tax_id": 1,
"tax_type": "exclusive",
"tax_name": "VAT@10%",
"tax_amount": 10,
"product_variation_id": 2,
"default_purchase_price": "70.0000",
"dpp_inc_tax": "77.0000",
"profit_percent": "0.0000",
"default_sell_price": "70.0000",
"sell_price_inc_tax": "77.0000",
"product_variation_name": "Waist Size",
"variation_location_details": [
{
"id": 1,
"product_id": 2,
"product_variation_id": 2,
"variation_id": 2,
"location_id": 1,
"qty_available": "50.0000",
"created_at": "2018-01-06 06:57:11",
"updated_at": "2020-08-04 04:11:27"
}
],
"media": [
{
"id": 1,
"business_id": 1,
"file_name": "1596701997_743693452_test.jpg",
"description": null,
"uploaded_by": 9,
"model_type": "App\\Variation",
"woocommerce_media_id": null,
"model_id": 2,
"created_at": "2020-08-06 13:49:57",
"updated_at": "2020-08-06 13:49:57",
"display_name": "test.jpg",
"display_url": "http://local.pos.com/uploads/media/1596701997_743693452_test.jpg"
}
],
"selling_price_group": [],
"product_image_url": "http://local.pos.com/uploads/img/1528727964_levis_jeans.jpg",
"product_locations": [
{
"id": 1,
"business_id": 1,
"location_id": null,
"name": "Awesome Shop",
"landmark": "Linking Street",
"country": "USA",
"state": "Arizona",
"city": "Phoenix",
"zip_code": "85001",
"invoice_scheme_id": 1,
"invoice_layout_id": 1,
"selling_price_group_id": null,
"print_receipt_on_invoice": 1,
"receipt_printer_type": "browser",
"printer_id": null,
"mobile": null,
"alternate_number": null,
"email": null,
"website": null,
"featured_products": null,
"is_active": 1,
"default_payment_accounts": "",
"custom_field1": null,
"custom_field2": null,
"custom_field3": null,
"custom_field4": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:20",
"updated_at": "2019-12-11 04:53:39",
"pivot": {
"product_id": 2,
"location_id": 1
}
}
],
"discounts": [
{
"id": 2,
"name": "FLAT 10%",
"business_id": 1,
"brand_id": null,
"category_id": null,
"location_id": 1,
"priority": 2,
"discount_type": "fixed",
"discount_amount": "5.0000",
"starts_at": "2021-09-01 11:45:00",
"ends_at": "2021-09-30 11:45:00",
"is_active": 1,
"spg": null,
"applicable_in_cg": 1,
"created_at": "2021-09-01 11:46:00",
"updated_at": "2021-09-01 12:12:55",
"formated_starts_at": " 11:45",
"formated_ends_at": " 11:45"
}
]
}
],
"links": {
"first": "http://local.pos.com/connector/api/variation?page=1",
"last": null,
"prev": null,
"next": "http://local.pos.com/connector/api/variation?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"path": "http://local.pos.com/connector/api/variation",
"per_page": "2",
"to": 2
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Sales management
List sells
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/sell?location_id=1&contact_id=ut&status=final&payment_status=due%2Cpartial&start_date=2018-06-25&end_date=2018-06-25&user_id=sint&service_staff_id=suscipit&shipping_status=ordered&source=et&only_subscriptions=dolores&send_purchase_details=voluptatem&order_by_date=desc&per_page=10" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/sell"
);
const params = {
"location_id": "1",
"contact_id": "ut",
"status": "final",
"payment_status": "due,partial",
"start_date": "2018-06-25",
"end_date": "2018-06-25",
"user_id": "sint",
"service_staff_id": "suscipit",
"shipping_status": "ordered",
"source": "et",
"only_subscriptions": "dolores",
"send_purchase_details": "voluptatem",
"order_by_date": "desc",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/sell';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'location_id' => '1',
'contact_id' => 'ut',
'status' => 'final',
'payment_status' => 'due,partial',
'start_date' => '2018-06-25',
'end_date' => '2018-06-25',
'user_id' => 'sint',
'service_staff_id' => 'suscipit',
'shipping_status' => 'ordered',
'source' => 'et',
'only_subscriptions' => 'dolores',
'send_purchase_details' => 'voluptatem',
'order_by_date' => 'desc',
'per_page' => '10',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 6,
"business_id": 1,
"location_id": 1,
"res_table_id": null,
"res_waiter_id": null,
"res_order_status": null,
"type": "sell",
"sub_type": null,
"status": "final",
"is_quotation": 0,
"payment_status": "paid",
"adjustment_type": null,
"contact_id": 4,
"customer_group_id": null,
"invoice_no": "AS0001",
"ref_no": "",
"source": null,
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "2018-04-10 13:23:21",
"total_before_tax": "770.0000",
"tax_id": null,
"tax_amount": "0.0000",
"discount_type": "percentage",
"discount_amount": "0.0000",
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": null,
"shipping_address": null,
"shipping_status": null,
"delivered_to": null,
"shipping_charges": "0.0000",
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": "770.0000",
"expense_category_id": null,
"expense_for": null,
"commission_agent": null,
"document": null,
"is_direct_sale": 0,
"is_suspend": 0,
"exchange_rate": "1.000",
"total_amount_recovered": null,
"transfer_parent_id": null,
"return_parent_id": null,
"opening_stock_product_id": null,
"created_by": 1,
"import_batch": null,
"import_time": null,
"types_of_service_id": null,
"packing_charge": null,
"packing_charge_type": null,
"service_custom_field_1": null,
"service_custom_field_2": null,
"service_custom_field_3": null,
"service_custom_field_4": null,
"mfg_parent_production_purchase_id": null,
"mfg_wasted_units": null,
"mfg_production_cost": "0.0000",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"rp_earned": 0,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_updates_email": 0,
"repair_updates_sms": 0,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"order_addresses": null,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"invoice_token": null,
"pay_term_number": null,
"pay_term_type": null,
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": null,
"created_at": "2018-01-06 07:06:11",
"updated_at": "2018-01-06 07:06:11",
"sell_lines": [
{
"id": 1,
"transaction_id": 6,
"product_id": 2,
"variation_id": 3,
"quantity": 10,
"mfg_waste_percent": "0.0000",
"quantity_returned": "0.0000",
"unit_price_before_discount": "70.0000",
"unit_price": "70.0000",
"line_discount_type": null,
"line_discount_amount": "0.0000",
"unit_price_inc_tax": "77.0000",
"item_tax": "7.0000",
"tax_id": 1,
"discount_id": null,
"lot_no_line_id": null,
"sell_line_note": null,
"res_service_staff_id": null,
"res_line_order_status": null,
"woocommerce_line_items_id": null,
"parent_sell_line_id": null,
"children_type": "",
"sub_unit_id": null,
"created_at": "2018-01-06 07:06:11",
"updated_at": "2018-01-06 07:06:11"
}
],
"payment_lines": [
{
"id": 1,
"transaction_id": 6,
"business_id": null,
"is_return": 0,
"amount": "770.0000",
"method": "cash",
"transaction_no": null,
"card_transaction_number": null,
"card_number": null,
"card_type": "visa",
"card_holder_name": null,
"card_month": null,
"card_year": null,
"card_security": null,
"cheque_number": null,
"bank_account_number": null,
"paid_on": "2018-01-09 17:30:35",
"created_by": 1,
"payment_for": null,
"parent_id": null,
"note": null,
"document": null,
"payment_ref_no": null,
"account_id": null,
"created_at": "2018-01-06 01:36:11",
"updated_at": "2018-01-06 01:36:11"
}
],
"invoice_url": "http://local.pos.com/invoice/6dfd77eb80f4976b456128e7f1311c9f",
"payment_link": "http://local.pos.com/pay/6dfd77eb80f4976b456128e7f1311c9f"
}
],
"links": {
"first": "http://local.pos.com/connector/api/sell?page=1",
"last": "http://local.pos.com/connector/api/sell?page=6",
"prev": null,
"next": "http://local.pos.com/connector/api/sell?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"path": "http://local.pos.com/connector/api/sell",
"per_page": 10,
"to": 10
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create sell
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/sell" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
const url = new URL(
"https://app.keepmyaccount.com/connector/api/sell"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/sell';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 6,
"business_id": 1,
"location_id": 1,
"res_table_id": null,
"res_waiter_id": null,
"res_order_status": null,
"type": "sell",
"sub_type": null,
"status": "final",
"is_quotation": 0,
"payment_status": "paid",
"adjustment_type": null,
"contact_id": 4,
"customer_group_id": null,
"invoice_no": "AS0001",
"ref_no": "",
"source": null,
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "2018-04-10 13:23:21",
"total_before_tax": "770.0000",
"tax_id": null,
"tax_amount": "0.0000",
"discount_type": "percentage",
"discount_amount": "0.0000",
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": null,
"shipping_address": null,
"shipping_status": null,
"delivered_to": null,
"shipping_charges": "0.0000",
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": "770.0000",
"expense_category_id": null,
"expense_for": null,
"commission_agent": null,
"document": null,
"is_direct_sale": 0,
"is_suspend": 0,
"exchange_rate": "1.000",
"total_amount_recovered": null,
"transfer_parent_id": null,
"return_parent_id": null,
"opening_stock_product_id": null,
"created_by": 1,
"import_batch": null,
"import_time": null,
"types_of_service_id": null,
"packing_charge": null,
"packing_charge_type": null,
"service_custom_field_1": null,
"service_custom_field_2": null,
"service_custom_field_3": null,
"service_custom_field_4": null,
"mfg_parent_production_purchase_id": null,
"mfg_wasted_units": null,
"mfg_production_cost": "0.0000",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"rp_earned": 0,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_updates_email": 0,
"repair_updates_sms": 0,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"order_addresses": null,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"invoice_token": null,
"pay_term_number": null,
"pay_term_type": null,
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": null,
"created_at": "2018-01-06 07:06:11",
"updated_at": "2018-01-06 07:06:11",
"invoice_url": "http://local.pos.com/invoice/6dfd77eb80f4976b456128e7f1311c9f",
"payment_link": "http://local.pos.com/pay/6dfd77eb80f4976b456128e7f1311c9f",
"sell_lines": [
{
"id": 1,
"transaction_id": 6,
"product_id": 2,
"variation_id": 3,
"quantity": 10,
"mfg_waste_percent": "0.0000",
"quantity_returned": "0.0000",
"unit_price_before_discount": "70.0000",
"unit_price": "70.0000",
"line_discount_type": null,
"line_discount_amount": "0.0000",
"unit_price_inc_tax": "77.0000",
"item_tax": "7.0000",
"tax_id": 1,
"discount_id": null,
"lot_no_line_id": null,
"sell_line_note": null,
"res_service_staff_id": null,
"res_line_order_status": null,
"woocommerce_line_items_id": null,
"parent_sell_line_id": null,
"children_type": "",
"sub_unit_id": null,
"created_at": "2018-01-06 07:06:11",
"updated_at": "2018-01-06 07:06:11"
}
],
"payment_lines": [
{
"id": 1,
"transaction_id": 6,
"business_id": null,
"is_return": 0,
"amount": "770.0000",
"method": "cash",
"transaction_no": null,
"card_transaction_number": null,
"card_number": null,
"card_type": "visa",
"card_holder_name": null,
"card_month": null,
"card_year": null,
"card_security": null,
"cheque_number": null,
"bank_account_number": null,
"paid_on": "2018-01-09 17:30:35",
"created_by": 1,
"payment_for": null,
"parent_id": null,
"note": null,
"document": null,
"payment_ref_no": null,
"account_id": null,
"created_at": "2018-01-06 01:36:11",
"updated_at": "2018-01-06 01:36:11"
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified sell
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/sell/aut?send_purchase_details=iste" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/sell/aut"
);
const params = {
"send_purchase_details": "iste",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/sell/aut';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'send_purchase_details' => 'iste',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 55,
"business_id": 1,
"location_id": 1,
"res_table_id": 5,
"res_waiter_id": null,
"res_order_status": null,
"type": "sell",
"sub_type": null,
"status": "final",
"is_quotation": 0,
"payment_status": "paid",
"adjustment_type": null,
"contact_id": 1,
"customer_group_id": null,
"invoice_no": "AS0007",
"ref_no": "",
"source": null,
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "2020-06-04 23:29:36",
"total_before_tax": "437.5000",
"tax_id": 1,
"tax_amount": "39.3750",
"discount_type": "percentage",
"discount_amount": "10.0000",
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": "Express Delivery",
"shipping_address": null,
"shipping_status": "ordered",
"delivered_to": "Mr Robin",
"shipping_charges": "10.0000",
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": "453.1300",
"expense_category_id": null,
"expense_for": null,
"commission_agent": null,
"document": null,
"is_direct_sale": 0,
"is_suspend": 0,
"exchange_rate": "1.000",
"total_amount_recovered": null,
"transfer_parent_id": null,
"return_parent_id": null,
"opening_stock_product_id": null,
"created_by": 9,
"import_batch": null,
"import_time": null,
"types_of_service_id": 1,
"packing_charge": "10.0000",
"packing_charge_type": "fixed",
"service_custom_field_1": null,
"service_custom_field_2": null,
"service_custom_field_3": null,
"service_custom_field_4": null,
"mfg_parent_production_purchase_id": null,
"mfg_wasted_units": null,
"mfg_production_cost": "0.0000",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"rp_earned": 0,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_updates_email": 0,
"repair_updates_sms": 0,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"order_addresses": null,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": "days",
"recur_repetitions": 0,
"recur_stopped_on": null,
"recur_parent_id": null,
"invoice_token": null,
"pay_term_number": null,
"pay_term_type": null,
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": 0,
"created_at": "2020-06-04 23:29:36",
"updated_at": "2020-06-04 23:29:36",
"sell_lines": [
{
"id": 38,
"transaction_id": 55,
"product_id": 17,
"variation_id": 58,
"quantity": 1,
"mfg_waste_percent": "0.0000",
"quantity_returned": "0.0000",
"unit_price_before_discount": "437.5000",
"unit_price": "437.5000",
"line_discount_type": "fixed",
"line_discount_amount": "0.0000",
"unit_price_inc_tax": "437.5000",
"item_tax": "0.0000",
"tax_id": null,
"discount_id": null,
"lot_no_line_id": null,
"sell_line_note": "",
"res_service_staff_id": null,
"res_line_order_status": null,
"woocommerce_line_items_id": null,
"parent_sell_line_id": null,
"children_type": "",
"sub_unit_id": null,
"created_at": "2020-06-04 23:29:36",
"updated_at": "2020-06-04 23:29:36"
}
],
"payment_lines": [
{
"id": 37,
"transaction_id": 55,
"business_id": 1,
"is_return": 0,
"amount": "453.1300",
"method": "cash",
"transaction_no": null,
"card_transaction_number": null,
"card_number": null,
"card_type": "credit",
"card_holder_name": null,
"card_month": null,
"card_year": null,
"card_security": null,
"cheque_number": null,
"bank_account_number": null,
"paid_on": "2020-06-04 23:29:36",
"created_by": 9,
"payment_for": 1,
"parent_id": null,
"note": null,
"document": null,
"payment_ref_no": "SP2020/0002",
"account_id": null,
"created_at": "2020-06-04 23:29:36",
"updated_at": "2020-06-04 23:29:36"
}
],
"invoice_url": "http://local.pos.com/invoice/6dfd77eb80f4976b456128e7f1311c9f",
"payment_link": "http://local.pos.com/pay/6dfd77eb80f4976b456128e7f1311c9f"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update sell
requires authentication
Example request:
curl --request PUT \
"https://app.keepmyaccount.com/connector/api/sell/est" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"contact_id\": 2,
\"transaction_date\": \"2020-5-7 15:20:22\",
\"status\": \"final\",
\"sub_status\": \"null\",
\"is_quotation\": true,
\"tax_rate_id\": 15,
\"discount_amount\": 10,
\"discount_type\": \"fixed\",
\"sale_note\": \"qui\",
\"source\": \"quis\",
\"staff_note\": \"iure\",
\"is_suspend\": false,
\"commission_agent\": 18,
\"shipping_details\": \"Express Delivery\",
\"shipping_address\": \"eligendi\",
\"shipping_status\": \"ordered\",
\"delivered_to\": \"Mr Robin\",
\"shipping_charges\": 10,
\"packing_charge\": 10,
\"exchange_rate\": 1,
\"selling_price_group_id\": 9,
\"pay_term_number\": 20,
\"pay_term_type\": \"months\",
\"is_recurring\": 0,
\"recur_interval\": 5,
\"recur_interval_type\": \"days\",
\"subscription_repeat_on\": 7,
\"subscription_no\": \"suscipit\",
\"recur_repetitions\": 17,
\"rp_redeemed\": 18,
\"rp_redeemed_amount\": 13.5,
\"types_of_service_id\": 4,
\"service_custom_field_1\": \"eaque\",
\"service_custom_field_2\": \"quia\",
\"service_custom_field_3\": \"sunt\",
\"service_custom_field_4\": \"unde\",
\"service_custom_field_5\": \"nobis\",
\"service_custom_field_6\": \"recusandae\",
\"round_off_amount\": 397114.8,
\"table_id\": 2,
\"service_staff_id\": 16,
\"change_return\": 0,
\"change_return_id\": 18,
\"products\": [
\"veniam\"
],
\"payments\": [
\"quos\"
]
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/sell/est"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"contact_id": 2,
"transaction_date": "2020-5-7 15:20:22",
"status": "final",
"sub_status": "null",
"is_quotation": true,
"tax_rate_id": 15,
"discount_amount": 10,
"discount_type": "fixed",
"sale_note": "qui",
"source": "quis",
"staff_note": "iure",
"is_suspend": false,
"commission_agent": 18,
"shipping_details": "Express Delivery",
"shipping_address": "eligendi",
"shipping_status": "ordered",
"delivered_to": "Mr Robin",
"shipping_charges": 10,
"packing_charge": 10,
"exchange_rate": 1,
"selling_price_group_id": 9,
"pay_term_number": 20,
"pay_term_type": "months",
"is_recurring": 0,
"recur_interval": 5,
"recur_interval_type": "days",
"subscription_repeat_on": 7,
"subscription_no": "suscipit",
"recur_repetitions": 17,
"rp_redeemed": 18,
"rp_redeemed_amount": 13.5,
"types_of_service_id": 4,
"service_custom_field_1": "eaque",
"service_custom_field_2": "quia",
"service_custom_field_3": "sunt",
"service_custom_field_4": "unde",
"service_custom_field_5": "nobis",
"service_custom_field_6": "recusandae",
"round_off_amount": 397114.8,
"table_id": 2,
"service_staff_id": 16,
"change_return": 0,
"change_return_id": 18,
"products": [
"veniam"
],
"payments": [
"quos"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/sell/est';
$response = $client->put(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'contact_id' => 2,
'transaction_date' => '2020-5-7 15:20:22',
'status' => 'final',
'sub_status' => 'null',
'is_quotation' => true,
'tax_rate_id' => 15,
'discount_amount' => 10.0,
'discount_type' => 'fixed',
'sale_note' => 'qui',
'source' => 'quis',
'staff_note' => 'iure',
'is_suspend' => false,
'commission_agent' => 18,
'shipping_details' => 'Express Delivery',
'shipping_address' => 'eligendi',
'shipping_status' => 'ordered',
'delivered_to' => 'Mr Robin',
'shipping_charges' => 10.0,
'packing_charge' => 10.0,
'exchange_rate' => 1.0,
'selling_price_group_id' => 9,
'pay_term_number' => 20,
'pay_term_type' => 'months',
'is_recurring' => 0,
'recur_interval' => 5,
'recur_interval_type' => 'days',
'subscription_repeat_on' => 7,
'subscription_no' => 'suscipit',
'recur_repetitions' => 17,
'rp_redeemed' => 18,
'rp_redeemed_amount' => 13.5,
'types_of_service_id' => 4,
'service_custom_field_1' => 'eaque',
'service_custom_field_2' => 'quia',
'service_custom_field_3' => 'sunt',
'service_custom_field_4' => 'unde',
'service_custom_field_5' => 'nobis',
'service_custom_field_6' => 'recusandae',
'round_off_amount' => 397114.8,
'table_id' => 2,
'service_staff_id' => 16,
'change_return' => 0.0,
'change_return_id' => 18,
'products' => [
'veniam',
],
'payments' => [
'quos',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"id": 91,
"business_id": 1,
"location_id": 1,
"res_table_id": null,
"res_waiter_id": null,
"res_order_status": null,
"type": "sell",
"sub_type": null,
"status": "final",
"is_quotation": 0,
"payment_status": "paid",
"adjustment_type": null,
"contact_id": 1,
"customer_group_id": 1,
"invoice_no": "AS0020",
"ref_no": "",
"source": null,
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "25-09-2020 15:22",
"total_before_tax": 962.5,
"tax_id": null,
"tax_amount": 0,
"discount_type": "fixed",
"discount_amount": "19.5000",
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": null,
"shipping_address": null,
"shipping_status": null,
"delivered_to": null,
"shipping_charges": "0.0000",
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": 943,
"expense_category_id": null,
"expense_for": null,
"commission_agent": null,
"document": null,
"is_direct_sale": 0,
"is_suspend": 0,
"exchange_rate": "1.000",
"total_amount_recovered": null,
"transfer_parent_id": null,
"return_parent_id": null,
"opening_stock_product_id": null,
"created_by": 9,
"import_batch": null,
"import_time": null,
"types_of_service_id": null,
"packing_charge": "0.0000",
"packing_charge_type": null,
"service_custom_field_1": null,
"service_custom_field_2": null,
"service_custom_field_3": null,
"service_custom_field_4": null,
"mfg_parent_production_purchase_id": null,
"mfg_wasted_units": null,
"mfg_production_cost": "0.0000",
"mfg_production_cost_type": "percentage",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"rp_earned": 0,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_job_sheet_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"repair_updates_notif": 0,
"order_addresses": null,
"is_recurring": 0,
"recur_interval": 1,
"recur_interval_type": "days",
"recur_repetitions": 0,
"recur_stopped_on": null,
"recur_parent_id": null,
"invoice_token": null,
"pay_term_number": null,
"pay_term_type": null,
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": 0,
"created_at": "2020-09-23 20:16:19",
"updated_at": "2020-09-25 17:57:08",
"payment_lines": [
{
"id": 55,
"transaction_id": 91,
"business_id": 1,
"is_return": 0,
"amount": "461.7500",
"method": "cash",
"transaction_no": null,
"card_transaction_number": null,
"card_number": null,
"card_type": "credit",
"card_holder_name": null,
"card_month": null,
"card_year": null,
"card_security": null,
"cheque_number": null,
"bank_account_number": null,
"paid_on": "2020-09-23 20:16:19",
"created_by": 9,
"is_advance": 0,
"payment_for": 1,
"parent_id": null,
"note": null,
"document": null,
"payment_ref_no": "SP2020/0018",
"account_id": null,
"created_at": "2020-09-23 20:16:19",
"updated_at": "2020-09-23 20:16:19"
}
],
"invoice_url": "http://local.pos.com/invoice/6dfd77eb80f4976b456128e7f1311c9f",
"payment_link": "http://local.pos.com/pay/6dfd77eb80f4976b456128e7f1311c9f"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete Sell
requires authentication
Example request:
curl --request DELETE \
"https://app.keepmyaccount.com/connector/api/sell/ut" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/sell/ut"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/sell/ut';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add Sell Return
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/sell-return" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"transaction_id\": 6,
\"transaction_date\": \"2020-5-7 15:20:22\",
\"invoice_no\": \"officiis\",
\"discount_amount\": 10,
\"discount_type\": \"fixed\",
\"products\": [
\"omnis\"
]
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/sell-return"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"transaction_id": 6,
"transaction_date": "2020-5-7 15:20:22",
"invoice_no": "officiis",
"discount_amount": 10,
"discount_type": "fixed",
"products": [
"omnis"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/sell-return';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'transaction_id' => 6,
'transaction_date' => '2020-5-7 15:20:22',
'invoice_no' => 'officiis',
'discount_amount' => 10.0,
'discount_type' => 'fixed',
'products' => [
'omnis',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"id": 159,
"business_id": 1,
"location_id": 1,
"res_table_id": null,
"res_waiter_id": null,
"res_order_status": null,
"type": "sell_return",
"sub_type": null,
"status": "final",
"is_quotation": 0,
"payment_status": "paid",
"adjustment_type": null,
"contact_id": 1,
"customer_group_id": null,
"invoice_no": "CN2020/0005",
"ref_no": null,
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "2020-11-17 00:00:00",
"total_before_tax": 3,
"tax_id": null,
"tax_amount": 0,
"discount_type": "percentage",
"discount_amount": 12,
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": null,
"shipping_address": null,
"shipping_status": null,
"delivered_to": null,
"shipping_charges": "0.0000",
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": 2.64,
"expense_category_id": null,
"expense_for": null,
"commission_agent": null,
"document": null,
"is_direct_sale": 0,
"is_suspend": 0,
"exchange_rate": "1.000",
"total_amount_recovered": null,
"transfer_parent_id": null,
"return_parent_id": 157,
"opening_stock_product_id": null,
"created_by": 9,
"import_batch": null,
"import_time": null,
"types_of_service_id": null,
"packing_charge": null,
"packing_charge_type": null,
"service_custom_field_1": null,
"service_custom_field_2": null,
"service_custom_field_3": null,
"service_custom_field_4": null,
"mfg_parent_production_purchase_id": null,
"mfg_wasted_units": null,
"mfg_production_cost": "0.0000",
"mfg_production_cost_type": "percentage",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"rp_earned": 0,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_job_sheet_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"repair_updates_notif": 0,
"order_addresses": null,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"invoice_token": null,
"pay_term_number": null,
"pay_term_type": null,
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": null,
"created_at": "2020-11-17 12:05:11",
"updated_at": "2020-11-17 13:22:09"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List Sell Return
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/list-sell-return" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/list-sell-return"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/list-sell-return';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 159,
"business_id": 1,
"location_id": 1,
"res_table_id": null,
"res_waiter_id": null,
"res_order_status": null,
"type": "sell_return",
"sub_type": null,
"status": "final",
"is_quotation": 0,
"payment_status": "partial",
"adjustment_type": null,
"contact_id": 1,
"customer_group_id": null,
"invoice_no": "CN2020/0005",
"ref_no": null,
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "2020-11-17 00:00:00",
"total_before_tax": "3.0000",
"tax_id": null,
"tax_amount": "0.0000",
"discount_type": "percentage",
"discount_amount": "12.0000",
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": null,
"shipping_address": null,
"shipping_status": null,
"delivered_to": null,
"shipping_charges": "0.0000",
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": "2.6400",
"expense_category_id": null,
"expense_for": null,
"commission_agent": null,
"document": null,
"is_direct_sale": 0,
"is_suspend": 0,
"exchange_rate": "1.000",
"total_amount_recovered": null,
"transfer_parent_id": null,
"return_parent_id": 157,
"opening_stock_product_id": null,
"created_by": 9,
"import_batch": null,
"import_time": null,
"types_of_service_id": null,
"packing_charge": null,
"packing_charge_type": null,
"service_custom_field_1": null,
"service_custom_field_2": null,
"service_custom_field_3": null,
"service_custom_field_4": null,
"mfg_parent_production_purchase_id": null,
"mfg_wasted_units": null,
"mfg_production_cost": "0.0000",
"mfg_production_cost_type": "percentage",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"rp_earned": 0,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_job_sheet_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"repair_updates_notif": 0,
"order_addresses": null,
"is_recurring": 0,
"recur_interval": null,
"recur_interval_type": null,
"recur_repetitions": null,
"recur_stopped_on": null,
"recur_parent_id": null,
"invoice_token": null,
"pay_term_number": null,
"pay_term_type": null,
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": null,
"created_at": "2020-11-17 12:05:11",
"updated_at": "2020-11-17 13:22:09",
"payment_lines": [
{
"id": 126,
"transaction_id": 159,
"business_id": 1,
"is_return": 0,
"amount": "1.8000",
"method": "cash",
"transaction_no": null,
"card_transaction_number": null,
"card_number": null,
"card_type": "credit",
"card_holder_name": null,
"card_month": null,
"card_year": null,
"card_security": null,
"cheque_number": null,
"bank_account_number": null,
"paid_on": "2020-11-17 12:05:00",
"created_by": 9,
"is_advance": 0,
"payment_for": 1,
"parent_id": null,
"note": null,
"document": null,
"payment_ref_no": "SP2020/0078",
"account_id": null,
"created_at": "2020-11-17 12:05:58",
"updated_at": "2020-11-17 12:05:58"
}
],
"return_parent_sell": {
"id": 157,
"business_id": 1,
"location_id": 1,
"res_table_id": null,
"res_waiter_id": null,
"res_order_status": null,
"type": "sell",
"sub_type": null,
"status": "final",
"is_quotation": 0,
"payment_status": "paid",
"adjustment_type": null,
"contact_id": 1,
"customer_group_id": null,
"invoice_no": "AS0073",
"ref_no": "",
"subscription_no": null,
"subscription_repeat_on": null,
"transaction_date": "2020-11-13 12:42:17",
"total_before_tax": "6.2500",
"tax_id": null,
"tax_amount": "0.0000",
"discount_type": "percentage",
"discount_amount": "10.0000",
"rp_redeemed": 0,
"rp_redeemed_amount": "0.0000",
"shipping_details": null,
"shipping_address": null,
"shipping_status": null,
"delivered_to": null,
"shipping_charges": "0.0000",
"additional_notes": null,
"staff_note": null,
"round_off_amount": "0.0000",
"final_total": "5.6300",
"expense_category_id": null,
"expense_for": null,
"commission_agent": null,
"document": null,
"is_direct_sale": 0,
"is_suspend": 0,
"exchange_rate": "1.000",
"total_amount_recovered": null,
"transfer_parent_id": null,
"return_parent_id": null,
"opening_stock_product_id": null,
"created_by": 9,
"import_batch": null,
"import_time": null,
"types_of_service_id": null,
"packing_charge": "0.0000",
"packing_charge_type": null,
"service_custom_field_1": null,
"service_custom_field_2": null,
"service_custom_field_3": null,
"service_custom_field_4": null,
"mfg_parent_production_purchase_id": null,
"mfg_wasted_units": null,
"mfg_production_cost": "0.0000",
"mfg_production_cost_type": "percentage",
"mfg_is_final": 0,
"is_created_from_api": 0,
"essentials_duration": "0.00",
"essentials_duration_unit": null,
"essentials_amount_per_unit_duration": "0.0000",
"essentials_allowances": null,
"essentials_deductions": null,
"rp_earned": 0,
"repair_completed_on": null,
"repair_warranty_id": null,
"repair_brand_id": null,
"repair_status_id": null,
"repair_model_id": null,
"repair_job_sheet_id": null,
"repair_defects": null,
"repair_serial_no": null,
"repair_checklist": null,
"repair_security_pwd": null,
"repair_security_pattern": null,
"repair_due_date": null,
"repair_device_id": null,
"repair_updates_notif": 0,
"order_addresses": null,
"is_recurring": 0,
"recur_interval": 1,
"recur_interval_type": "days",
"recur_repetitions": 0,
"recur_stopped_on": null,
"recur_parent_id": null,
"invoice_token": null,
"pay_term_number": null,
"pay_term_type": null,
"pjt_project_id": null,
"pjt_title": null,
"woocommerce_order_id": null,
"selling_price_group_id": 0,
"created_at": "2020-11-13 12:42:17",
"updated_at": "2020-11-13 12:42:18",
"sell_lines": [
{
"id": 139,
"transaction_id": 157,
"product_id": 157,
"variation_id": 205,
"quantity": 5,
"mfg_waste_percent": "0.0000",
"quantity_returned": "3.0000",
"unit_price_before_discount": "1.2500",
"unit_price": "1.2500",
"line_discount_type": "fixed",
"line_discount_amount": "0.0000",
"unit_price_inc_tax": "1.2500",
"item_tax": "0.0000",
"tax_id": null,
"discount_id": null,
"lot_no_line_id": null,
"sell_line_note": "",
"res_service_staff_id": null,
"res_line_order_status": null,
"woocommerce_line_items_id": null,
"parent_sell_line_id": null,
"children_type": "",
"sub_unit_id": null,
"created_at": "2020-11-13 12:42:17",
"updated_at": "2020-11-17 13:22:09"
}
]
}
}
],
"links": {
"first": "http://local.pos.com/connector/api/list-sell-return?sell_id=157&page=1",
"last": null,
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"path": "http://local.pos.com/connector/api/list-sell-return",
"per_page": 10,
"to": 1
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update shipping status
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/update-shipping-status" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"id\": 9,
\"shipping_status\": \"ordered\",
\"delivered_to\": \"rerum\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/update-shipping-status"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"id": 9,
"shipping_status": "ordered",
"delivered_to": "rerum"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/update-shipping-status';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'id' => 9,
'shipping_status' => 'ordered',
'delivered_to' => 'rerum',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Superadmin
If SaaS installed get active subscription details, else return the enabled modules details in package_details
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/active-subscription" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/active-subscription"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/active-subscription';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 1,
"business_id": 1,
"package_id": 3,
"start_date": "2020-09-05 00:00:00",
"trial_end_date": "2020-09-15",
"end_date": "2020-10-05 00:00:00",
"package_price": "599.9900",
"package_details": {
"location_count": 0,
"user_count": 0,
"product_count": 0,
"invoice_count": 0,
"name": "Unlimited",
"woocommerce_module": 1,
"essentials_module": 1
},
"created_id": 1,
"paid_via": "stripe",
"payment_transaction_id": "ch_1CuLdQAhokBpT93LVZNg2At6",
"status": "approved",
"deleted_at": null,
"created_at": "2018-08-01 07:49:09",
"updated_at": "2018-08-01 07:49:09",
"locations_created": 1,
"users_created": 6,
"products_created": 2,
"invoices_created": 1
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get Superadmin Package List
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/packages" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/packages"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/packages';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Starter - Free",
"description": "Give it a test drive...",
"location_count": 0,
"user_count": 0,
"product_count": 0,
"bookings": 0,
"kitchen": 0,
"order_screen": 0,
"tables": 0,
"invoice_count": 0,
"interval": "months",
"interval_count": 1,
"trial_days": 10,
"price": "0.0000",
"custom_permissions": {
"assetmanagement_module": "1",
"connector_module": "1",
"crm_module": "1",
"essentials_module": "1",
"manufacturing_module": "1",
"productcatalogue_module": "1",
"project_module": "1",
"repair_module": "1",
"woocommerce_module": "1"
},
"created_by": 1,
"sort_order": 0,
"is_active": 1,
"is_private": 0,
"is_one_time": 0,
"enable_custom_link": 0,
"custom_link": "",
"custom_link_text": "",
"deleted_at": null,
"created_at": "2020-10-09 16:38:02",
"updated_at": "2020-11-11 12:19:17"
},
{
"id": 2,
"name": "Regular",
"description": "For Small Shops",
"location_count": 0,
"user_count": 0,
"product_count": 0,
"bookings": 0,
"kitchen": 0,
"order_screen": 0,
"tables": 0,
"invoice_count": 0,
"interval": "months",
"interval_count": 1,
"trial_days": 10,
"price": "199.9900",
"custom_permissions": {
"repair_module": "1"
},
"created_by": 1,
"sort_order": 1,
"is_active": 1,
"is_private": 0,
"is_one_time": 0,
"enable_custom_link": 0,
"custom_link": null,
"custom_link_text": null,
"deleted_at": null,
"created_at": "2020-10-09 16:38:02",
"updated_at": "2020-10-09 16:38:02"
},
{
"id": 3,
"name": "Unlimited",
"description": "For Large Business",
"location_count": 0,
"user_count": 0,
"product_count": 0,
"bookings": 0,
"kitchen": 0,
"order_screen": 0,
"tables": 0,
"invoice_count": 0,
"interval": "months",
"interval_count": 1,
"trial_days": 10,
"price": "599.9900",
"custom_permissions": {
"assetmanagement_module": "1",
"connector_module": "1",
"crm_module": "1",
"essentials_module": "1",
"manufacturing_module": "1",
"productcatalogue_module": "1",
"project_module": "1",
"repair_module": "1",
"woocommerce_module": "1"
},
"created_by": 1,
"sort_order": 1,
"is_active": 1,
"is_private": 0,
"is_one_time": 0,
"enable_custom_link": 0,
"custom_link": "",
"custom_link_text": "",
"deleted_at": null,
"created_at": "2020-10-09 16:38:02",
"updated_at": "2020-11-02 12:09:19"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Table management
List tables
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/table?location_id=1" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/table"
);
const params = {
"location_id": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/table';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'location_id' => '1',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 5,
"business_id": 1,
"location_id": 1,
"name": "Table 1",
"description": null,
"created_by": 9,
"deleted_at": null,
"created_at": "2020-06-04 22:36:37",
"updated_at": "2020-06-04 22:36:37"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Show the specified table
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/table/possimus" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/table/possimus"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/table/possimus';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 5,
"business_id": 1,
"location_id": 1,
"name": "Table 1",
"description": null,
"created_by": 9,
"deleted_at": null,
"created_at": "2020-06-04 22:36:37",
"updated_at": "2020-06-04 22:36:37"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Tax management
List taxes
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/tax" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/tax"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/tax';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"name": "VAT@10%",
"amount": 10,
"is_tax_group": 0,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:40:07",
"updated_at": "2018-01-04 02:40:07"
},
{
"id": 2,
"business_id": 1,
"name": "CGST@10%",
"amount": 10,
"is_tax_group": 0,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:40:55",
"updated_at": "2018-01-04 02:40:55"
},
{
"id": 3,
"business_id": 1,
"name": "SGST@8%",
"amount": 8,
"is_tax_group": 0,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:41:13",
"updated_at": "2018-01-04 02:41:13"
},
{
"id": 4,
"business_id": 1,
"name": "GST@18%",
"amount": 18,
"is_tax_group": 1,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:42:19",
"updated_at": "2018-01-04 02:42:19"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified tax
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/tax/iure" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/tax/iure"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/tax/iure';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"name": "VAT@10%",
"amount": 10,
"is_tax_group": 0,
"created_by": 1,
"woocommerce_tax_rate_id": null,
"deleted_at": null,
"created_at": "2018-01-04 02:40:07",
"updated_at": "2018-01-04 02:40:07"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Taxonomy management
List taxonomy
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/taxonomy?type=repudiandae" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/taxonomy"
);
const params = {
"type": "repudiandae",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/taxonomy';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'type' => 'repudiandae',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Men's",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:06:34",
"updated_at": "2018-01-03 21:06:34",
"sub_categories": [
{
"id": 4,
"name": "Jeans",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:07:34",
"updated_at": "2018-01-03 21:07:34"
},
{
"id": 5,
"name": "Shirts",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:08:18",
"updated_at": "2018-01-03 21:08:18"
}
]
},
{
"id": 21,
"name": "Food & Grocery",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-06 05:31:35",
"updated_at": "2018-01-06 05:31:35",
"sub_categories": []
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified taxonomy
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/taxonomy/et" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/taxonomy/et"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/taxonomy/et';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Men's",
"business_id": 1,
"short_code": null,
"parent_id": 0,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:06:34",
"updated_at": "2018-01-03 21:06:34",
"sub_categories": [
{
"id": 4,
"name": "Jeans",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:07:34",
"updated_at": "2018-01-03 21:07:34"
},
{
"id": 5,
"name": "Shirts",
"business_id": 1,
"short_code": null,
"parent_id": 1,
"created_by": 1,
"category_type": "product",
"description": null,
"slug": null,
"woocommerce_cat_id": null,
"deleted_at": null,
"created_at": "2018-01-03 21:08:18",
"updated_at": "2018-01-03 21:08:18"
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Types of service management
List types of service
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/types-of-service" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/types-of-service"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/types-of-service';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Home Delivery",
"description": null,
"business_id": 1,
"location_price_group": {
"1": "0"
},
"packing_charge": "10.0000",
"packing_charge_type": "fixed",
"enable_custom_fields": 0,
"created_at": "2020-06-04 22:41:13",
"updated_at": "2020-06-04 22:41:13"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified types of service
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/types-of-service/eligendi" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/types-of-service/eligendi"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/types-of-service/eligendi';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"name": "Home Delivery",
"description": null,
"business_id": 1,
"location_price_group": {
"1": "0"
},
"packing_charge": "10.0000",
"packing_charge_type": "fixed",
"enable_custom_fields": 0,
"created_at": "2020-06-04 22:41:13",
"updated_at": "2020-06-04 22:41:13"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Unit management
List units
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/unit" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/unit"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/unit';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"actual_name": "Pieces",
"short_name": "Pc(s)",
"allow_decimal": 0,
"base_unit_id": null,
"base_unit_multiplier": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 15:15:20",
"updated_at": "2018-01-03 15:15:20",
"base_unit": null
},
{
"id": 2,
"business_id": 1,
"actual_name": "Packets",
"short_name": "packets",
"allow_decimal": 0,
"base_unit_id": null,
"base_unit_multiplier": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-06 01:07:01",
"updated_at": "2018-01-06 01:08:36",
"base_unit": null
},
{
"id": 15,
"business_id": 1,
"actual_name": "Dozen",
"short_name": "dz",
"allow_decimal": 0,
"base_unit_id": 1,
"base_unit_multiplier": "12.0000",
"created_by": 9,
"deleted_at": null,
"created_at": "2020-07-20 13:11:09",
"updated_at": "2020-07-20 13:11:09",
"base_unit": {
"id": 1,
"business_id": 1,
"actual_name": "Pieces",
"short_name": "Pc(s)",
"allow_decimal": 0,
"base_unit_id": null,
"base_unit_multiplier": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 15:15:20",
"updated_at": "2018-01-03 15:15:20"
}
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified unit
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/unit/et" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/unit/et"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/unit/et';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"business_id": 1,
"actual_name": "Pieces",
"short_name": "Pc(s)",
"allow_decimal": 0,
"base_unit_id": null,
"base_unit_multiplier": null,
"created_by": 1,
"deleted_at": null,
"created_at": "2018-01-03 15:15:20",
"updated_at": "2018-01-03 15:15:20",
"base_unit": null
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
User management
Get the loggedin user details.
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/user/loggedin" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/user/loggedin"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/user/loggedin';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": {
"id": 1,
"user_type": "user",
"surname": "Mr",
"first_name": "Admin",
"last_name": null,
"username": "admin",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2018-01-04 02:15:19"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Register User
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/user-registration" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"username\": \"quisquam\",
\"email\": \"[email protected]\",
\"user_type\": \"non\",
\"surname\": \"deserunt\",
\"first_name\": \"quos\",
\"last_name\": \"qui\",
\"is_active\": \"ea\",
\"crm_contact_id\": 13,
\"allow_login\": true,
\"password\": \"^b0??P\",
\"role\": 5,
\"access_all_locations\": true,
\"location_permissions\": [
\"ut\"
],
\"cmmsn_percent\": \"est\",
\"max_sales_discount_percent\": \"omnis\",
\"selected_contacts\": false,
\"selected_contact_ids\": [
\"animi\"
],
\"dob\": \"in\",
\"gender\": \"omnis\",
\"marital_status\": \"velit\",
\"blood_group\": \"dolorem\",
\"contact_number\": \"totam\",
\"alt_number\": \"quaerat\",
\"family_number\": \"quos\",
\"fb_link\": \"est\",
\"twitter_link\": \"est\",
\"social_media_1\": \"et\",
\"social_media_2\": \"alias\",
\"custom_field_1\": \"voluptatibus\",
\"custom_field_2\": \"eos\",
\"custom_field_3\": \"voluptas\",
\"custom_field_4\": \"dolores\",
\"guardian_name\": \"omnis\",
\"id_proof_name\": \"praesentium\",
\"id_proof_number\": \"facere\",
\"permanent_address\": \"consequatur\",
\"current_address\": \"itaque\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/user-registration"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"username": "quisquam",
"email": "[email protected]",
"user_type": "non",
"surname": "deserunt",
"first_name": "quos",
"last_name": "qui",
"is_active": "ea",
"crm_contact_id": 13,
"allow_login": true,
"password": "^b0??P",
"role": 5,
"access_all_locations": true,
"location_permissions": [
"ut"
],
"cmmsn_percent": "est",
"max_sales_discount_percent": "omnis",
"selected_contacts": false,
"selected_contact_ids": [
"animi"
],
"dob": "in",
"gender": "omnis",
"marital_status": "velit",
"blood_group": "dolorem",
"contact_number": "totam",
"alt_number": "quaerat",
"family_number": "quos",
"fb_link": "est",
"twitter_link": "est",
"social_media_1": "et",
"social_media_2": "alias",
"custom_field_1": "voluptatibus",
"custom_field_2": "eos",
"custom_field_3": "voluptas",
"custom_field_4": "dolores",
"guardian_name": "omnis",
"id_proof_name": "praesentium",
"id_proof_number": "facere",
"permanent_address": "consequatur",
"current_address": "itaque"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/user-registration';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'username' => 'quisquam',
'email' => '[email protected]',
'user_type' => 'non',
'surname' => 'deserunt',
'first_name' => 'quos',
'last_name' => 'qui',
'is_active' => 'ea',
'crm_contact_id' => 13,
'allow_login' => true,
'password' => '^b0??P',
'role' => 5,
'access_all_locations' => true,
'location_permissions' => [
'ut',
],
'cmmsn_percent' => 'est',
'max_sales_discount_percent' => 'omnis',
'selected_contacts' => false,
'selected_contact_ids' => [
'animi',
],
'dob' => 'in',
'gender' => 'omnis',
'marital_status' => 'velit',
'blood_group' => 'dolorem',
'contact_number' => 'totam',
'alt_number' => 'quaerat',
'family_number' => 'quos',
'fb_link' => 'est',
'twitter_link' => 'est',
'social_media_1' => 'et',
'social_media_2' => 'alias',
'custom_field_1' => 'voluptatibus',
'custom_field_2' => 'eos',
'custom_field_3' => 'voluptas',
'custom_field_4' => 'dolores',
'guardian_name' => 'omnis',
'id_proof_name' => 'praesentium',
'id_proof_number' => 'facere',
'permanent_address' => 'consequatur',
'current_address' => 'itaque',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"success": 1,
"msg": "User added successfully",
"user": {
"surname": "Mr",
"first_name": "Test",
"last_name": "kumar",
"email": "[email protected]",
"user_type": "user_customer",
"crm_contact_id": "2",
"allow_login": 1,
"username": "0017",
"cmmsn_percent": "25",
"max_sales_discount_percent": "52",
"dob": "1997-10-12",
"gender": "male",
"marital_status": "unmarried",
"blood_group": "0+",
"contact_number": "4578451245",
"alt_number": "7474747474",
"family_number": "7474147414",
"fb_link": "fb.com/username",
"twitter_link": "twitter.com/username",
"social_media_1": "test",
"social_media_2": "test",
"custom_field_1": "test",
"custom_field_2": "test",
"custom_field_3": "test",
"custom_field_4": "test",
"guardian_name": "test",
"id_proof_name": "uid",
"id_proof_number": "747845120124",
"permanent_address": "test permanent adrress",
"current_address": "test current address",
"bank_details": "{\"account_holder_name\":\"test\",\"account_number\":\"test\",\"bank_name\":\"test\",\"bank_code\":\"test\",\"branch\":\"test\",\"tax_payer_id\":\"test\"}",
"selected_contacts": "1",
"status": "active",
"business_id": 1,
"updated_at": "2021-08-12 18:03:58",
"created_at": "2021-08-12 18:03:58",
"id": 140
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List users
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/user?service_staff=1" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/user"
);
const params = {
"service_staff": "1",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/user';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'service_staff' => '1',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"user_type": "user",
"surname": "Mr",
"first_name": "Admin",
"last_name": null,
"username": "admin",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2018-01-04 02:15:19"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified user
requires authentication
Example request:
curl --request GET \
--get "https://app.keepmyaccount.com/connector/api/user/mollitia" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/user/mollitia"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/user/mollitia';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": 1,
"user_type": "user",
"surname": "Mr",
"first_name": "Admin",
"last_name": null,
"username": "admin",
"email": "[email protected]",
"language": "en",
"contact_no": null,
"address": null,
"business_id": 1,
"max_sales_discount_percent": null,
"allow_login": 1,
"essentials_department_id": null,
"essentials_designation_id": null,
"status": "active",
"crm_contact_id": null,
"is_cmmsn_agnt": 0,
"cmmsn_percent": "0.00",
"selected_contacts": 0,
"dob": null,
"gender": null,
"marital_status": null,
"blood_group": null,
"contact_number": null,
"fb_link": null,
"twitter_link": null,
"social_media_1": null,
"social_media_2": null,
"permanent_address": null,
"current_address": null,
"guardian_name": null,
"custom_field_1": null,
"custom_field_2": null,
"custom_field_3": null,
"custom_field_4": null,
"bank_details": null,
"id_proof_name": null,
"id_proof_number": null,
"deleted_at": null,
"created_at": "2018-01-04 02:15:19",
"updated_at": "2018-01-04 02:15:19"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update user password.
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/update-password" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"current_password\": \"accusantium\",
\"new_password\": \"repellendus\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/update-password"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"current_password": "accusantium",
"new_password": "repellendus"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/update-password';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'current_password' => 'accusantium',
'new_password' => 'repellendus',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"success": 1,
"msg": "Password updated successfully"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Recover forgotten password.
requires authentication
Example request:
curl --request POST \
"https://app.keepmyaccount.com/connector/api/forget-password" \
--header "Authorization: Bearer {access_token}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"[email protected]\"
}"
const url = new URL(
"https://app.keepmyaccount.com/connector/api/forget-password"
);
const headers = {
"Authorization": "Bearer {access_token}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "[email protected]"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://app.keepmyaccount.com/connector/api/forget-password';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {access_token}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'email' => '[email protected]',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"success": 1,
"msg": "New password sent to [email protected] successfully"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.