Skip to main content
POST
/
api
/
{projectId}
/
target-constraints
Set target constraints
curl --request POST \
  --url https://studio.edgeimpulse.com/v1/api/{projectId}/target-constraints \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
  "selectedTargetBasedOn": "user-configured",
  "targetDevices": [
    {
      "processors": [
        {
          "part": "<string>",
          "format": "low-end MCU",
          "architecture": "Cortex-M",
          "specificArchitecture": "Cortex-M0+",
          "accelerator": "Arm Cortex-U55",
          "fpu": true,
          "clockRateMhz": {
            "minimum": 123,
            "maximum": 123
          },
          "memory": {
            "ram": {
              "fastBytes": {
                "minimum": 123,
                "maximum": 123
              },
              "slowBytes": {
                "minimum": 123,
                "maximum": 123
              }
            },
            "rom": {
              "fastBytes": {
                "minimum": 123,
                "maximum": 123
              },
              "slowBytes": {
                "minimum": 123,
                "maximum": 123
              }
            }
          }
        }
      ],
      "board": "<string>",
      "name": "<string>",
      "latencyDevice": "cortex-m4f-80mhz"
    }
  ],
  "applicationBudgets": [
    {
      "latencyPerInferenceMs": {
        "minimum": 123,
        "maximum": 123
      },
      "energyPerInferenceJoules": {
        "minimum": 123,
        "maximum": 123
      },
      "memoryOverhead": {
        "ram": {
          "fastBytes": {
            "minimum": 123,
            "maximum": 123
          },
          "slowBytes": {
            "minimum": 123,
            "maximum": 123
          }
        },
        "rom": {
          "fastBytes": {
            "minimum": 123,
            "maximum": 123
          },
          "slowBytes": {
            "minimum": 123,
            "maximum": 123
          }
        }
      }
    }
  ]
}'
{
  "success": true,
  "error": "<string>"
}

Authorizations

x-api-key
string
header
required

Path Parameters

projectId
integer
required

Project ID

Body

application/json
targetDevices
object[]
required

The potential targets for the project, where each entry captures hardware attributes that allow target guidance throughout the Studio workflow. The first target in the list is considered as the selected target for the project.

applicationBudgets
object[]
required

A list of application budgets to be configured based on target device. An application budget enables guidance on performance and resource usage. The first application budget in the list is considered as the selected budget for the project.

selectedTargetBasedOn
enum<string>

A type explaining how the target was chosen. If updating this manually, use the 'user-configured' type

Available options:
user-configured,
default,
default-accepted,
recent-project,
connected-device

Response

200 - application/json

OK

success
boolean
required

Whether the operation succeeded

error
string

Optional error description (set if 'success' was false)

I