Создать отчет

POST
https://api.digicert.com/reports/v1/report

Используйте эту конечную точку для создания отчета.

Для успешного ответа этой конечной точки функция библиотеки отчетов должна быть включена в вашей учётная запись.

cURL
curl --location --request POST 'https://www.digicert.com/services/v1/reports/preview/report' \
--header 'Content-Type: application/json' \
--header 'X-DC-DEVKEY: {{api_key}}' \
--data-raw '{
    "display_name": "Report_1",
    "schedule": {
        "frequency": “MONTHLY", 
        "weekday_to_run": "TUESDAY", 
        "weekday_frequency": "SECOND",  
        "run_until": "2021-12-24" 
    },
    "format": [
      "CSV"  
    ],
    "report_metadata": {
        "report_type": "orders",
        "columns": [
           {
               "identifier": "account_id"
            },
            {
                "identifier": "number_of_sans"
            },
            {
                "identifier": "certificate_id"
            },
            {
                "identifier": "certificate_validity_days"
            },
            {
                "identifier": "container_id"
            },
            {
                "identifier": "container_name"
            } 
        ],
       "filters":[
        {
        "filter_identifier":"in",
        "column_identifier":"common_name",
        "values":["digiqatest.com"]
        },
        {
        "filter_identifier":"in",
        "column_identifier":"organization_name",
        "values":["win the customer, LLC"]
        },
        {
        "filter_identifier":"in",
        "column_identifier":"status",
        "values":["issued","pending"]
        },
        {
        "filter_identifier":"in",
        "column_identifier":"user_email",
        "values":["dev1@digicert.com"]
        },
        {
        "filter_identifier":"in",
        "column_identifier":"product_name",
        "values":["Secure Site Pro SSL","GeoTrust TrueBusiness ID OV","Secure Site OV"]
        },
        {
        "filter_identifier":"in",
        "column_identifier":"order_placed_via",
        "values":["CertCentral","Api"]
        },
        {
        "filter_identifier":"last_30_days",
        "column_identifier":"order_created_date",
        "values":[]
        },
        {
        "filter_identifier":"in",
        "column_identifier":"certificate_id",
        "values":[3292682707,3292682692,3292682697]
        }
    ],
    "sources": {
      "include_all_sub_accounts": true,
      "sub_accounts": [],
      "divisions":[]
    }        
    }
}
Python
import requests

url = "https://www.digicert.com/services/v1/report"

