Robot Documentations

Profile and Mode API

Configure robot profiles for speed, behavior, and environment settings.

Get the current robot profiles

Retrieve the current robot profiles including available speed, behavior, and environment profiles. The response includes the currently active profiles and the available options for each profile type.

GET
/api/v1/profile

Response Body

Successful Response

avaible_environment_profilesAvaible Environment Profiles

List of available environment profiles for the robot.

avaible_behavior_profilesAvaible Behavior Profiles

List of available behavior profiles for the robot.

avaible_speed_profilesAvaible Speed Profiles

List of available speed profiles for the robot.

current_environment_profileCurrent Environment Profile

The current environment profile of the robot.

Default: "indoor"
current_behavior_profileCurrent Behavior Profile

The current behavior profile of the robot.

Default: "normal"
current_speed_profileCurrent Speed Profile

The current speed profile of the robot.

Default: "medium"
curl -X GET "http://localhost:7242/api/v1/profile"
fetch("http://localhost:7242/api/v1/profile")
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
)

func main() {
  url := "http://localhost:7242/api/v1/profile"

  req, _ := http.NewRequest("GET", url, nil)
  
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "http://localhost:7242/api/v1/profile"

response = requests.request("GET", url)

print(response.text)
{
  "avaible_environment_profiles": [
    "Mall",
    "Restaurant"
  ],
  "avaible_behavior_profiles": [
    "Nova",
    "Default"
  ],
  "avaible_speed_profiles": [
    "slow",
    "normal",
    "fast",
    "faster",
    "fastest"
  ],
  "current_environment_profile": "Restaurant",
  "current_behavior_profile": "Nova",
  "current_speed_profile": "Faster"
}

Change the environment profile of the robot

Change the environment profile of the robot. This endpoint allows you to set the environment profile to optimize the robot's performance in different environments.

POST
/api/v1/profile/environment

Request Body

application/jsonRequired
profileProfile

The profile of the robot.

Default: ""

Response Body

Successful Response

status_codeStatus Code

HTTP status code of the response.

Default: 200
successSuccess

Indicates whether the operation was successful.

Default: true
messageMessage

A message providing additional information about the operation.

Default: ""
dataobject | null | null
errorobject | null | null

Failed to change environment profile

Validation Error

detailDetail
curl -X POST "http://localhost:7242/api/v1/profile/environment" \
  -H "Content-Type: application/json" \
  -d '{
    "profile": "normal"
  }'
const body = JSON.stringify({
  "profile": "normal"
})

fetch("http://localhost:7242/api/v1/profile/environment", {
  body
})
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
)

