Webportal v2

embedded apps

API Reference - navigation.favoriteDestinations

Required Privacy: Always available

This API allows to manage favorite location.

Input Parameter
Param name Description Type Unit/Values Example Required
locationAttributes

Location attributes to output in response.

Array of strings

- address

- coordinates

- mapMatchedCoordinates
['address', 'coordinates', 'mapMatchedCoordinates'] false
Output Data
Data name Description Type Unit/Values Example
name

Name of this favorite location.

string

n/a

favorite1
address

Address of this favorite location.

Object

n/a

coordinates

Coordinates of this favorite location.

string

/
coordinates
 .longitude

Next maneuver longitude.

number

8.74301
coordinates
 .latitude

Next maneuver latitude.

number

8.74301
coordinates
 .altitude

Next maneuver altitude.

number

8.74301
mapMatchedCoordinates

Map matched coordinates of this favorite location.

Object

/
mapMatchedCoordinates
 .longitude

Next maneuver longitude.

number

8.74301
mapMatchedCoordinates
 .latitude

Next maneuver latitude.

number

8.74301
mapMatchedCoordinates
 .altitude

Next maneuver altitude.

number

8.74301
Code Example
1
2
3
4
5
6
7
8
9
10
11
12
13
webportal.get(
    /* api name */
    "navigation.favoriteDestinations",
    /* parameters */
    "['address', 'coordinates', 'mapMatchedCoordinates']"
  )
  /* callback for `REPLY` messages */
  .then((message) => {
    if (message.status === 200) {
      /* handle `REPLY` success */
    }
    else { /* handle `REPLY` error */ }
  })
1
2
3
4
5
6
{
  "id": "7372c16f-5f2f-42c9-84a7-5490e35f1be0", 
  "type": "GET", 
  "api": "navigation.favoriteDestinations",
  "params": "['address', 'coordinates', 'mapMatchedCoordinates']"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// --- format of the `REPLY` message ---

{
  "id": "7372c16f-5f2f-42c9-84a7-5490e35f1be0",
  "type": "REPLY",
  "api": "navigation.favoriteDestinations",
  "status": 200,
  "statusText": "OK", 
  "data": [
    {
      "name": "Kiran's Club",
      "address": {
        /* ApiKitTypes::SAddress */
        },
      "coordinates": {"latitude": 8.74301, "longitude": 8.74301}
      "mapMatchedCoordinates": {"latitude": 8.74301, "longitude": 8.74301}
    },
    {
      "name": "Vishal's Villa",
      "address": {
        /* ApiKitTypes::SAddress */
        },
      "coordinates": {"latitude": 8.74301, "longitude": 8.74301}
      "mapMatchedCoordinates": {"latitude": 8.74301, "longitude": 8.74301}
    },
  ] 
}

false

This API allows to manage favorite location.

Providing Address & Coordinates together will produce a 400 Bad Request error (provide only one!)

Input Parameter
Param name Description Type Unit/Values Example Required
action

Action to perform.

Enum of String

- add

- change

- remove
add true
location

Location Object to remove. Only if action = remove

Object

/ /
location
 .name

Name of the favorite location to remove.

string

Egor's Castle true
location

Location Object to add/change. Only if action = add or action = change

Object

/ /
location
 .name

Name of the favorite location to add/change.

string

Egor's Castle true
location
 .address

Name of the favorite location to add/change. Only one between address and coordinates should be provided.

string

true
location
 .coordinates

Coordinates of the favorite location to add/change. Only one between address and coordinates should be provided.

string

/ /
location
 .coordinates
  .longitude

Next maneuver longitude.

number

8.74301
location
 .coordinates
  .latitude

Next maneuver latitude.

number

8.74301
location
 .coordinates
  .altitude

Next maneuver altitude.

number

8.74301
Output Data
No outputted data
Code Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
webportal.set(
    /* api name */
    "navigation.favoriteDestinations",
    /* parameters */
     { 
      "action": "add",
      "location": "",
      "location": ""
        }
  )
  /* callback for `REPLY` messages */
  .then((message) => {
    if (message.status === 200) {
      /* handle `REPLY` success */
    }
    else { /* handle `REPLY` error */ }
  })
1
2
3
4
5
6
7
8
9
10
{
  "id": "7372c16f-5f2f-42c9-84a7-5490e35f1be0", 
  "type": "SET", 
  "api": "navigation.favoriteDestinations",
  "params":  { 
    "action": "add",
    "location": "",
    "location": ""
  }
}
1
2
3
4
5
6
7
8
9
// --- format of the `REPLY` message ---

{
  "id": "7372c16f-5f2f-42c9-84a7-5490e35f1be0",
  "type": "REPLY",
  "api": "navigation.favoriteDestinations",
  "status": 200,
  "statusText": "OK"
}

false

This API allows to manage favorite location.

Input Parameter
No input params
Output Data
Data name Description Type Unit/Values Example
action

Action performed on the favorite triggering this event.

Enum of strings

- add

- change

- remove
add
location

Location triggering this.

Object

/
location
 .name

Name of this favorite location.

string

location
 .address

Address of this favorite location.

Object

location
 .coordinates

Coordinates of this favorite location.

string

/
location
 .coordinates
  .longitude

Next maneuver longitude.

number

8.74301
location
 .coordinates
  .latitude

Next maneuver latitude.

number

8.74301
location
 .coordinates
  .altitude

Next maneuver altitude.

number

8.74301
location
 .mapMatchedCoordinates

Map matched coordinates of this favorite location.

Object

/
location
 .mapMatchedCoordinates
  .longitude

Next maneuver longitude.

number

8.74301
location
 .mapMatchedCoordinates
  .latitude

Next maneuver latitude.

number

8.74301
location
 .mapMatchedCoordinates
  .altitude

Next maneuver altitude.

number

8.74301
Code Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
webportal.subscribe(
    /* api name */
    "navigation.favoriteDestinations",
    /* parameters */
     null,
    /* callback for `NOTIFY` messages */
    async (notifyMessage) => {
      if (notifyMessage.status === 200) {
        /* handle `NOTIFY` response */
      }
      else { /*  handle `NOTIFY` error  */ }
    }
  )
  /* callback for `REPLY` messages */
  .then((message) => {
    if (message.status === 200) {
      /* handle `REPLY` success */
    }
    else { /* handle `REPLY` error */ }
  })
1
2
3
4
5
6
{
  "id": "7372c16f-5f2f-42c9-84a7-5490e35f1be0", 
  "type": "SUBSCRIBE", 
  "api": "navigation.favoriteDestinations",
  "params":  null
}
1
2
3
4
5
6
7
8
9
10
11
// --- format of the `REPLY` message ---
// type: acknowledge the status of the subscription
// reception: only once after the subscription request
// contains outputed data: no
{
  "id": "7372c16f-5f2f-42c9-84a7-5490e35f1be0",
  "type": "REPLY",
  "status": 200,
  "statusText": "OK"
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// --- format of the `NOTIFY` message ---
// type: event message about the subscription
// reception: each time the conditions of the subscription are met
// contains outputed data: yes
{
  "id": "7372c16f-5f2f-42c9-84a7-5490e35f1be0",
  "type": "NOTIFY",
  "api": "navigation.favoriteDestinations",
  "status": 200,
  "statusText": "OK", 
  "data": {
    "action": "change"
    "location": {
        "name": "Kiran's Club",
        "address": {
          /* ApiKitTypes::SAddress */
        },
        "coordinates": {"latitude": 8.74301, "longitude": 8.74301}
        "mapMatchedCoordinates": {"latitude": 8.74301, "longitude": 8.74301}
    }
  } 
}