M2M provides shipment monitoring and API integration. The API that can be used to integrate your system with our platform.
The API is built based on REST concept and will return JSON formatted data upon your requests. In order to use our API, you must have an existing active company in our application.

Flowchart


Request & Response


Allowed HTTP Methods
Method Operation Description
GET index, show A GET request is used to retrieve information from server
POST create A POST request is used to send data to the server
PATCH update A PATCH request is used to send update data to the server
DELETE delete A DELETE request is used to delete data
Standard Response Codes
Code Name Description
200 OK Request completed successfully
201 Created Created, Request completed successfully
202 Accepted Accepted, Request completed successfully
401 Unauthorized Authorization has failed
405 Method Not Allowed HTTP request is not Allowed, please see http method for each API endpoint
406 Not Acceptable Unregistered Company as API client
422 Unprocessable Entity If params is not valid or Unprocessable due to semantic error
429 Too Many Requests The user has sent too many requests in a given amount of time.
500 Internal Server Error Potentially Server Error
503 Service Unavailable Service temporarily unavailable due maintenance service
Standard JSON Response

Each request will generate a json response with standart pattern ;


                {
                "code": HTTP Status Code,
                "status": HTTP Status Code Description,
                "message": Any Message,
                "data": Any Data
                }
              

Any message in error explanation ;

Code Message Description
401 Token Status is InActive Registered Company as API Client, but token is not active yet or not yet allowed to use API integration
401 The Token is Not Match The Token is Not Match or unregistered as API Client
422 validator message If the parameter value does not pass the validation, the validator will display an information message which causes it to be invalid
406 Company Unregistered Unregistered Company as M2M Customer. see requirement
503 We're sorry. We are under maintenance When our system do the maintenance

Any message those should returning data ;

Code Message Description
200 Total Row {total_row_of_data} Success response returning data
200 Maximum Row Reachable, Total Row {total_row_of_data} Success response returning data, but limited row. see row limitation

Requirement & To Do List


Almost all data those provided by API are dependent on CAR (Contract Agreement) when (as) Client sign in and join to use our services.
API will providing data already filter by (known as) Company Id/Account Number.

To getting started API integration, please make sure all requirement is completed;

No. Action Taken Action By Description as Data is Completed
1 Providing Customer Company information Client & M2M This data will be database of customer information This data is needed for API Endpoint (Shipment Detail,Shipment Tracking, Price List, Coverage Area, Services)
2 Providing price list that has been agreed M2M This data will be database of price list This data is needed for API Endpoint (Price List, Coverage Area, Services)
3 Providing Client's API Developer information (or an IT person) Client email address and phone number This information is needed for API Authorization, API token who's sent to
4 Providing token key M2M Token for API Authorization This information is needed for API Authorization

Register


After all these requirements are met, our team will send you the token information used for API Authorization.
This token is generated once, if the API Client needs to change this token, the API Client can request it via email to our team or use POST Renew Token Endpoint.
If the API Client changes the token using the endpoint, it needs to be verified using the verification link / renewal token sent to the registered email ( see Client Developer requirement points )
If the email verification is sent and the renewal link is not executed, a new token will not be generated, API client is still using the old token.


Authorization


Authorization API we only use token for Authentication for each endpoint request.
token authentication is a carrier Authorization type that should be included in header requests.

Sample of Authorization ;

Key Value Description
Authorization Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NABC.eyJleHAiOjE1ODM0MDIwNzU1MDEsImlkIjoiY291cmllcl9jYXJha2E123.Y-Fq1vN_31Y1MP8OE9PfJD5cAEAbI0uQgz2qxABC123 Authorization type = Bearer, token
is token given by M2M Logistics for registered company

Sources


API Client can import our Postman Collection File using download button below.



Data Limit


Every data result will be limited at 1000 rows, if data over 1000 occurs, response will send information Maximum Row Reachable, Total Row {total_row_of_data}. see Standard JSON Response

This limitation maybe occurs in GET Shipment List Endpoint.


Rate Limit


The request is limited to 60 request per minute

If this occurs, response will return http status 429 Too Many Requests see Standard Response Codes


Create Shipment


