Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Purpose

A set of API functions allows you to manage cards (USB tokens, smart cards) by means of client applications.

Usage

Access to API functions is implemented through the icmapi web application, which is part of the Indeed Certificate Manager server. To interact with Indeed CM through the API, in the Roles section of the Indeed CM configuration, you will need to create a service role, include the account on whose behalf the API will be accessed, and define privileges for the role:

  • Finding users
  • Viewing card repository
  • Enabling card
  • Disabling card
  • Updating card
  • Revoking card

1. GetCardsCards - get the list of user's cardscards added to the system.

Request type:

    • GET

ParameterParameters:

    • name - username in UPN format (user principal name)

Return values (CardInfo object list):

    • id - card identifier
    • serialNumber - card serial number
    • atr - card ATR (Answer To Reset)
    • label - card label
    • state - card state
    • formFactor - card form factor
    • pacNumber - card HID label
    • expirationDate - card expiration date
Info
iconfalse
titleExample:

http://localhost/icmapi/user/getcards?name=mike.benson@demo.local

2. GetAllCards - get the list of cards added to the system.

Request type:

    • GET

Parameter:

    • without parameters
    • offset - shift by the specified number of cards
    • count - number of output cards
    • filter.serialNumber -  card serial number
    • filter.userName - user logon name in sAMAccountName or userPrincipalName format
    • filter.cardTypeName - cards type
    • filter.comment - comment for cards
    • filter.tags - card tags
    • filter.state - card state:
      – Clean
      – Assigned
      – Pending
      – Issued
      – Disabled
      – Revoked
    • filter.contentExpirationStatus - content expiration status:
      – None 
      – ManagedCertificatesExpiring 
      – ManagedCertificatesExpired 
      – CommonCertificatesExpiring
      – CommonCertificatesExpired
      – TracedCertificatesExpiring
      – TracedCertificatesExpired
    • without parameters
    • offset - shift by the specified number of cards
    • count - number of output cards

Return values (CardInfo object list):

    • id - card identifier
    • serialNumber - card serial number
    • cardTypeName - card type name
    • cardModelName - card model name is available only for eToken PRO Java 72K and IDPrime MD cards if a division for different models is added in the Card types section for these cards
    • atr - card ATR (Answer To Reset)
    • label - card label
    • comment - comment for card
    • tags - card tags
    • state - card state
    • formFactor - card form factor
    • pacNumber - card HID label
    • expirationDate - card expiration datedate in ISO 8601 format
    • timeIssued - сard issue time in ISO 8601 format
    • timeDisabled - card disable time in ISO 8601 format
    • timeUpdated - card update time in ISO 8601 format
    • timeRevoked - card revocation time in ISO 8601 format
Info
iconfalse
titleExample:

http://localhost/icmapi/Card/GetAllCardsCards - output of all cards
http://localhost/icmapi/Card/GetAllCardsCards?offset=0&count=50 50 - output of 50 cards without shifting

3. 2. Cards/{id}/Revoke - withdraw user card.

Request type:

    • POST

Parameters:

    • id - card identifier
    • reason - card revoke revocation reason:

      – 0 - noneNone
      – 1 - broken CardBroken
      – 2 - lostCardLost
      – 3 - upgradeCardUpgrade
      – 4 - expiredCardExpired
      – 5 - withdrawCardWithdraw
      – 6 - user removedUserRemoved
      – 7 -

      compromised

      CardCompromised

Return values:

    • not
Info
iconfalse
titleExample:

http://localhost/icmapi/Cards/card/revoke?id=id11/Revoke

Request body:

    • Card revoke revocation reason - for example, { "reason": 5 "CardWithdraw" }

4. 3. Cards/{id}/Disable - temporarily disable the user's card.

Request type:

    • POST

Parameter:

    • id - card identifier

Return values:

    • not
Info
iconfalse
titleExample:

http://localhost/icmapi/Cards/card/disable?id=id11/Disable

4. Cards/{id}/5. Enable - enable the user's card.

Request type:

    • POST

Parameter:

    • id - card identifier

Return values:

    • not
Info
iconfalse
titleExample:

http://localhost/icmapi/Cards/card/enable?id=id11/Enable

5. Cards/{id}/PreUpdate6. Preupdate - revoke irrelevant user certificate.

Warning

The Preupdate method is required when changing smart card usage policy. If  If the issued certificate is not supported in the new policy and the option "Revoke certificate at card revoking/disabling" is enabled in the certificate template in the old policy, then it will be deletedrevoked.

The Preupdate method cannot be performed on a smart card that is disabled, assigned, revoked, and pending issue or update.

Request type:

    • POST

Parameter:

    • id - card identifier

Return values:

    • not
Info
iconfalse
titleExample:

http://localhost/icmapi/card/preupdate?id=id1Cards/1/PreUpdate