certcenter

package module
v0.0.0-...-8172c7c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 13, 2019 License: MIT Imports: 10 Imported by: 0

README

API Reference Go Report Card

It is quite easy to use CertCenter's API with your Go projects.
We recommend to get the source via a go get certcenter.com/go.

package main

import (
	"fmt"
	"io/ioutil"
	certcenter "certcenter.com/go"
)

/* Set your Authorization Token
 */
func init() {
	certcenter.Bearer = "aValidToken.oauth2.certcenter.com"
}

func main() {

	// Get a Quote
	res, _ := certcenter.Quote(&certcenter.QuoteRequest{
		ProductCode: "DigiCert.SecureSiteEV",
		SubjectAltNameCount: 0,
		ValidityPeriod: 24,
		ServerCount: 1,
	})
	fmt.Println(res)

	// Validate a CSR (PEM-encoded PKCS#10)
	csr, _ := ioutil.ReadFile("csr")
	res, _ := certcenter.ValidateCSR(&certcenter.ValidateCSRRequest{CSR: string(csr)})
	fmt.Println(res)

	return
}

Find more examples and detailed information: https://api.certcenter.help/v1/reference

Have fun!

Documentation

Index

Constants

View Source
const (
	// CC_PARAM_TYPE_QS is QueryString (eg. ?CertCenterOrderId=123)
	CC_PARAM_TYPE_QS = 1 << iota
	// CC_PARAM_TYPE_PATH is Path (eg. /:CertCenterOrderId/)
	CC_PARAM_TYPE_PATH
	// CC_PARAM_TYPE_BODY is Body (JSON POST)
	CC_PARAM_TYPE_BODY
)

Variables

View Source
var Bearer string

Bearer represents the authentication token you're going to use

View Source
var KvStoreAuthorizationKey string

KvStoreAuthorizationKey need to be set if you want to use CertCenter's free key-value database, please ask your partner manager or our customer support team to send you an "AlwaysOnSSL KV-Storage Authorization-Key"

Functions

This section is empty.

Types

type Approver

type Approver struct {
	ApproverEmail string
	ApproverType  string `json:",omitempty"` // Domain or Generic
}

DomainApprover contains pairs of valid approver information

type ApproverListRequest

type ApproverListRequest struct {
	CommonName  string
	ProductCode string `json:",omitempty"`
	DNSNames    string `json:",omitempty"`
}

ApproverListResult represents a GET /ApproverList request

type ApproverListResult

type ApproverListResult struct {
	BasicResultInfo
	// New approver information structure to
	// better implement BR 3.2.2.4 requirements
	DomainApprovers *DomainApprovers `json:",omitempty"`
	// Keep this legacy structure for backward compatibility reasons
	ApproverList []Approver `json:",omitempty"`
}

ApproverListRequest represents a GET /ApproverList response

func ApproverList

func ApproverList(request *ApproverListRequest) (*ApproverListResult, error)

ApproverList will fetch a list of valid email addresses for a particular CommonName and ProductCode

type BaseDomainRequest

type BaseDomainRequest struct {
	FQDN string `json:"fqdn"`
}

type BaseDomainResult

type BaseDomainResult struct {
	FQDN   string `json:"fqdn"`
	Domain string `json:"domain"`
}

func BaseDomain

func BaseDomain(request *BaseDomainRequest) (*BaseDomainResult, error)

BaseDomain allows you to fetch a registered base domain for a FQDN

type BasicResultInfo

type BasicResultInfo struct {
	Success bool `json:"success"`
	Message string
	// if !Success, ErrorId and/or ErrorField may be provided
	ErrorId    int
	ErrorField string
	// Scheme validation results
	Msg string `json:"msg"`
	SchemeValidationErrors
}

BasicResultInfo represents the default values included in each resultset

type BillingInfo

type BillingInfo struct {
	Price      float32
	Currency   string
	Status     string
	InvoiceRef string // if available (Status == cleared)
}

type ConfigurationAssessment

