Discover Certificates from CT Log

The API will discover certificates from CT log.

Before you begin

Ensure that the provided domains are valid.

Request Structure

Endpoint: /certificate/discovery/instance
Type: POST
Sample URL:
https://<IP/HostName/TenantName>:<GWPORT>/avxapi/certificate/discovery/instance?gwsource=external

To understand the elements of the sample URL, click here.

Headers
Content-Type: application/json
Table 1. Input Parameters
Name Description
sessionId

Header

(Mandatory) Session Id received after login.

Type: String

Constraint: Required if username and password are not provided.

username

Header

(Mandatory) AppViewX login username.

Type: String

Constraint: Required if sessionId is not provided.

password

Header

(Mandatory) AppViewX login password.

Type: String

Constraint: Required if sessionId is not provided.

Content-Type

Header

(Mandatory) Specifies the nature of the data in the payload.

Type: String

Constraint: Value of the parameter should be ‘application/json’

gwsource

Query

(Mandatory) Source from which the request is triggered. (E.g. external)

Type: String

Payload

Body

Contains all the parameters to be sent in the request body for the post request.

Type: Payload

Payload

Table 2. Payload
Name Description
discoveryType (Mandatory) Type of the discovery.

Type: String

Possible values:: ONDEMAND

name (Mandatory) Name of the discovery instance to be created.

Type: String

description (Optional) Description of the discovery request.

Type: String

source (Mandatory) Network source to discover certificates from

Type: String

Important: The values are case-sensitive.

Possible value(s):: IPRANGE, SUBNET, URL

associatedRule (Optional) Name of the rule to be associated with the discovered certificates.

Type: String

Constraint: Rule name which is added already need to be specified.

certStatus (Mandatory) Specify the certificate status to be maintained in the inventory after discovering the certificates.

Type: String

Possible values:: MANAGED, MONITERED, NONE (the values are case sensitive)

Important: The values are case-sensitive.

If certStatus = NONE, the discovered certificates will not be moved to certificate inventory.

rbacRuleProcessRequired (Optional) Specify whether RBAC rule process is required.

Type: Boolean (true or false)

Constraint: If this is set to true, new certificates will be tagged under the group specified in the rule.

groupName (Mandatory) Specifies the group under which the discovered certificate needs to be tagged.

Type: domainList

domainList (Mandatory) List of the domains to be scanned.

Type: String

occuranceType (Mandatory) Occurrence frequency

Type: String

Possible values:: DAILY, WEEKLY, MONTHLY, YEARLY

neverEnds (Mandatory) Specify if the discovery should be a never ending occurrence

Type: Boolean

Possible value(s):: true, false

startDate (Mandatory if discoveryType = SCHEDULED) Start date for the scheduled network discovery scan

Type: Long

timeZone (Mandatory if discoveryType = SCHEDULED) Time zone in which the scheduled network discovery scan will be triggered

Type: String

Possible values:: Possible values for time zone

endDate (Optional - Applicable for discoveryType = SCHEDULED). End date for the scheduled network discovery scan.

Type: Long

endAfterNoOfOccurances (Optional - Applicable for discoveryType = SCHEDULED). Number of occurrences after which the scheduled network discovery scan is ended.

Type: Integer

occuranceDays (Optional - Applicable for discoveryType = SCHEDULED AND occuranceType = WEEKLY ). List of days of week in which the scheduled discovery to be triggered.

Type: List

Possible Value: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY

Default Value: MONDAY

Note: If endAfterNoOfOccurances is null or 0, and endDate is null, and neverEnds is either null or false, then neverEnds will be automatically set to true.
Table 3. Payload-DomainList
Name Description
domainName (Mandatory) domain name for the CT Log discovery.\

Type: String

dataCenter (Mandatory) The data center for the domain.

Type: String

Constraint: The provided dataCenter must be available.

Response Structure

Response returns string of type application/json with the following body parameters:

Table 4. Parameters
Name Description
response Contains the response attributes for the enrollment request.

Type: Object

discoveryName

response

Name of the discovery request created.

Type: String

message

response

Success message of the action or failure description in case of error.

Type: String

message Success message or failure description in case of error.

Type: String

appStatusCode Application specific status code for the response. It is a non-null for failure response.

Type: String

tags Additional information in case of a failure response.

Type: Object

header HTTP headers associated with the response.

Type: Object

Status Codes

HTTP Code appStatusCode Response Message
202 Accepted NA Discovery history details added successfully with discovery id<value>, and discovery operation has been triggered.
401 Unauthorized AVX_GW_003 Authentication failed, reason - Invalid Credentials.

