curl --request GET \
--url https://studio.edgeimpulse.com/v1/api/{projectId}/synthetic-data \
--header 'x-api-key: <api-key>'{
"success": true,
"recentJobs": [
{
"job": {
"id": 123,
"category": "<string>",
"categoryKey": "<string>",
"key": "<string>",
"created": "2023-11-07T05:31:56Z",
"jobNotificationUids": [
123
],
"started": "2023-11-07T05:31:56Z",
"finished": "2023-11-07T05:31:56Z",
"finishedSuccessful": true,
"additionalInfo": "<string>",
"computeTime": 123,
"createdByUser": {
"id": 123,
"name": "<string>",
"username": "<string>",
"photo": "<string>"
},
"categoryCount": 123,
"metadata": {}
},
"samples": [
{
"id": 2,
"filename": "idle01.d8Ae",
"signatureValidate": true,
"created": "2023-11-07T05:31:56Z",
"lastModified": "2023-11-07T05:31:56Z",
"category": "training",
"coldstorageFilename": "<string>",
"label": "healthy-machine",
"intervalMs": 16,
"frequency": 62.5,
"originalIntervalMs": 16,
"originalFrequency": 62.5,
"deviceType": "<string>",
"sensors": [
{
"name": "accX",
"units": "<string>"
}
],
"valuesCount": 123,
"added": "2023-11-07T05:31:56Z",
"boundingBoxes": [
{
"label": "<string>",
"x": 123,
"y": 123,
"width": 123,
"height": 123
}
],
"boundingBoxesType": "object_detection",
"chartType": "chart",
"isDisabled": true,
"isProcessing": true,
"processingError": true,
"isCropped": true,
"projectId": 123,
"sha256Hash": "<string>",
"signatureMethod": "HS256",
"signatureKey": "<string>",
"deviceName": "<string>",
"totalLengthMs": 123,
"thumbnailVideo": "<string>",
"thumbnailVideoFull": "<string>",
"processingJobId": 123,
"processingErrorString": "<string>",
"metadata": {},
"projectOwnerName": "<string>",
"projectName": "<string>",
"projectLabelingMethod": "single_label",
"structuredLabels": [
{
"startIndex": 123,
"endIndex": 123,
"label": "<string>"
}
],
"structuredLabelsList": [
"<string>"
],
"createdBySyntheticDataJobId": 123,
"imageDimensions": {
"width": 123,
"height": 123
},
"videoUrl": "<string>",
"videoUrlFull": "<string>"
}
]
}
],
"error": "<string>",
"lastUsedTransformationBlockId": 123,
"lastUsedParameters": {}
}Get the last used synthetic data config
curl --request GET \
--url https://studio.edgeimpulse.com/v1/api/{projectId}/synthetic-data \
--header 'x-api-key: <api-key>'{
"success": true,
"recentJobs": [
{
"job": {
"id": 123,
"category": "<string>",
"categoryKey": "<string>",
"key": "<string>",
"created": "2023-11-07T05:31:56Z",
"jobNotificationUids": [
123
],
"started": "2023-11-07T05:31:56Z",
"finished": "2023-11-07T05:31:56Z",
"finishedSuccessful": true,
"additionalInfo": "<string>",
"computeTime": 123,
"createdByUser": {
"id": 123,
"name": "<string>",
"username": "<string>",
"photo": "<string>"
},
"categoryCount": 123,
"metadata": {}
},
"samples": [
{
"id": 2,
"filename": "idle01.d8Ae",
"signatureValidate": true,
"created": "2023-11-07T05:31:56Z",
"lastModified": "2023-11-07T05:31:56Z",
"category": "training",
"coldstorageFilename": "<string>",
"label": "healthy-machine",
"intervalMs": 16,
"frequency": 62.5,
"originalIntervalMs": 16,
"originalFrequency": 62.5,
"deviceType": "<string>",
"sensors": [
{
"name": "accX",
"units": "<string>"
}
],
"valuesCount": 123,
"added": "2023-11-07T05:31:56Z",
"boundingBoxes": [
{
"label": "<string>",
"x": 123,
"y": 123,
"width": 123,
"height": 123
}
],
"boundingBoxesType": "object_detection",
"chartType": "chart",
"isDisabled": true,
"isProcessing": true,
"processingError": true,
"isCropped": true,
"projectId": 123,
"sha256Hash": "<string>",
"signatureMethod": "HS256",
"signatureKey": "<string>",
"deviceName": "<string>",
"totalLengthMs": 123,
"thumbnailVideo": "<string>",
"thumbnailVideoFull": "<string>",
"processingJobId": 123,
"processingErrorString": "<string>",
"metadata": {},
"projectOwnerName": "<string>",
"projectName": "<string>",
"projectLabelingMethod": "single_label",
"structuredLabels": [
{
"startIndex": 123,
"endIndex": 123,
"label": "<string>"
}
],
"structuredLabelsList": [
"<string>"
],
"createdBySyntheticDataJobId": 123,
"imageDimensions": {
"width": 123,
"height": 123
},
"videoUrl": "<string>",
"videoUrlFull": "<string>"
}
]
}
],
"error": "<string>",
"lastUsedTransformationBlockId": 123,
"lastUsedParameters": {}
}Project ID
OK
Whether the operation succeeded
Show child attributes
Show child attributes
Job id, use this to refer back to the job. The web socket API also uses this ID.
User-friendly category (e.g. "Training model")
Machine-readable category (e.g. "learn-train-studio-wrapper")
External job identifier, this can be used to categorize jobs, and recover job status. E.g. set this to 'keras-192' for a Keras learning block with ID 192. When a user refreshes the page you can check whether a job is active for this ID and re-attach.
When the job was created.
The IDs of users who should be notified when a job is finished.
When the job was started.
When the job was finished.
Whether the job finished successfully.
Additional metadata associated with this job.
Job duration time in seconds from start to finished, measured by k8s job watcher.
Some job categories keep a counter on the job number, e.g. in synthetic data, so we know what the 1st, 2nd etc. job was in the UI.
Structured job metadata
Show child attributes
2
"idle01.d8Ae"
Whether signature validation passed
true
Timestamp when the sample was created on device, or if no accurate time was known on device, the time that the file was processed by the ingestion service.
Timestamp when the sample was last modified.
training, testing, post-processing "training"
"healthy-machine"
Interval between two windows (1000 / frequency). If the data was resampled, then this lists the resampled interval.
16
Frequency of the sample. If the data was resampled, then this lists the resampled frequency.
62.5
Interval between two windows (1000 / frequency) in the source data (before resampling).
16
Frequency of the sample in the source data (before resampling).
62.5
Show child attributes
Name of the axis
"accX"
Type of data on this axis. Needs to comply to SenML units (see https://www.iana.org/assignments/senml/senml.xhtml).
Number of readings in this file
Timestamp when the sample was added to the current acquisition bucket.
object_detection, constrained_object_detection chart, image, video, table True if the current sample is excluded from use
True if the current sample is still processing (e.g. for video)
Set when processing this sample failed
Whether the sample is cropped from another sample (and has crop start / end info)
Unique identifier of the project this sample belongs to
Data sample SHA 256 hash (including CBOR envelope if applicable)
"HS256"
Either the shared key or the public key that was used to validate the sample
Total length (in ms.) of this file
Set when sample is processing and a job has picked up the request
Error (only set when processing this sample failed)
Name of the owner of the project this sample belongs to
Name of the project this sample belongs to
What labeling flow the project this sample belongs to uses
single_label, object_detection Show child attributes
Start index of the label (e.g. 0)
End index of the label (e.g. 3). This value is inclusive, so { startIndex: 0, endIndex: 3 } covers 0, 1, 2, 3.
The label for this section.
If this sample was created by a synthetic data job, it's referenced here.
Video link, cropped and in original resolution.
Video link in original resolution.
Optional error description (set if 'success' was false)
Was this page helpful?