API

Definition

ManPKI Daemon are only accessible by the API. The daemon directly implement a secured and authenticated web API.

Only user who have a local account on the server running the daemon can authenticated on the daemon.

API method accessible are describre bellow.

URL Description
/v1.0/ca CA management
/v1.0/cert Certificate management
/v1.0/extension SSL Extension management
/v1.0/profile Profile based on SSL Extension management
/v1.0/server API Server management
/ping Ping/Pong daemon
/discovery Discover all available method for current user
/info Get some information of current session
/login Log in the application
/logout Disconnect the user
/locale/<lang> Get all locale for the specified language
/render Get render system for the CLI

CA

POST /v1.0/ca/param

Set parameter to the CA

Return:boolean if parameter are correctly set
GET /v1.0/ca

Show CA Information

Shell:show ca
Context:None
Return:ca information
PUT /v1.0/ca
PUT /v1.0/ca

Create a CA

Param:force if present force the creation of the ca even if already exist
Shell:create
Context:ca
Return:json info about the new ca
GET /v1.0/ca/param/
GET /v1.0/ca/param/(param)

Get specifed or all parameter of the CA

Return:json info about parameters of the ca

Cert

POST /v1.0/cert/set

Set cert element

Param:basecn Base CN of the next certificate
Param:email Email for the next certificate
Shell:set cert
Context:cert
Return:information if element are correctly set
PUT /v1.0/cert

Create new certificate

Param:cn CN of the certificate
Param:mail Email for the certificate
Param:profile SSL Profile
Shell:create
Context:cert
Return:information of the new certificate
GET /v1.0/cert/param/
GET /v1.0/cert/param/(param)

Get certificate parameter

Param:param Specific parameter
Shell:show cert param
Context:None
Return:information of the certificate parameter
GET /v1.0/cert/
GET /v1.0/cert/(certid)

Show all cert or specific cert information

Param:certid Certificate Identifier
Shell:show cert
Context:none
Return:ca information

Profile

GET /v1.0/profile/
GET /v1.0/profile/(profileid)

Show all or specific SSL Profile

Param:profileid ID of the profile
Shell:show profile
Context:None
Return:information of the profile
POST /v1.0/profile/(profileid)

Set profile

Param:profileid ID of the profile
Shell:set profile
Context:profile
Return:information of the profile
PUT /v1.0/profile/(profileid)

Add a new profile

Param:profileid ID of the profile
Shell:add profile
Context:profile
Return:information of the profile
DELETE /v1.0/profile/(profileid)

Delete a profile

Param:profileid ID of the profile
Shell:delete profile
Context:profile
Return:message about the profile deletion

Extension

GET /v1.0/extension/
GET /v1.0/extension/(oid)

Show all or specific SSL Extension

Param:oid OID of the extension
Shell:show extension
Context:None
Return:information of the extension
POST /v1.0/extension/(oid)

Set an extension

Param:oid OID of the extension
Shell:set extension
Context:extension
Return:information of the extension
PUT /v1.0/extension/(oid)

Add a new extension

Param:oid OID of the extension
Shell:add extension
Context:extension
Return:information of the extension
DELETE /v1.0/extension/(oid)

Delete an extension

Param:oid OID of the extension
Shell:delete extension
Context:extension
Return:message about the deletion

Server

GET /v1.0/server/restart

Restart Web API Server

Shell:reload server
Context:server
POST /v1.0/server/set

Set server parameter

Param:host Host to listen for Web API Server (socket: to listen on unix socket, ip: to listen on ip address)
Param:port Port to listen
Param:cert Path or CertID of the certificate
Param:key Path or CertID of the certificate
Shell:set
Context:server
Return:message if parameter are correctly set.
GET /v1.0/server

Set information about the server

Shell:show server
Context:None
Return:all information about the server.