type ConfigurationAssessment struct {
	Engine          string
	Ranking         string
	Effective       time.Time
	CriteriaVersion string
}

type Contact

type Contact struct {
	Title               string               `json:",omitempty"`
	FirstName           string               `json:",omitempty"`
	LastName            string               `json:",omitempty"`
	OrganizationName    string               `json:",omitempty"`
	OrganizationAddress *OrganizationAddress `json:",omitempty"`
	Phone               string               `json:",omitempty"`
	Fax                 string               `json:",omitempty"`
	Email               string               `json:",omitempty"`
}

Contact represents a generic Contact type (for AdminContact and TechContact)

type ContactInfoPair

type ContactInfoPair struct {
	AdminContact Contact
	TechContact  Contact
}

type CreateUserRequest

type CreateUserRequest struct {
	UserData
}

CreateUserRequest represents a POST /User request https://developers.certcenter.com/v1/reference#createuser

type CreateUserResult

type CreateUserResult struct {
	BasicResultInfo
	Id       int64
	FullName string
	Username string
	Roles    []string
}

CreateUserResult represents a POST /User response

func CreateUser

func CreateUser(request *CreateUserRequest) (*CreateUserResult, error)

CreateUser creates a new user and assign the desired rights

type CreateVoucherRequest

type CreateVoucherRequest struct {
	OrderParameters OrderParameters
}

CreateVoucherRequest represents a POST /Voucher request https://developers.certcenter.com/v1/reference#createvoucher

type CreateVoucherResult

type CreateVoucherResult struct {
	BasicResultInfo
	VoucherCode     string
	OrderParameters OrderParameters
}

CreateVoucherResult represents a POST /Voucher response

func CreateVoucher

func CreateVoucher(request *CreateVoucherRequest) (*CreateVoucherResult, error)

CreateVoucher creates a coupon code which can later be redeemded.

type DCVStatus

type DCVStatus struct {
	DomainControlValidationID int32
	Domain                    string
	Status                    string
	ApproverEmail             string
	LastCheckDate             time.Time
	LastUpdateDate            time.Time
}

type DNSAuthDetails

type DNSAuthDetails struct {
	DNSEntry string
	DNSValue string
	Example  string
	FQDNs    []string
}

type DNSDataRequest

type DNSDataRequest struct {
	ProductCode string
	CSR         string
}

DNSDataRequest represents a POST /DNSData request https://developers.certcenter.com/v1/reference#dnsdata

type DNSDataResult

type DNSDataResult struct {
	BasicResultInfo
	DNSAuthDetails struct {
		PointerType string // =CNAME
		DNSEntry    string
		DNSValue    string
		Example     string
	}
}

DNSDataResult represents a POST /DNSData response

func DNSData

func DNSData(request *DNSDataRequest) (*DNSDataResult, error)

DNSData retrieve appropriate data for DNS based validation (AlwaysOnSSL/DigiCert EE only)

type DeleteOrderRequest

type DeleteOrderRequest struct {
	CertCenterOrderID int64
}

DeleteOrderRequest represents a DELETE /Order/:CertCenterOrderID request

type DeleteOrderResult

type DeleteOrderResult struct {
	BasicResultInfo
}

DeleteOrderResult represents a DELETE /Order/:CertCenterOrderID response

func DeleteOrder

func DeleteOrder(request *DeleteOrderRequest) (*DeleteOrderResult, error)

DeleteOrder gives you the capability to cancel a order

type DeleteUserRequest

type DeleteUserRequest struct {
	UsernameOrUserId string
}

DeleteUserRequest represents a GET /User/:UsernameOrUserId request https://developers.certcenter.com/v1/reference#deleteuser

type DeleteUserResult

type DeleteUserResult struct {
	BasicResultInfo
	Id int64
}

DeleteUserResult represents a DELETE /User/:UsernameOrUserId response

func DeleteUser

func DeleteUser(request *DeleteUserRequest) (*DeleteUserResult, error)

DeleteUser allows you to delete an user