payload="{\r\n    \"display_name\": \"Report_1\",\r\n    \"schedule\": {\r\n        \"frequency\": “MONTHLY\", \r\n        \"weekday_to_run\": \"TUESDAY\", \r\n        \"weekday_frequency\": \"SECOND\",  \r\n        \"run_until\": \"2021-12-24\" \r\n    },\r\n    \"format\": [\r\n      \"CSV\"  \r\n    ],\r\n    \"report_metadata\": {\r\n        \"report_type\": \"orders\",\r\n        \"columns\": [\r\n           {\r\n               \"identifier\": \"account_id\"\r\n            },\r\n            {\r\n                \"identifier\": \"number_of_sans\"\r\n            },\r\n            {\r\n                \"identifier\": \"certificate_id\"\r\n            },\r\n            {\r\n                \"identifier\": \"certificate_validity_days\"\r\n            },\r\n            {\r\n                \"identifier\": \"container_id\"\r\n            },\r\n            {\r\n                \"identifier\": \"container_name\"\r\n            } \r\n        ],\r\n       \"filters\":[\r\n        {\r\n        \"filter_identifier\":\"in\",\r\n        \"column_identifier\":\"common_name\",\r\n        \"values\":[\"digiqatest.com\"]\r\n        },\r\n        {\r\n        \"filter_identifier\":\"in\",\r\n        \"column_identifier\":\"organization_name\",\r\n        \"values\":[\"win the customer, LLC\"]\r\n        },\r\n        {\r\n        \"filter_identifier\":\"in\",\r\n        \"column_identifier\":\"status\",\r\n        \"values\":[\"issued\",\"pending\"]\r\n        },\r\n        {\r\n        \"filter_identifier\":\"in\",\r\n        \"column_identifier\":\"user_email\",\r\n        \"values\":[\"dev1@digicert.com\"]\r\n        },\r\n        {\r\n        \"filter_identifier\":\"in\",\r\n        \"column_identifier\":\"product_name\",\r\n        \"values\":[\"Secure Site Pro SSL\",\"GeoTrust TrueBusiness ID OV\",\"Secure Site OV\"]\r\n        },\r\n        {\r\n        \"filter_identifier\":\"in\",\r\n        \"column_identifier\":\"order_placed_via\",\r\n        \"values\":[\"CertCentral\",\"Api\"]\r\n        },\r\n        {\r\n        \"filter_identifier\":\"last_30_days\",\r\n        \"column_identifier\":\"order_created_date\",\r\n        \"values\":[]\r\n        },\r\n        {\r\n        \"filter_identifier\":\"in\",\r\n        \"column_identifier\":\"certificate_id\",\r\n        \"values\":[3292682707,3292682692,3292682697]\r\n        }\r\n    ],\r\n    \"sources\": {\r\n      \"include_all_sub_accounts\": true,\r\n      \"sub_accounts\": [],\r\n      \"divisions\":[]\r\n    }        \r\n    }\r\n}"
headers = {
  'Content-Type': 'application/json',
  'X-DC-DEVKEY': '{api_key}',
  'Cookie': 'visid_incap_1323850=KAk7FceETTODSOcubQ6RxzER+V8AAAAAQUIPAAAAAACT+abPwAMvJuYXiY7OiuId'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
Go
package main

import (
  "fmt"
  "strings"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://www.digicert.com/services/v1/report"
  method := "POST"

  payload := strings.NewReader(`{`+"
"+`
    "display_name": "Report_1",`+"
"+`
    "schedule": {`+"
"+`
        "frequency": “MONTHLY", `+"
"+`
        "weekday_to_run": "TUESDAY", `+"
"+`
        "weekday_frequency": "SECOND",  `+"
"+`
        "run_until": "2021-12-24" `+"
"+`
    },`+"
"+`
    "format": [`+"
"+`
      "CSV"  `+"
"+`
    ],`+"
"+`
    "report_metadata": {`+"
"+`
        "report_type": "orders",`+"
"+`
        "columns": [`+"
"+`
           {`+"
"+`
               "identifier": "account_id"`+"
"+`
            },`+"
"+`
            {`+"
"+`
                "identifier": "number_of_sans"`+"
"+`
            },`+"
"+`
            {`+"
"+`
                "identifier": "certificate_id"`+"
"+`
            },`+"
"+`
            {`+"
"+`
                "identifier": "certificate_validity_days"`+"
"+`
            },`+"
"+`
            {`+"
"+`
                "identifier": "container_id"`+"
"+`
            },`+"
"+`
            {`+"
"+`
                "identifier": "container_name"`+"
"+`
            } `+"
"+`
        ],`+"
"+`
       "filters":[`+"
"+`
        {`+"
"+`
        "filter_identifier":"in",`+"
"+`
        "column_identifier":"common_name",`+"
"+`
        "values":["digiqatest.com"]`+"
"+`
        },`+"
"+`
        {`+"
"+`
        "filter_identifier":"in",`+"
"+`
        "column_identifier":"organization_name",`+"
"+`
        "values":["win the customer, LLC"]`+"
"+`
        },`+"
"+`
        {`+"
"+`
        "filter_identifier":"in",`+"
"+`
        "column_identifier":"status",`+"
"+`
        "values":["issued","pending"]`+"
"+`
        },`+"
"+`
        {`+"
"+`
        "filter_identifier":"in",`+"
"+`
        "column_identifier":"user_email",`+"
"+`
        "values":["dev1@digicert.com"]`+"
"+`
        },`+"
"+`
        {`+"
"+`
        "filter_identifier":"in",`+"
"+`
        "column_identifier":"product_name",`+"
"+`
        "values":["Secure Site Pro SSL","GeoTrust TrueBusiness ID OV","Secure Site OV"]`+"
"+`
        },`+"
"+`
        {`+"
"+`
        "filter_identifier":"in",`+"
"+`
        "column_identifier":"order_placed_via",`+"
"+`
        "values":["CertCentral","Api"]`+"
"+`
        },`+"
"+`
        {`+"
"+`
        "filter_identifier":"last_30_days",`+"
"+`
        "column_identifier":"order_created_date",`+"
"+`
        "values":[]`+"
"+`
        },`+"
"+`
        {`+"
"+`
        "filter_identifier":"in",`+"
"+`
        "column_identifier":"certificate_id",`+"
"+`
        "values":[3292682707,3292682692,3292682697]`+"
"+`
        }`+"
"+`
    ],`+"
"+`
    "sources": {`+"
"+`
      "include_all_sub_accounts": true,`+"
"+`
      "sub_accounts": [],`+"
"+`
      "divisions":[]`+"
"+`
    }        `+"
"+`
    }`+"
"+`
}`)

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("X-DC-DEVKEY", "{api_key}")
  req.Header.Add("Cookie", "visid_incap_1323850=KAk7FceETTODSOcubQ6RxzER+V8AAAAAQUIPAAAAAACT+abPwAMvJuYXiY7OiuId")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
NodeJS
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://www.digicert.com/services/v1/report',
  'headers': {
    'Content-Type': 'application/json',
    'X-DC-DEVKEY': '{api_key}',
    'Cookie': 'visid_incap_1323850=KAk7FceETTODSOcubQ6RxzER+V8AAAAAQUIPAAAAAACT+abPwAMvJuYXiY7OiuId'
  },
  body: '{\r\n    "display_name": "Report_1",\r\n    "schedule": {\r\n        "frequency": “MONTHLY", \r\n        "weekday_to_run": "TUESDAY", \r\n        "weekday_frequency": "SECOND",  \r\n        "run_until": "2021-12-24" \r\n    },\r\n    "format": [\r\n      "CSV"  \r\n    ],\r\n    "report_metadata": {\r\n        "report_type": "orders",\r\n        "columns": [\r\n           {\r\n               "identifier": "account_id"\r\n            },\r\n            {\r\n                "identifier": "number_of_sans"\r\n            },\r\n            {\r\n                "identifier": "certificate_id"\r\n            },\r\n            {\r\n                "identifier": "certificate_validity_days"\r\n            },\r\n            {\r\n                "identifier": "container_id"\r\n            },\r\n            {\r\n                "identifier": "container_name"\r\n            } \r\n        ],\r\n       "filters":[\r\n        {\r\n        "filter_identifier":"in",\r\n        "column_identifier":"common_name",\r\n        "values":["digiqatest.com"]\r\n        },\r\n        {\r\n        "filter_identifier":"in",\r\n        "column_identifier":"organization_name",\r\n        "values":["win the customer, LLC"]\r\n        },\r\n        {\r\n        "filter_identifier":"in",\r\n        "column_identifier":"status",\r\n        "values":["issued","pending"]\r\n        },\r\n        {\r\n        "filter_identifier":"in",\r\n        "column_identifier":"user_email",\r\n        "values":["dev1@digicert.com"]\r\n        },\r\n        {\r\n        "filter_identifier":"in",\r\n        "column_identifier":"product_name",\r\n        "values":["Secure Site Pro SSL","GeoTrust TrueBusiness ID OV","Secure Site OV"]\r\n        },\r\n        {\r\n        "filter_identifier":"in",\r\n        "column_identifier":"order_placed_via",\r\n        "values":["CertCentral","Api"]\r\n        },\r\n        {\r\n        "filter_identifier":"last_30_days",\r\n        "column_identifier":"order_created_date",\r\n        "values":[]\r\n        },\r\n        {\r\n        "filter_identifier":"in",\r\n        "column_identifier":"certificate_id",\r\n        "values":[3292682707,3292682692,3292682697]\r\n        }\r\n    ],\r\n    "sources": {\r\n      "include_all_sub_accounts": true,\r\n      "sub_accounts": [],\r\n      "divisions":[]\r\n    }        \r\n    }\r\n}'

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
201 Created
{
  "report_identifier": "e62b02f3-97f9-4fa1-9314-f9ecfdcaf5d7",
  "message": "Successfully created Custom Report"
}
400 Bad request
{
"code": "missing_mandatory_fields",
"message": "Please provide values for mandatory fields"
}
400 Invalid request
{
"code": "invalid_request",
"message": "Please provide correct input for fields: [|display_name has an invalid value|]"
}
400 Already exists
{ 
   "code": "report_exists", 
   "message": "Report already exists"
}
400 Missing field
{
"code": "missing_mandatory_fields",
"message": "Please provide values for mandatory fields"
}
400 Invalid value
{
"code": "invalid_request",
"message": "Please provide correct input for fields: [|run_until has an invalid value|]"
}
400 Invalid date
{
"code": "invalid_date",
"message": "Backdated run_until is not allowed"
}
400 Format unsupported
{
"code": "report_format_inapplicable",
"message": "The given report format is not applicable for the template/report."
}
400 Missing format
{
"code": "missing_mandatory_fields",
"message": "Please provide values for mandatory fields"
}
400 Empty format
{
"code": "invalid_request",
"message": "Please provide correct input for fields: [|format must contain at least 1 item|]"
}
400 Invalid report type
{
"code": "invalid_report_type",
"message": "Invalid report_type specified"
}
400 Invalid column
{
"code": "invalid_column_identifiers",
"message": "Invalid column identifiers specified"
}
400 Invalid schedule
{
"code": "invalid_schedule",
"message": "Provided schedule values are not correct"
}
401 Invalid user
{
"code": "user_authentication_error",
"message": "User is not authenticated."
}
403 Forbidden
{
    "code": "user_forbidden",
    "message": "User does not have the required permission."
}
403 Not enabled
{
    "code": "custom_reports_not_enabled",
    "message": "Custom reports is not enabled"
}

Параметры запроса

Имя Обязательный/Необязательный Тип Описание
display_name обязательный string Имя, которое будет отображаться в отчете.
schedule обязательный object Контейнер.
.. frequency обязательный string Периодичность создания отчетов. Возможные значения: ON_DEMAND, WEEKLY, MONTHLY. Значения вводятся с учетом регистра клавиатуры.
.. weekday_to_run обязательный string День недели создания отчета. Возможные значения: SUNDAYSATURDAY. Значения вводятся с учетом регистра клавиатуры. Этот параметр не требуется, если для параметра frequency задано значение ON_DEMAND.
.. weekday_frequency обязательный string Неделя месяца, заданная для создания отчета. Возможные значения: FIRST, SECOND, THIRD, FOURTH, LAST. Значения вводятся с учетом регистра клавиатуры.
.. run_until необязательный date Дата завершения создания данного отчета. Формат: ГГ-ММ-ДД. Если значение не указано, отчет будет создаваться непрерывно.
format обязательный string Тип файла отчета. Возможные значения: CSV и JSON.
report_metadata обязательный object Контейнер
.. report_type обязательный string Тип создаваемого отчета.
.. columns обязательный object Контейнер.
.. .. identifier обязательный string Идентификатор столбца, поддерживаемого API библиотеки отчетов. Список всех поддерживаемых столбцов см. в разделе Столбцы API библиотеки отчетов.
.. filters необязательный object Контейнер.
.. .. filter_identifier обязательный string Идентификатор для использования при фильтрации. Информацию об использовании фильтров см. в разделе «Создание отчетов библиотеки с фильтрами».
.. .. column_identifier обязательный string Идентификаторы столбцов, указанные для использования при фильтрации. Более подробную информацию об использовании фильтров см. в разделе «Создание отчетов библиотеки с фильтрами».
.. .. values обязательный string/lint Указанные в столбцах значения для использования при фильтрации. Более подробную информацию об использовании фильтров см. в разделе «Создание отчетов библиотеки с фильтрами».
.. sources необязательный object Контейнер.
.. .. include_all_sub_accounts обязательный boolean Следует ли включать все субучетные записи при создании отчета. Возможные значения: TRUE или FALSE.
.. .. sub_accounts обязательный integer Идентификатор субучётная запись, который необходимо указать для включения его при создании отчета.
.. .. divisions обязательный integer Подразделение субучётная запись, которое необходимо включить при создании отчета.

Параметры ответного сообщения

Имя Тип Описание
.. report_identifier uuid Идентификатор отчета.
.. message string Сообщение об успешном создании с именем отображаемого отчета.