Remediation: Ensure that valid username and password or valid sessionId is provided as header parameters.

400 Bad Request MANDATORY_FIELD_MISSING Mandatory field is missing or invalid - <<field name>>

Remediation: Ensure that a valid value is provided for the <<field name>> field in the request.

400 Bad Request INVALID_REQUEST Target list not found.

Remediation: Ensure that a valid value is provided for the targetList field in the request.

400 Bad Request MSG_DISC_HISTORY_UNIQUE_NAME Discovery name already exists. Please specify different Discovery name.

Remediation: Provide a different Discovery name.

417 Expectation failed GROUP_NOT_FOUND Specified certificate group is not found.

Remediation: Ensure that valid value is provided for the groupName section in the request.

417 Expectation failed FIELD_VALUE_INVALID Cooling period should be 0 or greater than 1.

Remediation: Provide a correct value in the field coolingPeriod.

417 Expectation failed FIELD_VALUE_INVALID Discovery Type should be ONDEMAND or SCHEDULED.

Remediation: Provide a correct value in the field discoveryType.

500 Internal Server Error avx-common-011 Error while processing.

Sample Request/Response

Sample Request
{
    "discoveryType": "ONDEMAND",
    "name": "on_demand_network",
    "description": "on_demand_network desc",
    "source": "NETWORK",
    "groupName": "Default",
    "networkList" : [
"BLR_network"
    ],
    "certStatus": "NONE",
    "rbacRuleProcessRequired" : false,
    "associatedRule": "ignore_revoked_certs"
}
Sample Request
{
    "discoveryType": "SCHEDULED",
    "name": "scheduled_network",
    "description": "scheduled_network desc",
    "source": "NETWORK",
    "groupName": "Default",
    "networkList" : [
         "BLR_network"
    ],
    "certStatus": "MANAGED",
    "rbacRuleProcessRequired" : false,
    "associatedRule": "ignore_revoked_certs",
    "occuranceType": "WEEKLY",
    "occuranceDays": ["TUESDAY", "WEDNESDAY"],
    "neverEnds": true,
    "startDate": 1749555000000,
    "hostNames": "appviewx.com",
    "passiveMode": false,
    "fullScanAfterNumberOfPassiveDiscoveries": 0,
    "timeZone":"Asia/Calcutta"
}
Sample Response
{
   "response": {
       "discoveryName": "on_demand_network",
       "message": "Discovery history details added successfully with discovery id 683d53800b80a91c95bee4da, and discovery operation has been triggered."
   },
   "message": "Discovery history details added successfully with discovery id 683d53800b80a91c95bee4da, and discovery operation has been triggered.",
   "appStatusCode": null,
   "tags": {},
   "headers": null
}

References

Understanding the sample URL
  • IP/HostName/TenantName: Replace with the actual IP address, hostname, or tenant name based on the specific configuration in AppViewX.
    • IP: A unique identifier assigned to each device connected to a computer network that uses the Internet Protocol for communication

      The IP address will be included in the endpoint URL for an on-prem deployment.

    • HostName: A human-readable label assigned to a device (host) on a network

      The hostname will be included in the endpoint URL for an on-prem deployment.

    • TenantName: An identifier label for a tenant given to indicate which tenant's data the API request will access/modify

      The tenant name will be included in the endpoint URL for a SaaS deployment.

  • GWPORT: AppViewX gateway port

    A gateway port refers to a network port through which data is sent and received to communicate with a gateway in an on-prem deployment.

    Example: 31443

  • avxapi: Path parameter value (static) that is part of the endpoint's URL
  • Endpoint: Endpoint of the API, for example: execute-hook
  • gwsource: Source or origin of a gateway, for example: external.

Possible time zone values

Etc/GMT+12

Pacific/Pago_Pago

Pacific/Samoa

Pacific/Niue

US/Samoa

Etc/GMT+11

Pacific/Midway

Pacific/Honolulu

Pacific/Rarotonga

Pacific/Tahiti

Pacific/Johnston

America/Atka

US/Hawaii

SystemV/HST10

America/Adak

US/Aleutian

Etc/GMT+10

Pacific/Marquesas

Etc/GMT+9

US/Alaska

America/Juneau

America/Metlakatla

Pacific/Gambier

America/Yakutat

America/Sitka

SystemV/YST9

America/Anchorage

America/Nome

SystemV/YST9YDT

Etc/GMT+8

Canada/Pacific

PST8PDT

