Skip to content

Create Ota Artifact

POST
/api/firmware/{firmware_id}/create-artifact
curl --request POST \
--url 'https://example.com/api/firmware/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/create-artifact?organization_id=2489E9AD-2EE2-8E00-8EC9-32D5F69181C0' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "artifact_name": "example", "compression": "gzip", "device_types": [ "example" ] }'

Create an OTA-Pulse artifact from an uploaded firmware binary.

This converts a raw firmware image into a proper OTA-Pulse artifact that can be installed by the soc-ota-agent.

The artifact will include:

  • Proper OTA-Pulse artifact headers
  • Device type compatibility information
  • Compression (default: gzip)
firmware_id
required
Firmware Id
string format: uuid
organization_id
required
Organization Id
string format: uuid
Media type application/json
CreateArtifactRequest

Request body for artifact creation

object
artifact_name
Any of:
string
compression
Compression
string
default: gzip
device_types
required
Device Types
Array<string>

Successful Response

Media type application/json
ArtifactStatusResponse

Response for artifact creation status

object
artifact_path
Any of:
string
artifact_size
Any of:
integer
checksum
Any of:
string
error
Any of:
string
status
required
Status
string
Example generated
{
"artifact_path": "example",
"artifact_size": 1,
"checksum": "example",
"error": "example",
"status": "example"
}

Validation Error

Media type application/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Example generated
{
"detail": [
{
"ctx": {},
"input": "example",
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}