acmev02 0.1.0

ACME client library to issue, renew and revoke TLS certificates.
Documentation
use std::collections::HashMap;
use serde::{self, Serialize, Deserialize};
use serde_json::Value;

/// Problem detail document for HTTP APIs.
/// This holds error responses from ACMEv02 servers using the format described in
/// [RFC 7807](https://tools.ietf.org/html/rfc7807).
#[derive(Debug, Serialize, Deserialize)]
pub struct AcmeProblem {
    /// A URI reference that identifies the problem type. The URI should provide human-readable documentation for the
    /// problem type this member is not present, its value is assumed to be "about:blank".
    /// 
    /// This is named `type` in RFC 7807; it is renamed here to avoid conflict with the Rust `type` keyword.
    #[serde(rename="type")]
    pub problem_type: Option<String>,

    /// A short, human-readable summary of the problem type.  It SHOULD NOT change from occurrence to occurrence of the
    /// problem, except for purposes of localization (e.g., using proactive content negotiation).
    pub title: Option<String>,

    /// The HTTP status code generated by the origin server for this occurrence of the problem.
    pub status: Option<u16>,

    /// A human-readable explanation specific to this occurrence of the problem.
    pub detail: Option<String>,

    /// A URI reference that identifies the specific occurrence of the problem.  It may or may not yield further
    /// information if dereferenced.
    pub instance: Option<String>,

    /// Additional fields present that are not predefinied by RFC 7807.
    #[serde(flatten)]
    pub additional_fields: HashMap<String, Value>,
}