type DeleteVoucherRequest

type DeleteVoucherRequest struct {
	VoucherCode string
}

DeleteVoucherRequest represents a DELETE /Voucher/:VoucherCode request https://developers.certcenter.com/v1/reference#deletevoucher

type DeleteVoucherResult

type DeleteVoucherResult struct {
	OrderResult
}

DeleteVoucherResult represents a DELETE /Voucher/:VoucherCode response

func DeleteVoucher

func DeleteVoucher(request *DeleteVoucherRequest) (*DeleteVoucherResult, error)

DeleteVoucher allows you to invalidate a particular voucher code.

type DomainApproverItem

type DomainApproverItem struct {
	Domain    string     `json:",omitempty"`
	Approvers []Approver `json:",omitempty"`
}

type DomainApprovers

type DomainApprovers struct {
	DomainApprover []DomainApproverItem `json:",omitempty"`
}

DomainApprovers contains the DomainApprover structure

type EmailAuthDetails

type EmailAuthDetails struct {
	ApproverEmail       string
	ApproverNotifyDate  time.Time
	ApproverConfirmDate time.Time
}

type FileAuthDetails

type FileAuthDetails struct {
	FileContents string
	FileName     string
	FilePath     string
	PollStatus   string
	LastPollDate time.Time
	FQDNs        []string
}

type FileDataRequest

type FileDataRequest struct {
	ProductCode string
	CSR         string
}

FileDataRequest represents a POST /FileData request https://developers.certcenter.com/v1/reference#filedata

type FileDataResult

type FileDataResult struct {
	BasicResultInfo
	FileAuthDetails struct {
		FileContents string
		FileName     string
		FilePath     string
	}
}

FileDataResult represents a POST /FileData response

func FileData

func FileData(request *FileDataRequest) (*FileDataResult, error)

FileData retrieve appropriate data for FILE based validation (AlwaysOnSSL/DigiCert EE only)

type Fulfillment

type Fulfillment struct {
	StartDate     time.Time
	EndDate       time.Time
	CSR           string
	Certificate   string
	Intermediate  string
	DownloadLinks struct {
		Certificate  string
		Intermediate string
		IconScript   string
		PKCS7        string
	}
}

type GetModifiedOrdersRequest

type GetModifiedOrdersRequest struct {
	FromDate                 time.Time
	ToDate                   time.Time
	IncludeFulfillment       bool `url:"includeFulfillment"`
	IncludeOrderParameters   bool `url:"includeOrderParameters"`
	IncludeBillingDetails    bool `url:"includeBillingDetails"`
	IncludeContacts          bool `url:"includeContacts"`
	IncludeOrganizationInfos bool `url:"includeOrganizationInfos"`
	IncludeDCVStatus         bool `url:"includeDCVStatus"`
}

GetModifiedOrdersRequest represents a GET /ModifiedOrders request

type GetModifiedOrdersResult

type GetModifiedOrdersResult struct {
	OrderInfos []OrderInfo
	BasicResultInfo
}

GetModifiedOrdersResult represents a GET /ModifiedOrders response

func GetModifiedOrders

func GetModifiedOrders(request *GetModifiedOrdersRequest) (*GetModifiedOrdersResult, error)

GetModifiedOrders fetches modified orders. You can provide a timespan to specify which changes your're interested in

type GetOrderRequest

type GetOrderRequest struct {
	CertCenterOrderID        int64
	IncludeFulfillment       bool `url:"includeFulfillment"`
	IncludeOrderParameters   bool `url:"includeOrderParameters"`
	IncludeBillingDetails    bool `url:"includeBillingDetails"`
	IncludeContacts          bool `url:"includeContacts"`
	IncludeOrganizationInfos bool `url:"includeOrganizationInfos"`
	IncludeDCVStatus         bool `url:"includeDCVStatus"`
}

GetOrderRequest represents a GET /Order/:CertCenterOrderID request

type GetOrderResult

type GetOrderResult struct {
	BasicResultInfo
	OrderInfo OrderInfo
}