HTTP Method POST
API URL http://m2msys.mtwomlogistics.com:81/api/shipment

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company
{
  "customer_account": "M1122017000111",
  "cost_center": "GA",
  "shipper_name": "Imam",
  "shipper_address": "AA. WAREHOUSE PT. ABC. Jl. ABC Serua Blk. B No.01 Rt 001/01, Kupang",
  "shipper_post_code": "1234",
  "shipper_phone": "021",
  "origin": "Kupang",
  "origin_province": "Nusa Tenggara Timur (NTT)",
  "receiver_name": "Arifin",
  "receiver_company": "PT. DEF",
  "receiver_address": "BB. GUDANG. JL. DEFG RT. 01 NO. 1 Bekasi",
  "receiver_post_code": "",
  "receiver_phone": "05113311111",
  "destination": "Bekasi",
  "destination_province": "Jawa Barat",
  "description": "SPARE PARTS",
  "service": 16,
  "special_instruction": "",
  "packages": [
    {
      "description": "SPARE PARTS 1",
      "pieces": "2",
      "weight": "112.00",
      "unit": "KG",
      "length": "102.00",
      "width": "39.00",
      "height": "17.00",
      "volume": "135.00",
      "volume_weight": "135.00",
      "packing_cost": "0.00",
      "surcharge_percent": "0",
      "surcharge_cost": "0.00"
    },
    {
      "description": "SPARE PARTS 2",
      "pieces": "3",
      "weight": "96.00",
      "unit": "KG",
      "length": "57.00",
      "width": "33.00",
      "height": "14.00",
      "volume": "105.00",
      "volume_weight": "105.00",
      "packing_cost": "0.00",
      "surcharge_percent": "0",
      "surcharge_cost": "0.00"
    }
  ],
  "do_number": [
    {
      "do_number": "DO-06304",
      "do_description": "DN"
    },
    {
      "do_number": "DO-06325",
      "do_description": "DN"
    }
  ]
}

Key Value Validation Description
customer_account Customer Account required|max:250|in:registered customer accounts list list of accounts can be retrieved from the GET Accounts Endpoint
cost_center Cost Center optional|string|max:250 Additional information for customer use
shipper_name Shipper Name required|string|max:250  
shipper_address Shipper Address required|string  
shipper_post_code Shipper Postal Code optional|numeric|max:10  
shipper_phone Shipper Phone optional|numeric|max:50  
origin City ID or City Name required  
origin_province

If origin = city_id then origin_province is optional

if origin = city_name then origin_province is required

optional or required

If origin = city_id then origin_province is optional

if origin = city_name then origin_province is required

receiver_name Receiver Name

required|string|max:250

 
receiver_company Receiver Company optional|string|max:250  
receiver_address Receiver Address required|string  
receiver_post_code Receiver Postal code optional|numeric  
receiver_phone Receiver Phone optional|numeric  
destination City ID or City Name required|string  
destination_province

If destination = city_id then destination_province is optional

if destination = city_name then destination_province is required

optional or required  

If destination = city_id then destination_province is optional

if destination = city_name then destination_province is required

description Shipment Description optional|string|max:250  
service Service ID required|numeric list of accounts can be retrieved from the GET Services Endpoint
special_instruction Special Instruction optional|string|max:250  Additional information for customer use
packages Detail Packages required|array See Packages Validations
do_number DO / DN / Any Number as Reference per Package optional|array See Do Number Validations

 

Packages (array)
Key Value Validation Description
description Description of Goods required|max:250|in:registered customer accounts list Description of Goods
pieces Total Pieces of Coli optional|string|max:250 Total Pieces of Coli
weight Actual Weight of Piece required|string|max:250 Actual Weight of Piece, will be multiplied by the total pieces
length Length of Piece required Length of Piece, will be multiplied by the total pieces
width Width of Piece optional|numeric|max:10 Width of Piece, will be multiplied by the total pieces
height Height of Piece optional|numeric|max:50 Height of Piece, will be multiplied by the total pieces

System Calculation Conditions ;
-> 1 AWB has Many Package
-> 1 Package has Many Piece
-> weight, length, width, height will be multiplied by (n)pieces of single package as sub_total
-> 1 Package = pieces * weight.
-> 1 Package = pieces * dimension.
-> total_pieces = sum of pieces.
-> total_weight = sum of sub_total weight.
-> total_volume = sum of sub_total volume(dimension)
-> volume_weight = sum of sub_total chargeable weight

** See sample of response

 

