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 cards .

Request type:

    • GET

Parameter:

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

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 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

    Parameters:

      • 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

    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  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/card/enable?id=id1Cards/1/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/Cards/card/preupdate?id=id11/PreUpdate