GetOrderResult represents a GET /Order/:CertCenterOrderID response

func GetOrder

func GetOrder(request *GetOrderRequest) (*GetOrderResult, error)

GetOrder gives you the capability to query a particular order

type GetOrdersRequest

type GetOrdersRequest struct {
	Status                   string
	ProductType              string
	CommonName               string
	IncludeFulfillment       bool `url:"includeFulfillment"`
	IncludeOrderParameters   bool `url:"includeOrderParameters"`
	IncludeBillingDetails    bool `url:"includeBillingDetails"`
	IncludeContacts          bool `url:"includeContacts"`
	IncludeOrganizationInfos bool `url:"includeOrganizationInfos"`
	IncludeDCVStatus         bool `url:"includeDCVStatus"`
}

GetOrdersRequest represents a GET /Orders request

type GetOrdersResult

type GetOrdersResult struct {
	BasicResultInfo
	OrderInfos []OrderInfo
	Meta       struct {
		ItemsAvailable int64
		ItemsPerPage   int64
		Page           int64
		OrderBy        string
		OrderDir       string
		Status         []string
		ProductType    []string
		CommonName     string
	} `json:"_meta"`
}

GetOrdersResult represents a GET /Orders response

func GetOrders

func GetOrders(request *GetOrdersRequest) (*GetOrdersResult, error)

GetOrders gives you the capability to query and filter your orders

type GetUserRequest

type GetUserRequest struct {
	UserData
}

GetUserRequest represents a GET /User/:UsernameOrUserId request https://developers.certcenter.com/v1/reference#getuser

type GetUserResult

type GetUserResult struct {
	BasicResultInfo
	Id int64
}

GetUserResult represents a GET /User/:UsernameOrUserId response

func GetUser

func GetUser(request *GetUserRequest) (*GetUserResult, error)

GetUser inquires information about a certain user or even all your users (if you keep UserData.UsernameOrUserId blank)

type GetVoucherRequest

type GetVoucherRequest struct {
	VoucherCode string
}

GetVoucherRequest represents a GET /Voucher/:VoucherCode request https://developers.certcenter.com/v1/reference#getvoucher

type GetVouchersResult

type GetVouchersResult struct {
	BasicResultInfo
	Vouchers []struct {
		RedeemInfo struct {
			RedeemDate        time.Time
			CertCenterOrderID int64
		}
		CreationDate    time.Time
		OrderParameters OrderParameters
		VoucherCode     string
		Redeemed        bool
	}
}

GetVouchersResult represents a GET /Vouchers and a GET /Voucher/:VoucherCode response https://developers.certcenter.com/v1/reference#getvouchers https://developers.certcenter.com/v1/reference#getvoucher

func GetVoucher

func GetVoucher(request *GetVoucherRequest) (*GetVouchersResult, error)

GetVoucher inquires information about a particular voucher.

func GetVoucherAnonymously

func GetVoucherAnonymously(request *GetVoucherRequest) (*GetVouchersResult, error)

GetVoucherAnonymously inquires information about a particular voucher.

func GetVoucherOrderAnonymously

func GetVoucherOrderAnonymously(request *GetVoucherRequest) (*GetVouchersResult, error)

GetVoucherOrderAnonymously inquires information about a order initiated by func RedeemVoucher(..).

func GetVouchers

func GetVouchers() (*GetVouchersResult, error)

GetVouchers inquires information about all your voucher codes.

type KeyValueStoreRequest

type KeyValueStoreRequest struct {
	Key   string `json:"filename,omitempty"`
	Value string `json:"hash"`
}

KeyValueStoreRequest represents a basic kv-storage request

type KeyValueStoreResult

type KeyValueStoreResult struct {
	Message string `json:"message"`
}

KeyValueStoreResult represents a basic kv-storage response

func KvStore

func KvStore(request *KeyValueStoreRequest) (*KeyValueStoreResult, error)

KvStore allows you to use mod_fauth with CertCenter's free kv-storage