Do Number (array)
Key Value Validation Description
do_number DO Number required|max:100
do_description DO Description required|max:250
{
    "code": "201",
    "status": "Created",
    "message": "2000330050002",
    "data": {
        "awb": "2000330050002",
        "pickup_date": "2020-10-02 08:58:33",
        "booking_number": "",
        "customer_account": "M1122017000111",
        "cost_center": "GA",
        "shipper_name": "Imam",
        "shipper_company": "ABC, PT",
        "shipper_address": "AA. WAREHOUSE PT. ABC. Jl. ABC Serua Blk. B No.01 Rt 001/01, Kupang",
        "shipper_post_code": "1234",
        "shipper_phone": "021",
        "origin": "Kupang",
        "origin_province": "Nusa Tenggara Timur (NTT)",
        "receiver_name": "Arifin",
        "receiver_company": "PT. DEF",
        "receiver_address": "BB. GUDANG. JL. DEFG RT. 01 NO. 1 Bekasi",
        "receiver_post_code": "",
        "receiver_phone": "05113311111",
        "destination": "Bekasi",
        "destination_province": "Jawa Barat",
        "description": "SPARE PARTS",
        "service": "M2-Green",
        "special_instruction": "",
        "total_pieces": "5",
        "total_weight": "208.00",
        "total_volume": "54.00",
        "volume_weight": "208.00",
        "shipping_cost": "3328000.00",
        "packing_cost": "0.00",
        "surcharge": "0.00",
        "shipment_value": "0.00",
        "insurance_percent": "0",
        "insurance_value": "0.00",
        "discount_percent": "0",
        "discount": "0.00",
        "other_charge": "0.00",
        "other_charge_note": "",
        "total_charge": "3328000.00",
        "received_by": "",
        "received_date": "",
        "packages": [
            {
                "description": "SPARE PARTS 1",
                "pieces": "2",
                "weight": "112.00",
                "unit": "KG",
                "length": "102.00",
                "width": "39.00",
                "height": "17.00",
                "volume": "34.00",
                "volume_weight": "112.00",
                "packing_cost": "0.00",
                "surcharge_percent": "0",
                "surcharge_cost": "0.00"
            },
            {
                "description": "SPARE PARTS 2",
                "pieces": "3",
                "weight": "96.00",
                "unit": "KG",
                "length": "57.00",
                "width": "33.00",
                "height": "14.00",
                "volume": "20.00",
                "volume_weight": "96.00",
                "packing_cost": "0.00",
                "surcharge_percent": "0",
                "surcharge_cost": "0.00"
            }
        ],
        "do_number": [
            {
                "do_number": "DO-06304",
                "do_description": "DN"
            },
            {
                "do_number": "DO-06325",
                "do_description": "DN"
            }
        ]
    }
}

Update Shipment


HTTP Method PATCH
API URL http://m2msys.mtwomlogistics.com:81/api/shipment/{AWB Number}

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

The {AWB Number} is defined as parameter and required in validation.

{
  "customer_account": "M1122017000111",
  "cost_center": "GA",
  "shipper_name": "Imam",
  "shipper_address": "AA. WAREHOUSE PT. ABC. Jl. ABC Serua Blk. B No.01 Rt 001/01, Kupang",
  "shipper_post_code": "1234",
  "shipper_phone": "021",
  "origin": "Kupang",
  "origin_province": "Nusa Tenggara Timur (NTT)",
  "receiver_name": "Arifin",
  "receiver_company": "PT. DEF",
  "receiver_address": "BB. GUDANG. JL. DEFG RT. 01 NO. 1 Bekasi",
  "receiver_post_code": "",
  "receiver_phone": "05113311111",
  "destination": "Bekasi",
  "destination_province": "Jawa Barat",
  "description": "SPARE PARTS",
  "service": 16,
  "special_instruction": "",
  "packages": [
    {
      "description": "SPARE PARTS 1",
      "pieces": "2",
      "weight": "112.00",
      "unit": "KG",
      "length": "102.00",
      "width": "39.00",
      "height": "17.00",
      "volume": "135.00",
      "volume_weight": "135.00",
      "packing_cost": "0.00",
      "surcharge_percent": "0",
      "surcharge_cost": "0.00"
    },
    {
      "description": "SPARE PARTS 2",
      "pieces": "3",
      "weight": "96.00",
      "unit": "KG",
      "length": "57.00",
      "width": "33.00",
      "height": "14.00",
      "volume": "105.00",
      "volume_weight": "105.00",
      "packing_cost": "0.00",
      "surcharge_percent": "0",
      "surcharge_cost": "0.00"
    }
  ],
  "do_number": [
    {
      "do_number": "DO-06304",
      "do_description": "DN"
    },
    {
      "do_number": "DO-06325",
      "do_description": "DN"
    }
  ]
}

Key Value Validation Description
customer_account Customer Account required|max:250|in:registered customer accounts list list of accounts can be retrieved from the GET Accounts Endpoint
cost_center Cost Center optional|string|max:250 Additional information for customer use
shipper_name Shipper Name required|string|max:250  
shipper_address Shipper Address required|string  
shipper_post_code Shipper Postal Code optional|numeric|max:10  
shipper_phone Shipper Phone optional|numeric|max:50  
origin City ID or City Name required  
origin_province

If origin = city_id then origin_province is optional

if origin = city_name then origin_province is required

optional or required

If origin = city_id then origin_province is optional