Pacific/Pitcairn

Mexico/BajaNorte

America/Tijuana

SystemV/PST8

America/Santa_Isabel

America/Vancouver

America/Ensenada

SystemV/PST8PDT

America/Los_Angeles

US/Pacific

Canada/Yukon

Etc/GMT+7

US/Arizona

Mexico/BajaSur

America/Dawson_Creek

America/Denver

America/Yellowknife

America/Inuvik

America/Ciudad_Juarez

America/Mazatlan

SystemV/MST7

America/Boise

America/Dawson

MST7MDT

US/Mountain

America/Creston

America/Edmonton

America/Hermosillo

Canada/Mountain

America/Cambridge_Bay

Navajo

America/Phoenix

America/Whitehorse

SystemV/MST7MDT

America/Fort_Nelson

America/Shiprock

America/El_Salvador

America/Guatemala

America/Belize

America/Managua

America/Chicago

America/Tegucigalpa

Etc/GMT+6

America/Regina

Mexico/General

America/Rankin_Inlet

US/Central

Pacific/Galapagos

America/Rainy_River

America/Swift_Current

America/Costa_Rica

America/Indiana/Knox

America/North_Dakota/Beulah

America/Monterrey

SystemV/CST6

America/North_Dakota/Center

America/Indiana/Tell_City

America/Chihuahua

America/Ojinaga

America/Mexico_City

America/Matamoros

CST6CDT

America/Knox_IN

America/Menominee

America/Resolute

Canada/Central

America/Bahia_Banderas

US/Indiana-Starke

SystemV/CST6CDT

America/Merida

Canada/Saskatchewan

America/North_Dakota/New_Salem

America/Winnipeg

America/Panama

America/Indiana/Petersburg

America/Eirunepe

America/Grand_Turk

Cuba

Etc/GMT+5

Pacific/Easter

America/Fort_Wayne

America/Havana

America/Porto_Acre

US/Michigan

America/Louisville

America/Guayaquil

America/Indiana/Vevay

America/Indiana/Vincennes

America/Indianapolis

America/Iqaluit

America/Kentucky/Louisville

EST5EDT

America/Nassau

America/Jamaica

America/Atikokan

America/Kentucky/Monticello

America/Coral_Harbour

America/Cayman

Chile/EasterIsland

America/Indiana/Indianapolis

America/Thunder_Bay

America/Indiana/Marengo

America/Bogota

SystemV/EST5

US/Eastern

Canada/Eastern

America/Port-au-Prince

America/Nipigon

Brazil/Acre

US/East-Indiana

America/Cancun

America/Lima

America/Rio_Branco

America/Detroit

Jamaica

America/Pangnirtung

America/Montreal

America/Indiana/Winamac

America/New_York

America/Toronto

SystemV/EST5EDT

America/Cuiaba

America/Marigot

Canada/Atlantic

Etc/GMT+4

America/Manaus

America/St_Thomas

America/Anguilla

America/Barbados

America/Curacao

America/Guyana

America/Martinique

America/Puerto_Rico

America/Port_of_Spain

SystemV/AST4

America/Kralendijk

America/Antigua

America/Moncton

America/St_Vincent

America/Dominica

Atlantic/Bermuda

Brazil/West

America/Aruba

America/Halifax

America/La_Paz

America/Blanc-Sablon

America/Santo_Domingo

America/Glace_Bay

America/St_Barthelemy

America/St_Lucia

America/Montserrat

America/Lower_Princes

America/Thule

America/Tortola

America/Porto_Velho

America/Campo_Grande

America/Goose_Bay

America/Virgin

America/Boa_Vista

America/Grenada

America/St_Kitts

America/Caracas

America/Guadeloupe

SystemV/AST4ADT

America/St_Johns

Canada/Newfoundland

Chile/Continental

America/Miquelon

America/Argentina/Catamarca

America/Argentina/Cordoba

America/Araguaina

America/Argentina/Salta

Etc/GMT+3

America/Montevideo

Brazil/East

America/Argentina/Mendoza

America/Argentina/Rio_Gallegos

America/Catamarca

America/Cordoba

America/Sao_Paulo

America/Argentina/Jujuy

America/Cayenne

America/Recife

America/Buenos_Aires

America/Paramaribo

America/Mendoza

America/Santarem

America/Asuncion

America/Maceio

Atlantic/Stanley

Antarctica/Rothera

America/Argentina/San_Luis

America/Santiago

America/Argentina/Ushuaia

Antarctica/Palmer

America/Punta_Arenas

America/Fortaleza

