-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Haskell bindings for the Cloudflare API -- -- Haskell interface to the Cloudflare API using auth tokens and the -- Cloudflare API v4. @package cloudflare-api @version 0.1.0.0 module Network.Cloudflare.Types -- | Cloudflare API token see -- https://developers.cloudflare.com/fundamentals/api/get-started/create-token/ -- for instructions on creating a token data CloudflareAuth CloudflareAuth :: Text -> CloudflareAuth [cloudflareAuthToken] :: CloudflareAuth -> Text -- | Cloudflare account information data Account Account :: Text -> Text -> Account -- | Cloudflare account ID [accountId] :: Account -> Text -- | Cloudflare account name [accountName] :: Account -> Text -- | Result type for Cloudflare API calls that don't return any extra data -- and wrap the result in a "result" field newtype ResultOnly a ResultOnly :: a -> ResultOnly a [resultOnlyResult] :: ResultOnly a -> a -- | Result type for Cloudflare API call errors data ResponseError ResponseError :: Int -> Text -> ResponseError [responseErrorCode] :: ResponseError -> Int [responseErrorMessage] :: ResponseError -> Text -- | Additional messages from Cloudflare API calls data ResponseMessage ResponseMessage :: Int -> Text -> ResponseMessage [responseMessageCode] :: ResponseMessage -> Int [responseMessageMessage] :: ResponseMessage -> Text -- | Result information for Cloudflare API calls that return a list of -- results data ResultInfo ResultInfo :: Int -> Int -> Int -> Int -> ResultInfo [resultInfoCount] :: ResultInfo -> Int [resultInfoPage] :: ResultInfo -> Int [resultInfoPerPage] :: ResultInfo -> Int [resultInfoTotalCount] :: ResultInfo -> Int -- | Result type for Cloudflare API calls that returns a result with a list -- of errors, a list of messages, and a success flag data ResultResponse a ResultResponse :: [ResponseError] -> [ResponseMessage] -> Bool -> a -> ResultResponse a [resultErrors] :: ResultResponse a -> [ResponseError] [resultMessages] :: ResultResponse a -> [ResponseMessage] [resultSuccess] :: ResultResponse a -> Bool [resultResult] :: ResultResponse a -> a -- | Result type for Cloudflare API calls that returns a result with meta -- information about the result, a list of errors, a list of messages, -- and a success flag data ResultWithInfo a ResultWithInfo :: ResultInfo -> [ResponseError] -> [ResponseMessage] -> Bool -> a -> ResultWithInfo a [resultWithInfoInfo] :: ResultWithInfo a -> ResultInfo [resultWithInfoErrors] :: ResultWithInfo a -> [ResponseError] [resultWithInfoMessages] :: ResultWithInfo a -> [ResponseMessage] [resultWithInfoSuccess] :: ResultWithInfo a -> Bool [resultWithInfoResult] :: ResultWithInfo a -> a instance GHC.Show.Show Network.Cloudflare.Types.Account instance GHC.Classes.Ord Network.Cloudflare.Types.Account instance GHC.Classes.Eq Network.Cloudflare.Types.Account instance GHC.Show.Show a => GHC.Show.Show (Network.Cloudflare.Types.ResultOnly a) instance GHC.Classes.Ord a => GHC.Classes.Ord (Network.Cloudflare.Types.ResultOnly a) instance GHC.Classes.Eq a => GHC.Classes.Eq (Network.Cloudflare.Types.ResultOnly a) instance GHC.Show.Show Network.Cloudflare.Types.ResponseError instance GHC.Classes.Ord Network.Cloudflare.Types.ResponseError instance GHC.Classes.Eq Network.Cloudflare.Types.ResponseError instance GHC.Show.Show Network.Cloudflare.Types.ResponseMessage instance GHC.Classes.Ord Network.Cloudflare.Types.ResponseMessage instance GHC.Classes.Eq Network.Cloudflare.Types.ResponseMessage instance GHC.Show.Show Network.Cloudflare.Types.ResultInfo instance GHC.Classes.Ord Network.Cloudflare.Types.ResultInfo instance GHC.Classes.Eq Network.Cloudflare.Types.ResultInfo instance GHC.Show.Show a => GHC.Show.Show (Network.Cloudflare.Types.ResultResponse a) instance GHC.Classes.Ord a => GHC.Classes.Ord (Network.Cloudflare.Types.ResultResponse a) instance GHC.Classes.Eq a => GHC.Classes.Eq (Network.Cloudflare.Types.ResultResponse a) instance GHC.Show.Show a => GHC.Show.Show (Network.Cloudflare.Types.ResultWithInfo a) instance GHC.Classes.Ord a => GHC.Classes.Ord (Network.Cloudflare.Types.ResultWithInfo a) instance GHC.Classes.Eq a => GHC.Classes.Eq (Network.Cloudflare.Types.ResultWithInfo a) instance Data.Aeson.Types.FromJSON.FromJSON a => Data.Aeson.Types.FromJSON.FromJSON (Network.Cloudflare.Types.ResultWithInfo a) instance Data.Aeson.Types.FromJSON.FromJSON a => Data.Aeson.Types.FromJSON.FromJSON (Network.Cloudflare.Types.ResultResponse a) instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.Types.ResultInfo instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.Types.ResponseMessage instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.Types.ResponseError instance Data.Aeson.Types.FromJSON.FromJSON a => Data.Aeson.Types.FromJSON.FromJSON (Network.Cloudflare.Types.ResultOnly a) instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.Types.Account module Network.Cloudflare.DNS.Record -- | Create a new DNS record for a zone createDNSRecord :: DNSRecord record => CloudflareAuth -> Text -> CreateDNSRecord record -> IO (Either String (ResultResponse (DNSRecordEntry record))) -- | List DNS records for a zone listDNSRecords :: CloudflareAuth -> Text -> IO (Either String (ResultWithInfo [DNSEntry])) -- | Export a zone's DNS records in BIND format exportDNSRecords :: CloudflareAuth -> Text -> IO Text -- | Import DNS records in BIND format importDNSRecords :: CloudflareAuth -> Text -> Text -> Bool -> IO (Either String (ResultResponse ImportResponse)) -- | Scan DNS records for a zone scanDNSRecords :: CloudflareAuth -> Text -> IO (Either String (ResultResponse ImportResponse)) -- | Delete a DNS record deleteDNSRecord :: CloudflareAuth -> Text -> Text -> IO (Either String (ResultOnly DNSIdentifier)) -- | Get a single DNS record for dnsRecordDetails :: CloudflareAuth -> Text -> Text -> IO (Response (ResultResponse DNSEntry)) -- | Patch a DNS record patchDNSRecord :: DNSRecord record => CloudflareAuth -> Text -> Text -> CreateDNSRecord record -> IO (Either String (ResultResponse DNSEntry)) -- | Update a DNS record updateDNSRecord :: DNSRecord record => CloudflareAuth -> Text -> Text -> CreateDNSRecord record -> IO (Either String (ResultResponse DNSEntry)) data ImportResponse ImportResponse :: Int -> Int -> ImportResponse -- | Number of DNS records added [importResponseRecsAdded] :: ImportResponse -> Int -- | Total number of DNS records parsed [importResponseTotalRecordsParsed] :: ImportResponse -> Int newtype DNSIdentifier DNSIdentifier :: Text -> DNSIdentifier [dnsIdentifierId] :: DNSIdentifier -> Text data DNSEntry ARecordEntry :: DNSRecordEntry ARecord -> DNSEntry AAAARecordEntry :: DNSRecordEntry AAAARecord -> DNSEntry CAARecordEntry :: DNSRecordEntry CAARecord -> DNSEntry CERTRecordEntry :: DNSRecordEntry CERTRecord -> DNSEntry CNAMERecordEntry :: DNSRecordEntry CNAMERecord -> DNSEntry DNSKEYRecordEntry :: DNSRecordEntry DNSKEYRecord -> DNSEntry DSRecordEntry :: DNSRecordEntry DSRecord -> DNSEntry HTTPSRecordEntry :: DNSRecordEntry HTTPSRecord -> DNSEntry LOCRecordEntry :: DNSRecordEntry LOCRecord -> DNSEntry MXRecordEntry :: DNSRecordEntry MXRecord -> DNSEntry NAPTRRecordEntry :: DNSRecordEntry NAPTRRecord -> DNSEntry NSRecordEntry :: DNSRecordEntry NSRecord -> DNSEntry PTRRecordEntry :: DNSRecordEntry PTRRecord -> DNSEntry SMIMEARecordEntry :: DNSRecordEntry SMIMEARecord -> DNSEntry SRVRecordEntry :: DNSRecordEntry SRVRecord -> DNSEntry SSHFPRecordEntry :: DNSRecordEntry SSHFPRecord -> DNSEntry SVCBRecordEntry :: DNSRecordEntry SVCBRecord -> DNSEntry TLSARecordEntry :: DNSRecordEntry TLSARecord -> DNSEntry TXTRecordEntry :: DNSRecordEntry TXTRecord -> DNSEntry URIRecordEntry :: DNSRecordEntry URIRecord -> DNSEntry withDNSEntry :: (forall record. DNSRecord record => DNSRecordEntry record -> a) -> DNSEntry -> a class DNSRecord record dnsRecordToJSON :: DNSRecord record => record -> [Pair] dnsRecordType :: DNSRecord record => record -> Text dnsRecordParse :: DNSRecord record => Object -> Parser record -- | DNS entries returned by the Cloudflare API data DNSRecordEntry record DNSRecordEntry :: record -> Text -> Text -> Maybe Text -> UTCTime -> Text -> Bool -> Maybe Object -> UTCTime -> Bool -> [Text] -> Word32 -> Text -> Text -> DNSRecordEntry record [dnsRecordEntryData] :: DNSRecordEntry record -> record -- | DNS record type [dnsRecordEntryType] :: DNSRecordEntry record -> Text -- | DNS record content [dnsRecordEntryContent] :: DNSRecordEntry record -> Text -- | Comments or notes about the DNS record. This field has no effect on -- DNS responses [dnsRecordEntryComment] :: DNSRecordEntry record -> Maybe Text [dnsRecordEntryCreatedOn] :: DNSRecordEntry record -> UTCTime [dnsRecordEntryId] :: DNSRecordEntry record -> Text [dnsRecordEntryLocked] :: DNSRecordEntry record -> Bool [dnsRecordEntryMeta] :: DNSRecordEntry record -> Maybe Object [dnsRecordEntryModifiedOn] :: DNSRecordEntry record -> UTCTime [dnsRecordEntryProxiable] :: DNSRecordEntry record -> Bool -- | Custom tags for the DNS record. This field has no effect on DNS -- responses. [dnsRecordEntryTags] :: DNSRecordEntry record -> [Text] -- | Time To Live (TTL) of the DNS record in seconds. Setting to 1 means -- automatic. Value must be between 60 and 86400, with the -- minimum reduced to 30 for Enterprise zones. [dnsRecordEntryTTL] :: DNSRecordEntry record -> Word32 -- | Zone identifier [dnsRecordEntryZoneId] :: DNSRecordEntry record -> Text -- | Zone name [dnsRecordEntryZoneName] :: DNSRecordEntry record -> Text -- | Create a new DNS record for a zone data CreateDNSRecord record CreateDNSRecord :: record -> Text -> Bool -> Maybe Text -> [Text] -> Word32 -> CreateDNSRecord record -- | The data for the DNS record [createDNSRecordData] :: CreateDNSRecord record -> record -- | DNS record name (or @ for the zone apex) in Punycode [createDNSRecordName] :: CreateDNSRecord record -> Text -- | Use Cloudflare's proxying for this record [createDNSRecordProxied] :: CreateDNSRecord record -> Bool -- | Comments or notes about the DNS record. This field has no effect on -- DNS responses [createDNSRecordComment] :: CreateDNSRecord record -> Maybe Text -- | Custom tags for the DNS record. This field has no effect on DNS -- responses. Not available in the free plan [createDNSRecordTags] :: CreateDNSRecord record -> [Text] -- | Time To Live (TTL) of the DNS record in seconds. Setting to 1 means -- automatic. Value must be between 60 and 86400, with the -- minimum reduced to 30 for Enterprise zones. [createDNSRecordTTL] :: CreateDNSRecord record -> Word32 -- | RFC 1035 A record data ARecord ARecord :: Text -> ARecord -- | Valid IPv4 address. [aRecordContent] :: ARecord -> Text -- | RFC 3596 AAAA record data AAAARecord AAAARecord :: Text -> AAAARecord -- | Valid IPv6 address. [aaaaRecordContent] :: AAAARecord -> Text -- | RFC 6844 CAA record data CAARecord CAARecord :: Word8 -> Text -> Text -> CAARecord -- | Flags for the CAA record see RFC 6844 section 1 [caaRecordFlags] :: CAARecord -> Word8 -- | Name of the property controlled by this record (e.g.: issue, -- issuewild, iodef). TODO make a specific type [caaRecordTag] :: CAARecord -> Text -- | Value of the record. This field's semantics depend on the chosen tag. [caaRecordValue] :: CAARecord -> Text -- | RFC4398 CERT record data CERTRecord CERTRecord :: Int -> Text -> Word16 -> Int -> CERTRecord -- | Algorithm, defined in 2.1.3 of RFC4034 [certRecordAlgorithm] :: CERTRecord -> Int -- | Certificate [certRecordCertificate] :: CERTRecord -> Text -- | Key tag, defined in appendix B of RFC4034 [certRecordKeyTag] :: CERTRecord -> Word16 -- | Type, section 2.1 of RFC4398 1 for X.509 [certRecordType] :: CERTRecord -> Int -- | RFC 1035 CNAME record, section 3.3.1 data CNAMERecord CNAMERecord :: Text -> CNAMERecord -- | Domain name to which the record points to [cnameRecordContent] :: CNAMERecord -> Text -- | RFC4034 DNSKEY record, defined in section 2 data DNSKEYRecord DNSKEYRecord :: Word8 -> Word16 -> Word8 -> Text -> DNSKEYRecord -- | Algorithm, defined in 2.1.3 of RFC4034 [dnskeyRecordAlgorithm] :: DNSKEYRecord -> Word8 -- | Flags for the DNSKEY record, defined in 2.1.1 of RFC4034 [dnskeyRecordFlags] :: DNSKEYRecord -> Word16 -- | Protocol for the DNSKEY record, defined in 2.1.2 of RFC4034 [dnskeyRecordProtocol] :: DNSKEYRecord -> Word8 -- | Public key for the DNSKEY record, depends on the algorithm used, see -- appendix section A.1 of RFC4034 [dnskeyRecordPublicKey] :: DNSKEYRecord -> Text -- | RFC4034 DS record, defined in section 5.1 data DSRecord DSRecord :: Word8 -> Text -> Word8 -> Word16 -> DSRecord -- | Algorithm, defined in 5.1.2 of RFC4034 [dsRecordAlgorithm] :: DSRecord -> Word8 -- | Digest, defined in 5.1.4 of RFC4034 [dsRecordDigest] :: DSRecord -> Text -- | Digest type, defined in 5.1.3 of RFC4034 [dsRecordDigestType] :: DSRecord -> Word8 -- | Key tag, defined in 5.1.1 of RFC4034 [dsRecordKeyTag] :: DSRecord -> Word16 -- | Defined in section 1.2 of draft-ietf-dnsop-svcb-https-12, it shares -- the same structure as the SVCB record data HTTPSRecord HTTPSRecord :: Word16 -> Text -> Text -> HTTPSRecord -- | priority [httpsRecordPriority] :: HTTPSRecord -> Word16 -- | target [httpsRecordTarget] :: HTTPSRecord -> Text -- | value TODO this could be made into a [(Text, Text))] [httpsRecordValue] :: HTTPSRecord -> Text -- | RFC 1876 LOC record, defined in section 2 data LOCRecord LOCRecord :: Int32 -> Int -> Text -> Int -> Double -> Int -> Text -> Int -> Double -> Int -> Int -> Int -> LOCRecord -- | Altitude of location in meters from 0e0 to 9e9, from a base of 100,000 -- meters below the WGS 84 reference spheroid used by GPS [locRecordAltitude] :: LOCRecord -> Int32 -- | Degrees of latitude [locRecordLatDegrees] :: LOCRecord -> Int -- | Direction of latitude (N or S) TODO make this a specific type [locRecordLatDirection] :: LOCRecord -> Text -- | Minutes of latitude [locRecordLatMinutes] :: LOCRecord -> Int -- | Seconds of latitude rounded to 3 decimal places [locRecordLatSeconds] :: LOCRecord -> Double -- | Degrees of longitude [locRecordLongDegrees] :: LOCRecord -> Int -- | Direction of longitude (E or W) TODO make this a specific type [locRecordLongDirection] :: LOCRecord -> Text -- | Minutes of longitude [locRecordLongMinutes] :: LOCRecord -> Int -- | Seconds of longitude rounded to 3 decimal places [locRecordLongSeconds] :: LOCRecord -> Double -- | Horizontal precision of location in meters [locRecordPrecisionHoriz] :: LOCRecord -> Int -- | Vertical precision of location in meters from 0e0 to 9e9 [locRecordPrecisionVert] :: LOCRecord -> Int -- | Size of location in meters from 0e0 to 9e9 [locRecordSize] :: LOCRecord -> Int -- | RFC 1035 MX record, defined in section 3.3.9 data MXRecord MXRecord :: Text -> Word16 -> MXRecord -- | A domain name to act as a mail exchange [mxRecordContent] :: MXRecord -> Text -- | Priority of the target host, client MUST attempt to contact the target -- host with the lowest priority it can reach [mxRecordPriority] :: MXRecord -> Word16 -- | RFC 3403 NAPTR, Name Authority Pointer record data NAPTRRecord NAPTRRecord :: Text -> Word16 -> Word16 -> Text -> Text -> Text -> NAPTRRecord -- | Flags to control the rewriting and interpretation of the fields in the -- record, characters from A-Z and 0-9, defined in section 4.1 [naptrRecordFlags] :: NAPTRRecord -> Text -- | Order that the records MUST be processed in, defined in section 4.1 [naptrRecordOrder] :: NAPTRRecord -> Word16 -- | Preference, equivalent to priority in DDDS, defined in section 4.1 [naptrRecordPreference] :: NAPTRRecord -> Word16 -- | Regexp, substitution expression that is applied to the original -- string, defined in section 4.1 [naptrRecordRegexp] :: NAPTRRecord -> Text -- | Replacement, MUST be a fully qualified domain name, defined in section -- 4.1 [naptrRecordReplacement] :: NAPTRRecord -> Text -- | Service parameters applicable to this delegation path, defined in -- section 4.1 [naptrRecordService] :: NAPTRRecord -> Text -- | RFC 1035 NS, name server record defined in section 3.3.11 data NSRecord NSRecord :: Text -> NSRecord -- | A domain name to act as a name server [nsRecordContent] :: NSRecord -> Text -- | RFC 1035 PTR, pointer record defined in section 3.3.12 data PTRRecord PTRRecord :: Text -> PTRRecord -- | A valid PTR target host name [ptrRecordContent] :: PTRRecord -> Text -- | RFC 8162 SMIMEA record data SMIMEARecord SMIMEARecord :: Text -> Int -> Int -> Int -> SMIMEARecord -- | Certificate [smimeaRecordCertificate] :: SMIMEARecord -> Text -- | Matching type [smimeaMathingType] :: SMIMEARecord -> Int -- | Selector [smimeaRecordSelector] :: SMIMEARecord -> Int -- | Usage [smimeaRecordUsage] :: SMIMEARecord -> Int -- | RFC 2782 SRV, service record data SRVRecord SRVRecord :: Text -> Word16 -> Word16 -> Text -> Text -> Text -> Word16 -> SRVRecord -- | Domain name of the service [srvRecordName] :: SRVRecord -> Text -- | The port of the service [srvRecordPort] :: SRVRecord -> Word16 -- | The priority of the target host, client MUST attempt to contact the -- target host with the lowest priority it can reach [srvRecordPriority] :: SRVRecord -> Word16 -- | Name of the protocol for the service, prepended with an underscore -- (_TCP, _UDP) [srvRecordProto] :: SRVRecord -> Text -- | A service type, prefixed with an underscore (Example _SIP), -- defined in RFC 1700 or locally [srvRecordService] :: SRVRecord -> Text -- | Domain name of the target host, there can not be an alias [srvRecordTarget] :: SRVRecord -> Text -- | Relative weight for records with the same priority, higher value means -- higher chance of being selected [srvRecordWeight] :: SRVRecord -> Word16 -- | RFC 4255 SSHFP record data SSHFPRecord SSHFPRecord :: Int -> Text -> Int -> SSHFPRecord -- | Algorithm [sshfpRecordAlgorithm] :: SSHFPRecord -> Int -- | Fingerprint [sshfpRecordFingerprint] :: SSHFPRecord -> Text -- | Type [sshfpRecordType] :: SSHFPRecord -> Int -- | draft-ietf-dnsop-svcb-https-12 SVCB record data SVCBRecord SVCBRecord :: Int -> Text -> Text -> SVCBRecord -- | Priority [svcBRecordPriority] :: SVCBRecord -> Int -- | Target [svcBRecordTarget] :: SVCBRecord -> Text -- | Value (Example 'alpn="h3,h2" ipv4hint="127.0.0.1" ipv6hint="::1"') [svcBRecordValue] :: SVCBRecord -> Text -- | RFC 6698 TLSA record, defined in section 2 data TLSARecord TLSARecord :: Text -> Word8 -> Word8 -> Word8 -> TLSARecord -- | Certificate, either raw data (full certificate or SubjectPublicKeyInfo -- based on the selector) for matching type 0, or the hash of the raw -- certificate data for types 1 and 2. The hash is in binary form, not -- hex-encoded. Defined in section 2.1.4 [tlsaRecordCertificate] :: TLSARecord -> Text -- | Matching type specifies how the certificate association is presented, -- defined in section 2.1.3 [tlsaRecordMatchingType] :: TLSARecord -> Word8 -- | Selector the part of the TLS certificate to match against, defined in -- section 2.1.2 [tlsaRecordSelector] :: TLSARecord -> Word8 -- | Usage of the certificate, defined in section 2.1.1 [tlsaRecordUsage] :: TLSARecord -> Word8 -- | RFC 1035 TXT record, defined in section 3.3.14 data TXTRecord TXTRecord :: Text -> TXTRecord -- | Text content of the record [txtRecordContent] :: TXTRecord -> Text -- | RFC 7553 URI record data URIRecord URIRecord :: Text -> Word16 -> URIRecord -- | URI content, defined in section 2 [uriRecordContent] :: URIRecord -> Text -- | Priority, lower value means higher chance of being selected [uriRecordPriority] :: URIRecord -> Word16 instance GHC.Show.Show Network.Cloudflare.DNS.Record.ImportResponse instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.ImportResponse instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.ImportResponse instance GHC.Show.Show Network.Cloudflare.DNS.Record.DNSIdentifier instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.DNSIdentifier instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.DNSIdentifier instance GHC.Show.Show record => GHC.Show.Show (Network.Cloudflare.DNS.Record.DNSRecordEntry record) instance GHC.Classes.Ord record => GHC.Classes.Ord (Network.Cloudflare.DNS.Record.DNSRecordEntry record) instance GHC.Classes.Eq record => GHC.Classes.Eq (Network.Cloudflare.DNS.Record.DNSRecordEntry record) instance GHC.Show.Show record => GHC.Show.Show (Network.Cloudflare.DNS.Record.CreateDNSRecord record) instance GHC.Classes.Ord record => GHC.Classes.Ord (Network.Cloudflare.DNS.Record.CreateDNSRecord record) instance GHC.Classes.Eq record => GHC.Classes.Eq (Network.Cloudflare.DNS.Record.CreateDNSRecord record) instance GHC.Show.Show Network.Cloudflare.DNS.Record.ARecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.ARecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.ARecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.AAAARecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.AAAARecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.AAAARecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.CAARecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.CAARecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.CAARecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.CERTRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.CERTRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.CERTRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.CNAMERecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.CNAMERecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.CNAMERecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.DNSKEYRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.DNSKEYRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.DNSKEYRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.DSRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.DSRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.DSRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.HTTPSRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.HTTPSRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.HTTPSRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.LOCRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.LOCRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.LOCRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.MXRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.MXRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.MXRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.NAPTRRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.NAPTRRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.NAPTRRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.NSRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.NSRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.NSRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.PTRRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.PTRRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.PTRRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.SMIMEARecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.SMIMEARecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.SMIMEARecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.SRVRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.SRVRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.SRVRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.SSHFPRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.SSHFPRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.SSHFPRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.SVCBRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.SVCBRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.SVCBRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.TLSARecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.TLSARecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.TLSARecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.TXTRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.TXTRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.TXTRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.URIRecord instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.URIRecord instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.URIRecord instance GHC.Show.Show Network.Cloudflare.DNS.Record.DNSEntry instance GHC.Classes.Ord Network.Cloudflare.DNS.Record.DNSEntry instance GHC.Classes.Eq Network.Cloudflare.DNS.Record.DNSEntry instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.DNS.Record.DNSEntry instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.URIRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.TXTRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.TLSARecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.SVCBRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.SSHFPRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.SRVRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.SMIMEARecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.PTRRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.NSRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.NAPTRRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.MXRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.LOCRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.HTTPSRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.DSRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.DNSKEYRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.CNAMERecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.CERTRecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.CAARecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.AAAARecord instance Network.Cloudflare.DNS.Record.DNSRecord Network.Cloudflare.DNS.Record.ARecord instance Network.Cloudflare.DNS.Record.DNSRecord record => Data.Aeson.Types.ToJSON.ToJSON (Network.Cloudflare.DNS.Record.CreateDNSRecord record) instance Network.Cloudflare.DNS.Record.DNSRecord record => Data.Aeson.Types.FromJSON.FromJSON (Network.Cloudflare.DNS.Record.DNSRecordEntry record) instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.DNS.Record.DNSIdentifier instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.DNS.Record.ImportResponse module Network.Cloudflare.DNS.DNSSEC -- | Get the DNSSEC settings for a zone getDNSSEC :: CloudflareAuth -> Text -> IO (Either String (ResultResponse DNSECDetails)) -- | Edit DNSSEC settings for a zone editDNSSEC :: CloudflareAuth -> Text -> EditDNSSECStatus -> IO (Either String (ResultResponse DNSSEC)) -- | Edit DNSSEC settings for a zone, fields set to Nothing will not be -- changed data EditDNSSECStatus EditDNSSECStatus :: Maybe Bool -> Maybe Bool -> Maybe DNSSECStatus -> EditDNSSECStatus -- | Enable or disable multi-signer DNSSEC [editDNSSECMultiSigner] :: EditDNSSECStatus -> Maybe Bool -- | Enable or disable presigned DNSSEC [editDNSSECPresigned] :: EditDNSSECStatus -> Maybe Bool -- | Enable or disable DNSSEC [editDNSSECStatus] :: EditDNSSECStatus -> Maybe DNSSECStatus -- | Status of DNSSec for a zone data DNSSECStatus DNSSECActive :: DNSSECStatus DNSSECDisabled :: DNSSECStatus -- | Text representation of DNSSECStatus dnssecStatusToText :: DNSSECStatus -> Text data DNSECDetails DNSSecActive :: DNSSEC -> DNSECDetails DNSSecDisabled :: DNSECDetails DNSSecPending :: DNSSEC -> DNSECDetails data DNSSEC DNSSEC :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Bool -> Text -> Word8 -> Word16 -> Text -> UTCTime -> Text -> Text -> DNSSEC [dnssecAlgorithm] :: DNSSEC -> Maybe Text [dnssecDigest] :: DNSSEC -> Maybe Text [dnssecDigestType] :: DNSSEC -> Maybe Text [dnssecMultiSigner] :: DNSSEC -> Maybe Bool [dnssecPresigned] :: DNSSEC -> Maybe Bool [dnssecDS] :: DNSSEC -> Text [dnssecFlags] :: DNSSEC -> Word8 [dnssecKeyTag] :: DNSSEC -> Word16 [dnssecKeyType] :: DNSSEC -> Text [dnssecModifiedOn] :: DNSSEC -> UTCTime [dnssecPublicKey] :: DNSSEC -> Text [dnssecStatus] :: DNSSEC -> Text instance GHC.Show.Show Network.Cloudflare.DNS.DNSSEC.DNSSECStatus instance GHC.Classes.Ord Network.Cloudflare.DNS.DNSSEC.DNSSECStatus instance GHC.Classes.Eq Network.Cloudflare.DNS.DNSSEC.DNSSECStatus instance GHC.Show.Show Network.Cloudflare.DNS.DNSSEC.EditDNSSECStatus instance GHC.Classes.Ord Network.Cloudflare.DNS.DNSSEC.EditDNSSECStatus instance GHC.Classes.Eq Network.Cloudflare.DNS.DNSSEC.EditDNSSECStatus instance GHC.Show.Show Network.Cloudflare.DNS.DNSSEC.DNSSEC instance GHC.Classes.Ord Network.Cloudflare.DNS.DNSSEC.DNSSEC instance GHC.Classes.Eq Network.Cloudflare.DNS.DNSSEC.DNSSEC instance GHC.Show.Show Network.Cloudflare.DNS.DNSSEC.DNSECDetails instance GHC.Classes.Ord Network.Cloudflare.DNS.DNSSEC.DNSECDetails instance GHC.Classes.Eq Network.Cloudflare.DNS.DNSSEC.DNSECDetails instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.DNS.DNSSEC.DNSECDetails instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.DNS.DNSSEC.DNSSEC instance Data.Aeson.Types.ToJSON.ToJSON Network.Cloudflare.DNS.DNSSEC.EditDNSSECStatus instance Data.Aeson.Types.ToJSON.ToJSON Network.Cloudflare.DNS.DNSSEC.DNSSECStatus module Network.Cloudflare.Zone listZones :: CloudflareAuth -> IO (Either String (ResultWithInfo [Zone])) data Zone Zone :: Account -> UTCTime -> UTCTime -> Int -> Text -> Object -> UTCTime -> Text -> Maybe Text -> Maybe [Text] -> Maybe Text -> Object -> Maybe [Text] -> Zone [zoneAccount] :: Zone -> Account [zoneActivatedOn] :: Zone -> UTCTime [zoneCreatedOn] :: Zone -> UTCTime [zoneDevelopmentMode] :: Zone -> Int [zoneId] :: Zone -> Text [zoneMeta] :: Zone -> Object [zoneModifiedOn] :: Zone -> UTCTime [zoneName] :: Zone -> Text [zoneOriginalDNSHost] :: Zone -> Maybe Text [zoneOriginalNameServers] :: Zone -> Maybe [Text] [zoneOriginalRegistrar] :: Zone -> Maybe Text [zoneOwner] :: Zone -> Object [zoneVanityNameServers] :: Zone -> Maybe [Text] instance GHC.Show.Show Network.Cloudflare.Zone.Zone instance GHC.Classes.Ord Network.Cloudflare.Zone.Zone instance GHC.Classes.Eq Network.Cloudflare.Zone.Zone instance Data.Aeson.Types.FromJSON.FromJSON Network.Cloudflare.Zone.Zone