if origin = city_name then origin_province is required

receiver_name Receiver Name

required|string|max:250

 
receiver_company Receiver Company optional|string|max:250  
receiver_address Receiver Address required|string  
receiver_post_code Receiver Postal code optional|numeric  
receiver_phone Receiver Phone optional|numeric  
destination City ID or City Name required|string  
destination_province

If destination = city_id then destination_province is optional

if destination = city_name then destination_province is required

optional or required  

If destination = city_id then destination_province is optional

if destination = city_name then destination_province is required

description Shipment Description optional|string|max:250  
service Service ID required|numeric list of accounts can be retrieved from the GET Services Endpoint
special_instruction Special Instruction optional|string|max:250  Additional information for customer use
packages Detail Packages required|array See Packages Validations
do_number DO / DN / Any Number as Reference per Package optional|array See Do Number Validations

 

Packages (array)
Key Value Validation Description
description Description of Goods required|max:250|in:registered customer accounts list Description of Goods
pieces Total Pieces of Coli optional|string|max:250 Total Pieces of Coli
weight Actual Weight of Piece required|string|max:250 Actual Weight of Piece, will be multiplied by the total pieces
length Length of Piece required Length of Piece, will be multiplied by the total pieces
width Width of Piece optional|numeric|max:10 Width of Piece, will be multiplied by the total pieces
height Height of Piece optional|numeric|max:50 Height of Piece, will be multiplied by the total pieces

System Calculation Conditions ;
-> 1 AWB has Many Package
-> 1 Package has Many Piece
-> weight, length, width, height will be multiplied by (n)pieces of single package as sub_total
-> 1 Package = pieces * weight.
-> 1 Package = pieces * dimension.
-> total_pieces = sum of pieces.
-> total_weight = sum of sub_total weight.
-> total_volume = sum of sub_total volume(dimension)
-> volume_weight = sum of sub_total chargeable weight

** See sample of response

 

Do Number (array)
Key Value Validation Description
do_number DO Number required|max:100
do_description DO Description required|max:250
{
    "code": "200",
    "status": "Updated",
    "message": "2000330050002",
    "data": {
        "awb": "2000330050002",
        "pickup_date": "2020-10-02 08:58:33",
        "booking_number": "",
        "customer_account": "M1122017000111",
        "cost_center": "GA",
        "shipper_name": "Imam",
        "shipper_company": "ABC, PT",
        "shipper_address": "AA. WAREHOUSE PT. ABC. Jl. ABC Serua Blk. B No.01 Rt 001/01, Kupang",
        "shipper_post_code": "1234",
        "shipper_phone": "021",
        "origin": "Kupang",
        "origin_province": "Nusa Tenggara Timur (NTT)",
        "receiver_name": "Arifin",
        "receiver_company": "PT. DEF",
        "receiver_address": "BB. GUDANG. JL. DEFG RT. 01 NO. 1 Bekasi",
        "receiver_post_code": "",
        "receiver_phone": "05113311111",
        "destination": "Bekasi",
        "destination_province": "Jawa Barat",
        "description": "SPARE PARTS",
        "service": "M2-Green",
        "special_instruction": "",
        "total_pieces": "5",
        "total_weight": "208.00",
        "total_volume": "54.00",
        "volume_weight": "208.00",
        "shipping_cost": "3328000.00",
        "packing_cost": "0.00",
        "surcharge": "0.00",
        "shipment_value": "0.00",
        "insurance_percent": "0",
        "insurance_value": "0.00",
        "discount_percent": "0",
        "discount": "0.00",
        "other_charge": "0.00",
        "other_charge_note": "",
        "total_charge": "3328000.00",
        "received_by": "",
        "received_date": "",
        "packages": [
            {
                "description": "SPARE PARTS 1",
                "pieces": "2",
                "weight": "112.00",
                "unit": "KG",
                "length": "102.00",
                "width": "39.00",
                "height": "17.00",
                "volume": "34.00",
                "volume_weight": "112.00",
                "packing_cost": "0.00",
                "surcharge_percent": "0",
                "surcharge_cost": "0.00"
            },
            {
                "description": "SPARE PARTS 2",
                "pieces": "3",
                "weight": "96.00",
                "unit": "KG",
                "length": "57.00",
                "width": "33.00",
                "height": "14.00",
                "volume": "20.00",
                "volume_weight": "96.00",
                "packing_cost": "0.00",
                "surcharge_percent": "0",
                "surcharge_cost": "0.00"
            }
        ],
        "do_number": [
            {
                "do_number": "DO-06304",
                "do_description": "DN"
            },
            {
                "do_number": "DO-06325",
                "do_description": "DN"
            }
        ]
    }
}

