222 lines
6.7 KiB
JSON
222 lines
6.7 KiB
JSON
|
|
{
|
||
|
|
"basePath": "",
|
||
|
|
"baseUrl": "https://acmedns.googleapis.com/",
|
||
|
|
"batchPath": "batch",
|
||
|
|
"canonicalName": "ACME DNS",
|
||
|
|
"description": "Google Domains ACME DNS API that allows users to complete ACME DNS-01 challenges for a domain.",
|
||
|
|
"discoveryVersion": "v1",
|
||
|
|
"documentationLink": "https://developers.google.com/domains/acme-dns/",
|
||
|
|
"fullyEncodeReservedExpansion": true,
|
||
|
|
"icons": {
|
||
|
|
"x16": "http://www.google.com/images/icons/product/search-16.gif",
|
||
|
|
"x32": "http://www.google.com/images/icons/product/search-32.gif"
|
||
|
|
},
|
||
|
|
"id": "acmedns:v1",
|
||
|
|
"kind": "discovery#restDescription",
|
||
|
|
"mtlsRootUrl": "https://acmedns.mtls.googleapis.com/",
|
||
|
|
"name": "acmedns",
|
||
|
|
"ownerDomain": "google.com",
|
||
|
|
"ownerName": "Google",
|
||
|
|
"parameters": {
|
||
|
|
"$.xgafv": {
|
||
|
|
"description": "V1 error format.",
|
||
|
|
"enum": [
|
||
|
|
"1",
|
||
|
|
"2"
|
||
|
|
],
|
||
|
|
"enumDescriptions": [
|
||
|
|
"v1 error format",
|
||
|
|
"v2 error format"
|
||
|
|
],
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"access_token": {
|
||
|
|
"description": "OAuth access token.",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"alt": {
|
||
|
|
"default": "json",
|
||
|
|
"description": "Data format for response.",
|
||
|
|
"enum": [
|
||
|
|
"json",
|
||
|
|
"media",
|
||
|
|
"proto"
|
||
|
|
],
|
||
|
|
"enumDescriptions": [
|
||
|
|
"Responses with Content-Type of application/json",
|
||
|
|
"Media download with context-dependent Content-Type",
|
||
|
|
"Responses with Content-Type of application/x-protobuf"
|
||
|
|
],
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"callback": {
|
||
|
|
"description": "JSONP",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"fields": {
|
||
|
|
"description": "Selector specifying which fields to include in a partial response.",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"key": {
|
||
|
|
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"oauth_token": {
|
||
|
|
"description": "OAuth 2.0 token for the current user.",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"prettyPrint": {
|
||
|
|
"default": "true",
|
||
|
|
"description": "Returns response with indentations and line breaks.",
|
||
|
|
"location": "query",
|
||
|
|
"type": "boolean"
|
||
|
|
},
|
||
|
|
"quotaUser": {
|
||
|
|
"description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"uploadType": {
|
||
|
|
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"upload_protocol": {
|
||
|
|
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
|
||
|
|
"location": "query",
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"protocol": "rest",
|
||
|
|
"resources": {
|
||
|
|
"acmeChallengeSets": {
|
||
|
|
"methods": {
|
||
|
|
"get": {
|
||
|
|
"description": "Gets the ACME challenge set for a given domain name. Domain names must be provided in Punycode.",
|
||
|
|
"flatPath": "v1/acmeChallengeSets/{rootDomain}",
|
||
|
|
"httpMethod": "GET",
|
||
|
|
"id": "acmedns.acmeChallengeSets.get",
|
||
|
|
"parameterOrder": [
|
||
|
|
"rootDomain"
|
||
|
|
],
|
||
|
|
"parameters": {
|
||
|
|
"rootDomain": {
|
||
|
|
"description": "Required. SLD + TLD domain name to list challenges. For example, this would be \"google.com\" for any FQDN under \"google.com\". That includes challenges for \"subdomain.google.com\". This MAY be Unicode or Punycode.",
|
||
|
|
"location": "path",
|
||
|
|
"required": true,
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"path": "v1/acmeChallengeSets/{rootDomain}",
|
||
|
|
"response": {
|
||
|
|
"$ref": "AcmeChallengeSet"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"rotateChallenges": {
|
||
|
|
"description": "Rotate the ACME challenges for a given domain name. By default, removes any challenges that are older than 30 days. Domain names must be provided in Punycode.",
|
||
|
|
"flatPath": "v1/acmeChallengeSets/{rootDomain}:rotateChallenges",
|
||
|
|
"httpMethod": "POST",
|
||
|
|
"id": "acmedns.acmeChallengeSets.rotateChallenges",
|
||
|
|
"parameterOrder": [
|
||
|
|
"rootDomain"
|
||
|
|
],
|
||
|
|
"parameters": {
|
||
|
|
"rootDomain": {
|
||
|
|
"description": "Required. SLD + TLD domain name to update records for. For example, this would be \"google.com\" for any FQDN under \"google.com\". That includes challenges for \"subdomain.google.com\". This MAY be Unicode or Punycode.",
|
||
|
|
"location": "path",
|
||
|
|
"required": true,
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"path": "v1/acmeChallengeSets/{rootDomain}:rotateChallenges",
|
||
|
|
"request": {
|
||
|
|
"$ref": "RotateChallengesRequest"
|
||
|
|
},
|
||
|
|
"response": {
|
||
|
|
"$ref": "AcmeChallengeSet"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"revision": "20240707",
|
||
|
|
"rootUrl": "https://acmedns.googleapis.com/",
|
||
|
|
"schemas": {
|
||
|
|
"AcmeChallengeSet": {
|
||
|
|
"description": "The up-to-date ACME challenge set on a domain for an RPC. This contains all of the ACME TXT records that exist on the domain.",
|
||
|
|
"id": "AcmeChallengeSet",
|
||
|
|
"properties": {
|
||
|
|
"record": {
|
||
|
|
"description": "The ACME challenges on the requested domain represented as individual TXT records.",
|
||
|
|
"items": {
|
||
|
|
"$ref": "AcmeTxtRecord"
|
||
|
|
},
|
||
|
|
"type": "array"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"type": "object"
|
||
|
|
},
|
||
|
|
"AcmeTxtRecord": {
|
||
|
|
"description": "The TXT record message that represents an ACME DNS-01 challenge.",
|
||
|
|
"id": "AcmeTxtRecord",
|
||
|
|
"properties": {
|
||
|
|
"digest": {
|
||
|
|
"description": "Holds the ACME challenge data put in the TXT record. This will be checked to be a valid TXT record data entry.",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"fqdn": {
|
||
|
|
"description": "The domain/subdomain for the record. In a request, this MAY be Unicode or Punycode. In a response, this will be in Unicode. The fqdn MUST contain the root_domain field on the request.",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"updateTime": {
|
||
|
|
"description": "Output only. The time when this record was last updated. This will be in UTC time.",
|
||
|
|
"format": "google-datetime",
|
||
|
|
"readOnly": true,
|
||
|
|
"type": "string"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"type": "object"
|
||
|
|
},
|
||
|
|
"RotateChallengesRequest": {
|
||
|
|
"description": "The request message for the RotateChallenges RPC. Requires an access token, a root domain, and either records_to_add or records_to_remove to be populated. Records may be set for multiple subdomains at once to support SAN requests for multiple subdomains in a single domain. By default, ACME TXT record challenges that are older than 30 days will be removed. Set `keep_expired_records` to false if this behavior is undesired. There is a record maximum of 100 records per domain including expired records. Any request sent that would exceed this maximum will result in a FAILED_PRECONDITION error. NEXT ID: 6",
|
||
|
|
"id": "RotateChallengesRequest",
|
||
|
|
"properties": {
|
||
|
|
"accessToken": {
|
||
|
|
"description": "Required. ACME DNS access token. This is a base64 token secret that is procured from the Google Domains website. It authorizes ACME TXT record updates for a domain.",
|
||
|
|
"format": "byte",
|
||
|
|
"type": "string"
|
||
|
|
},
|
||
|
|
"keepExpiredRecords": {
|
||
|
|
"description": "Keep records older than 30 days that were used for previous requests.",
|
||
|
|
"type": "boolean"
|
||
|
|
},
|
||
|
|
"recordsToAdd": {
|
||
|
|
"description": "ACME TXT record challenges to add. Supports multiple challenges on the same FQDN.",
|
||
|
|
"items": {
|
||
|
|
"$ref": "AcmeTxtRecord"
|
||
|
|
},
|
||
|
|
"type": "array"
|
||
|
|
},
|
||
|
|
"recordsToRemove": {
|
||
|
|
"description": "ACME TXT record challenges to remove.",
|
||
|
|
"items": {
|
||
|
|
"$ref": "AcmeTxtRecord"
|
||
|
|
},
|
||
|
|
"type": "array"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"type": "object"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"servicePath": "",
|
||
|
|
"title": "ACME DNS API",
|
||
|
|
"version": "v1",
|
||
|
|
"version_module": true
|
||
|
|
}
|