Download OpenAPI specification:Download
Perinet product openAPI definition of the basic node service. The basic node service is implemented by all perinet products.
Provides meta information for the node service. This includes various product information as manufacturer, serial number as well as product variant
{- "api_version": "20",
- "config": {
- "application_name": "StarterKitPlus-sernm",
- "element_name": "distance"
}, - "life_state": "PRODUCED",
- "services": [
- "node",
- "lifecycle",
- "security"
]
}
Update designated properties of the NodeInfo object. Currently, only application_name will be accepted.
application_name | string Default: "" |
element_name | string Default: "" |
{- "application_name": "StarterKitPlus-sernm",
- "element_name": "distance"
}
Provides meta information of the product, which are set during production. I.e. manufacturer, serial number, production batch identifier.
{- "manufacturer": "Perinet GmbH",
- "mpn": "PRN.000.001",
- "serial_number": "sernm",
- "product_version": "7",
- "product_variant": "distance",
- "batch_number": "2020-47",
- "product_name": "periCORE",
- "hostname": "periCORE-sernm"
}
Set production information of the product. I.e. manufacturer, serial number, production batch identifier.
manufacturer | string |
mpn | string Manufacturer Part Number |
serial_number | string |
product_version | string |
product_variant | string |
batch_number | string Manufacturer production batch identification |
product_name | string |
hostname | string |
property name* additional property | any |
{- "manufacturer": "Perinet GmbH",
- "mpn": "PRN.000.001",
- "serial_number": "sernm",
- "product_version": "7",
- "product_variant": "distance",
- "batch_number": "2020-47",
- "product_name": "periCORE",
- "hostname": "periCORE-sernm"
}
Provides a list of available element names.
"PRODUCED"
service_name required | string (DNSSDServiceName) Example: _https._tcp DNS-SD service name |
ttl | integer Default: 300 |
port | number Default: 443 |
hostname | string |
Array of IPv6Address (string) or IPv4Address (string) (NetworkAddress) | |
object (DNSSDTXTRecord) |
{- "ttl": 300,
- "port": 443,
- "hostname": "periNODE-sernm.local",
- "addresses": [
- "fe80::762e:db02:3d8b:0000",
- "2a01:1234:2:1::db02:3d8b:0000",
- "192.168.0.66"
], - "txt_record": {
- "api_version": "20",
- "application_name": "StarterKitPlus-sernm",
- "element_name": "distance"
}
}
Client login (with username password) to receive api_key for further acces.
username | string Default: "admin" |
password | string (SecurityAdminPassword) |
{- "username": "admin",
- "password": "aB3d5s7ant"
}
Change the security config.
client_auth_method | string (SecurityAuthMethod) Enum: "NONE" "mTLS" "API_KEY" Defines a security scheme for client authentication. Specification |
minimal_level | string (SecurityLevel) Enum: "UNSECURED" "ENCRYPTED" "AUTHENTICATED" "ACCESS_CONTROLLED" The security level enforced by the Perinet node.
|
Array of objects (SecurityLoginCredentials) |
{- "client_auth_method": "mTLS",
- "minimal_level": "ENCRYPTED",
- "credentials": [
- {
- "username": "admin",
- "password": "aB3d5s7ant"
}
]
}
Stores a pem encoded certificate, including the private key if applicable
certificate required | string Enum: "host_cert" "client_cert" Certificates to authenticate the node. |
Stores a pem encoded certificate.
trust_anchor required | string Certificates currently supported are, host_cert, root_ca_cert, client_cert, fw_ca_cert, default_host_cert. |
Update the production firmware image of the periNODE. NOTE: This function might conflict with the state of the periNODE. In the case of a periCORE based product, only with the periCORE firmware the update of the production firmware image is not in conflict with the product state. Please be refered to the product specific datasheet.
A signed firmware image. The firmware image is a posix tar file. The order of the files is important. The first file has to be the certs.pem with the certificate chain used to sign the files, except the root CA itself. All other files are files are added with their signatures. The signatures have to be saved as files with the extension .sig.
A signed firmware image. The firmware image is a posix tar file. The order of the files is important. The first file has to be the certs.pem with the certificate chain used to sign the files, except the root CA itself. All other files are files are added with their signatures. The signatures have to be saved as files with the extension .sig.
The DNS Service Discovery service can be used to discover remote network services or advertise local services to the network. Services are discovered via the IPv6 mDNS broadcast protocol, which reaches services in the link local domain only. Means, it will not discover services beyond a routing node.
NOTE: The service discovery feature must be initiated via the API and times out after 30s
service_name required | string (DNSSDServiceName) Example: _https._tcp DNS-SD service name |
{- "domain": "local.",
- "priority": 0,
- "weight": 0,
- "ttl": 300,
- "port": 443,
- "hostname": "periNODE-sernm.local",
- "addresses": [
- "fe80::762e:db02:3d8b:0000",
- "2a01:1234:2:1::db02:3d8b:0000",
- "192.168.0.66"
], - "txt_record": {
- "api_version": "20",
- "application_name": "StarterKitPlus-sernm",
- "element_name": "distance"
}
}
Start mDNS / DNS-SD service browsing for topic {service_name}. The browsing will stop after a timeout of 30 seconds and the resource will be deleted. Another call before the timeout exceeds, will extend the timeout to 30 seconds.
service_name | string (DNSSDServiceName) DNS label pair according to rfc6763. |
{- "service_name": "_https._tcp"
}
{- "id": "89de59aa-6211-41d7-a890-d3e6bb65c656"
}
Get list of found services for {id}. The browsing have to be started first with DNSSDServiceInfoDiscoverSet and the request have to be send before the timeout exceed.
id required | string (DNSSDBrowseID) Example: 89de59aa-6211-41d7-a890-d3e6bb65c656 UUIDv4 or similar |
[- {
- "domain": "local.",
- "priority": 0,
- "weight": 0,
- "ttl": 300,
- "port": 443,
- "hostname": "periNODE-sernm.local",
- "addresses": [
- "fe80::762e:db02:3d8b:0000",
- "2a01:1234:2:1::db02:3d8b:0000",
- "192.168.0.66"
], - "txt_record": {
- "api_version": "20",
- "application_name": "StarterKitPlus-sernm",
- "element_name": "distance"
}
}
]
Provides meta information of the pki configuration.
[application_name] required | string |
[auto_renew_certificates] required | boolean |
{- "application_name": "app_test",
- "auto_renew_certificates": true
}
Delete Host to the PKI2go application. Revoke the host certificate.
Hostname or the Common Name(CN) of the entity.
[- "periNODE-serno, periMICA-serno"
]