type LimitResult

type LimitResult struct {
	BasicResultInfo
	LimitInfo struct {
		Limit float64
		Used  float64
	}
}

LimitResult represents a GET /Limit response

func Limit

func Limit() (*LimitResult, error)

Limit inquires information about your current limit and used amount

type OrderInfo

type OrderInfo struct {
	CertCenterOrderID       int64
	CommonName              string
	OrderStatus             OrderStatus
	ConfigurationAssessment ConfigurationAssessment
	BillingInfo             BillingInfo
	OrderParameters         OrderParameters
	ContactInfo             ContactInfoPair
	OrganizationInfo        OrganizationInfo
	Fulfillment             Fulfillment
	DNSAuthDetails          DNSAuthDetails
	FileAuthDetails         FileAuthDetails
	EmailAuthDetails        EmailAuthDetails
	DCVStatus               []DCVStatus
}

OrderInfo contains all information about a certain order

type OrderParameters

type OrderParameters struct {
	CSR                    string           `json:",omitempty"` // PEM-encoded PKCS#10
	IsCompetitiveUpgrade   bool             `json:",omitempty"`
	IsRenewal              bool             `json:",omitempty"`
	PartnerOrderID         string           `json:",omitempty"`
	ProductCode            string           `json:",omitempty"`
	ServerCount            int              `json:",omitempty"`
	SignatureHashAlgorithm string           `json:",omitempty"`
	SubjectAltNameCount    int              `json:",omitempty"`
	SubjectAltNames        []string         `json:",omitempty"`
	ValidityPeriod         int              `json:",omitempty"` // 12 or 24 month (days for AlwaysOnSSL, min. 180, max. 365)
	DVAuthMethod           string           `json:",omitempty"` // DNS, EMAIL, FILE
	DomainApprovers        *DomainApprovers `json:",omitempty"` // Domain Control Validation
	ApproverEmail          string           `json:",omitempty"` // deprecated
}

OrderParameters represents generic Order Parameters

type OrderRequest

type OrderRequest struct {
	OrganizationInfo *OrganizationInfo `json:",omitempty"`
	OrderParameters  *OrderParameters  `json:",omitempty"`
	AdminContact     *Contact          `json:",omitempty"`
	TechContact      *Contact          `json:",omitempty"`
}

OrderRequest represents a POST /Order request

type OrderResult

type OrderResult struct {
	BasicResultInfo
	Timestamp         time.Time
	CertCenterOrderID int64
	OrderParameters   struct {
		CSR                    string // PEM-encoded PKCS#10
		IsCompetitiveUpgrade   bool
		IsRenewal              bool
		PartnerOrderID         string
		ProductCode            string
		ServerCount            int
		SignatureHashAlgorithm string
		SubjectAltNameCount    int
		SubjectAltNames        []string
		ValidityPeriod         int    // 12 or 24 month (days for AlwaysOnSSL, min. 180, max. 365)
		DVAuthMethod           string // DNS, EMAIL, FILE
	}
	// AlwaysOnSSL (Encryption Everywhere) only:
	Fulfillment struct {
		Certificate  string
		PKCS7        string `json:"Certificate_PKCS7"`
		Intermediate string
	}
}

OrderResult represents a POST /Order response

func Order

func Order(request *OrderRequest) (*OrderResult, error)

Order allows you to submit orders for regular certificates as well as S/MIME and AlwaysOnSSL certificates

type OrderStatus

type OrderStatus struct {
	MajorStatus string
	MinorStatus string
	OrderDate   time.Time
	UpdateDate  time.Time
	StartDate   time.Time
	EndDate     time.Time
	Progress    int
}

type OrganizationAddress

type OrganizationAddress struct {
	AddressLine1 string `json:",omitempty"`
	PostalCode   string `json:",omitempty"`
	City         string `json:",omitempty"`
	Region       string `json:",omitempty"`
	Country      string `json:",omitempty"`
	Phone        string `json:",omitempty"`
	Fax          string `json:",omitempty"`
}