Delete Shipment


HTTP Method DELETE
API URL http://m2msys.mtwomlogistics.com:81/api/shipment/{AWB Number}

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

The {AWB Number} is defined as parameter and required in validation.

{
  "remarks": "Cancel Shipment Test delete"
}

Key Value Validation Description
remarks delete reason required delete reason
{
    "code": "202",
    "status": "Accepted",
    "message": "2000330050002",
    "data": {
        "remarks": "Cancel Shipment Test delete"
    }
}

Shipment Detail


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/shipment/{AWB Number/DO Number/DN Number}

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

The {AWB Number/DO Number/DN Number} is defined as parameter and required in validation.

{
    "code": "200",
    "status": "OK",
    "message": "2000330050002",
    "data": {
        "awb": "2000330050002",
        "pickup_date": "2020-10-02 08:58:33",
        "booking_number": "",
        "customer_account": "M1122017000111",
        "cost_center": "GA",
        "shipper_name": "Imam",
        "shipper_company": "ABC, PT",
        "shipper_address": "AA. WAREHOUSE PT. ABC. Jl. ABC Serua Blk. B No.01 Rt 001/01, Kupang",
        "shipper_post_code": "1234",
        "shipper_phone": "021",
        "origin": "Kupang",
        "origin_province": "Nusa Tenggara Timur (NTT)",
        "receiver_name": "Arifin",
        "receiver_company": "PT. DEF",
        "receiver_address": "BB. GUDANG. JL. DEFG RT. 01 NO. 1 Bekasi",
        "receiver_post_code": "",
        "receiver_phone": "05113311111",
        "destination": "Bekasi",
        "destination_province": "Jawa Barat",
        "description": "SPARE PARTS",
        "service": "M2-Green",
        "special_instruction": "",
        "total_pieces": "5",
        "total_weight": "208.00",
        "total_volume": "54.00",
        "volume_weight": "208.00",
        "shipping_cost": "3328000.00",
        "packing_cost": "0.00",
        "surcharge": "0.00",
        "shipment_value": "0.00",
        "insurance_percent": "0",
        "insurance_value": "0.00",
        "discount_percent": "0",
        "discount": "0.00",
        "other_charge": "0.00",
        "other_charge_note": "",
        "total_charge": "3328000.00",
        "received_by": "",
        "received_date": "",
        "packages": [
            {
                "description": "SPARE PARTS 1",
                "pieces": "2",
                "weight": "112.00",
                "unit": "KG",
                "length": "102.00",
                "width": "39.00",
                "height": "17.00",
                "volume": "34.00",
                "volume_weight": "112.00",
                "packing_cost": "0.00",
                "surcharge_percent": "0",
                "surcharge_cost": "0.00"
            },
            {
                "description": "SPARE PARTS 2",
                "pieces": "3",
                "weight": "96.00",
                "unit": "KG",
                "length": "57.00",
                "width": "33.00",
                "height": "14.00",
                "volume": "20.00",
                "volume_weight": "96.00",
                "packing_cost": "0.00",
                "surcharge_percent": "0",
                "surcharge_cost": "0.00"
            }
        ],
        "do_number": [
            {
                "do_number": "DO-06304",
                "do_description": "DN"
            },
            {
                "do_number": "DO-06325",
                "do_description": "DN"
            }
        ]
    }
}

Print AWB


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/shipment/print/{AWB Number/DO Number/DN Number}

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

The {AWB Number/DO Number/DN Number} is defined as parameter and required in validation.

return pdf file with http code 200 (OK)

Shipment List

This endpoint is usually used for re-synchronization, if the Client missed some AWB which did not use the API


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/shipments

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

