Introduction
Common Definitions
Following are the common definitions in the GoGet System:
request_at |
Time | The timestamp of a request that is sent to the GoGet system. |
start_at |
Time | The time that is given from your system to start the job. |
pick_up |
Time | The final expected time for GoGetter to pick up the item from pick up location and item must be ready for pick up. |
delivery |
Time | The expected time for GoGetter to deliver the item. |
Access - Premium Delivery Job
Premium Delivery is applicable when API job is submitted with “Premium TRUE”. This is defaulted as TRUE.
On-demand Delivery
- To create:
- Do not put a
start_at
time:start_at
time will default the pick up time to request time. Item will be pick up within a pick up window of 20 minutes from request time. - OR Send a
start_at
time that is less than 20 mins from request time.
- Do not put a
- Start time will follow the value set by the user.
- Pick up range will end at 20 mins from the time set by user.
- Delivery SLA follows travel time of the route. SLA changes according to the distance and real time traffic.
- Maximum number of deliveries in a job: 4 (e.g. Pick up, Drop off 1, Drop off 4)
Scheduled Delivery:
- Pick up time is at least 20 mins from the request time.
- Delivery SLA follows travel time of the route. SLA changes according to the distance and real time traffic.
Flexible Delivery
- To create:
start_at
time must be before or at 11am and more than 30 minutes from request time. System will set the pick up time fromstart_at
time to 1pm on the same day.- If you send a specific start time, e.g. To start at 10am, the job will be created with a pick up time range of 10am to 1pm. You cannot send a
start_at
time that is outside the range of 8am to 11am.If the requiredstart_at
time is less than 30 minutes from request time, we will set the pick up time to be half an hour from request time to 1pm. - If no specific start time is given to us, we will set the pick up time to be half an hour from request time. E.g. Time request is 9am, no start_at time is given, and job will be created with a pick up time range of 9.30am to 1pm.
- If you send a specific start time, e.g. To start at 10am, the job will be created with a pick up time range of 10am to 1pm. You cannot send a
- Delivery time is 1 hour after earliest pick up time with a delivery window till 5pm.
- Maximum number of deliveries: 4 (e.g. Pick up, Drop off 1 to 4)
- Same day delivery must be submitted by 10.29am.
Requirements on Premium Delivery
Premium Delivery is only available for jobs meeting these requirements:
- Dispatch (pick-up and drop-off only)
- Pick-up and drop-off location is within our Klang Valley coverage. You may check the locationhere.
- Jobs to be started daily between, 8am to 9pm. There is a time check route that has a response if the job can be posted under Premium Delivery.
- Can be carried out by sedan cars, motorcycles and bike with delivery bags.
- Premium Delivery is available on National Public Holiday and Federal Territory Holiday.
- Merchant is required to ensure the item is ready to be picked up as per requested time. Item must be ready to be picked up at the earliest time if this is a flexible delivery job. Additional charges applied if there is any delay, please refer to “Responsibility & Additional Charges”.
Access - Standard Dispatch
Standard Dispatch is defined as non premium delivery. Before job creation, you can check the price of the job by using the fee_check
route, please refer to API documentation for more info. The fee is calculated based on the following:
- Distance of the job, pick up time, delivery time, type of vehicle, bulky.
- Set
premium
asTRUE
under fee, and our system will suggest a premium delivery price to you. - Set
premium
asFALSE
, and our system will suggest a standard dispatch price to you
Standard Dispatch Job Creation
To create a standard dispatch job:
- Set
premium
toFALSE
and you will create a standard dispatch job. - Pick up time is set as
start_at
time and must be more than request time. You are not allow to set a pick up window. - Delivery SLA follows travel time of the route. SLA changes according to the distance and real time traffic.
- Maximum number of deliveries: 11 (e.g. Pick up, Drop off 1 to 11).
- You can submit a standard dispatch job anytime of the day.
Format
GoGet.my
is simply a marketplace and we cannot guarantee 100% claims on every post. The following format is advisable to be practiced to ensure a good match rate:-
- Every pick-up and drop-off location is clearly provided and input as ONE task each. Clarity of address entails full address details with unit number, street full name, neighborhood, and postcode.
- Merchant are allowed to specify additional requirements/information when posting a job by completing the relevant fields in the API. Related fields are:
- Bulky
- Recipient Name
- Recipient Phone Number
- Vehicle required: If vehicle is not specified, it will default as car
- Required Electronic Delivery Order (EDO)
- Merchant are allowed to add in the additional notes and pick up instructions.
- Item must be able to fit into GoGetter's vehicle. GoGetters are required to keep a clear view to the rear by not packing above the line of the window of their car.
- Merchant are allowed to route the delivery, set the order of the stops accordingly. GoGet will create the job based on merchant’s input. Merchant has the option to let GoGet route the job. You are allowed to all types of delivery job. Please refer to the API documentations for more detail.
- Any load that is more than 10kg per route must be tagged as
bulky
. - For more information related to pricing, please check here.
- Parking cost is an additional cost added to the job to ensure if the location would incurred extra cost to GoGetter. This value is default to
TRUE
, you can set it asFALSE
. - The following features are temporarily not available for current built, however please reach out to us if you require the following feature:
- Attach photo(s) in the job
- If you would like to arrange for a delivery outside premium delivery service hour (start time is 8am to 9pm) you may:
- Created a standard dispatch job.
- Alternatively, if you would like to create a Premium Delivery job without a
start_at
time, you may set “FALLBACK” as true upon creating the API job, this will auto-schedule a Premium Delivery with pick up time at the coming 10am (non-Public Holiday).
Liability
GoGet shall not be held liable for any failure or delay in performing Services or delivering Goods where such failure arises as a result of any act or omission, which is outside our reasonable control such as all overwhelming and unpreventable events caused directly and exclusively by forces of nature that can be neither anticipated, nor controlled, nor prevented by the exercise of prudence, diligence, and care, including but not limited to: war, riot, civil commotion; compliance with any law or governmental order, rule, regulation or direction and acts of third parties.
FAQ's
Does GoGet provide plugins? (i.e Woocommerce,Shopify & etc.)
The answer is no. GoGet does not provide or have any plugins. However, you can still manually integrate your e-commerce site manually via the API documentation provided.
Does GoGet provide manpower to assist with API Integration?
We do not provide manpower to assist with API Integration. Should you require more information on this, please contact our Business team at business@goget.my.
How does API integration with GoGet work?
Here are the steps on how API Integration with GoGet works
GoGet will send over documentation for your developers to interpret
Create a testing account and upgrade to GoGet Business.
Generate a toke and callback URL.
If everything works well, migrate from staging/testing to Live environment and you have successfully integrated.
Getting On Board
Poster Staging
Step 1 Go onto staging environment by typing https://staging-app.goget.my/sign_up in the browser
Login Details:
Username : gogetstaging
Password : getmyapis
After authentication it will take us to sign up page
Step 2 Enter you details and click on sign up button
Step 3 Enter OTP which you received on your mobile
Step 4 Click on credit Icon on top right corner besides notifications icon
Step 5 Click on Business Plan section
Step 6 Select your plan according to your requirements
Step 7 Select Billplz after that click on Pay button
Step 8 Click on Successful payment button
Step 9 On receipt click on OK button
Step 10 Now, manually enter this URL http://staging-api.goget.my/api. It will take you to the login page. Enter your credentials and click on login button
Step 11 Generate api token
After login it will redirect to api page. Click on generate token button.
Step 12 Input Callback URL
Get the callback URL and key it into the Callback URL field. Update and you’re DONE!.
GoGetter Staging
For merchants to complete their testing and get familiar with the flow from when a job is created until completion, we have provided the following steps:
- Install our GoGetter app from this link.
- Sign up as a GoGetter.
- Please provide your name, email and company name to your GoGet representative or you may email this information to business@goget.my with the subject “GoGetter Staging”.
- You will be given access as a “GoGetter on the app within 6 hrs.
- Using your poster account, create a job. This job will be automatically linked to your “GoGetter account.
- On the gogetter app, Go to My Jobs and you will see the job assigned to your “GoGetter account.
-
You can then proceed to do the following to trigger the callback status update response:
- claim the job
- start the job
- start the tasks
- complete the tasks
- Each of these actions will trigger our system to make a call to your callback url endpoint and you should receive the latest status of the job with the appropriate details.
Production
Step 1 Sign up for GoGet account here
Step 2 Click on Sign up button
Step 3 Fill in your detail
Step 4 Enter OTP which you recieved on your mobile
Step 5 Click on credit Icon on top right corner besides notifictations icon
Step 6 Click on Business Plan section
Step 7 Select your plan according to your requirements
Step 8 Select your payment method and click on pay button
Step 9 On receipt click on OK button
Step 10 Now, manually enter this URL https://web.goget.my/api. It will take you to the login page. Enter your credentials and click on login button
Step 11 Generate your API Token
Step 12 Input Callback URL
Get the callback URL and key it into the Callback URL field. Update and you’re DONE!
Authentication
Headers
Example Header
{
"Authorization": "Token token=9x54Y7aHnCMTPyzWWqBW",
"Accept": "application/json",
"Content-Type": "application/json"
}
Be sure to include these in the header of the request
Authorization
Token token=<Your_Auth_Token>
Accept
application/json
Content-Type
application/json
Jobs
List all jobs
curl "https://staging-api.goget.my/api/public/v2/jobs" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"success": true,
"info": "Successfully fetch all jobs",
"data": [
{
"id": 23049,
"notes": "General Notes Testing",
"ride_id": 1,
"status": "open",
"posted_at": "2022-10-21T16:04:59.787+08:00",
"started_at": null,
"distance_covered": 1,
"cancelled_at": null,
"expire_at": "2022-12-25T03:53:00.520+08:00",
"start_at": "2022-12-25T03:03:00.520+08:00",
"completed_at": null,
"platform": "api",
"reference": "GN-001",
"non_halal": false,
"simple_status": "searching",
"credits_used": "30.0",
"tracking_url": "https://develop-api.goget.my/tk/iam4ach1ko",
"tracking_id": "iam4ach1ko",
"guarantee": true,
"tasks": [
{
"id": 54475,
"name": "Pick up",
"location": "Pavilion",
"location_lat": 3.1489,
"location_long": 101.7133,
"status": "open",
"start_at": "2022-12-25T03:03:00.520+08:00",
"end_at": "2022-12-25T03:48:00.520+08:00",
"ended_at": null,
"order": 0,
"parking": true,
"recipient_name": null,
"recipient_phone_num": null,
"reference": "A001",
"sender_name": null,
"sender_email": null,
"location_notes": "Please contact PIC before you heading to the location",
"location_url": "https://goo.gl/maps/bSedZcoX9aq9faUa9",
"tracking_url": null,
"tracking_id": null,
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": true,
"attachments": []
},
{
"id": 54476,
"name": "Deliver",
"location": "Sunway Velocity Malaysia",
"location_lat": 3.1488612,
"location_long": 101.711066,
"status": "open",
"start_at": "2022-12-25T03:12:00.520+08:00",
"end_at": "2022-12-25T03:53:00.520+08:00",
"ended_at": null,
"order": 1,
"parking": false,
"recipient_name": "Michelle",
"recipient_phone_num": "0162567271",
"reference": "A002",
"sender_name": "Mr.Lew",
"sender_email": "Lew@gmail.com",
"location_notes": "Please on time",
"location_url": "https://g.page/SunwayVelocityMall?share",
"tracking_url": "https://develop-app.goget.my/track/iam4ach1ko",
"tracking_id": "iam4ach1ko",
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": true,
"edo": {
"receiver_name": null,
"receiver_id": null,
"receiver_relation": null
},
"attachments": []
}
],
"gogetters": []
}
]
}
GET
Summary: Returns the list of all jobs of the user except the jobs which are of type child job.
Description: Returns the list of jobs of user except the jobs which are of the type child job. If job status is given in the parameters than it will return all the jobs with given status. When job status is not given then by default it will return all the jobs of the user. The jobs returned are sorted by the creation date, with most recent appearing first. Each job returned will contain all the job details, list of all tasks of the job and list of goggeters of the jobs if there are any. Moreover, there will be only 30 jobs on a single page.
HTTP Request
GET
/api/public/v2/jobs
Parameters
query
Parameter | Type | Description |
---|---|---|
jobStatus |
string |
State of status can be either active, open, accepted, in_progress, completed, cancelled. Default will return the all. |
page |
integer |
A cursor for pagination across multiple pages of results. Don’t include this parameter on the first call. |
Responses
success |
True if the request has been a success. | |
info |
A message which provides information related to the request. | |
data |
An array of objects with key value pairs containing all the information related to jobs, tasks of the jobs and goggetters that claimed those jobs. |
Retrieve a job
curl "https://staging-api.goget.my/api/public/v2/jobs/29476" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"id": 29476,
"notes": "",
"ride_id": null,
"status": "open",
"posted_at": "2023-06-07T15:32:09.360+08:00",
"started_at": null,
"distance_covered": 0,
"cancelled_at": null,
"expire_at": "2023-06-12T11:45:00.000+08:00",
"start_at": "2023-06-12T11:00:00.000+08:00",
"completed_at": null,
"platform": "pwa",
"reference": null,
"non_halal": false,
"premium": false,
"simple_status": "searching",
"credits_used": "17.0",
"tracking_url": null,
"tracking_id": null,
"guarantee": false,
"tasks": [
{
"id": 66243,
"name": "q",
"location": "Kuala Lumpur City Centre, Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia",
"location_lat": 3.146642,
"location_long": 101.6958449,
"status": "open",
"start_at": "2023-06-12T11:00:00.000+08:00",
"end_at": "2023-06-12T11:45:00.000+08:00",
"ended_at": null,
"order": 0,
"parking": true,
"recipient_name": null,
"recipient_phone_num": null,
"reference": null,
"sender_name": null,
"sender_email": null,
"location_notes": null,
"location_url": null,
"tracking_url": null,
"tracking_id": null,
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": false,
"attachments": []
}
],
"gogetters": []
}
GET
Summary: Returns a job object with valid id.
Description: Returns a job object with key-value pairs containing all information related to job, a list of tasks of the job and list of the gogetters which claimed the job.
HTTP Request
GET
/api/public/v2/jobs/{job_id}
Parameters
path
id |
<job_id > |
Response
id |
Job ID. |
status |
The current status of the job. Please see table below for values and descriptions. |
simple_status |
Alternative simpler status for the poster to know the status of the job. Please see table below for values and descriptions. |
tracking_id |
The job tracking ID. |
tracking_url |
The url using which user can track the job. |
credits_used |
Amount of credits used for the job. |
platform |
The platform using which the request has been sent. |
posted_at |
The time at which job is posted. |
started_at |
The time at which job is started by Gogetter. |
non_halal |
The boolean to see if the job is Halal or not. |
expire_at |
The time at which job is expired. |
reference |
The reference ID for the job. |
tasks |
An array of all tasks of the job. Each task object contains all the information related to task. Please see table below for values and descriptions of possible task statuses. |
gogetters |
An array of all the gogetter objects which claimed the job. |
1. simple_status: We use this as a simple status for the poster to know the state of the job
State | Info | Job Status |
---|---|---|
searching |
A job that hasn't yet been picked up by any gogetter. | new, open |
claimed |
GoGetter has picked up job but not started. | approved |
in_transit |
Job has at least 1 task completed/failed, but there are still open tasks. | job in_progress and at least one task has been completed |
started |
Job has been started, but no task has been completed yet. | job in_progress and no tasks has been completed |
completed |
Job is completed. | completed, closed |
cancelled |
Job cancelled either by gogetter or poster. | cancelled |
expired |
Job got expired. | expired |
2. status: The job status as it is on a system level
State | Info |
---|---|
open |
A job that hasn't yet been picked up by any gogetter. |
claimed |
Job has been picked up by gogetter but poster needs to approve gogeter for the job. |
approved |
Job has been picked by gogetter and approved by poster. |
in_progress |
Job has started. |
completed |
All tasks in the job has been completed. |
closed |
A review by poster has been submitted on the job. |
cancelled |
Job cancelled either by gogetter or poster. |
expired |
Job got expired. |
3. Task status: The status of each task on the job
State | Info |
---|---|
open |
Task has not yet been completed by gogetter. |
completed |
Task has been completed by gogetter. |
failed |
Task was failed either due to unable to deliver / PIC not contactable. |
Retrieve jobs with reference
curl "https://staging-api.goget.my/api/public/v1/jobs/AB12311136/reference" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"id": 4552,
"notes": "",
"ride_id": 1,
"status": "in_progress",
"posted_at": "2021-08-18T15:45:29.218+08:00",
"started_at": "2021-08-18T15:46:54.079+08:00",
"distance_covered": 0,
"cancelled_at": null,
"expire_at": "2021-08-18T17:20:15.582+08:00",
"start_at": "2021-08-18T15:50:15.582+08:00",
"completed_at": null,
"platform": "pwa",
"reference": "AB12311136",
"non_halal": false,
"premium": false,
"simple_status": "started",
"credits_used": "20.0",
"tracking_url": "http://social-tools-teach-202-185-200-41.loca.lt/tk/001qlzgqun",
"tracking_id": "001qlzgqun",
"guarantee": false,
"tasks": [
{
"id": 8871,
"name": "test",
"location": "Let GoGetter Decide",
"location_lat": null,
"location_long": null,
"status": "open",
"start_at": "2021-08-18T15:50:15.582+08:00",
"end_at": "2021-08-18T16:50:18.036+08:00",
"ended_at": null,
"order": 0,
"parking": true,
"recipient_name": null,
"recipient_phone_num": null,
"reference": null,
"sender_name": null,
"sender_email": null,
"location_notes": null,
"location_url": null,
"tracking_url": null,
"tracking_id": null,
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": false,
"attachments": [
{
"id": 395,
"attachment": {
"url": "https://goget-develop-attachments.s3-ap-southeast-1.amazonaws.com/uploads/attachment/attachment/395/file.jpeg",
"big_thumb": {
"url": "https://goget-develop-attachments.s3-ap-southeast-1.amazonaws.com/uploads/attachment/attachment/395/big_thumb_file.jpeg"
},
"medium_thumb": {
"url": "https://goget-develop-attachments.s3-ap-southeast-1.amazonaws.com/uploads/attachment/attachment/395/medium_thumb_file.jpeg"
},
"thumb": {
"url": "https://goget-develop-attachments.s3-ap-southeast-1.amazonaws.com/uploads/attachment/attachment/395/thumb_file.jpeg"
}
}
}
]
},
{
"id": 8872,
"name": "Deliver",
"location": "GoGet Malaysia, Jalan Burhanuddin Helmi, Taman Tun Dr Ismail, Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia",
"location_lat": 3.1523195,
"location_long": 101.6227335,
"status": "open",
"start_at": "2021-08-18T16:20:15.582+08:00",
"end_at": "2021-08-18T17:20:15.582+08:00",
"ended_at": null,
"order": 1,
"parking": false,
"recipient_name": null,
"recipient_phone_num": null,
"reference": null,
"sender_name": null,
"sender_email": null,
"location_notes": null,
"location_url": null,
"tracking_url": "https://localhost:8080/track/001qlzgqun",
"tracking_id": "001qlzgqun",
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": false,
"attachments": []
}
],
"gogetters": [
{
"email": "60@mail.com",
"avatar": null,
"name": "Reshvin Singh Sandhu",
"phone_num": "60146413278",
"last_location_lat": 3.149344361452593,
"last_location_long": 101.6245161640974
}
]
}
GET
Summary: Returns jobs which belongs to current users and have given reference id.
Description: It returns list of all the jobs of current user which have given reference id.The jobs returned are sorted by the creation date, with most recent appearing first.
HTTP Request
GET
/api/public/v1/jobs/{reference_id}/reference
Parameters
path
id |
<reference_id > |
Responses
data |
An array of objects with key value pairs containing all the information related to job, all the tasks of the job and all the goggetters that claimed those job. |
Check availability of Premium Delivery service
curl "https://staging-api.goget.my/api/public/v1/jobs/location_check" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Body
{
"lat": 3.1704279,
"long": 101.666192
}
Example Response
{
"lat": 3.1704279,
"long": 101.666192,
"success": true
}
POST
Summary: Check if location is covered by GoGet Premium Delivery service.
Description: By providing an latitude/longitude we can determine if that location is covered by GoGet Premium Delivery service.
HTTP Request
POST
/api/public/v1/jobs/location_check
Parameters
Parameter | Type | Description |
---|---|---|
lat |
number |
Latitude of the location. |
long |
number |
Longitude of the location. |
Responses
success |
True if the request has been a success. | |
lat |
Latitude of the location | |
long |
Longitude of the location |
Check job guarantee
curl "https://staging-api.goget.my/api/public/v1/jobs/time_check" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Body
{
"request_at": "2017-05-02 17:00"
}
Example Response
{
"request_at": "2017-05-02 12:00",
"success": false,
"fallback": true,
"pickup_start_at": "2017-05-02 12:30",
"pickup_end_at": "2017-05-02 13:30",
"dropoff_start_at": "2017-05-02 13:00",
"dropoff_end_at": "2017-05-02 14:30",
"failure_reasons": ["2017-05-02 is a public holiday"]
}
POST
Summary: Check if GoGet Premium Delivery service is available at certain time.
Description: By providing a request_at
time or a start_at
time, we can inform you if you can create a GoGet Premium Delivery service at that time as well as time ranges for pickup and drop-off.
HTTP Request
POST
/api/public/v1/jobs/time_check
Parameters
body
Parameter | Type | Description |
---|---|---|
request_at |
timestamp |
Time at which poster will post the request. |
start_at |
timestamp |
Time at which job will start. |
Responses
success |
True if the request has been a success. | |
pickup_start_at |
Time at which pickup will start. | |
pickup_end_at |
Time at which pickup will end. | |
dropoff_start_at |
Time at which drop-off will start. | |
dropoff_end_at |
Time at which drop-off will end. | |
failure_reasons |
List of the reasons why the GoGet Premium Delivery service cannot be provided |
Cancel a job
curl "https://staging-api.goget.my/api/public/v2/jobs/22850" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"id": 22850,
"notes": "Job test - 2",
"ride_id": 2,
"status": "expired",
"posted_at": "2022-10-21T14:08:42.713+08:00",
"started_at": null,
"distance_covered": 20,
"cancelled_at": null,
"expire_at": "2022-10-22T14:59:37.692+08:00",
"start_at": "2022-10-22T14:08:37.692+08:00",
"completed_at": null,
"platform": "api",
"reference": "AB12311888136",
"non_halal": false,
"simple_status": "expired",
"credits_used": "-0.0",
"tracking_url": null,
"tracking_id": null,
"guarantee": true,
"tasks": [
{
"id": 53629,
"name": "Pick up",
"location": "Sunway",
"location_lat": 3.112879,
"location_long": 101.579285,
"status": "open",
"start_at": "2022-10-22T14:08:37.692+08:00",
"end_at": "2022-10-22T14:53:37.692+08:00",
"ended_at": null,
"order": 0,
"parking": true,
"recipient_name": null,
"recipient_phone_num": null,
"reference": "XYQ-12345",
"sender_name": null,
"sender_email": null,
"location_notes": "unit A3-B, ABC Sdn Bhd, Marketing Department",
"location_url": "https://goo.gl/maps/F7HCSCguvCZyQyQa7",
"tracking_url": null,
"tracking_id": null,
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": true,
"attachments": []
},
{
"id": 53630,
"name": "Deliver",
"location": "Sunway Velocity Malaysia",
"location_lat": 3.1109633,
"location_long": 101.5869441,
"status": "open",
"start_at": "2022-10-22T14:18:37.692+08:00",
"end_at": "2022-10-22T14:59:37.692+08:00",
"ended_at": null,
"order": 1,
"parking": true,
"recipient_name": "Jasmine",
"recipient_phone_num": "0125267618",
"reference": "ID182887322",
"sender_name": "John",
"sender_email": "Jasmine@mail.com",
"location_notes": "unit A3-B, ABC Sdn Bhd, Marketing Department",
"location_url": "https://g.page/SunwayVelocityMall?share",
"tracking_url": "https://develop-app.goget.my/track/2dkd2uccx1",
"tracking_id": "2dkd2uccx1",
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": true,
"edo": {
"receiver_name": null,
"receiver_id": null,
"receiver_relation": null
},
"attachments": []
},
{
"id": 53631,
"name": "Deliver",
"location": "DROP off 2",
"location_lat": 3.1809633,
"location_long": 101.6869441,
"status": "open",
"start_at": "2022-10-22T14:54:37.692+08:00",
"end_at": "2022-10-22T15:21:37.692+08:00",
"ended_at": null,
"order": 2,
"parking": true,
"recipient_name": "Alice",
"recipient_phone_num": "0125267618",
"reference": "ID182887322",
"sender_name": "John",
"sender_email": "Jasmine@mail.com",
"location_notes": "unit A3-B, ABC Sdn Bhd, Marketing Department",
"location_url": "https://g.page/SunwayVelocityMall?share",
"tracking_url": "https://develop-app.goget.my/track/6x7jddzduy",
"tracking_id": "6x7jddzduy",
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": true,
"edo": {
"receiver_name": null,
"receiver_id": null,
"receiver_relation": null
},
"attachments": []
}
],
"gogetters": []
}
DELETE
Summary: Cancels the job of user.
Description: It cancels a job of user based on the valid ID.
HTTP Request
DELETE
/api/public/v2/jobs/{job_id}
Parameters
path
id |
<job_id > |
Response
It returns currently cancelled job object.
id |
Job ID. |
status |
The current status of the job. |
tracking_id |
The job tracking ID. |
tracking_url |
The url using which user can track the job. |
credits_used |
Amount of credits used for the job. |
platform |
The platform using which the request has been sent. |
posted_at |
The time at which job is posted. |
started_at |
The time at which job is started by Gogetter. |
non_halal |
The boolean to see if the job is Halal or not. |
expire_at |
The time at which job is expired. |
reference |
The reference ID for the job. |
tasks |
An array of all tasks of the job. Each task object contains all the information related to task. |
gogetters |
An array of all the gogetter objects which claimed the job. |
Create a job
curl "https://staging-api.goget.my/api/public/v2/jobs" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Body
{
"pickup": {
"name": "A API Dispatch job with label flowers Job test - API GUARANTEE EGG FLOWER ",
"location": "Kuala Lumpur City Centre, Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia",
"location_lat": 3.1225385,
"location_long": 101.5885444,
"parking": false,
"start_at": "2023-10-02T10:00:00-05:00",
"reference": "XYQ",
"location_notes": "unit A3-B, ABC Sdn Bhd, Marketing Department",
"person_in_charge_name": "Joe",
"person_in_charge_phone_num": "012345678"
},
"dropoff": [
{
"location": "Berjaya Times Square, Jalan Imbi, Imbi, Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia",
"location_lat": 3.165701700000001,
"location_long": 101.6531554,
"parking": false,
"recipient_name": "Bobb",
"recipient_phone_num": "0121231234",
"reference": "XYQ",
"sender_name": "John",
"sender_email": "john@mail.com",
"location_notes": "unit A3-B, ABC Sdn Bhd, Marketing Department"
}
],
"ride_id": 2,
"notes": "Job test - 2",
"bulky": false,
"premium": true,
"reference": "AB12311136",
"edo": false,
"merchant_token": "A12b1232f123ABV12Hasc",
"on_demand_fallback": false,
"weekday_fallback": false,
"flexi": false,
"route": false,
"exclusive": false,
"non_halal": false,
"sms": false,
"blast_pool": "anyone"
}
Example Response
{
"success": true,
"info": "Job Created Successfully",
"data": {
"success": true,
"credits_remaining": 19984,
"job": {
"id": 24397,
"notes": "Job test - 2",
"ride_id": 2,
"status": "open",
"posted_at": "2022-12-29T22:23:18.872+08:00",
"started_at": null,
"distance_covered": 15,
"cancelled_at": null,
"expire_at": "2023-10-02T23:42:00.000+08:00",
"start_at": "2023-10-02T23:00:00.000+08:00",
"completed_at": null,
"platform": "api",
"reference": "AB12311136",
"non_halal": false,
"premium": true,
"simple_status": "searching",
"credits_used": "18.0",
"tracking_url": "https://develop-api.goget.my/tk/k9x4uh4csh",
"tracking_id": "k9x4uh4csh",
"guarantee": true,
"tasks": [
{
"id": 56872,
"name": "Pick up",
"location": "Kuala Lumpur City Centre, Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia",
"location_lat": 3.1225385,
"location_long": 101.5885444,
"status": "open",
"start_at": "2023-10-02T23:00:00.000+08:00",
"end_at": null,
"ended_at": null,
"order": 0,
"parking": false,
"recipient_name": null,
"recipient_phone_num": null,
"reference": "XYQ",
"sender_name": null,
"sender_email": null,
"location_notes": "unit A3-B, ABC Sdn Bhd, Marketing Department",
"location_url": null,
"tracking_url": null,
"tracking_id": null,
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": true,
"attachments": []
},
{
"id": 56873,
"name": "Deliver",
"location": "Berjaya Times Square, Jalan Imbi, Imbi, Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia",
"location_lat": 3.1657017,
"location_long": 101.6531554,
"status": "open",
"start_at": "2023-10-02T23:27:00.000+08:00",
"end_at": "2023-10-02T23:42:00.000+08:00",
"ended_at": null,
"order": 1,
"parking": false,
"recipient_name": "Bobb",
"recipient_phone_num": "0121231234",
"reference": "XYQ",
"sender_name": "John",
"sender_email": "john@mail.com",
"location_notes": "unit A3-B, ABC Sdn Bhd, Marketing Department",
"location_url": null,
"tracking_url": "https://develop-app.goget.my/track/k9x4uh4csh",
"tracking_id": "k9x4uh4csh",
"person_in_charge_name": null,
"person_in_charge_phone_num": null,
"has_edo": false,
"proof_of_item_required": true,
"edo": {
"receiver_name": null,
"receiver_id": null,
"receiver_relation": null
},
"attachments": []
}
],
"gogetters": []
},
"messages": ["Your credit has been deducted by RM18.0"]
}
}
POST
Summary: Creates a new job object.
Description: Creates a new job object with valid attributes.
HTTP Request
POST
/api/public/v2/jobs
Parameters
body
Parameter | Type | Description |
---|---|---|
ride_id |
integer |
ID of the ride |
notes |
text |
Notes provided by the user |
bulky |
boolean |
True if bulky is enabled |
premium |
boolean |
True if GoGet 100% available |
fee |
integer |
Job fee |
reference |
string |
ID of the reference |
exclusive |
boolean | true/false |
non_halal |
boolean |
True if the job is not Halal. |
sms |
boolean |
Boolean which tells if sms are enabled or not. |
blast_pool |
string |
Blast pool of the job. |
gogetter_training_module_id |
integer |
ID of the training module of the gogetter. |
poster_referral_code |
string |
Referral code which poster used while posting the job. |
on_demand_fallback |
boolean |
True if on demand fallback enabled. |
weekday_fallback |
boolean |
True if weekly fallback enabled. |
flexi |
boolean |
True if the job is flexi. |
route |
boolean |
True if route is provided. |
pick_up |
object |
The pickup location. It is a key-value object which contains all the information related to the pickup location of job. |
drop_off |
array |
An array of key-value objects which contains all the information related to the drop-off location. |
Responses
success |
True if the request has been a success. | |
info |
A message which provides information related to the request. | |
data |
An object with key value pairs containing remaining credits of the user, all the information related to newly created job and an array of messages. |
Retrieve Gogetters location
curl "https://staging-api.goget.my/api/public/v1/jobs/5255/gogetter_locations" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"success": true,
"info": "Successfully retrieved GoGetter's location",
"data": {
"lat": 3.14661995508394,
"long": 101.575654230653
}
}
GET
Summary: Get GoGetter's location when the job status is in progress
Description: A user can get the location of a gogetter when the user's job is in progress.
HTTP Request
GET
/jobs/5255/gogetter_locations
Parameters
path
id |
<job_id > |
Responses
success |
True if the request has been a success. | |
info |
A message which provides information related to the request. | |
data |
An object with key value pairs containing latitude and longitude of the location of gogetter. |
Estimate fee of a job
curl "https://staging-api.goget.my/api/public/v2/jobs/check_fee" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Body
{
"pickup": {
"name": "Roses",
"location": "Publika Shopping Gallery, 1 Jalan Dutamas 1, Solaris Dutamas, KL., Solaris Dutamas, 50480 Kuala Lumpur, Federal Territory of Kuala Lumpur, Malaysia",
"location_lat": 3.1704279,
"location_long": 101.666192,
"parking": true,
"start_at": "2023-10-02T10:00:00-05:00"
},
"dropoff": [
{
"location": "IKEA Damansara@2, Jalan PJU 7/2, Mutiara Damansara, 47800 Petaling Jaya, Selangor, Malaysia",
"location_lat": 3.1570648,
"location_long": 101.6130658
}
],
"ride_id": 2,
"bulky": false,
"guarantee": true,
"num_of_items": "1-2",
"flexi": false,
"route": false
}
Example Response
{
"success": true,
"info": "Fee Check",
"data": {
"success": true,
"fee": 15,
"distance": 10,
"distance_m": 9787
}
}
POST
Summary: Estimate job fee.
Description: Estimate a job's fee on the basis of start time, pickup location and drop-off locations.
HTTP Request
POST
/api/public/v2/jobs/check_fee
Parameters
body
ride_id |
integer |
The ID of the ride |
bulky |
boolean |
True if bulky is enabled |
num_of_items |
string |
Estimated number of items |
guarantee |
boolean |
true/false |
flexi |
boolean |
True if the job is flexi |
route |
boolean |
True if route provided |
pick_up |
object |
The location from where gogetter will start/pickup the job. It is an object of key-value pairs containing latitude, longitude, name and address. |
drop_off |
array |
The list of all drop-off locations. Each object of key-value pairs containing latitude, longitude and address. |
Responses
fee |
Estimated fee for the job. | |
distance |
Distance covered. | |
distance_m |
Distance covered in meters. |
FAQ's
Where can I find the list of “job status” and “task status”? And how will these status be updated?
You can find list of job status here
Users
Retrieve remaining credits
-H "Authorization: Token"
curl "https://staging-api.goget.my/api/public/v1/users/credits" \
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"success": true,
"info": "You have RM119387.0 credits remaining",
"data": {
"credits_remaining": "119387.0"
}
}
GET
Summary: Returns the remaining credits of user.
Description: Returns how many credits user have left.
HTTP Request
GET
/api/public/v1/users/credits
Parameters
No Parameters
Responses
success |
True if the request has been a success. | |
info |
A message which provides information related to the request. | |
data |
An object with key value pairs containing remaining credits of the user. |
FAQ's
What are the types of deliveries for API Integrators?
Premium Delivery
On-demand next-hour delivery with insurance coverage up to RM400. Deliveries are guaranteed daily from 8 am - 9 pm including public holidays. Clickherefor terms and conditions for Premium Delivery.
Standard Delivery
24/7 standard delivery service blasted to nearby GoGetters.
Same-day Delivery
Same-day deliveries are more flexible deliveries. If your items are not in a rush, and as long as they are delivered within the same day of pick up, then go for Same-day to save costs. Select a time between 8am-1pm , Pick-up time is between selected time until 3pm, delivery will be completed by 5pm
Bulk deliveries:
Enjoy flat rate from RM7 when you have a large volume of deliveries.
What is GoGet's SLA for on-demand deliveries?
SLA for on-demand deliveries
How do I pay for my deliveries?
Payment for deliveries is cashless and will be deducted per job basis via GoGet credits in your account.
What do I need to set up my account for API Integration?
You have to a be GoGet Business account. You will then purchase prepaid credit packages via GoGet's app or website to top up credits.
Do we need to register a business account first before posting a job?
Yes. In order to be able to integrate with GoGet via API, you will need to register a business account. You can just follow the steps that I have provided Myra on how to integrate with us via API.
What is GoGet's coverage for deliveries for API Integration?
The coverage area for deliveries is as follows:
Klang Valley & Outskirts
Penang Coverage
Johor Bahru Coverage
For premium delivery, our services spans around the area of Klang Valley, Penang and Johor Bahru for all Lazada Merchants.
We analyze the coverage based on the coordinates of the location. The list of postcode that is covered are attached in this article, however, if the postcode is partially not within our coverage zone as shown in the map above, the postcode will not be included.
GoGet Coverage Area [2020] Public - KV Coverage.pdf
GoGet Coverage Area [2020] Public - JB Coverage.pdf
GoGet Coverage Area [2020] Public - Penang Coverage.pdf
Teams
List all teams
curl "https://staging-api.goget.my/api/public/v1/teams" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"success": true,
"info": "Teams Loaded",
"data": [
{
"id": "1",
"title": "MY TEAM",
"gogetters": [
{
"poster_referral_code": "abcd1234",
"name": "Gordon Getter",
"avatar": "http://my.picture.com/mypic",
"jobs_completed": 0,
"blocked": false
}
]
}
]
}
GET
Summary: Returns a list of teams of current user.
Description: Returns a list of all teams of the user. Each team object in the list also contains the list of all goggetters of the team.
HTTP Request
GET
/api/public/v1/teams
Parameters
No Parameters
Responses
success |
True if the request has been a success. | |
info |
A message which provides information related to the request. | |
data |
An array of all teams of the user. |
Favourite Gogetters
List all favourite gogetters
curl "https://staging-api.goget.my/api/public/v1/favourite_gogetters" \
-H "Authorization: Token"
-H "Accept: application/json"
-H "Content-Type: application/json"
Example Response
{
"success": true,
"info": "Favourite gogetters loaded",
"data": [
{
"poster_referral_code": "abcd1234",
"name": "Gordon Getter",
"avatar": "http://my.picture.com/mypic",
"jobs_completed": 0,
"blocked": false
}
]
}
GET
Summary: Returns a list of favourite gogetters of current user.
Description: Returns a list of all favourite gogetters current user have.
HTTP Request
GET
/api/public/v1/favourite_gogetters
Parameters
No Parameters
Responses
success |
True if the request has been a success. | |
info |
A message which provides information related to the request. | |
data |
An array of all favourite gogetter objects of the user with key value pairs containing name, avatar, number of jobs completed. |
Feature and Job Interactions
SMS Notifications
- If Recipient Name and Recipient Phone Number is provided, a SMS notification will be sent to recipient regarding incoming delivery from GoGet.
- Recipient Phone Number must be submitted in the format without country code, eg. “0122567778”.
- If the GoGetter pick up the item 30 minutes after the pick up window, we will not send the SMS to the receiver.
- Content of the sms:Hi #{task.recipient_name}! Your delivery is on its way. Powered by GoGet. Click here for fast and reliable dispatch.
Electronic Delivery Order
This will allow merchant to request the GoGetter to take down the details of the recipient directly into the app upon completing the delivery. Merchant can access the EDO details via GoGet dashboard.
Tracking ID and tracking URL
You are able to share the GPS live location with your receiver. They can either track it with a link shared by you, or key in the tracking_id at GoGet.my home page to track their order.
GoGet Business Dashboard
Merchant has the ability to access GoGet Business Dashboard at www.goget.my. Merchant can monitor job status, track GoGetter live location if the delivery is in progress, search job details, download job report, top up credit, request tax invoice, update company details at the business dashboard.
Edit Job
Merchant are not allowed to edit job via API. Merchant can log in to GoGet Business Dashboard to edit the job.
Cancel job
Merchant are allowed to cancel job via API at anytime of the job.
Cancellation of GoGetter
- GoGetter are allowed to cancel the job before they picked up the item. If a GoGetter cancel job before they picked up the item, GoGet system will automatically look for a replacement to continue the job.
- If the GoGetter cancel the job after the pick up window, GoGet system will look up a replacement for this job with the updated timing as below:
- Replacement GoGetter will pick up the item between now to 20 minutes from the time of cancellation of previous GoGetter
- Schedule and on demand delivery time will be adjusted accordingly with real time traffic.
- Flexible delivery time will not be adjusted.
- You may log in to GoGet dashboard to check the updated timing.
- Example: Pick up time is 10am to 10.20am, delivery time is between 10.50am to 11.10am. GoGetter cancelled the job at 11.00am, the new pick up time is 11.00am to 11.20am, with new delivery time as 11.50am to 12.10pm.
- GoGetter must submit their cancellation reason in GoGet system upon cancelling a job. Different cancellation reason will affect a job status.
- Before pick up window: GoGetter will contact the merchant. If the shop was closed or merchant do not need the job anymore, the job will be cancelled automatically in the system. Otherwise the job remains open.
- After pick up window: If merchant is not responsive, changed job details, item not ready, shop was closed or merchant do not need the job anymore, the job will be cancelled automatically in the system. Otherwise the job remains open.
Issues reporting
All issues must be reported within 24 hours of the incident. Please log in to GoGet Business Dashboard to report the job.
Receipt/Tax Invoice
Merchant will receive a receipt/tax invoice via email when a job is completed. Merchant has the option to retrieve this from GoGet Business Dashboard.
Messaging
You can send a message to your GoGetter at your GoGet Business Dashboard.
Public Holiday checker
You can check whether is the selected date for delivery a public holiday.
GoGet Delivery fee checker
You can get an estimation of the GoGet fee of your dispatch job.
Weekday fallback
You are allowed to set fall back weekday as TRUE
, if an on-demand job comes in during weekend or over your operation hour. The job will be auto-schedule as a premium delivery job with pick up time at the coming 10am on the next available weekday.
Location coverage checker:
By providing an address latitude and longitude, you can check whether is that location covered by our premium delivery service.
Coverage time checker
By providing a request_at time or a start_at time, we can inform you if you can create a Premium Delivery job at that time as well as time ranges for pickup and dropoff.
Blast_pool
You can select Anyone, Favourites or Teams GoGetter for this job.
- When you select “Favourites” or “Teams”, you can insert the GoGetter
Poster_referral_code
if you want to select a specific GoGetter for the job. You can get the code fromGET
/favourite_gogetters
. To learn more about favourite GoGetters, check here - When you select “Teams” GoGetter, you are required to insert a value for
gogetter_training_module_id
, please refer toGET
/teams
. To learn more about Teams GoGetter, check here.
Premium Delivery Terms & Conditions
What is Premium Delivery?
On-demand delivery for your most important items with premium values to give you the best experience on timeliness, reliability, and peace of mind.
- Have the ability to arrange up to 4 locations in one job.
- In the event no GoGetter is found by the delivery time of the job, you will receive a RM5 promo code.
- In the event the GoGetter* is late for delivery by more than 30 mins from the final delivery end time, you will receive a RM5 promo code. If the job is posted and accepted by the favourite GoGetter, this is not applicable.
GoGet has the right to revert the promo code issues if there is
- an act of God
- flooding/ thunderstorm or bad weather conditions
- any uncontrollable factors e.g. road closure by government or government limiting movement
- job posting issues e.g. wrong address provided or the receiver is not available to receive
- GoGetter got into an accident during the journey
When do I get a RM5 promo code if no one accepts my job?
You will receive your RM5 promo code if no one accepts your job by the final delivery end time.
Example:
- In the example above, if there is no GoGetter by 11.27AM (the delivery time of the job), you will receive a RM5 promo code.
- If you cancel the job before 11.27AM, no promo code will be given.
- You can receive a maximum of 2 promo codes in 30 days.
- Your promo code will expire in 30 days from the date of issue.
- You can redeem your promo code by clicking on “Rewards” upon posting up a new job.
- This promo code is limited to all GoGet service except GoGetRecruit.
When do I get a RM5 promo code when the delivery is late?
You will receive your RM5 promo code for the late delivery when the delivery is late by 30 mins from the final delivery end time.
Example:
- In the example above, if GoGetter delivered the item to the last location after 4.51pm (more than 30 mins from the final delivery end time), you will receive a RM5 promo code.
- Late delivery is determined by the last delivery location.
- If there is a more than 15 minutes delay/waiting time at the any locations, this will be voided. (i.e. If GoGetter has to wait more than 15 minutes due to a delay at the pick up or drop off, this can be caused by item is not ready, shop is not open yet, person is not reachable etc)
- You can receive a maximum of 2 promo codes in 30 days.
- Your promo code will expire in 30 days from the date of issue.
- You can redeem your promo code by clicking on “Rewards” upon posting up a new job.
- This promo code is limited to all GoGet service except GoGetRecruit. 0 ## Access
Premium Delivery is available for Business Account holders and any GoGet users with GoGet credits:
- Any delivery before next day 10am must be created by 10pm the night before.
- Any delivery before next day 10am that is created between 7 to 10pm the night before are applicable to surcharge.
- First drop off location from the pick up location is expected to be delivered within the time calculated in the app according to real time traffic and travel required for that job. Please refer below to the Time of Deliver section for conditions that may cause delays.
Requirement
The premium delivery is only available for jobs meeting these requirements:-
- Dispatch (pick-up and drop-off only) - No other tasks such as shopping during a job is allowed
- Pick-up and drop-off locations are within the same city e.g. Pick up in Klang Valley must have drop off locations in Klang Valley
- Can be carried out by cars or motorcycles from 8am to 9pm, including public holidays.
- Every pick-up and drop-off location is clearly provided and input as ONE task each. Clarity of address entails full address details with unit number, street full name, neighborhood, and postcode.
- Drop-off location is limited to 4 different locations in 1 job posting.
- Must specify additional requirements/information when posting a job by completing the relevant fields in the App. Related fields are:-
- Parking requirement
- Vehicle required
- Number of items
- Size of item
- Recipient's phone number
- Item(s) must be able to fit into GoGetter's vehicle. GoGetters are require to keep a clear view to the rear by not packing above the line of the window of their car.
- Vehicle capacity:
- Car: Max 150cm x 50cm x 50cm, total 100kg weight
- Bike: Max 33cm x 32cm x 33cm, total 10kg weight
- Bike with a delivery bag has an average capacity of (H)33cm x (W)32cm x (L)33cm. Any item that is larger than the above dimension are not allowed.
- If the whole load of delivery is above 15kg, merchant is required to provide assistance to loading the items for a single GoGetter (E.g. provide trolley, or loading area)
Premium delivery does not cover the following type of jobs:-
- Jobs other than dispatch - requires more than just pick-up and drop-off (e.g. purchasing item, collecting cash on behalf, banking tasks, queue at counter, wait in line).
- Job that requires additional equipment/tools (e.g. trolley, cooler bag, insulated bag)
- Jobs that require more than 15 mins of loading and unloading of items
- Jobs that require setting up of items or displaying items when delivered
- Job that requires GoGetter with specific attire (e.g. must wear black formal suits, covered shoes)
- Job that requires specific vehicle (e.g. must be Myvi, SUV)
- Posting job that mismatch the details (e.g. item is defined as parcels (1-2 items) but wrote in the notes as "10 tables", delivery to Menara ABC required GoGetter to send the item to level 11 but delivery location was not mark as "parking required")
Availability of Services
The availability of Premium Delivery is subjected to the factors below:
- Acts of God
- Delay caused by third party and or merchant at pick up or at drop off
- Closure of road
- Delays caused by thunderstorm and weather conditions
GoGet reserves the right to dynamically limit and control the availability of the the Premium Delivery to provide the best experience possible to all users.
Time of Delivery
GoGetter will make every effort to deliver within the time stated, however, the ability to meet stated delivery time is subject to conditions outside of GoGetters and GoGet's control (e.g. weather and traffic conditions). Traffic congestion and natural phenomenon such as heavy downpour, flooding and thunderstorm might cause delay in delivery.
In the event of being unable to secure a GoGetter when pick up time is approaching, the delivery window will be extended up to an extra 30 minutes or more from the initial delivery time in order to provide Premium Delivery.
Responsibility & Additional Charges
GoGet reserves the right to impose additional charges (rates are based on RM15 per hour and based on a pro-rate basis) OR deny the Premium Delivery service under the following circumstances:-
- Actual job description is different from the job posting either due to wrong input of details (e.g. delivery address, size/quantity of item) or unforeseen changes subsequent to job being assigned to a GoGetter. It is your responsibility to post a job with accurate information.
- If you or your recipient is not contactable and/or fail to accept the delivery at the time they are ready for delivery (within 15 minutes upon arrival of GoGetter), or we are unable to deliver at the nominated time due to your failure to provide appropriate instructions, or authorizations.
- Delays during pick-up and/or drop-off above 15 minutes from the stated job pick-up and/or drop-off time not caused by GoGetter. (i.e. If GoGetter has to wait more than 15 minutes due to a delay at the pick up or drop off, this can be caused by item is not ready, shop is not open yet, person is not reachable etc)
- Last-minute cancellation AFTER job has been claimed by a GoGetter
- A cancellation fee of 15% of the original GoGet Fee will be charged if a job is cancelled less than 3 hours prior to job start time.
- A cancellation fee of 30% will be charged for last minute job cancellation (less than 1 hour prior to job start time).
- You must ensure that at the time of pick-up, adequate arrangements, including access where necessary, are in place for the safe delivery of the goods. We cannot be held liable for any damage, cost or expense incurred to the goods or premises where this arises as a result of a failure to provide adequate access or arrangements for delivery.
- GoGet reserves the right to deny the Premium Delivery to users who received rating of 2 stars or below for more than 3 times.
- In the event of a re-delivery is required when it is not caused by GoGetter, please refer here for additional info related to extra charges. GoGetter will make every effort to deliver within re-delivery time requested, however, the ability to meet the request is subject to their availability.
- In the event where GoGetter is required to do any task that is not listed in the job, GoGetter has the right to reject the additional task. For instance, loading and unloading time takes more than 15 minutes, and returning item(s) to pick up point that is not listed in the job. If GoGetter agrees to perform the task, additional charges will be imposed based on extra charges listed here.
- Any issues or dispute with the job must be reported within 24 hours upon delivery completion time. Please refer to here more information.
- Report must be submitted via the app or website. Please refer to here for more information. Failure to do so will affect the ability of our support team to assist you.
Insurance Policy
We protect Goods in Transit for all dispatch jobs posted on GoGet Platform. The policy covers up to RM100(non-GoGet Business Account user) or RM400(GoGet Business Account user) maximum per delivery and upon filing of insurance. For more details on insurance and claim info, please refer to here.
You may click on "Report" in the GoGet platform and file your case there. You are required to report the incident within 24 hours. A GoGet support team will be in contact to further discuss the necessary details and information for the case. Please refer to here more information.
Eternal Meteor Sdn Bhd (GoGet) does not hold any responsibility for any damages on the items for delivery that is scheduled to be carried out between 5pm to 8am due to the absence of operational support from Poster, no location to return the item, provision of invalid addresses and other unforeseen circumstances.
Promo Code Policy
All promo codes issued for premium delivery jobs
- are non-transferable to credit or cash forms.
- are not stackable with other promo codes.
- are only applicable for premium delivery jobs.
GoGet reserves the right to alter these Terms and Conditions at any time in its absolute discretion.
Pricing
Our rates depend on different types of job. Dispatch jobs are calculated by flat fee, distance, effort, and timing of the pick-up and delivery (peak or non-peak). Helper jobs are calculated based on the hourly rate.
Dispatch
Same-Day: These have 15% discount (from standard) because the timing is flexible.
Standard: These are our base pricing based on distance.
Premium: Premium dispatch jobs have additional benefits, therefore they have a higher cost.
Bike
Distance | Same-day (15% discount on standard) | Standard | Premium |
---|---|---|---|
0 - 5km | 5 | 6 | 7 |
5.01 - 6km | 6 | 7 | 8 |
6.01 - 7km | 7 | 8 | 9 |
7.01 - 8km | 8 | 9 | 10 |
8.01 - 9km | 9 | 10 | 11 |
9.01 - 10km | 9 | 10 | 11 |
10.01 - 25km | 15% discount on Standard | RM1 / per additional km | RM1 / per additional km |
25.01 - 35km | 15% discount on Standard | RM1.02 / per additional km | RM1.05 / per additional km |
35.01km + | 15% discount on Standard | RM1.05 / per additional km | RM1.1 / per additional km |
Car
Distance | Same-day (15% discount on standard) | Standard | Premium |
---|---|---|---|
0 - 5km | 7 | 8 | 9 |
5.01 - 6km | 8 | 9 | 10 |
6.01 - 7km | 9 | 10 | 11 |
7.01 - 8km | 9 | 10 | 11 |
8.01 - 9km | 9 | 11 | 12 |
9.01 - 10km | 10 | 12 | 13 |
10.01 - 25km | 15% discount on Standard | RM1 / per additional km | RM1.1 / per additional km |
25.01 - 35km | 15% discount on Standard | RM1.2 / per additional km | RM1.2 / per additional km |
35.01km + | 15% discount on Standard | RM1.25 / per additional km | RM1.3 / per additional km |
Additional Charges
Weather | 5% surcharge if it is raining. |
Central locations | KLCC, Mid Valley, Bukit Bintang incur an additional RM3. |
If more than 25km | additional RM2 for the job (Car & SUV only). |
Peak Hour Surge | Peak hour: 11am to 12:59pm, 4pm to 8:59 pm. |
No surge 5th December onwards* | |
Friday and Weekend | No surge 5th December onwards*. |
Parking | * Each location RM2 extra for car (Express delivery). |
* Each location RM1 extra for bike, car and SUV (Standard and same-day delivery). | |
Additional Stops | For job that has more than 1 delivery point, RM1 is charged per additional delivery. |
Additional charges based on item size (Dispatch)
Item category | Small | Medium | Large |
---|---|---|---|
Parcel / Document | 0 | 2 | 4 |
Food / Drinks | 2 | 4 | 6 |
Cakes | 2 | 4 | 6 |
flowers | 0 | 2 | 4 |
Others | 0 | 2 | 6 |
Additional charges based on item size (Food / Shopping)
Item category | Small | Medium | Large |
---|---|---|---|
Others | 2 | 4 | 6 |
**Additional charges based on weight (Dispatch, Food / Shopping)
Weight | RM(top up) |
---|---|
1-10kg | RM0 |
10-25kg | RM5 |
25-50kg | RM8 |
50-100kg | RM15 |
Additional charges based on cost of goods price rangs (Food / Shopping)
Cost of Goods (RM) | RM(top up) |
---|---|
1-20 | RM0 |
21-50 | RM1 |
51-100 | RM3 |
101-200 | RM8 |
201-500 | RM12 |
>500 | RM18 |
Refund Policy
Credits purchased are strictly non-refundable.
Credit Expiry
All of your GoGet credits will remain valid as long as you regularly top up any amount or post a job that gets done. The validity period of your credits automatically gets extended for 12 months, whenever you do either of the following before it expires:
- Top up any amount of GoGet Credit
- Post a job and ensure it’s claimed and completed
In other words, GoGet Credits will be valid for 12 months from the date of your last credit purchase of any amount, or the posting date of the last completed job, whichever is later.
Scenario 1
You purchased RM50 credit on 31st March 2019, the expiry date of your credits is 1st April 2020. You will have a credit balance of RM50 in your GoGet account. However, you did not use the credits at all within the 12 months, but you would like to keep your credits.
Here is what you can do:
You may purchase another RM20 credit by 30th March 2020, your credits expiry date of all your credits will be extended to 31st March 2021. As the first RM50 credits has been extended upon top-up, hence you will have a balance of the current RM70 in your GoGet credits.
Scenario 2
You purchased RM50 credit on 31st March 2019, the expiry date of your credits is 1st April 2020. You will have a credit balance of RM50 in your GoGet account. However, you have not posted any job on the platform within the 12 months, but you would like to keep your credits.
Here is what you can do:
You can create a job via the app and ensure it’s completed before 30th March 2020. The expiry date of your remaining credits will be extended to 31st March 2021 upon your job completion.
Tutorial
Job Flow
Job status
open |
Our system has accepted your request and still looking for a gogetter. |
claimed |
The GoGetter has not been approved yet. The job enters in this state only when auto_approve is false . |
approved |
Waiting for the job to start. |
in_progress |
The Job has been started by the GoGetter. |
completed |
The GoGetter marks the job as complete. |
closed |
The job is closed after all the parties have reviewed. |
cancelled |
The GoGetter is unable to complete the job. |
expired |
The time frame in which job was available has been passed. Now the job is no longer available. |
GoGet API with POSTMAN
To help you kick-start, you can check out this deck. It is a step-by-step walk-through of how to make API calls using POSTMAN.
Managing and Viewing Orders
GoGet makes it very simple and easy to manage and view orders. This deck explains in great detail about how one can manage and view orders on GoGet.
Upgrade to Business Account
Step 1
Log into your GoGet account and click on the Gold ‘GoGet Business’ button on the bottom left of the page or alternatively the wallet icon on the top right
Step 2
Step 3
Follow the steps and make payment
OR
Just click here and pick your package that you'd like, once you make payment you will automatically get access to GoGet Business features!
Download Job history as CSV
You can download your historical jobs using our "Download As CSV" button in your "Completed" jobs section.
Step 1
Go to "My jobs"
Step 2
Click "Completed" section
Step 3
Click "Download as CSV"
You will get the full list of your completed jobs in CSV format.
Get Tax Invoice for Credit Purchases
Step 1
Go to "Profile", click the pencil to edit, scroll down and and fill in:
- Company Name
- Company Registration Number
- Company Address2
You will see this:
Step 2
Click "Save"
OR
You can also click on the Buy Credits page and you will see this:
Click on "Account detail page" and it will bring you to update your company details.
Once you do so, all your purchases will come with a tax invoice in your inbox.
Errors
The GoGet API uses the following error codes:
Error Code | Meaning |
---|---|
400 -- Bad Request |
Your request is invalid. |
401 -- Unauthorized |
Your API key is wrong. |
403 -- Forbidden |
You do not have access to this record. |
404 -- Not Found |
The specified record could not be found. |
405 -- Method Not Allowed |
You tried to access a record with an invalid method. |
406 -- Not Acceptable |
You requested a format that isn't json. |
500 -- Internal Server Error |
We had a problem with our server. Try again later. |
503 -- Service Unavailable |
We're temporarily offline for maintenance. Please try again later. |