America/Argentina/La_Rioja

America/Belem

America/Jujuy

America/Bahia

America/Argentina/San_Juan

America/Argentina/ComodRivadavia

America/Argentina/Tucuman

America/Rosario

America/Argentina/Buenos_Aires

Etc/GMT+2

America/Godthab

America/Noronha

Brazil/DeNoronha

Atlantic/South_Georgia

America/Scoresbysund

America/Nuuk

Etc/GMT+1

Atlantic/Cape_Verde

Atlantic/Azores

Pacific/Kiritimati

Etc/GMT-14

NZ-CHAT

Pacific/Chatham

Pacific/Fakaofo

Antarctica/McMurdo

Pacific/Enderbury

NZ

Pacific/Apia

Antarctica/South_Pole

Pacific/Kanton

Pacific/Auckland

Pacific/Tongatapu

Etc/GMT-13

Pacific/Kwajalein

Pacific/Wallis

Pacific/Fiji

Pacific/Funafuti

Pacific/Nauru

Kwajalein

Pacific/Wake

Pacific/Norfolk

Pacific/Tarawa

Asia/Kamchatka

Etc/GMT-12

Asia/Anadyr

Pacific/Majuro

Australia/Hobart

Australia/Tasmania

Australia/ACT

Pacific/Ponape

Pacific/Bougainville

Australia/Victoria

Antarctica/Macquarie

Australia/Canberra

Australia/Currie

Australia/Lord_Howe

Australia/NSW

Pacific/Pohnpei

Pacific/Efate

Asia/Magadan

Pacific/Kosrae

Australia/Sydney

Australia/LHI

Asia/Sakhalin

Pacific/Noumea

Etc/GMT-11

Asia/Srednekolymsk

Australia/Melbourne

Pacific/Guadalcanal

Australia/Yancowinna

Australia/Adelaide

Australia/Broken_Hill

Australia/South

Pacific/Yap

Pacific/Port_Moresby

Pacific/Chuuk

Australia/Queensland

Pacific/Guam

Pacific/Truk

Asia/Vladivostok

Pacific/Saipan

Antarctica/DumontDUrville

Australia/Brisbane

Etc/GMT-10

Asia/Ust-Nera

Australia/Lindeman

Australia/North

Australia/Darwin

Etc/GMT-9

Pacific/Palau

Asia/Chita

Asia/Dili

Asia/Jayapura

Asia/Yakutsk

Asia/Pyongyang

ROK

Asia/Seoul

Asia/Khandyga

Japan

Asia/Tokyo

Australia/Eucla

Asia/Kuching

Asia/Chungking

Etc/GMT-8

Australia/Perth

Asia/Macao

Asia/Macau

Asia/Choibalsan

Asia/Shanghai

Antarctica/Casey

Asia/Ulan_Bator

Asia/Chongqing

Asia/Ulaanbaatar

Asia/Taipei

Asia/Manila

PRC

Asia/Ujung_Pandang

Asia/Harbin

Singapore

Asia/Brunei

Australia/West

Asia/Hong_Kong

Asia/Makassar

Hongkong

Asia/Kuala_Lumpur

Asia/Irkutsk

Asia/Singapore

Asia/Pontianak

Etc/GMT-7

Asia/Phnom_Penh

Asia/Novosibirsk

Antarctica/Davis

Asia/Tomsk

Asia/Jakarta

Asia/Barnaul

Indian/Christmas

Asia/Ho_Chi_Minh

Asia/Hovd

Asia/Bangkok

Asia/Vientiane

Asia/Novokuznetsk

Asia/Krasnoyarsk

Asia/Saigon

Asia/Yangon

Asia/Rangoon

Indian/Cocos

Asia/Kashgar

Etc/GMT-6

Asia/Dacca

Asia/Omsk

Asia/Dhaka

Indian/Chagos

Asia/Bishkek

Asia/Urumqi

Asia/Thimbu

Asia/Thimphu

Asia/Kathmandu

Asia/Katmandu

Asia/Kolkata

Asia/Colombo

Asia/Calcutta

Asia/Aqtau

Etc/GMT-5

Asia/Samarkand

Asia/Almaty

Asia/Karachi

Asia/Yekaterinburg

Asia/Dushanbe

Indian/Maldives

Asia/Oral

Asia/Tashkent

Asia/Qostanay

Antarctica/Mawson

Asia/Qyzylorda

Asia/Aqtobe

Asia/Ashkhabad

Antarctica/Vostok

Asia/Ashgabat

Asia/Atyrau

