Skip to content

Commit

Permalink
feat(api): OpenAPI spec update via Stainless API (#1575)
Browse files Browse the repository at this point in the history
  • Loading branch information
stainless-app[bot] authored and stainless-bot committed Mar 18, 2024
1 parent b7478f6 commit 3697304
Show file tree
Hide file tree
Showing 6 changed files with 184 additions and 175 deletions.
198 changes: 102 additions & 96 deletions dns/record.go
Original file line number Diff line number Diff line change
Expand Up @@ -16611,19 +16611,21 @@ func (r recordScanResponseJSON) RawJSON() string {

type RecordNewParams struct {
// Identifier
ZoneID param.Field[string] `path:"zone_id,required"`
Data param.Field[RecordNewParamsData] `json:"data,required"`
ZoneID param.Field[string] `path:"zone_id,required"`
// DNS record name (or @ for the zone apex) in Punycode.
Name param.Field[string] `json:"name,required"`
// Required for MX, SRV and URI records; unused by other record types. Records with
// lower priorities are preferred.
Priority param.Field[float64] `json:"priority,required"`
// Record type.
Type param.Field[RecordNewParamsType] `json:"type,required"`
// Comments or notes about the DNS record. This field has no effect on DNS
// responses.
Comment param.Field[string] `json:"comment"`
Comment param.Field[string] `json:"comment"`
// Formatted URI content. See 'data' to set URI properties.
Content param.Field[interface{}] `json:"content"`
Data param.Field[RecordNewParamsData] `json:"data"`
Meta param.Field[RecordNewParamsMeta] `json:"meta"`
// Required for MX, SRV and URI records; unused by other record types. Records with
// lower priorities are preferred.
Priority param.Field[float64] `json:"priority"`
// Whether the record is receiving the performance and security benefits of
// Cloudflare.
Proxied param.Field[bool] `json:"proxied"`
Expand All @@ -16639,6 +16641,32 @@ func (r RecordNewParams) MarshalJSON() (data []byte, err error) {
return apijson.MarshalRoot(r)
}

// Record type.
type RecordNewParamsType string

const (
RecordNewParamsTypeURI RecordNewParamsType = "URI"
RecordNewParamsTypeTXT RecordNewParamsType = "TXT"
RecordNewParamsTypeTLSA RecordNewParamsType = "TLSA"
RecordNewParamsTypeSVCB RecordNewParamsType = "SVCB"
RecordNewParamsTypeSSHFP RecordNewParamsType = "SSHFP"
RecordNewParamsTypeSRV RecordNewParamsType = "SRV"
RecordNewParamsTypeSmimea RecordNewParamsType = "SMIMEA"
RecordNewParamsTypePTR RecordNewParamsType = "PTR"
RecordNewParamsTypeNS RecordNewParamsType = "NS"
RecordNewParamsTypeNAPTR RecordNewParamsType = "NAPTR"
RecordNewParamsTypeMX RecordNewParamsType = "MX"
RecordNewParamsTypeLOC RecordNewParamsType = "LOC"
RecordNewParamsTypeHTTPS RecordNewParamsType = "HTTPS"
RecordNewParamsTypeDS RecordNewParamsType = "DS"
RecordNewParamsTypeDNSKEY RecordNewParamsType = "DNSKEY"
RecordNewParamsTypeCNAME RecordNewParamsType = "CNAME"
RecordNewParamsTypeCert RecordNewParamsType = "CERT"
RecordNewParamsTypeCAA RecordNewParamsType = "CAA"
RecordNewParamsTypeAAAA RecordNewParamsType = "AAAA"
RecordNewParamsTypeA RecordNewParamsType = "A"
)

type RecordNewParamsData struct {
// algorithm.
Algorithm param.Field[float64] `json:"algorithm"`
Expand Down Expand Up @@ -16746,32 +16774,6 @@ const (
RecordNewParamsDataLongDirectionW RecordNewParamsDataLongDirection = "W"
)

// Record type.
type RecordNewParamsType string

const (
RecordNewParamsTypeURI RecordNewParamsType = "URI"
RecordNewParamsTypeTXT RecordNewParamsType = "TXT"
RecordNewParamsTypeTLSA RecordNewParamsType = "TLSA"
RecordNewParamsTypeSVCB RecordNewParamsType = "SVCB"
RecordNewParamsTypeSSHFP RecordNewParamsType = "SSHFP"
RecordNewParamsTypeSRV RecordNewParamsType = "SRV"
RecordNewParamsTypeSmimea RecordNewParamsType = "SMIMEA"
RecordNewParamsTypePTR RecordNewParamsType = "PTR"
RecordNewParamsTypeNS RecordNewParamsType = "NS"
RecordNewParamsTypeNAPTR RecordNewParamsType = "NAPTR"
RecordNewParamsTypeMX RecordNewParamsType = "MX"
RecordNewParamsTypeLOC RecordNewParamsType = "LOC"
RecordNewParamsTypeHTTPS RecordNewParamsType = "HTTPS"
RecordNewParamsTypeDS RecordNewParamsType = "DS"
RecordNewParamsTypeDNSKEY RecordNewParamsType = "DNSKEY"
RecordNewParamsTypeCNAME RecordNewParamsType = "CNAME"
RecordNewParamsTypeCert RecordNewParamsType = "CERT"
RecordNewParamsTypeCAA RecordNewParamsType = "CAA"
RecordNewParamsTypeAAAA RecordNewParamsType = "AAAA"
RecordNewParamsTypeA RecordNewParamsType = "A"
)

type RecordNewParamsMeta struct {
// Will exist if Cloudflare automatically added this DNS record during initial
// setup.
Expand Down Expand Up @@ -16882,19 +16884,21 @@ const (

type RecordUpdateParams struct {
// Identifier
ZoneID param.Field[string] `path:"zone_id,required"`
Data param.Field[RecordUpdateParamsData] `json:"data,required"`
ZoneID param.Field[string] `path:"zone_id,required"`
// DNS record name (or @ for the zone apex) in Punycode.
Name param.Field[string] `json:"name,required"`
// Required for MX, SRV and URI records; unused by other record types. Records with
// lower priorities are preferred.
Priority param.Field[float64] `json:"priority,required"`
// Record type.
Type param.Field[RecordUpdateParamsType] `json:"type,required"`
// Comments or notes about the DNS record. This field has no effect on DNS
// responses.
Comment param.Field[string] `json:"comment"`
Comment param.Field[string] `json:"comment"`
// Formatted URI content. See 'data' to set URI properties.
Content param.Field[interface{}] `json:"content"`
Data param.Field[RecordUpdateParamsData] `json:"data"`
Meta param.Field[RecordUpdateParamsMeta] `json:"meta"`
// Required for MX, SRV and URI records; unused by other record types. Records with
// lower priorities are preferred.
Priority param.Field[float64] `json:"priority"`
// Whether the record is receiving the performance and security benefits of
// Cloudflare.
Proxied param.Field[bool] `json:"proxied"`
Expand All @@ -16910,6 +16914,32 @@ func (r RecordUpdateParams) MarshalJSON() (data []byte, err error) {
return apijson.MarshalRoot(r)
}

// Record type.
type RecordUpdateParamsType string

const (
RecordUpdateParamsTypeURI RecordUpdateParamsType = "URI"
RecordUpdateParamsTypeTXT RecordUpdateParamsType = "TXT"
RecordUpdateParamsTypeTLSA RecordUpdateParamsType = "TLSA"
RecordUpdateParamsTypeSVCB RecordUpdateParamsType = "SVCB"
RecordUpdateParamsTypeSSHFP RecordUpdateParamsType = "SSHFP"
RecordUpdateParamsTypeSRV RecordUpdateParamsType = "SRV"
RecordUpdateParamsTypeSmimea RecordUpdateParamsType = "SMIMEA"
RecordUpdateParamsTypePTR RecordUpdateParamsType = "PTR"
RecordUpdateParamsTypeNS RecordUpdateParamsType = "NS"
RecordUpdateParamsTypeNAPTR RecordUpdateParamsType = "NAPTR"
RecordUpdateParamsTypeMX RecordUpdateParamsType = "MX"
RecordUpdateParamsTypeLOC RecordUpdateParamsType = "LOC"
RecordUpdateParamsTypeHTTPS RecordUpdateParamsType = "HTTPS"
RecordUpdateParamsTypeDS RecordUpdateParamsType = "DS"
RecordUpdateParamsTypeDNSKEY RecordUpdateParamsType = "DNSKEY"
RecordUpdateParamsTypeCNAME RecordUpdateParamsType = "CNAME"
RecordUpdateParamsTypeCert RecordUpdateParamsType = "CERT"
RecordUpdateParamsTypeCAA RecordUpdateParamsType = "CAA"
RecordUpdateParamsTypeAAAA RecordUpdateParamsType = "AAAA"
RecordUpdateParamsTypeA RecordUpdateParamsType = "A"
)

type RecordUpdateParamsData struct {
// algorithm.
Algorithm param.Field[float64] `json:"algorithm"`
Expand Down Expand Up @@ -17017,32 +17047,6 @@ const (
RecordUpdateParamsDataLongDirectionW RecordUpdateParamsDataLongDirection = "W"
)

// Record type.
type RecordUpdateParamsType string

const (
RecordUpdateParamsTypeURI RecordUpdateParamsType = "URI"
RecordUpdateParamsTypeTXT RecordUpdateParamsType = "TXT"
RecordUpdateParamsTypeTLSA RecordUpdateParamsType = "TLSA"
RecordUpdateParamsTypeSVCB RecordUpdateParamsType = "SVCB"
RecordUpdateParamsTypeSSHFP RecordUpdateParamsType = "SSHFP"
RecordUpdateParamsTypeSRV RecordUpdateParamsType = "SRV"
RecordUpdateParamsTypeSmimea RecordUpdateParamsType = "SMIMEA"
RecordUpdateParamsTypePTR RecordUpdateParamsType = "PTR"
RecordUpdateParamsTypeNS RecordUpdateParamsType = "NS"
RecordUpdateParamsTypeNAPTR RecordUpdateParamsType = "NAPTR"
RecordUpdateParamsTypeMX RecordUpdateParamsType = "MX"
RecordUpdateParamsTypeLOC RecordUpdateParamsType = "LOC"
RecordUpdateParamsTypeHTTPS RecordUpdateParamsType = "HTTPS"
RecordUpdateParamsTypeDS RecordUpdateParamsType = "DS"
RecordUpdateParamsTypeDNSKEY RecordUpdateParamsType = "DNSKEY"
RecordUpdateParamsTypeCNAME RecordUpdateParamsType = "CNAME"
RecordUpdateParamsTypeCert RecordUpdateParamsType = "CERT"
RecordUpdateParamsTypeCAA RecordUpdateParamsType = "CAA"
RecordUpdateParamsTypeAAAA RecordUpdateParamsType = "AAAA"
RecordUpdateParamsTypeA RecordUpdateParamsType = "A"
)

type RecordUpdateParamsMeta struct {
// Will exist if Cloudflare automatically added this DNS record during initial
// setup.
Expand Down Expand Up @@ -17351,19 +17355,21 @@ func (r recordDeleteResponseEnvelopeJSON) RawJSON() string {

type RecordEditParams struct {
// Identifier
ZoneID param.Field[string] `path:"zone_id,required"`
Data param.Field[RecordEditParamsData] `json:"data,required"`
ZoneID param.Field[string] `path:"zone_id,required"`
// DNS record name (or @ for the zone apex) in Punycode.
Name param.Field[string] `json:"name,required"`
// Required for MX, SRV and URI records; unused by other record types. Records with
// lower priorities are preferred.
Priority param.Field[float64] `json:"priority,required"`
// Record type.
Type param.Field[RecordEditParamsType] `json:"type,required"`
// Comments or notes about the DNS record. This field has no effect on DNS
// responses.
Comment param.Field[string] `json:"comment"`
Comment param.Field[string] `json:"comment"`
// Formatted URI content. See 'data' to set URI properties.
Content param.Field[interface{}] `json:"content"`
Data param.Field[RecordEditParamsData] `json:"data"`
Meta param.Field[RecordEditParamsMeta] `json:"meta"`
// Required for MX, SRV and URI records; unused by other record types. Records with
// lower priorities are preferred.
Priority param.Field[float64] `json:"priority"`
// Whether the record is receiving the performance and security benefits of
// Cloudflare.
Proxied param.Field[bool] `json:"proxied"`
Expand All @@ -17379,6 +17385,32 @@ func (r RecordEditParams) MarshalJSON() (data []byte, err error) {
return apijson.MarshalRoot(r)
}

// Record type.
type RecordEditParamsType string

const (
RecordEditParamsTypeURI RecordEditParamsType = "URI"
RecordEditParamsTypeTXT RecordEditParamsType = "TXT"
RecordEditParamsTypeTLSA RecordEditParamsType = "TLSA"
RecordEditParamsTypeSVCB RecordEditParamsType = "SVCB"
RecordEditParamsTypeSSHFP RecordEditParamsType = "SSHFP"
RecordEditParamsTypeSRV RecordEditParamsType = "SRV"
RecordEditParamsTypeSmimea RecordEditParamsType = "SMIMEA"
RecordEditParamsTypePTR RecordEditParamsType = "PTR"
RecordEditParamsTypeNS RecordEditParamsType = "NS"
RecordEditParamsTypeNAPTR RecordEditParamsType = "NAPTR"
RecordEditParamsTypeMX RecordEditParamsType = "MX"
RecordEditParamsTypeLOC RecordEditParamsType = "LOC"
RecordEditParamsTypeHTTPS RecordEditParamsType = "HTTPS"
RecordEditParamsTypeDS RecordEditParamsType = "DS"
RecordEditParamsTypeDNSKEY RecordEditParamsType = "DNSKEY"
RecordEditParamsTypeCNAME RecordEditParamsType = "CNAME"
RecordEditParamsTypeCert RecordEditParamsType = "CERT"
RecordEditParamsTypeCAA RecordEditParamsType = "CAA"
RecordEditParamsTypeAAAA RecordEditParamsType = "AAAA"
RecordEditParamsTypeA RecordEditParamsType = "A"
)

type RecordEditParamsData struct {
// algorithm.
Algorithm param.Field[float64] `json:"algorithm"`
Expand Down Expand Up @@ -17486,32 +17518,6 @@ const (
RecordEditParamsDataLongDirectionW RecordEditParamsDataLongDirection = "W"
)

// Record type.
type RecordEditParamsType string

const (
RecordEditParamsTypeURI RecordEditParamsType = "URI"
RecordEditParamsTypeTXT RecordEditParamsType = "TXT"
RecordEditParamsTypeTLSA RecordEditParamsType = "TLSA"
RecordEditParamsTypeSVCB RecordEditParamsType = "SVCB"
RecordEditParamsTypeSSHFP RecordEditParamsType = "SSHFP"
RecordEditParamsTypeSRV RecordEditParamsType = "SRV"
RecordEditParamsTypeSmimea RecordEditParamsType = "SMIMEA"
RecordEditParamsTypePTR RecordEditParamsType = "PTR"
RecordEditParamsTypeNS RecordEditParamsType = "NS"
RecordEditParamsTypeNAPTR RecordEditParamsType = "NAPTR"
RecordEditParamsTypeMX RecordEditParamsType = "MX"
RecordEditParamsTypeLOC RecordEditParamsType = "LOC"
RecordEditParamsTypeHTTPS RecordEditParamsType = "HTTPS"
RecordEditParamsTypeDS RecordEditParamsType = "DS"
RecordEditParamsTypeDNSKEY RecordEditParamsType = "DNSKEY"
RecordEditParamsTypeCNAME RecordEditParamsType = "CNAME"
RecordEditParamsTypeCert RecordEditParamsType = "CERT"
RecordEditParamsTypeCAA RecordEditParamsType = "CAA"
RecordEditParamsTypeAAAA RecordEditParamsType = "AAAA"
RecordEditParamsTypeA RecordEditParamsType = "A"
)

type RecordEditParamsMeta struct {
// Will exist if Cloudflare automatically added this DNS record during initial
// setup.
Expand Down
51 changes: 27 additions & 24 deletions dns/record_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,11 @@ func TestRecordNewWithOptionalParams(t *testing.T) {
option.WithAPIEmail("user@example.com"),
)
_, err := client.DNS.Records.New(context.TODO(), dns.RecordNewParams{
ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
Name: cloudflare.F("example.com"),
Type: cloudflare.F(dns.RecordNewParamsTypeURI),
Comment: cloudflare.F("Domain verification record"),
Content: cloudflare.F[any](map[string]interface{}{}),
Data: cloudflare.F(dns.RecordNewParamsData{
Flags: cloudflare.F[any](map[string]interface{}{}),
Tag: cloudflare.F("issue"),
Expand Down Expand Up @@ -72,17 +76,14 @@ func TestRecordNewWithOptionalParams(t *testing.T) {
Fingerprint: cloudflare.F("string"),
Content: cloudflare.F("http://example.com/example.html"),
}),
Name: cloudflare.F("example.com"),
Priority: cloudflare.F(10.000000),
Type: cloudflare.F(dns.RecordNewParamsTypeURI),
Comment: cloudflare.F("Domain verification record"),
Meta: cloudflare.F(dns.RecordNewParamsMeta{
AutoAdded: cloudflare.F(true),
Source: cloudflare.F("primary"),
}),
Proxied: cloudflare.F(false),
Tags: cloudflare.F([]string{"owner:dns-team", "owner:dns-team", "owner:dns-team"}),
TTL: cloudflare.F[dns.RecordNewParamsTTL](shared.UnionFloat(3600.000000)),
Priority: cloudflare.F(10.000000),
Proxied: cloudflare.F(false),
Tags: cloudflare.F([]string{"owner:dns-team", "owner:dns-team", "owner:dns-team"}),
TTL: cloudflare.F[dns.RecordNewParamsTTL](shared.UnionFloat(3600.000000)),
})
if err != nil {
var apierr *cloudflare.Error
Expand Down Expand Up @@ -111,7 +112,11 @@ func TestRecordUpdateWithOptionalParams(t *testing.T) {
context.TODO(),
"023e105f4ecef8ad9ca31a8372d0c353",
dns.RecordUpdateParams{
ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
Name: cloudflare.F("example.com"),
Type: cloudflare.F(dns.RecordUpdateParamsTypeURI),
Comment: cloudflare.F("Domain verification record"),
Content: cloudflare.F[any](map[string]interface{}{}),
Data: cloudflare.F(dns.RecordUpdateParamsData{
Flags: cloudflare.F[any](map[string]interface{}{}),
Tag: cloudflare.F("issue"),
Expand Down Expand Up @@ -153,17 +158,14 @@ func TestRecordUpdateWithOptionalParams(t *testing.T) {
Fingerprint: cloudflare.F("string"),
Content: cloudflare.F("http://example.com/example.html"),
}),
Name: cloudflare.F("example.com"),
Priority: cloudflare.F(10.000000),
Type: cloudflare.F(dns.RecordUpdateParamsTypeURI),
Comment: cloudflare.F("Domain verification record"),
Meta: cloudflare.F(dns.RecordUpdateParamsMeta{
AutoAdded: cloudflare.F(true),
Source: cloudflare.F("primary"),
}),
Proxied: cloudflare.F(false),
Tags: cloudflare.F([]string{"owner:dns-team", "owner:dns-team", "owner:dns-team"}),
TTL: cloudflare.F[dns.RecordUpdateParamsTTL](shared.UnionFloat(3600.000000)),
Priority: cloudflare.F(10.000000),
Proxied: cloudflare.F(false),
Tags: cloudflare.F([]string{"owner:dns-team", "owner:dns-team", "owner:dns-team"}),
TTL: cloudflare.F[dns.RecordUpdateParamsTTL](shared.UnionFloat(3600.000000)),
},
)
if err != nil {
Expand Down Expand Up @@ -276,7 +278,11 @@ func TestRecordEditWithOptionalParams(t *testing.T) {
context.TODO(),
"023e105f4ecef8ad9ca31a8372d0c353",
dns.RecordEditParams{
ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
Name: cloudflare.F("example.com"),
Type: cloudflare.F(dns.RecordEditParamsTypeURI),
Comment: cloudflare.F("Domain verification record"),
Content: cloudflare.F[any](map[string]interface{}{}),
Data: cloudflare.F(dns.RecordEditParamsData{
Flags: cloudflare.F[any](map[string]interface{}{}),
Tag: cloudflare.F("issue"),
Expand Down Expand Up @@ -318,17 +324,14 @@ func TestRecordEditWithOptionalParams(t *testing.T) {
Fingerprint: cloudflare.F("string"),
Content: cloudflare.F("http://example.com/example.html"),
}),
Name: cloudflare.F("example.com"),
Priority: cloudflare.F(10.000000),
Type: cloudflare.F(dns.RecordEditParamsTypeURI),
Comment: cloudflare.F("Domain verification record"),
Meta: cloudflare.F(dns.RecordEditParamsMeta{
AutoAdded: cloudflare.F(true),
Source: cloudflare.F("primary"),
}),
Proxied: cloudflare.F(false),
Tags: cloudflare.F([]string{"owner:dns-team", "owner:dns-team", "owner:dns-team"}),
TTL: cloudflare.F[dns.RecordEditParamsTTL](shared.UnionFloat(3600.000000)),
Priority: cloudflare.F(10.000000),
Proxied: cloudflare.F(false),
Tags: cloudflare.F([]string{"owner:dns-team", "owner:dns-team", "owner:dns-team"}),
TTL: cloudflare.F[dns.RecordEditParamsTTL](shared.UnionFloat(3600.000000)),
},
)
if err != nil {
Expand Down

0 comments on commit 3697304

Please sign in to comment.