> ## Documentation Index > Fetch the complete documentation index at: https://support.fortanix.com/llms.txt > Use this file to discover all available pages before exploring further. # Convert an application to run in ACI ## OpenAPI ````json POST /v1/tools/converter/convert-app/aci { "openapi": "3.0.4", "info": { "title": "Confidential Computing Manager", "description": "Fortanix Confidential Computing Manager Backend. These are APIs using which the frontend and other clients (compute node agents) interact with Fortanix Confidential Computing Manager functionalities, which include compute node and app enrollment, attestation and signing, and Certificate Authority.", "termsOfService": "https://www.fortanix.com/legal/terms/", "contact": { "name": "Fortanix Support", "url": "https://support.fortanix.com/hc/en-us/categories/360003107511-Confidential-Computing-Manager", "email": "support@fortanix.com" }, "license": { "name": "Apache 2.0", "url": "http://www.apache.org/licenses/LICENSE-2.0.html" }, "version": "2.0.0" }, "servers": [ { "url": "https://ccm.fortanix.com" } ], "paths": { "/v1/tools/converter/convert-app/aci": { "post": { "tags": [ "Tools" ], "summary": "Convert an application to run in ACI.", "description": "", "operationId": "convertAppAci", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConverterSvcAciConversionRequest" } } }, "required": true, "x-bodyName": "body" }, "responses": { "200": { "description": "Generated templates", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConverterSvcAciConversionResponse" } } } } }, "x-auth-resource": "Writer,Manager,ActiveAccount" } } }, "components": { "schemas": { "ConverterSvcAciConversionRequest": { "required": [ "request", "aci_options" ], "type": "object", "properties": { "request": { "$ref": "#/components/schemas/ConverterSvcConversionRequest" }, "aci_options": { "$ref": "#/components/schemas/AciConversionRequestOptions" } } }, "ConverterSvcAciConversionResponse": { "required": [ "converted_image", "config" ], "type": "object", "properties": { "converted_image": { "$ref": "#/components/schemas/ConverterSvcConvertedImageInfo" }, "config": { "$ref": "#/components/schemas/ConverterSvcAciConfig" } } }, "ConverterSvcConversionRequest": { "required": [ "input_image", "output_image", "converter_options" ], "type": "object", "properties": { "input_image": { "$ref": "#/components/schemas/ConversionRequestImageInfo" }, "output_image": { "$ref": "#/components/schemas/ConversionRequestImageInfo" }, "converter_options": { "$ref": "#/components/schemas/ConverterSvcConverterOptions" } } }, "AciConversionRequestOptions": { "type": "object", "properties": { "cpu_count": { "maximum": 65535, "minimum": 1, "type": "integer", "description": "Number of cores", "format": "int32", "default": 1 }, "gb_mem": { "minimum": 0, "exclusiveMinimum": true, "type": "number", "description": "Container memory size in GBs (1,000,000,000 bytes)", "format": "double", "default": 1 }, "wait_for_agent": { "type": "boolean", "description": "Inserts a loop waiting for /opt/fortanix/agent.ready into your application's entrypoint; ensures app startup occurs after confidential compute verifications. Don't touch this unless there's good reason.\n", "default": true } } }, "ConverterSvcConvertedImageInfo": { "required": [ "name", "sha", "size" ], "type": "object", "properties": { "name": { "type": "string", "description": "Converted image name (with tag)" }, "sha": { "type": "string", "description": "Converted image sha" }, "size": { "type": "integer", "description": "Converted image size", "format": "int64" } } }, "ConverterSvcAciConfig": { "required": [ "caci_template", "exposed_ports" ], "type": "object", "properties": { "caci_template": { "type": "string", "description": "Confidential ACI deployment template" }, "exposed_ports": { "type": "array", "items": { "$ref": "#/components/schemas/DockerNetworkPort" }, "description": "List of ports exposed by the Docker image." } } }, "ConversionRequestImageInfo": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string", "description": "Docker image name" }, "auth_config": { "$ref": "#/components/schemas/AuthConfig" } } }, "ConverterSvcConverterOptions": { "type": "object", "properties": { "allow_cmdline_args": { "type": "boolean", "description": "Allow command line arguments." }, "allow_docker_pull_failure": { "type": "boolean", "description": "Allow Docker Pull failure." }, "certificates": { "type": "array", "items": { "$ref": "#/components/schemas/CertificateConfig" } }, "debug": { "type": "boolean", "description": "Enables debug logging from EnclaveOS" }, "entrypoint": { "type": "array", "items": { "type": "string" }, "description": "Override the entrypoint of the original container" }, "entrypoint_args": { "type": "array", "items": { "type": "string" }, "description": "Override additional arguments to the container entrypoint" }, "push_converted_image": { "type": "boolean", "description": "Enables Pushing Converted Image" }, "env_vars": { "type": "array", "items": { "type": "string" }, "description": "List of manifest environment variables.\nFor ACI, these fixed values become part of the security policy.\n" }, "mutable_env_vars": { "type": "array", "items": { "type": "string" }, "description": "List of mutable environment variable default values.\nFor ACI, these become deployment template parameters.\n" }, "java_mode": { "type": "string", "description": "Type of the Java JVM used" } } }, "DockerNetworkPort": { "required": [ "port", "protocol" ], "type": "object", "properties": { "port": { "type": "integer", "description": "A valid, specific port number from 1..65535 (inclusive)." }, "protocol": { "$ref": "#/components/schemas/DockerNetworkProtocol" } }, "description": "A port exposed by a docker container." }, "AuthConfig": { "required": [ "username" ], "type": "object", "properties": { "username": { "type": "string", "description": "User name for docker registry authentication" }, "password": { "type": "string", "description": "Password for docker registry authentication. Note that this field may be redacted when it appears in API responses." } }, "description": "Credentials for authenticating to a docker registry" }, "CertificateConfig": { "type": "object", "properties": { "issuer": { "enum": [ "MANAGER_CA", "NODE", "SELF_IAS" ], "type": "string", "description": "Certificate issuance strategy", "default": "MANAGER_CA" }, "subject": { "type": "string", "description": "Certificate subject common name, typically a DNS name" }, "keyType": { "enum": [ "RSA" ], "type": "string", "description": "Type of key to generate", "default": "RSA" }, "keyParam": { "type": "object", "description": "Key parameters. Currently must be an instance of RsaKeyParam, but other types may be supported in the future.\n" }, "keyPath": { "type": "string", "description": "Path to expose the key in the application filesystem" }, "certPath": { "type": "string", "description": "Path to expose the certificate in the application filesystem" } } }, "DockerNetworkProtocol": { "enum": [ "Tcp", "Udp" ], "type": "string", "description": "Protocol Associated with a Port exposed by a docker container." } } } } ````