Indian/Kerguelen

Asia/Kabul

Asia/Yerevan

Etc/GMT-4

Asia/Dubai

Indian/Reunion

Indian/Mauritius

Europe/Saratov

Europe/Samara

Indian/Mahe

Asia/Baku

Asia/Muscat

Europe/Astrakhan

Asia/Tbilisi

Europe/Ulyanovsk

Iran

Asia/Tehran

Asia/Aden

Africa/Nairobi

Europe/Istanbul

Etc/GMT-3

Indian/Comoro

Antarctica/Syowa

Africa/Mogadishu

Africa/Asmera

Asia/Istanbul

Europe/Moscow

Africa/Djibouti

Europe/Simferopol

Africa/Asmara

Asia/Baghdad

Asia/Damascus

Africa/Dar_es_Salaam

Africa/Addis_Ababa

Asia/Riyadh

Asia/Kuwait

Europe/Kirov

Africa/Kampala

Europe/Minsk

Asia/Qatar

Asia/Bahrain

Indian/Antananarivo

Indian/Mayotte

Europe/Volgograd

Turkey

W-SU

Asia/Amman

Africa/Cairo

Africa/Mbabane

Etc/GMT-2

Europe/Zaporozhye

Libya

Africa/Kigali

Africa/Tripoli

Israel

Europe/Kaliningrad

Africa/Windhoek

Europe/Bucharest

Europe/Mariehamn

Africa/Lubumbashi

Europe/Tiraspol

Europe/Chisinau

Europe/Helsinki

Asia/Beirut

Asia/Tel_Aviv

Europe/Sofia

Africa/Gaborone

Asia/Gaza

Europe/Riga

Africa/Maputo

Europe/Uzhgorod

Asia/Jerusalem

Africa/Bujumbura

Europe/Kiev

Europe/Vilnius

Africa/Maseru

Africa/Blantyre

Africa/Lusaka

Africa/Harare

Europe/Tallinn

Africa/Khartoum

Africa/Johannesburg

Africa/Juba

Europe/Kyiv

Asia/Nicosia

Asia/Famagusta

EET

Asia/Hebron

Egypt

Europe/Nicosia

Europe/Athens

Europe/Brussels

Europe/Warsaw

CET

Etc/GMT-1

Europe/Luxembourg

Africa/Tunis

Europe/Malta

Europe/Busingen

Africa/Malabo

Europe/Skopje

Europe/Sarajevo

Africa/Lagos

Europe/Rome

Africa/Algiers

Europe/Zurich

Europe/Gibraltar

Europe/Vaduz

Europe/Ljubljana

Europe/Berlin

Europe/Stockholm

Europe/Budapest

Europe/Zagreb

Europe/Paris

Africa/Ndjamena

Africa/Ceuta

Europe/Prague

Europe/Copenhagen

Europe/Vienna

Europe/Tirane

MET

Europe/Amsterdam

Africa/Libreville

Africa/El_Aaiun

Europe/San_Marino

Africa/Douala

Africa/Brazzaville

Africa/Porto-Novo

Poland

Europe/Andorra

Europe/Oslo

Europe/Podgorica

Africa/Casablanca

Africa/Luanda

Atlantic/Jan_Mayen

Africa/Kinshasa

Europe/Madrid

Africa/Bangui

Europe/Belgrade

Africa/Niamey

Europe/Bratislava

Arctic/Longyearbyen

Europe/Vatican

Europe/Monaco

Europe/London

GMT

Etc/GMT-0

Europe/Jersey

Atlantic/St_Helena

Europe/Guernsey

Europe/Isle_of_Man

Etc/GMT+0

Africa/Banjul

Etc/GMT

Africa/Freetown

GB-Eire

Africa/Bamako

GB

Africa/Conakry

Portugal

Universal

Africa/Sao_Tome

Africa/Nouakchott

Antarctica/Troll

UTC

Etc/Universal

Atlantic/Faeroe

Africa/Abidjan

Eire

Africa/Accra

Atlantic/Faroe

Etc/UCT

GMT0

Europe/Dublin

Zulu

Africa/Ouagadougou

Atlantic/Reykjavik

Atlantic/Madeira

Etc/Zulu

Iceland

Europe/Lisbon

Atlantic/Canary

Africa/Lome

Greenwich

Europe/Belfast

Etc/GMT0

America/Danmarkshavn

Africa/Dakar

Africa/Bissau

WET

Etc/Greenwich

Africa/Timbuktu

UCT

Africa/Monrovia

Etc/UTC