MileApp Api Reference

Introduction

Overview


Welcome to MileApp API! You can use this API to access all our API endpoints. All request and response bodies, including errors, are encoded in JSON. MileApp API provides a suite of simple and flexible API endpoints to read, modify, add or delete data.

MileApp APIs are plain JSON over HTTP and use the following HTTP verbs:

COMMAND PURPOSE
GET Fetch one or more objects
POST Create an object
PUT Upsert an object
PATCH Update an object
DELETE Delete an object

Rate Limit


This limit is applied on an organization wide basis irrespective of factors such as the number of agents or IP addresses used to make the calls.

Limit Hit Time
100 1second

Format


In the modeling environment there are the following model types for modeling global data types. A global data type is modeled with format, example and description.

Data Type Description
Integer An integer data type represents some range of mathematical integers.
Integral data types may be of different sizes and may or may not be allowed to contain negative values.
Example:
10, 200, 2500
Float Float number, also known as a floating-point number consists of a set of digits and a decimal point, which separates the fractional part of the number from the whole part.
The term "floating" refers to the fact that the decimal point can "float" to represent values with a varying number of digits before and after the decimal point.
Example:
2.1, 14.2, 100.5
String Alphanumeric characters
Example:
Jakarta50, Malang, Solo Raya, 45, Bandung_90an
Boolean Representing logical values.
Example:
TRUE, FALSE
Datetime The DateTime value type represents dates and times.
with values ranging from 00:00:00 (midnight), January 1, 0001 Anno Domini (Common Era)
through 11:59:59 P.M., December 31, 9999 A.D. (C.E.) in the Gregorian calendar.
Format:
Y-m-d H:i:s
Y-m-d\TH:i:s.vP
Y-m-d\TH:i:sP

Example:
2022-07-13 03:16:40
2022-07-13T03:16:40+00:00
2022-07-13T03:16:40
Time The TIME data type consists of a time in hour, minutes, seconds, optional fractions of a second, and optional time zone.
Format:
H:i:s
H:i

Example:
08:30:00
08:30
Object An Object data type is a method for encoding key-value pairs.
A single field value may contain one or more sets of key-value pairs.
Format:
                {
                key1: value1,
                key2: value2,
                keyN: valueN
                }
                                
Array An array type is a user-defined data type consisting of an ordered set of elements of a single data type.
in this case, elements of a single data type is String
Format for Array of String:
["string1", "string2", "stringN"]
Format for Array of Objects:
                [
                {"object":"1"},
                {"object":"2"},
                {"object":"3"},
                {"object":"n"}
                ]
                            

Authentication


All requests need an Bearer Token for authentication. Generate your API Key here:

  1. Visit https://web.mile.app
  2. Enter your user email address and password
  3. Sign in
  4. Go to Profile -> Personal Token
  5. Click on Generate





Status Code


Description: Response from POST data will return json data which contain status with HTTP status code = 200.

Success has the status code 200.

Error has the status code 4xx and contains error message in the body. Refer to the table below to understand what each code means.

No Error Code Text Description
1 401 Unauthorized For example, all API requires the API key to be sent and if it is missing, the status code is returned
2 400 Bad Request For example, the `Create Task` requires `flow` type to be sent and if it is missing, the status code is returned
3 404 Not Found This status code is returned when the request contains invalid ID or URL itself. For example, the `Read Task by ID` API requires taskid to be sent and if it is incorrect ID, the status code is returned
4 405 Method not Allowed This API request used the wrong HTTP method. For example, API `Get Task by ID` used GET method, when you sent PUT method, the status code is returned, as this API allows only GET method
5 406 Unsupported Accept Header Only application/json and */* are supported
6 409 Conflict Indicates a request conflict with current state of the target resource
7 413 Payload Too Large Indicates that the request entity is larger than limits defined by server
8 429 Too Many Requests Indicates the user has sent too many requests in a given amount of time
9 500 Unexpected Server Error This indicate error at Mile’s side
10 503 Service Unavailable The server is not ready to handle the request
11 504 Gateway Timeout Indicates that the server did not get a response in time that it needed in order to complete the request

Most errors will also return a message contains more information to help you debug.

For example, `Create Task` requires `flow` and if it is missing, the status code 400 will returned and some message will show:

"status": false,
"message": "The flow field is required."

Field Description
Status It is either `true` or `false`. If you are encountered an error, the status `false` is returned
Message Detailed error message