func main() {
  url := "http://localhost:7242/api/v1/profile/environment"
  body := strings.NewReader(`{
    "profile": "normal"
  }`)
  req, _ := http.NewRequest("POST", url, body)
  req.Header.Add("Content-Type", "application/json")
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "http://localhost:7242/api/v1/profile/environment"
body = {
  "profile": "normal"
}
response = requests.request("POST", url, json = body, headers = {
  "Content-Type": "application/json"
})

print(response.text)
{
  "status_code": 200,
  "success": true,
  "message": "Operation successful",
  "data": {
    "key": "value"
  },
  "error": {
    "code": "ERROR_CODE",
    "message": "An error occurred"
  }
}
{
  "status_code": 400,
  "success": false,
  "message": "Failed to change environment profile",
  "error": {
    "code": "PROFILE_CHANGE_ERROR",
    "message": "Failed to change environment profile"
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Change the behavior profile of the robot

Change the behavior profile of the robot. This endpoint allows you to set the behavior profile to optimize the robot's interaction with its environment.

POST
/api/v1/profile/behavior

Request Body

application/jsonRequired
profileProfile

The profile of the robot.

Default: ""

Response Body

Successful Response

status_codeStatus Code

HTTP status code of the response.

Default: 200
successSuccess

Indicates whether the operation was successful.

Default: true
messageMessage

A message providing additional information about the operation.

Default: ""
dataobject | null | null
errorobject | null | null

Failed to change behavior profile

Validation Error

detailDetail
curl -X POST "http://localhost:7242/api/v1/profile/behavior" \
  -H "Content-Type: application/json" \
  -d '{
    "profile": "normal"
  }'
const body = JSON.stringify({
  "profile": "normal"
})

fetch("http://localhost:7242/api/v1/profile/behavior", {
  body
})
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
)

func main() {
  url := "http://localhost:7242/api/v1/profile/behavior"
  body := strings.NewReader(`{
    "profile": "normal"
  }`)
  req, _ := http.NewRequest("POST", url, body)
  req.Header.Add("Content-Type", "application/json")
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "http://localhost:7242/api/v1/profile/behavior"
body = {
  "profile": "normal"
}
response = requests.request("POST", url, json = body, headers = {
  "Content-Type": "application/json"
})

print(response.text)
{
  "status_code": 200,
  "success": true,
  "message": "Operation successful",
  "data": {
    "key": "value"
  },
  "error": {
    "code": "ERROR_CODE",
    "message": "An error occurred"
  }
}
{
  "status_code": 400,
  "success": false,
  "message": "Failed to change behavior profile",
  "error": {
    "code": "PROFILE_CHANGE_ERROR",
    "message": "Failed to change behavior profile"
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Change the speed profile of the robot

Change the speed profile of the robot. This endpoint allows you to set the speed profile to optimize the robot's movement speed and efficiency.

POST
/api/v1/profile/speed

Request Body

application/jsonRequired
profileProfile

The profile of the robot.

Default: ""

Response Body

Successful Response

status_codeStatus Code

HTTP status code of the response.

Default: 200
successSuccess

Indicates whether the operation was successful.

Default: true
messageMessage

A message providing additional information about the operation.

Default: ""
dataobject | null | null
errorobject | null | null

Failed to change speed profile

Validation Error

detailDetail
curl -X POST "http://localhost:7242/api/v1/profile/speed" \
  -H "Content-Type: application/json" \
  -d '{
    "profile": "normal"
  }'
const body = JSON.stringify({
  "profile": "normal"
})

fetch("http://localhost:7242/api/v1/profile/speed", {
  body
})
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
)

func main() {
  url := "http://localhost:7242/api/v1/profile/speed"
  body := strings.NewReader(`{
    "profile": "normal"
  }`)
  req, _ := http.NewRequest("POST", url, body)
  req.Header.Add("Content-Type", "application/json")
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "http://localhost:7242/api/v1/profile/speed"
body = {
  "profile": "normal"
}
response = requests.request("POST", url, json = body, headers = {
  "Content-Type": "application/json"
})

print(response.text)
{
  "status_code": 200,
  "success": true,
  "message": "Operation successful",
  "data": {
    "key": "value"
  },
  "error": {
    "code": "ERROR_CODE",
    "message": "An error occurred"
  }
}
{
  "status_code": 400,
  "success": false,
  "message": "Failed to change speed profile",
  "error": {
    "code": "PROFILE_CHANGE_ERROR",
    "message": "Failed to change speed profile"
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Get the available robot modes

Retrieve the available robot modes. The response includes the currently active modes and the available options for robot modes.

GET
/api/v1/mode

Response Body

Successful Response

avaible_modesAvaible Modes

List of available modes for the robot.

current_modesCurrent Modes

List of current modes of the robot.

curl -X GET "http://localhost:7242/api/v1/mode"
fetch("http://localhost:7242/api/v1/mode")
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
)

func main() {
  url := "http://localhost:7242/api/v1/mode"

  req, _ := http.NewRequest("GET", url, nil)
  
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "http://localhost:7242/api/v1/mode"

response = requests.request("GET", url)

print(response.text)
{
  "avaible_modes": [
    "elev"
  ],
  "current_modes": [
    ""
  ]
}

Set the robot mode

Set the robot mode. This endpoint allows you to change the robot's mode to optimize its operation for different tasks and environments.

POST
/api/v1/mode

Request Body

application/jsonRequired
modeMode

The mode of the robot.

Default: ""

Response Body

Successful Response

status_codeStatus Code

HTTP status code of the response.

Default: 200
successSuccess

Indicates whether the operation was successful.

Default: true
messageMessage

A message providing additional information about the operation.

Default: ""
dataobject | null | null
errorobject | null | null

Failed to set robot mode

Validation Error

detailDetail
curl -X POST "http://localhost:7242/api/v1/mode" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "normal"
  }'
const body = JSON.stringify({
  "mode": "normal"
})

fetch("http://localhost:7242/api/v1/mode", {
  body
})
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
)

func main() {
  url := "http://localhost:7242/api/v1/mode"
  body := strings.NewReader(`{
    "mode": "normal"
  }`)
  req, _ := http.NewRequest("POST", url, body)
  req.Header.Add("Content-Type", "application/json")
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "http://localhost:7242/api/v1/mode"
body = {
  "mode": "normal"
}
response = requests.request("POST", url, json = body, headers = {
  "Content-Type": "application/json"
})

print(response.text)
{
  "status_code": 200,
  "success": true,
  "message": "Operation successful",
  "data": {
    "key": "value"
  },
  "error": {
    "code": "ERROR_CODE",
    "message": "An error occurred"
  }
}
{
  "status_code": 400,
  "success": false,
  "message": "Failed to set robot mode",
  "error": {
    "code": "MODE_CHANGE_ERROR",
    "message": "Failed to set robot mode"
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Remove a robot mode

Remove a robot mode. This endpoint allows you to remove a specific robot mode that is no longer needed or applicable.

DELETE
/api/v1/mode/{name}

Request Body

application/jsonRequired
modeMode

The mode of the robot.

Default: ""

Response Body

Successful Response

status_codeStatus Code

HTTP status code of the response.

Default: 200
successSuccess

Indicates whether the operation was successful.

Default: true
messageMessage

A message providing additional information about the operation.

Default: ""
dataobject | null | null
errorobject | null | null

Failed to remove robot mode

Validation Error

detailDetail
curl -X DELETE "http://localhost:7242/api/v1/mode/{name}" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "normal"
  }'
const body = JSON.stringify({
  "mode": "normal"
})

fetch("http://localhost:7242/api/v1/mode/{name}", {
  body
})
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
  "strings"
)

func main() {
  url := "http://localhost:7242/api/v1/mode/{name}"
  body := strings.NewReader(`{
    "mode": "normal"
  }`)
  req, _ := http.NewRequest("DELETE", url, body)
  req.Header.Add("Content-Type", "application/json")
  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := ioutil.ReadAll(res.Body)

  fmt.Println(res)
  fmt.Println(string(body))
}
import requests

url = "http://localhost:7242/api/v1/mode/{name}"
body = {
  "mode": "normal"
}
response = requests.request("DELETE", url, json = body, headers = {
  "Content-Type": "application/json"
})

print(response.text)
{
  "status_code": 200,
  "success": true,
  "message": "Operation successful",
  "data": {
    "key": "value"
  },
  "error": {
    "code": "ERROR_CODE",
    "message": "An error occurred"
  }
}
{
  "status_code": 400,
  "success": false,
  "message": "Failed to remove robot mode",
  "error": {
    "code": "MODE_REMOVE_ERROR",
    "message": "Failed to remove robot mode"
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}