Key Value Validation Description
from_date 2019-12-20 required | dateformat Date format "yyyy-mm-dd", Base on Pickup date
to_date 2019-12-25 required | dateformat Date format "yyyy-mm-dd", Base on Pickup date
{
    "code": "200",
    "status": "OK",
    "message": "Total Row 2",
    "data": [
        {
            "awb": "2000330050002",
            "pickup_date": "2020-10-02 08:58:33",
            "customer_account": "M1122017000022",
            "shipper_name": "Imam",
            "shipper_company": "ABC, PT",
            "shipper_address": "AA. WAREHOUSE PT. ABC. Jl. ABC Serua Blk. B No.01 Rt 001/01, Kupang",
            "shipper_post_code": "1234",
            "shipper_phone": "021",
            "origin": "Kupang",
            "origin_province": "Nusa Tenggara Timur (NTT)",
            "receiver_name": "Arifin",
            "receiver_company": "PT. DEF",
            "receiver_address": "BB. GUDANG. JL. DEFG RT. 01 NO. 1 Bekasi",
            "receiver_post_code": "",
            "receiver_phone": "05113311111",
            "destination": "Bekasi",
            "destination_province": "Jawa Barat",
            "description": "SPARE PARTS",
            "service": "M2-Green",
            "special_instruction": "",
            "total_pieces": "5",
            "total_weight": "208.00",
            "total_volume": "54.00",
            "volume_weight": "208.00",
            "total_charge": "3328000.00",
            "received_by": "",
            "received_date": "",
            "do_number": " DO-06304, DO-06325"
        },
        {
            "awb": "2000330060001",
            "pickup_date": "2020-10-02 17:20:09",
            "customer_account": "M1122017000022",
            "shipper_name": "Imam",
            "shipper_company": "ABC, PT",
            "shipper_address": "AA. WAREHOUSE PT. ABC. Jl. ABC Serua Blk. B No.01 Rt 001/01, Kupang",
            "shipper_post_code": "1234",
            "shipper_phone": "021",
            "origin": "Kupang",
            "origin_province": "Nusa Tenggara Timur (NTT)",
            "receiver_name": "Zainal",
            "receiver_company": "PT. GHI",
            "receiver_address": "BB. GUDANG. JL. GHI RT. 02 NO. 10 Bekasi",
            "receiver_post_code": "",
            "receiver_phone": "05113322222",
            "destination": "Bekasi",
            "destination_province": "Jawa Barat",
            "description": "SPARE PARTS",
            "service": "M2-Green",
            "special_instruction": "",
            "total_pieces": "5",
            "total_weight": "208.00",
            "total_volume": "54.00",
            "volume_weight": "208.00",
            "total_charge": "3328000.00",
            "received_by": "",
            "received_date": "",
            "do_number": " DO-06334, DO-06335"
        }
    ]
}

Shipment Tracking

This endpoint will return the Tracking information by sequence;

 

No Status Description
1 REQUEST PICKUP Made due to a customer pick-up request
2 CHECKER Made when the shipment arrives at our warehouse as the first mile
3 DATA ENTRY Created when shipping information is stored in our database
4 BAGGING Preparing shipment for last mile
5 UPLIFT Processing shipment for last mile
6 ARRIVAL Shipment arrived in destination as last mile
7 DELIVERY Delivery to end user
8 SUCCESS DELIVERY Success and delivered

HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/track/{AWB Number/DO Number/DN Number}

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

The {AWB Number/DO Number/DN Number} is defined as parameter and required in validation.

{
    "code": "200",
    "status": "OK",
    "message": "",
    "data": [
        {
            "date": "2020-06-25 09:26:23",
            "status": "REQUEST PICKUP"
        },
        {
            "date": "2020-06-25 15:58:46",
            "status": "CHECKER"
        },
        {
            "date": "2020-06-25 23:42:19",
            "status": "DATA ENTRY"
        },
        {
            "date": "2020-06-26 13:43:21",
            "status": "BAGGING"
        },
        {
            "date": "2020-07-02 08:21:09",
            "status": "UPLIFT"
        },
        {
            "date": "2020-07-06 10:04:32",
            "status": "ARRIVAL"
        },
        {
            "date": "2020-07-06 10:04:52",
            "status": "DELIVERY"
        },
        {
            "date": "2020-07-04 10:05:00",
            "status": "SUCCESS DELIVERY"
        }
    ]
}

Price List

The Price List endpoint is usually used to obtain shipping costs.
The API client can collect data using the API URL without any parameters, and use it for subsequent requests with parameters.

Key values in parameters are referenced in CAR (contract agreement) see API Requirements & To Do List .
Type the parameter value as shown in the response example


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/pricelist

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