OrganizationAddress holds general information about a organization

type OrganizationInfo

type OrganizationInfo struct {
	OrganizationName    string               `json:",omitempty"`
	OrganizationAddress *OrganizationAddress `json:",omitempty"`
}

OrganizationInfo represents organizational information

type ProductDetailsRequest

type ProductDetailsRequest struct {
	ProductCode string
}

ProductDetailsRequest represents a GET /ProductDetails request

type ProductDetailsResult

type ProductDetailsResult struct {
	BasicResultInfo
	ProductDetails struct {
		CA                string
		Currency          string
		Features          []string
		Licenses          int
		MaxValidityPeriod int
		Price             float64
		ProductCode       string
		ProductName       string
		RefundPeriod      int
		RenewPeriod       int
		SANFeatures       []string
		SANHostPrice      float64
		SANMaxHosts       int
		SANPackagePrice   float64
		SANPackageSize    int
	}
}

ProductDetailsResult represents a GET /ProductDetails response

func ProductDetails

func ProductDetails(ProductCode string) (*ProductDetailsResult, error)

ProductDetails inquires detailed information on a particular ProductCode

type ProductsResult

type ProductsResult struct {
	BasicResultInfo
	Products []string
}

ProductsResult represents a GET /Products response

func Products

func Products() (*ProductsResult, error)

Products allows you to fetch a list of valid ProductCodes

type ProfileResult

type ProfileResult struct {
	AuthType        string
	AuthorizationID int64
	Country         string
	Currency        string
	CustomerID      int64
	Locale          string
	OAuth2Token     string `json:"OAuth2_Token"`
	Scope           string
	Timezone        string
}

ProfileResult represents a GET /Profile response

func Profile

func Profile() (*ProfileResult, error)

Profile fetches basic informations about your profile

type PutApproverEmailRequest

type PutApproverEmailRequest struct {
	CertCenterOrderID int64
	ApproverEmail     string
}

PutApproverEmailRequest represents a PUT /ApproverEmail request

type PutApproverEmailResult

type PutApproverEmailResult struct {
	BasicResultInfo
}

PutApproverEmailResult represents a PUT /ApproverEmail response

func PutApproverEmail

func PutApproverEmail(request *PutApproverEmailRequest) (*PutApproverEmailResult, error)

PutApproverEmail allows you to reset the email address of the approver

type QuoteRequest

type QuoteRequest struct {
	ProductCode         string
	SubjectAltNameCount int
	ValidityPeriod      int
	ServerCount         int
}

QuoteRequest represents a GET /Quote request

type QuoteResult

type QuoteResult struct {
	BasicResultInfo
	Currency        string
	OrderParameters struct {
		ProductCode         string
		ServerCount         int
		SubjectAltNameCount int
		ValidityPeriod      int
	}
	Price float64
}

QuoteResult represents a GET /Quote response

func Quote

func Quote(request *QuoteRequest) (*QuoteResult, error)

Quote allows you to generate an individual real-time quotation

type RedeemVoucherRequest

type RedeemVoucherRequest struct {
	VoucherCode      string
	OrganizationInfo *OrganizationInfo `json:",omitempty"`
	OrderParameters  *OrderParameters  `json:",omitempty"`
	AdminContact     *Contact          `json:",omitempty"`
	TechContact      *Contact          `json:",omitempty"`
}

RedeemVoucherRequest represents a POST /Redeem request https://developers.certcenter.com/v1/reference#redeemvoucher

type RedeemVoucherResult

type RedeemVoucherResult struct {
	OrderResult
}

RedeemVoucherResult represents a POST /Redeem response

func RedeemVoucher

func RedeemVoucher(request *RedeemVoucherRequest) (*RedeemVoucherResult, error)

RedeemVoucher let you redeem a previously generated voucher code

type ReissueOrderParameters

type ReissueOrderParameters struct {
	CSR                    string
	DVAuthMethod           string
	SignatureHashAlgorithm string
	DomainApprovers        *DomainApprovers `json:",omitempty"` // Domain Control Validation
}

