Zededa AppProfileService API
The AppProfileService API from Zededa — 5 operation(s) for appprofileservice.
The AppProfileService API from Zededa — 5 operation(s) for appprofileservice.
swagger: '2.0'
info:
title: ZEDEDA App Profiles Service AppProfileService API
description: The ZEDEDA App Profiles Service is part of ZEDEDA Edge Orchestration Platform. This service enables customers to define their app profiles on ZEDEDA platform and to manage them remotely.
termsOfService: https://www.zededa.com/terms
version: '1.0'
contact:
name: ZEDEDA API Support
url: https://www.zededa.com/support
email: support@zededa.com
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
basePath: /api
schemes:
- https
consumes:
- application/json
produces:
- application/json
security:
- BearerToken: []
tags:
- name: AppProfileService
paths:
/v1/appprofiles:
get:
summary: Query app profiles
description: Query the app profile records.
operationId: AppProfileService_QueryAppProfiles
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/AppProfiles'
'400':
description: Bad Request. The API gateway did not process the request because of invalid value of filter parameters.
schema:
$ref: '#/definitions/ZsrvResponse'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: summary
description: summary flag
in: query
required: false
type: boolean
- name: filter.namePattern
description: app profile name pattern
in: query
required: false
type: string
- name: filter.id
description: app profile id
in: query
required: false
type: string
- name: next.pageToken
description: Page Token
in: query
required: false
type: string
- name: next.orderBy
description: OrderBy helps in sorting the list response
in: query
required: false
type: array
items:
type: string
collectionFormat: multi
- name: next.pageNum
description: Page Number
in: query
required: false
type: number
format: int64
- name: next.pageSize
description: Defines the page size
in: query
required: false
type: number
format: int64
- name: next.totalPages
description: Total number of pages to be fetched.
in: query
required: false
type: number
format: int64
- name: fields
description: 'Fields to select: id, name, title, description'
in: query
required: false
type: array
items:
type: string
collectionFormat: multi
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
post:
summary: Create app profile
description: Create an app profile record.
operationId: AppProfileService_CreateAppProfile
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/ZsrvResponse'
'400':
description: Bad Request. The API gateway did not process the request because of missing parameter or invalid value of parameters.
schema:
$ref: '#/definitions/ZsrvResponse'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'409':
description: Conflict. The API gateway did not process the request because this app profile record will conflict with an already existing app profile record.
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/AppProfile'
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
/v1/appprofiles/id/{id}:
get:
summary: Get app profile
description: Get the configuration (without security details) of an app profile record.
operationId: AppProfileService_GetAppProfile
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/AppProfileRead'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'404':
description: Not Found. The API gateway did not process the request because the requested resource could not be found.
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
description: Unique Id of the App profile
in: path
required: true
type: string
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
delete:
summary: Delete app profile
description: Delete an app profile record.
operationId: AppProfileService_DeleteAppProfile
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/ZsrvResponse'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'404':
description: Not Found. The API gateway did not process the request because the requested resource could not be found.
schema:
$ref: '#/definitions/ZsrvResponse'
'409':
description: Conflict. The API gateway did not process the request because there are instances of this app profile deployed in edge node(s)
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
description: Unique Id of the App profile
in: path
required: true
type: string
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
put:
summary: Update app profile
description: Update an app profile record. The usual pattern to update an app profile record is to retrieve the record and update with the modified values in a new body to update the app profile record. Updating the app profile automatically creates a new version of the original app profile.
operationId: AppProfileService_UpdateAppProfile
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/ZsrvResponse'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'404':
description: Not Found. The API gateway did not process the request because the requested resource could not be found.
schema:
$ref: '#/definitions/ZsrvResponse'
'409':
description: Conflict. The API gateway did not process the request because this operation will conflict with an already existing app profile record.
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
description: unique id for an App profile
in: path
required: true
type: string
- name: body
in: body
required: true
schema:
type: object
properties:
name:
type: string
description: user defined name for the App profile
title:
type: string
description: user defined title for the app profile
appPolicies:
type: array
items:
$ref: '#/definitions/ProfileAppPolicy'
description: list of app instance policies
networkPolicies:
type: array
items:
$ref: '#/definitions/ProfileNetworkPolicy'
description: list of network instance policies
volumePolicies:
type: array
items:
$ref: '#/definitions/ProfileVolumePolicy'
description: list of volume instance policies
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
/v1/appprofiles/id/{id}/version:
get:
summary: Query app profile versions by app profile id
description: Query the app profile version records using app profile id
operationId: AppProfileService_QueryAppProfileRevisionById
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/AppProfileVersionListResp'
'400':
description: Bad Request. The API gateway did not process the request because of invalid value of filter parameters.
schema:
$ref: '#/definitions/ZsrvResponse'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: id
description: unique id for an App profile
in: path
required: true
type: string
- name: next.pageToken
description: Page Token
in: query
required: false
type: string
- name: next.orderBy
description: OrderBy helps in sorting the list response
in: query
required: false
type: array
items:
type: string
collectionFormat: multi
- name: next.pageNum
description: Page Number
in: query
required: false
type: number
format: int64
- name: next.pageSize
description: Defines the page size
in: query
required: false
type: number
format: int64
- name: next.totalPages
description: Total number of pages to be fetched.
in: query
required: false
type: number
format: int64
- name: name
description: user defined name for the App profile
in: query
required: false
type: string
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
/v1/appprofiles/name/{name}:
get:
summary: Get app profile by name
description: Get the configuration (without security details) of an app profile record by name.
operationId: AppProfileService_GetAppProfileByName
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/AppProfileRead'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'404':
description: Not Found. The API gateway did not process the request because the requested resource could not be found.
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: User defined name of the app profile, unique across the enterprise. Once app profile is created, name can’t be changed
in: path
required: true
type: string
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
/v1/appprofiles/name/{name}/version:
get:
summary: Query app profile versions by app profile name
description: Query the app profile version records using app profile name
operationId: AppProfileService_QueryAppProfileRevisionByName
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/AppProfileVersionListResp'
'400':
description: Bad Request. The API gateway did not process the request because of invalid value of filter parameters.
schema:
$ref: '#/definitions/ZsrvResponse'
'401':
description: Unauthorized. The API gateway did not process the request because it lacks valid authentication credentials for the target resource. The request header has either no authorization details or an authorization that has been refused.
schema:
$ref: '#/definitions/ZsrvResponse'
'403':
description: Forbidden. The API gateway did not process the request because the requestor does not have application level access permission for the operation or does not have access scope to the project.
schema:
$ref: '#/definitions/ZsrvResponse'
'500':
description: Internal Server Error. The API gateway experienced an unexpected condition. Specific error condition is indicated in error codes.
schema:
$ref: '#/definitions/ZsrvResponse'
'504':
description: Gateway Timeout. The API gateway did not receive a timely response from an upstream microservice it needed to communicate with in order to complete the request.
schema:
$ref: '#/definitions/ZsrvResponse'
default:
description: An unexpected error response.
schema:
$ref: '#/definitions/googlerpcStatus'
parameters:
- name: name
description: user defined name for the App profile
in: path
required: true
type: string
- name: next.pageToken
description: Page Token
in: query
required: false
type: string
- name: next.orderBy
description: OrderBy helps in sorting the list response
in: query
required: false
type: array
items:
type: string
collectionFormat: multi
- name: next.pageNum
description: Page Number
in: query
required: false
type: number
format: int64
- name: next.pageSize
description: Defines the page size
in: query
required: false
type: number
format: int64
- name: next.totalPages
description: Total number of pages to be fetched.
in: query
required: false
type: number
format: int64
- name: id
description: unique id for an App profile
in: query
required: false
type: string
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- AppProfileService
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/app-profiles
definitions:
appACEMatch:
type: object
properties:
type:
type: string
description: Type
value:
type: string
description: Value
description: App ACE Match
title: appACEMatch detail
required:
- type
- value
NtpServer:
type: object
properties:
server:
type: string
description: NTP Server IP or FQDN
description: NTP Server
title: NTP Server
Summary:
type: object
properties:
description:
type: string
description: Summary description
total:
type: number
format: int64
description: Total
values:
type: object
additionalProperties:
type: integer
format: int64
description: 'Values: Map for storing <string, uint32>'
description: Summary is used to store the Summary details
title: Summary is used to store the Summary details
AppProfileVersion:
type: object
properties:
id:
type: string
description: unique id for an App profile
name:
type: string
description: user defined name for the App profile
title:
type: string
description: user defined title for the app profile
appPolicies:
type: array
items:
$ref: '#/definitions/ProfileAppPolicy'
description: list of app instance policies
networkPolicies:
type: array
items:
$ref: '#/definitions/ProfileNetworkPolicy'
description: list of network instance policies
volumePolicies:
type: array
items:
$ref: '#/definitions/ProfileVolumePolicy'
description: list of volume instance policies
version:
type: integer
format: int64
description: latest version of app profile
Interface:
type: object
properties:
name:
type: string
description: Interface name used by the edge application
type:
type: string
description: Physical Adapter type for this interface. Applicable only when "direct attach" flag is true.
optional:
type: boolean
description: Indicates if the interface is optional for edge application.
directattach:
type: boolean
description: If true, a physical adapter is assigned to the edge application directly. If false, a network instance is assigned to the edge application.
privateip:
type: boolean
description: If true, DHCP network can't be assigned and user needs to provide a static IP address.
acls:
type: array
items:
$ref: '#/definitions/Acl'
description: Traffic access control rules for this interface. Applicable only when "direct attach" flag is false.
NetworkInstanceDhcpType:
type: string
enum:
- NETWORK_INSTANCE_DHCP_TYPE_UNSPECIFIED
- NETWORK_INSTANCE_DHCP_TYPE_V4
- NETWORK_INSTANCE_DHCP_TYPE_V6
- NETWORK_INSTANCE_DHCP_TYPE_CRYPTOEID
- NETWORK_INSTANCE_DHCP_TYPE_CRYPTOV4
- NETWORK_INSTANCE_DHCP_TYPE_CRYPTOV6
default: NETWORK_INSTANCE_DHCP_TYPE_UNSPECIFIED
title: "NetworkInstanceDhcpType: Used in the network instance provide\n dhcp server configuration"
ServicePoint:
type: object
properties:
type:
type: object
$ref: '#/definitions/spType'
description: Service Point Type
NameOrIp:
type: string
description: Service name/ service name
Credential:
type: string
description: Service credentials
description: Service Point
title: Service Point
StaticDNSList:
type: object
properties:
hostname:
type: string
description: Host name
addrs:
type: array
items:
type: string
description: Addresses
description: Static DNS list
title: Static DNS list
AppProfileRead:
type: object
properties:
id:
type: string
description: unique id for an App profile
name:
type: string
description: user defined name for the App profile
title:
type: string
description: user defined title for the app profile
appPolicies:
type: array
items:
$ref: '#/definitions/ProfileAppPolicy'
description: list of app instance policies
networkPolicies:
type: array
items:
$ref: '#/definitions/ProfileNetworkPolicy'
description: list of network instance policies
volumePolicies:
type: array
items:
$ref: '#/definitions/ProfileVolumePolicy'
description: list of volume instance policies
latestVersion:
type: integer
format: int64
description: latest version of app profile
status:
$ref: '#/definitions/AppProfileStatusType'
description: status of the app profile
VolumeInstanceAccessMode:
type: string
enum:
- VOLUME_INSTANCE_ACCESS_MODE_INVALID
- VOLUME_INSTANCE_ACCESS_MODE_READWRITE
- VOLUME_INSTANCE_ACCESS_MODE_READONLY
- VOLUME_INSTANCE_ACCESS_MODE_MULTIREAD_SINGLEWRITE
default: VOLUME_INSTANCE_ACCESS_MODE_INVALID
ZedCloudOpsCmd:
type: object
properties:
counter:
type: number
format: int64
description: counter
opsTime:
type: object
format: date-time
description: 'Timestamp: Operational time'
description: Zed cloud Operation command
title: Zed cloud Operation command
AppType:
type: string
enum:
- APP_TYPE_UNSPECIFIED
- APP_TYPE_VM
- APP_TYPE_VM_RUNTIME
- APP_TYPE_CONTAINER
- APP_TYPE_MODULE
- APP_TYPE_DOCKER_COMPOSE
default: APP_TYPE_UNSPECIFIED
description: type of app bundle.
DeploymentType:
type: string
enum:
- DEPLOYMENT_TYPE_UNSPECIFIED
- DEPLOYMENT_TYPE_STAND_ALONE
- DEPLOYMENT_TYPE_AZURE
- DEPLOYMENT_TYPE_K3S
- DEPLOYMENT_TYPE_AWS
- DEPLOYMENT_TYPE_K3S_AZURE
- DEPLOYMENT_TYPE_K3S_AWS
- DEPLOYMENT_TYPE_VMWARE_VCE
- DEPLOYMENT_TYPE_VMWARE_TKG_ATTACH
- DEPLOYMENT_TYPE_DOCKER_RUNTIME
default: DEPLOYMENT_TYPE_UNSPECIFIED
ProfileAppConfig:
type: object
properties:
networks:
type: integer
format: int64
description: user defined network options
drives:
type: integer
format: int64
description: user defined drives
readOnly: true
cpus:
type: integer
format: int64
description: user defined cpus for bundle
memory:
type: integer
format: int64
description: user defined memory for bundle
manifestJSON:
$ref: '#/definitions/VMManifest'
description: user defined manifest in JSON format
storage:
type: integer
format: int64
description: user defined storage for bundle
nameProjectPart:
type: string
description: User provided name part for the auto deployed app
nameAppPart:
type: string
description: User provided name part for the auto deployed app
interfaces:
type: array
items:
$ref: '#/definitions/appInterface'
description: application interfaces
startDelayInSeconds:
type: integer
format: int64
description: start delay is the time in seconds EVE should wait after boot before starting the application instance
tags:
type: object
additionalProperties:
type: string
description: Tags are name/value pairs that enable you to categorize resources. Tag names are case insensitive with max_length 512 and min_length 3. Tag values are case sensitive with max_length 256 and min_length 3.
maxLength: 32
pattern: ^[^<%&?/\>]+$
logs:
$ref: '#/definitions/AppInstanceLogs'
description: App Instance logs
vminfo:
$ref: '#/definitions/vm'
description: virtual machine info
remoteConsole:
type: boolean
description: Remote console flag
newBundleVersionAvailable:
type: boolean
description: this flag denotes whether there is latest bundle available in the marketplace or not
bundleVersion:
type: integer
format: int64
description: current bundle version
netInstTags:
type: object
ad
# --- truncated at 32 KB (84 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zededa/refs/heads/main/openapi/zededa-appprofileservice-api-openapi.yml