Key Value Validation Description
origin origin or origin_id optional can use origin city or origin id
destination destination or destination_id optional can use destination city or destination id
service service or service_id optional can use service name city or service id
weight weight optional | double chargeable weight,  if unit = "unit", weight will be ignored
unit ENUM kg,unit optional | ENUM:kg,unit kg base (normal shipment) or unit base for charter/trucking if available
{
    "code": "200",
    "status": "OK",
    "message": "Total Row 10",
    "data": [
        {
            "no": "1",
            "id": "14219",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Bandung",
            "destination_id": "3265",
            "service": "Charter CDD",
            "service_id": "9",
            "minimum": "10.00",
            "unit": "KG",
            "cost": "16500",
            "next_cost": "16500",
            "effective_date": "2019-01-02"
        },
        {
            "no": "2",
            "id": "3932",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Tanah Pasir",
            "origin_id": "157",
            "destination": "Bandung",
            "destination_id": "3975",
            "service": "Charter CDD",
            "service_id": "9",
            "minimum": "10.00",
            "unit": "KG",
            "cost": "16500",
            "next_cost": "16500",
            "effective_date": "2019-01-02"
        },
        {
            "no": "3",
            "id": "39899",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Bekasi",
            "origin_id": "7202",
            "destination": "Rembang",
            "destination_id": "7224",
            "service": "Charter CDE",
            "service_id": "10",
            "minimum": "1.00",
            "unit": "UNIT",
            "cost": "4500000",
            "next_cost": "4500000",
            "effective_date": "2019-12-01"
        },
        {
            "no": "4",
            "id": "14211",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Bandung",
            "destination_id": "3265",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "10.00",
            "unit": "KG",
            "cost": "47500",
            "next_cost": "47500",
            "effective_date": "2019-01-02"
        },
        {
            "no": "5",
            "id": "14214",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Wonosari",
            "destination_id": "2778",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "10.00",
            "unit": "KG",
            "cost": "33500",
            "next_cost": "33500",
            "effective_date": "2019-01-02"
        },
        {
            "no": "6",
            "id": "1241",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": null,
            "destination_id": "4015",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG",
            "cost": "11300",
            "next_cost": "11300",
            "effective_date": "2018-01-01"
        },
        {
            "no": "7",
            "id": "820",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Alang-Alang Lebar",
            "destination_id": "1399",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG",
            "cost": "24300",
            "next_cost": "1",
            "effective_date": "2018-01-01"
        },
        {
            "no": "8",
            "id": "1077",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Ambarawa",
            "destination_id": "2962",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG",
            "cost": "19800",
            "next_cost": "1",
            "effective_date": "2018-01-01"
        },
        {
            "no": "9",
            "id": "1026",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Andir",
            "destination_id": "2492",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG",
            "cost": "14900",
            "next_cost": "1",
            "effective_date": "2018-01-01"
        },
        {
            "no": "10",
            "id": "1288",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Anjongan",
            "destination_id": "4676",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG",
            "cost": "29700",
            "next_cost": "1",
            "effective_date": "2018-01-01"
        }
    ]
}

Coverage Area


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/area

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

Key Value Validation Description
origin origin or origin_id optional can use origin city or origin id
destination destination or destination_id optional can use destination city or destination id
service service or service_id optional can use service name city or service id
weight weight optional | double chargeable weight,  if unit = "unit", weight will be ignored
unit ENUM kg,unit optional | ENUM:kg,unit kg base (normal shipment) or unit base for charter/trucking if available
{
    "code": "200",
    "status": "OK",
    "message": "Total Row 10",
    "data": [
        {
            "no": "1",
            "id": "14219",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Bandung",
            "destination_id": "3265",
            "service": "Charter CDD",
            "service_id": "9",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "2",
            "id": "3932",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Tanah Pasir",
            "origin_id": "157",
            "destination": "Bandung",
            "destination_id": "3975",
            "service": "Charter CDD",
            "service_id": "9",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "3",
            "id": "39899",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Bekasi",
            "origin_id": "7202",
            "destination": "Rembang",
            "destination_id": "7224",
            "service": "Charter CDE",
            "service_id": "10",
            "minimum": "1.00",
            "unit": "UNIT"
        },
        {
            "no": "4",
            "id": "14211",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Bandung",
            "destination_id": "3265",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "5",
            "id": "14214",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Wonosari",
            "destination_id": "2778",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "6",
            "id": "1241",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": null,
            "destination_id": "4015",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "7",
            "id": "820",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Alang-Alang Lebar",
            "destination_id": "1399",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "8",
            "id": "1077",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Ambarawa",
            "destination_id": "2962",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "9",
            "id": "1026",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Andir",
            "destination_id": "2492",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "10",
            "id": "1288",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Anjongan",
            "destination_id": "4676",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        }
    ]
}

Services


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/service

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