ReissueOrderParameters represents the required OrderParameters for POST /Reissue

type ReissueRequest

type ReissueRequest struct {
	CertCenterOrderID int64
	OrderParameters   ReissueOrderParameters
	ReissueEmail      string
}

ReissueRequest represents a POST /Reissue request Description:

https://developers.certcenter.com/reference#reissue

type ReissueResult

type ReissueResult struct {
	BasicResultInfo
}

ReissueResult represents a POST /Reissue response

func Reissue

func Reissue(request *ReissueRequest) (*ReissueResult, error)

Reissue allows you to replace an existent certificate in case of a key loss or algorithm/key-size upgrade

type ResendApproverEmailRequest

type ResendApproverEmailRequest struct {
	CertCenterOrderID int64
}

ResendApproverEmailRequest represents a POST /ApproverEmail request

type ResendApproverEmailResult

type ResendApproverEmailResult struct {
	BasicResultInfo
}

ResendApproverEmailResult represents a POST /ApproverEmail response

func ResendApproverEmail

func ResendApproverEmail(request *ResendApproverEmailRequest) (*ResendApproverEmailResult, error)

ResendApproverEmail allows you to resend the approver email to the approvers address

type RevokeRequest

type RevokeRequest struct {
	CertCenterOrderID int64
	// optional parameters
	RevokeReason string `json:",omitempty"`
	Certificate  string `json:",omitempty"` // PEM encoded X.509 certificate
}

RevokeRequest represents a DELETE /Revoke request

type RevokeResult

type RevokeResult struct {
	BasicResultInfo
}

RevokeResult represents a DELETE /Revoke response

func Revoke

func Revoke(request *RevokeRequest) (*RevokeResult, error)

Revoke allows you to mark a certificate as invalid.

type SchemeValidationErrors

type SchemeValidationErrors struct {
	Errors []struct {
		Msg    string `json:"msg"`
		Status string `json:"status"`
		Key    string `json:"key"`
		SchemeValidationErrors
	}
}

SchemeValidationErrors provides basic fields for scheme validation errors

type UpdateUserRequest

type UpdateUserRequest struct {
	UserData
}

UpdateUserRequest represents a POST /User/:UsernameOrUserId request https://developers.certcenter.com/v1/reference#updateuser

type UpdateUserResult

type UpdateUserResult struct {
	BasicResultInfo
	Id int64
}

UpdateUserResult represents a POST /User/:UsernameOrUserId response

func UpdateUser

func UpdateUser(request *UpdateUserRequest) (*UpdateUserResult, error)

UpdateUser updates an user

type UserAgreementRequest

type UserAgreementRequest struct {
	ProductCode string
}

UserAgreementRequest represents a GET /ProductDetails response

type UserAgreementResult

type UserAgreementResult struct {
	BasicResultInfo
	ProductCode   string
	UserAgreement string
}

UserAgreementResult represents a GET /ProductDetails request

func UserAgreement

func UserAgreement(ProductCode string) (*UserAgreementResult, error)

UserAgreement fetches the latest subscriber agreement from the CA

type UserData

type UserData struct {
	UsernameOrUserId string   `json:",omitempty"`
	FullName         string   `json:",omitempty"`
	Email            string   `json:",omitempty"`
	Username         string   `json:",omitempty"`
	Password         string   `json:",omitempty"`
	Roles            []string `json:",omitempty"`
	Mobile           string   `json:",omitempty"`
	Timezone         string   `json:",omitempty"`
	Locale           string   `json:",omitempty"`

	// Available on user data retrieval
	SpecialProductAvailability bool   `json:",omitempty"`
	Scope                      string `json:",omitempty"`
	Active                     bool   `json:",omitempty"`
	TwoFactorEnabled           bool   `json:",omitempty"`
	InsertDate                 int64  `json:",omitempty"` // Unix time
	LastUpdateDate             int64  `json:",omitempty"` // Unix time
	LastPasswordChangeDate     int64  `json:",omitempty"` // Unix time
}

