Certificate

CertAPI is used for managing and requesting certificates from a CA server. CA (Certificate Authority) server is a trusted server that issues, manages, and revokes digital certificates to verify identities and secure communications for users, devices, and services on a network.

It requires to use LocalSystem identity (or an identity with high enough permissions) to create a certificate on behalf of a user.
API Description

GET

Get created Certificate.

POST

Enrollment of a new Certificate.

DELETE

Revoke Certificate.

The installer is handling the setup for CertAPI in IIS.

There are two parameters in psid3.xml to configure if needed: Api Url path, and the Certificate revoke reason.

application/xml, text/xml
<Certificate>
  <CaName>Pointsharp Issuing CA 01</CaName>
  <CertificateTemplate>CertTest1</CertificateTemplate>
  <ApiUrl>https://127.0.0.1:9443/CertApi/</ApiUrl>
  <Revoke>0</Revoke>
</Certificate>

api cert ca

GET /Certificates

Parameters

Name Description

upn (string)

upn

caName (string)

CA server name.

requestid (int32)

textualEncoding (boolean)

Default value: false

Responses

HTTP Code Title Description

200

OK

The expected result was retrieved.

application/json, text/json
{
  "requestId": 0,
  "disposition": 0,
  "status": {
    "statusCode": 0,
    "description": "string"
  },
  "certificate": "string",
  "certificateChain": "string",
  "binaryResponse": "string"
}

POST /Certificates

Parameters

No parameters.

Request body

application/json, text/json
{
  "upn": "string",
  "caName": "string",
  "request": "string",
  "requestAttributes": [
    "string"
  ],
  "certificateTemplate": "string",
  "textualEncoding": true
}

Responses

HTTP Code Title Description

200

OK

The expected result was retrieved.

application/json, text/json
{
  "requestId": 0,
  "disposition": 0,
  "status": {
    "statusCode": 0,
    "description": "string"
  },
  "certificate": "string",
  "certificateChain": "string",
  "binaryResponse": "string"
}

DELETE /Certificates

Parameters

Name Description

caName (string)

CA server name.

serialNumber (string)

reason (int32)

Default value: 0

textualEncoding (boolean)

Default value: false

Responses

HTTP Code Title Description

200

OK

The expected result was retrieved.

application/json, text/json
true