Key Value Validation Description
origin origin or origin_id optional can use origin city or origin id
destination destination or destination_id optional can use destination city or destination id
service service or service_id optional can use service name city or service id
weight weight optional | double chargeable weight,  if unit = "unit", weight will be ignored
unit ENUM kg,unit optional | ENUM:kg,unit kg base (normal shipment) or unit base for charter/trucking if available
{
    "code": "200",
    "status": "OK",
    "message": "Total Row 10",
    "data": [
        {
            "no": "1",
            "id": "14219",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Bandung",
            "destination_id": "3265",
            "service": "Charter CDD",
            "service_id": "9",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "2",
            "id": "3932",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Tanah Pasir",
            "origin_id": "157",
            "destination": "Bandung",
            "destination_id": "3975",
            "service": "Charter CDD",
            "service_id": "9",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "3",
            "id": "39899",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Bekasi",
            "origin_id": "7202",
            "destination": "Rembang",
            "destination_id": "7224",
            "service": "Charter CDE",
            "service_id": "10",
            "minimum": "1.00",
            "unit": "UNIT"
        },
        {
            "no": "4",
            "id": "14211",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Bandung",
            "destination_id": "3265",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "5",
            "id": "14214",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Jakarta Selatan",
            "origin_id": "7185",
            "destination": "Wonosari",
            "destination_id": "2778",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "10.00",
            "unit": "KG"
        },
        {
            "no": "6",
            "id": "1241",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": null,
            "destination_id": "4015",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "7",
            "id": "820",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Alang-Alang Lebar",
            "destination_id": "1399",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "8",
            "id": "1077",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Ambarawa",
            "destination_id": "2962",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "9",
            "id": "1026",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Andir",
            "destination_id": "2492",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        },
        {
            "no": "10",
            "id": "1288",
            "company": null,
            "account_number": "M1122017000111",
            "origin": "Syamtalira Bayu",
            "origin_id": "154",
            "destination": "Anjongan",
            "destination_id": "4676",
            "service": "M2-Blue",
            "service_id": "2",
            "minimum": "1.00",
            "unit": "KG"
        }
    ]
}

Accounts List


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/accounts

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company
{
    "code": "200",
    "status": "OK",
    "message": "Total Row 3",
    "data": [
        {
            "customer_account": M1122017000111",
            "account_name": "ABC, PT",
            "attention_name": "IMAM",
            "address": "GUDANG A JL. ABC No. 01 Jakarta Selatan"
        },
        {
            "customer_account": "M1122017000112",
            "account_name": "ABC, PT",
            "attention_name": "IMAM",
            "address": "GUDANG B JL. CDE No. 02 Jakarta Timur"
        },
        {
            "customer_account": "M1122017000113",
            "account_name": "ABC, PT",
            "attention_name": "ARIFIN",
            "address": "GUDANG B JL. EFG No. 03 Jakarta Utara"
        }
    ]
}

Area Data

This endpoint is usually used to refresh the option destination data after origin select option is selected


HTTP Method GET
API URL http://m2msys.mtwomlogistics.com:81/api/areas

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company

Key Value Validation Description
area_type origin or destination required | ENUM:origin,destination Area Collection
filter_city city name or city_id optional if area_type = origin then destination filtered by filter_city else if area_type = destination then origin filtered by filter_city
{
    "code": "200",
    "status": "OK",
    "message": "Total Row 10",
    "data": [
        {
            "no": "1",
            "city_id": "7453",
            "city": "Ambon",
            "regency": "Ambon",
            "province": "Maluku"
        },
        {
            "no": "2",
            "city_id": "7364",
            "city": "Balikpapan",
            "regency": "Balikpapan",
            "province": "Kalimantan Timur"
        },
        {
            "no": "3",
            "city_id": "7048",
            "city": "Banda Aceh",
            "regency": "Banda Aceh",
            "province": "Nanggroe Aceh Darussalam (NAD)"
        },
        {
            "no": "4",
            "city_id": "7165",
            "city": "Bandar Lampung",
            "regency": "Bandar Lampung",
            "province": "Lampung"
        },
        {
            "no": "5",
            "city_id": "7190",
            "city": "Bandung",
            "regency": "Bandung",
            "province": "Jawa Barat"
        },
        {
            "no": "6",
            "city_id": "3505",
            "city": "Bangil",
            "regency": "Pasuruan",
            "province": "Jawa Timur"
        },
        {
            "no": "7",
            "city_id": "7356",
            "city": "Banjarmasin",
            "regency": "Banjarmasin",
            "province": "Kalimantan Selatan"
        },
        {
            "no": "8",
            "city_id": "3418",
            "city": "Banyuwangi",
            "regency": "Banyuwangi",
            "province": "Jawa Timur"
        },
        {
            "no": "9",
            "city_id": "1207",
            "city": "Baturaja Timur",
            "regency": "Ogan Komering Ulu",
            "province": "Sumatera Selatan"
        },
        {
            "no": "10",
            "city_id": "2539",
            "city": "Beji",
            "regency": "Depok",
            "province": "Jawa Barat"
        }
    ]
}

Renew Token


HTTP Method POST
API URL http://m2msys.mtwomlogistics.com:81/api/settings/token/renew

Key Value Description
Authorization Bearer xxxxxx Authorization type = Bearer, xxxxxx is token given by M2M Logistics for registered company
{
  "code": "200",
  "status": "OK",
  "message": "Success",
  "data": "You(email@email.com) will receive an email renewal notice. The email will ask you to follow a link to finish renewing your token."
}