ICertRequest interface (certcli.h)

The ICertRequest interface provides communications between a client or intermediary application and Certificate services.

Client and intermediary applications can call the ICertRequest methods to perform the following tasks:

  • Submit certificate request.
  • Retrieve the disposition, last status, and identifier of a request.
  • Retrieve the certificate issued for the request.
  • Retrieve pending certificates for previous requests.
  • Retrieve the certification authority (CA) certificate for the Certificate Services server.

ICertRequest is defined in Certcli.h. When you create your program, however, use Certsrv.h as the include file. Certcli.dll provides the ICertRequest interface. The type information for this interface is also in Certclil.dll, which is shipped with the Platform Software Development Kit (SDK).

Certificate Services interfaces support both apartment-threading and free-threading models. For better throughput, free threading is recommended.


The ICertRequest interface inherits from the IDispatch interface. ICertRequest also has these types of members:


The ICertRequest interface has these methods.


Returns the certification authority (CA) certificate for the Certificate Services server.

Returns the certificate issued for the request as an X.509 certificate, or optionally packaged in a Public Key Cryptography Standards (PKCS)

Gets a human-readable message that gives the current disposition of the certificate request.

Gets the last return code for this request. This returns the error code information, rather than the disposition of the request.

Gets the current internal request number for the request and subsequent certificate.

Retrieves a certificate's disposition status from an earlier request that may have previously returned CR_DISP_INCOMPLETE or CR_DISP_UNDER_SUBMISSION.

Submits a request to the Certificate Services server.


Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header certcli.h (include Certsrv.h)