Zededa HardwareModel API
The HardwareModel API from Zededa — 20 operation(s) for hardwaremodel.
The HardwareModel API from Zededa — 20 operation(s) for hardwaremodel.
swagger: '2.0'
info:
title: ZEDEDA App Profiles Service AppProfileService HardwareModel 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: HardwareModel
paths:
/v1/brands:
get:
summary: Query hardware brands
description: Query the hardware brand records.
operationId: HardwareModel_QueryHardwareBrands
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/SysBrands'
'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 edge-node 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: Only summary of the records required
in: query
required: false
type: boolean
- name: namePattern
description: Brand name pattern to be matched.
in: query
required: false
type: string
- name: originType
description: "origin of object\n\n - ORIGIN_UNSPECIFIED: default options, which says no Operation/Invalid Operation\n - ORIGIN_IMPORTED: Object imported from global enterprise.\n - ORIGIN_LOCAL: Objectl created locally.\n - ORIGIN_GLOBAL: Object created in global store,\nto use this type user should have root previlage.\n - ORIGIN_APP_PROFILE_LOCAL: Object created via App profile"
in: query
required: false
type: string
enum:
- ORIGIN_UNSPECIFIED
- ORIGIN_IMPORTED
- ORIGIN_LOCAL
- ORIGIN_GLOBAL
- ORIGIN_APP_PROFILE_LOCAL
default: ORIGIN_UNSPECIFIED
- 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: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- HardwareModel
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/edge-nodes
post:
summary: Create hardware brand
description: Create a hardware brand record.
operationId: HardwareModel_CreateHardwareBrand
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 edge-node 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 hardware brand record will conflict with an already existing hardware brand 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/SysBrand'
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- HardwareModel
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/edge-nodes
/v1/brands/global:
get:
summary: Query global hardware brands
description: Query the global hardware brand records.
operationId: HardwareModel_QueryGlobalHardwareBrands
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/SysBrands'
'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 edge-node 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: Only summary of the records required
in: query
required: false
type: boolean
- name: namePattern
description: Brand name pattern to be matched.
in: query
required: false
type: string
- name: originType
description: "origin of object\n\n - ORIGIN_UNSPECIFIED: default options, which says no Operation/Invalid Operation\n - ORIGIN_IMPORTED: Object imported from global enterprise.\n - ORIGIN_LOCAL: Objectl created locally.\n - ORIGIN_GLOBAL: Object created in global store,\nto use this type user should have root previlage.\n - ORIGIN_APP_PROFILE_LOCAL: Object created via App profile"
in: query
required: false
type: string
enum:
- ORIGIN_UNSPECIFIED
- ORIGIN_IMPORTED
- ORIGIN_LOCAL
- ORIGIN_GLOBAL
- ORIGIN_APP_PROFILE_LOCAL
default: ORIGIN_UNSPECIFIED
- 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: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- HardwareModel
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/edge-nodes
/v1/brands/global/id/{id}:
get:
summary: Get global hardware brand
description: Get the configuration (without security details) of a global hardware brand record.
operationId: HardwareModel_GetGlobalHardwareBrand
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/SysBrand'
'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 edge-node 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: System defined universally unique Id of the model.
in: path
required: true
type: string
- name: enterpriseId
description: 'deprecated field: EnterpriseId'
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:
- HardwareModel
/v1/brands/global/name/{name}:
get:
summary: Get global hardware brand
description: Get the configuration (without security details) of a global hardware brand record.
operationId: HardwareModel_GetGlobalHardwareBrandByName
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/SysBrand'
'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 edge-node 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 sys brand name
in: path
required: true
type: string
- name: enterpriseId
description: 'deprecated field: EnterpriseId'
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:
- HardwareModel
/v1/brands/id/{id}:
get:
summary: Get hardware brand
description: Get the configuration (without security details) of a hardware brand record.
operationId: HardwareModel_GetHardwareBrand
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/SysBrand'
'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 edge-node 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: System defined universally unique Id of the model.
in: path
required: true
type: string
- name: enterpriseId
description: 'deprecated field: EnterpriseId'
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:
- HardwareModel
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/edge-nodes
delete:
summary: Delete hardware brand
description: Delete a hardware brand record.
operationId: HardwareModel_DeleteHardwareBrand
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 edge-node 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: System defined universally unique Id of the model.
in: path
required: true
type: string
- name: enterpriseId
description: 'deprecated field: EnterpriseId'
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:
- HardwareModel
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/edge-nodes
put:
summary: Update hardware brand
description: Update a hardware brand. The usual pattern to update a hardware brand record is to retrieve the record and update with the modified values in a new body to update the hardware brand record.
operationId: HardwareModel_UpdateHardwareBrand
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 edge-node 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 hardware brand 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: System defined universally unique Id of the brand.
in: path
required: true
type: string
- name: body
in: body
required: true
schema:
type: object
properties:
name:
type: string
description: user defined sys brand name
maxLength: 256
minLength: 3
pattern: '[a-zA-Z0-9][a-zA-Z0-9_.-]+'
title:
type: string
description: user defined title for sys brand
pattern: '[a-zA-Z0-9][a-zA-Z0-9_.-]+'
description:
type: string
description: Detailed description of the image.
maxLength: 256
svg:
type: string
description: 'Deprecated: base64 encoded string of svg file'
attr:
type: object
additionalProperties:
type: string
description: Map of <string, string>
state:
$ref: '#/definitions/SysModelState'
description: Sys Model Status
revision:
$ref: '#/definitions/ObjectRevision'
description: Object Revision of the sys brand
systemMfgName:
type: string
description: System Manufacturer name
logo:
type: object
additionalProperties:
type: string
description: Map of <string, string> which holds the key:url for the logo artifact of the the brand
originType:
$ref: '#/definitions/Origin'
description: origin of object
description: SysModel consists of various brand attributes like id, name, title, svg, state, systemMfgName
title: SysBrand payload details
required:
- name
- title
- originType
- name: X-Request-Id
in: header
required: false
description: User-Agent specified id to track a request
type: string
tags:
- HardwareModel
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/edge-nodes
/v1/brands/name/{name}:
get:
summary: Get hardware brand
description: Get the configuration (without security details) of a hardware brand record.
operationId: HardwareModel_GetHardwareBrandByName
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/SysBrand'
'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 edge-node 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 sys brand name
in: path
required: true
type: string
- name: enterpriseId
description: 'deprecated field: EnterpriseId'
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:
- HardwareModel
externalDocs:
description: ZEDEDA Product Documentation
url: https://docs.zededa.com/-M-8m8d8KqdLpfOgY_jo/edge-nodes
/v1/devices/status-config:
get:
summary: Query device status and config
description: Device status config API is a composite API for device config and device status
operationId: HardwareModel_GetDeviceStatusConfig
responses:
'200':
description: A successful response.
schema:
$ref: '#/definitions/DeviceStatusConfigList'
'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 edge-node 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
in: query
required: false
type: boolean
- name: runState
in: query
required: false
type: string
enum:
- UNSPECIFIED
- ONLINE
- HALTED
- INIT
- REBOOTING
- OFFLINE
- UNKNOWN
- UNPROVISIONED
- PROVISIONED
- SUSPECT
- DOWNLOADING
- RESTARTING
- PURGING
- HALTING
- ERROR
- VERIFYING
- LOADING
- CREATING_VOLUME
- BOOTING
- MAINTENANCE_MODE
- START_DELAYED
- BASEOS_UPDATING
- PREPARING_POWEROFF
- POWERING_OFF
- PREPARED_POWEROFF
default: UNSPECIFIED
- name: projectName
in: query
required: false
type: string
- name: load
in: query
required: false
type: string
enum:
- UNSPECIFIED
- FREE
- MODERATE
- HEAVY
default: UNSPECIFIED
- name: namePattern
in: query
required: false
type: string
- name: tags
in: query
required: false
type: string
- name: projectNamePattern
in: query
required: false
type: string
- name: deviceName
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 for composite api: id, name, title, serialNo, projectId, projectName, isEveLatest, appInstCount, runState, adminState.'
in: query
required: false
type: array
items:
type: string
collectionFormat: multi
- name: adminState
description: " - CREATED: Entity Created in the controller\n - DELETED: Entity Deleted in the controller\n - ACTIVE: Entity Activated in the controller\n - INACTIVE: Entity Deactivated in the controller\n - REGISTERED: Specific to Edge-node - Edge-node Registered with the controller\n - ARCHIVED: Entity Archived in the controller"
in: query
required: false
type: string
enum:
- UNSPECIFIED
- CREATED
- DELETED
- ACTIVE
- INACTIVE
- REGISTERED
- ARCHIVED
default: UNSPECIFIED
- name: eveLtsSupportType
description: filter devices by eve version support type i.e LTS OR NON_LTS
in: query
required: false
type: string
enum:
- SUPPORT_TYPE_UNSPECIFIED
- SUPPORT_TYPE_LTS
# --- truncated at 32 KB (145 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zededa/refs/heads/main/openapi/zededa-hardwaremodel-api-openapi.yml