UserData represents a basic field-set for /User transactions

type ValidateCSRRequest

type ValidateCSRRequest struct {
	CSR string // PEM-encoded PKCS#10
}

ValidateCSRRequest represents a POST /ValidateCSR request

type ValidateCSRResult

type ValidateCSRResult struct {
	BasicResultInfo
	ParsedCSR struct {
		CommonName             string
		Organization           string
		OrganizationUnit       string
		Email                  string
		State                  string
		Locality               string
		Country                string
		KeyLength              int
		SignaturAlgorithm      string
		KeyEncryptionAlgorithm string
		HashMD5                string
		HashSHA256             string
		UniqueValue            string
	}
}

ValidateCSRResult represents a POST /ValidateCSR response

func ValidateCSR

func ValidateCSR(request *ValidateCSRRequest) (*ValidateCSRResult, error)

ValidateCSR allows you to parse and validate a PEM-encoded PKCS#10

type ValidateNameRequest

type ValidateNameRequest struct {
	CommonName string
	// PLEASE DO NOT USE THIS FUNCTIONALITY IN PRODUCTIVE ENVIRONMENTS. THIS IS FOR TESTING PURPOSES ONLY.
	// WE STRONGLY RECOMMEND YOU TO GENERATE YOUR OWN PRIVATE KEYS TO ENSURE MAXIMUM SECURITY.
	GeneratePrivateKey bool
}

ValidateNameRequest represents a POST /ValidateName request https://developers.certcenter.com/v1/reference#validatename

type ValidateNameResult

type ValidateNameResult struct {
	BasicResultInfo
	IsQualified bool
	// If ValidateNameRequest contained a GeneratePrivateKey=true
	// this two values are included in the result:
	CSR        string
	PrivateKey string
}

ValidateNameResult represents a POST /ValidateName response

func ValidateName

func ValidateName(request *ValidateNameRequest) (*ValidateNameResult, error)

ValidateName checks a CommonName against the DigiCert EE blacklist (AlwaysOnSSL/DigiCert EE only)

type VulnerabilityAssessmentRequest

type VulnerabilityAssessmentRequest struct {
	CertCenterOrderID      int64
	ServiceStatus          string
	EmailNotificationLevel string
}

VulnerabilityAssessmentRequest represents a POST /VulnerabilityAssessment request https://developers.certcenter.com/v1/reference#vulnerabilityassessment

type VulnerabilityAssessmentRescanRequest

type VulnerabilityAssessmentRescanRequest struct {
	CertCenterOrderID int64
}

VulnerabilityAssessmentRescanRequest represents a GET /VulnerabilityAssessmen/:CertCenterOrderID request https://developers.certcenter.com/v1/reference#vulnerabilityassessmentrescan

type VulnerabilityAssessmentRescanResult

type VulnerabilityAssessmentRescanResult struct {
	BasicResultInfo
}

VulnerabilityAssessmentRescanResult represents a GET /VulnerabilityAssessment/:CertCenterOrderID response

func VulnerabilityAssessmentRescan

func VulnerabilityAssessmentRescan(request *VulnerabilityAssessmentRescanRequest) (*VulnerabilityAssessmentRescanResult, error)

VulnerabilityAssessmentRescan let you initiate a re-scan for a certain order

type VulnerabilityAssessmentResult

type VulnerabilityAssessmentResult struct {
	BasicResultInfo
}

VulnerabilityAssessmentResult represents a POST /VulnerabilityAssessment response

func VulnerabilityAssessment

func VulnerabilityAssessment(request *VulnerabilityAssessmentRequest) (*VulnerabilityAssessmentResult, error)

VulnerabilityAssessment allows you to configure the Vulnerability Assessment (DigiCert certificates, only!)

Directories

Path Synopsis
Package query implements encoding of structs into URL query parameters.
Package query implements encoding of structs into URL query parameters.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL