Create a revision
POST
/v1/model-image-definitions/{modelImageDefinitionId}/revisionscurl -X POST 'https://api.embodiflow.io/v1/model-image-definitions/{modelImageDefinitionId}/revisions' \
-H 'Authorization: Bearer $EMBODIFLOW_PAT' \
-H 'Content-Type: application/json' \
-d '{
"imageRef": "string",
"runnerContractVersion": "string",
"paramSchema": {},
"outputSchema": {},
"resourceDefaults": {},
"minGpuMemoryGb": 0,
"recommendedGpuMemoryGb": 0,
"maxGpuCount": 0,
"supportsMultiGpu": true,
"frameworkTags": [
"string"
],
"registryServer": "string",
"registryUsername": "string",
"registryPassword": "string"
}'Authorization
Send a personal access token with every request.
- Authorization: Bearer PAT
Path parameters
- modelImageDefinitionIdstringrequired
Header parameters
- Idempotency-Keystring
Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.
Request body
Content-Typeapplication/json
- imageRefstringrequired
- runnerContractVersionstring
- paramSchemaobject | null
- outputSchemaobject | null
- resourceDefaultsobject | null
- minGpuMemoryGbnumber | null
- recommendedGpuMemoryGbnumber | null
- maxGpuCountnumber | null
- supportsMultiGpuboolean
- frameworkTagsarray<string>
- registryServerstring | null
- registryUsernamestring | null
- registryPasswordstring | null
Responses
Success
- dataobjectrequired
- idstringrequired
- tenantIdstring | nullrequired
- projectIdstring | nullrequired
- modelImageDefinitionIdstringrequired
- revisionnumberrequired
- imageRefstringrequired
- runnerContractVersionstringrequired
- paramSchemaobject | nullrequired
- outputSchemaobject | nullrequired
- resourceDefaultsobject | nullrequired
- minGpuMemoryGbnumber | nullrequired
- recommendedGpuMemoryGbnumber | nullrequired
- maxGpuCountnumberrequired
- supportsMultiGpuone ofrequired
- frameworkTagsarray<string>required
- reviewStatusstringrequired
- reviewNotesstring | nullrequired
- imageDigeststring | nullrequired
- sbomStatusstringrequired
- signatureStatusstringrequired
- conformanceStatusstringrequired
- conformanceSummaryobject | nullrequired
- baseWeightSourcestring | nullrequired
- baseWeightLicensestring | nullrequired
- baseWeightContentHashstring | nullrequired
- requestedEgressDomainsarray<string>required
- approvedEgressDomainsarray<string>required
- reviewedBystring | nullrequired
- reviewedAtstring | nullrequired
- revokedAtstring | nullrequired
- revokeReasonstring | nullrequired
- publishedAtstring | nullrequired
- registeredAtstring | nullrequired
- createdAtstringrequired
- modelFamilystring | null
- frameworkstring | null
- frameworkKindstring | nullAllowed valuesofficialconvenience
- isOfficialDefaultone of | null
Response example
{
"data": {
"id": "string",
"tenantId": "string",
"projectId": "string",
"modelImageDefinitionId": "string",
"revision": 0,
"imageRef": "string",
"runnerContractVersion": "string",
"paramSchema": {},
"outputSchema": {},
"resourceDefaults": {},
"minGpuMemoryGb": 0,
"recommendedGpuMemoryGb": 0,
"maxGpuCount": 0,
"supportsMultiGpu": false,
"frameworkTags": [
"string"
],
"reviewStatus": "string",
"reviewNotes": "string",
"imageDigest": "string",
"sbomStatus": "string",
"signatureStatus": "string",
"conformanceStatus": "string",
"conformanceSummary": {},
"baseWeightSource": "string",
"baseWeightLicense": "string",
"baseWeightContentHash": "string",
"requestedEgressDomains": [
"string"
],
"approvedEgressDomains": [
"string"
],
"reviewedBy": "string",
"reviewedAt": "string",
"revokedAt": "string",
"revokeReason": "string",
"publishedAt": "string",
"registeredAt": "string",
"createdAt": "string",
"modelFamily": "string",
"framework": "string",
"frameworkKind": "official",
"isOfficialDefault": false
}
}Servershttps://api.embodiflow.io/v1https://api.embodiflow.dev/v1