---
title: "Get AI Actions proposed changes"
method: GET
path: "/api/{projectId}/raw-data/ai-actions-preview/{jobId}/proposed-changes"
tags: ["Raw data"]
---

# Get AI Actions proposed changes

`GET /api/{projectId}/raw-data/ai-actions-preview/{jobId}/proposed-changes`

## Request

- Base URL: `https://studio.edgeimpulse.com/v1`
- URL: `https://studio.edgeimpulse.com/v1/api/{projectId}/raw-data/ai-actions-preview/{jobId}/proposed-changes`
- Auth: one of:
  - API key in header `x-api-key`
  - API key in cookie `jwt`
  - API key in header `x-jwt-token`
  - OAuth 2
    - Authorization code: `/v1/oauth/authorize`
    - Client credentials
    - Implicit: `/v1/oauth/authorize`
    - Password
    - Token URL: `/v1/oauth/token`
- TypeScript: <https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/docs/api/:projectId/raw-data/ai-actions-preview/:jobId/proposed-changes/get.ts> (a function with typed inputs; its response is checked against the schema)

Get proposed changes from an AI Actions job.

## Path parameters

- `projectId` integer, required
- `jobId` integer, required

## Response `200`

OK

- GetAIActionsProposedChangesResponse
  - `success` boolean, required: Whether the operation succeeded
  - `error` string: Optional error description (set if 'success' was false)
  - `proposedChanges` object[], required
    - `sampleId` integer, required
    - `step` integer, required
    - `proposedChanges` SampleProposedChanges, required
      - `label` string: New label (single-label)
      - `isDisabled` boolean: True if the current sample should be disabled; or false if it should not be disabled.
      - `boundingBoxes` BoundingBox[]: List of bounding boxes. The existing bounding boxes on the sample will be replaced (so if you want to add new bounding boxes, use the existing list as a basis).
        - `label` string, required
        - `x` integer, required
        - `y` integer, required
        - `width` integer, required
        - `height` integer, required
      - `metadata` object: Free form associated metadata. The existing metadata on the sample will be replaced (so if you want to add new metadata, use the existing list as a basis).
      - `structuredLabels` StructuredLabel[]: New label (multi-label)
        - `startIndex` integer, required: Start index of the label (e.g. 0)
        - `endIndex` integer, required: End index of the label (e.g. 3). This value is inclusive, so { startIndex: 0, endIndex: 3 } covers 0, 1, 2, 3.
        - `label` string, required: The label for this section.
        - `labelMap` SampleLabelMapLabels
          - `type` 'key-values', required
          - `labels` object, required

---

[API](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api.md) - [All operations](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/llms.txt) - [OpenAPI document](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/revisions/e2a976d38427?raw)
