Skip to content

Commit

Permalink
feat(api): OpenAPI spec update via Stainless API (#1940)
Browse files Browse the repository at this point in the history
  • Loading branch information
stainless-app[bot] authored and stainless-bot committed May 7, 2024
1 parent b36f46d commit 48003b3
Show file tree
Hide file tree
Showing 7 changed files with 251 additions and 144 deletions.
2 changes: 1 addition & 1 deletion .stats.yml
@@ -1,2 +1,2 @@
configured_endpoints: 1269
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-35412fd158c3e184d9aa368a2fd1c169ec542af1a1892f41155afe8df8ad79bf.yml
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-4fc19263c4199ac7a9f52555bb93fb6873cdf2fd27956ca936d69a5f32a26204.yml
12 changes: 6 additions & 6 deletions api.md

Large diffs are not rendered by default.

132 changes: 83 additions & 49 deletions cloudforce_one/request.go
Expand Up @@ -6,6 +6,7 @@ import (
"context"
"fmt"
"net/http"
"reflect"
"time"

"github.com/cloudflare/cloudflare-go/v2/internal/apijson"
Expand All @@ -14,6 +15,7 @@ import (
"github.com/cloudflare/cloudflare-go/v2/internal/requestconfig"
"github.com/cloudflare/cloudflare-go/v2/option"
"github.com/cloudflare/cloudflare-go/v2/shared"
"github.com/tidwall/gjson"
)

// RequestService contains methods and other services that help with interacting
Expand Down Expand Up @@ -91,10 +93,15 @@ func (r *RequestService) ListAutoPaging(ctx context.Context, accountIdentifier s
}

// Delete a Request
func (r *RequestService) Delete(ctx context.Context, accountIdentifier string, requestIdentifier string, opts ...option.RequestOption) (res *RequestDeleteResponse, err error) {
func (r *RequestService) Delete(ctx context.Context, accountIdentifier string, requestIdentifier string, opts ...option.RequestOption) (res *RequestDeleteResponseUnion, err error) {
opts = append(r.Options[:], opts...)
var env RequestDeleteResponseEnvelope
path := fmt.Sprintf("accounts/%s/cloudforce-one/requests/%s", accountIdentifier, requestIdentifier)
err = requestconfig.ExecuteNewRequest(ctx, http.MethodDelete, path, nil, &res, opts...)
err = requestconfig.ExecuteNewRequest(ctx, http.MethodDelete, path, nil, &env, opts...)
if err != nil {
return
}
res = &env.Result
return
}

Expand Down Expand Up @@ -462,46 +469,30 @@ func (r RequestConstantsTlp) IsKnown() bool {

type RequestTypes []string

type RequestDeleteResponse struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
// Whether the API call was successful
Success RequestDeleteResponseSuccess `json:"success,required"`
JSON requestDeleteResponseJSON `json:"-"`
}

// requestDeleteResponseJSON contains the JSON metadata for the struct
// [RequestDeleteResponse]
type requestDeleteResponseJSON struct {
Errors apijson.Field
Messages apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}

func (r *RequestDeleteResponse) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
// Union satisfied by [cloudforce_one.RequestDeleteResponseUnknown],
// [cloudforce_one.RequestDeleteResponseArray] or [shared.UnionString].
type RequestDeleteResponseUnion interface {
ImplementsCloudforceOneRequestDeleteResponseUnion()
}

func (r requestDeleteResponseJSON) RawJSON() string {
return r.raw
func init() {
apijson.RegisterUnion(
reflect.TypeOf((*RequestDeleteResponseUnion)(nil)).Elem(),
"",
apijson.UnionVariant{
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(RequestDeleteResponseArray{}),
},
apijson.UnionVariant{
TypeFilter: gjson.String,
Type: reflect.TypeOf(shared.UnionString("")),
},
)
}

// Whether the API call was successful
type RequestDeleteResponseSuccess bool
type RequestDeleteResponseArray []interface{}

const (
RequestDeleteResponseSuccessTrue RequestDeleteResponseSuccess = true
)

func (r RequestDeleteResponseSuccess) IsKnown() bool {
switch r {
case RequestDeleteResponseSuccessTrue:
return true
}
return false
}
func (r RequestDeleteResponseArray) ImplementsCloudforceOneRequestDeleteResponseUnion() {}

type RequestNewParams struct {
// Request content
Expand Down Expand Up @@ -542,9 +533,9 @@ func (r RequestNewParamsTlp) IsKnown() bool {
type RequestNewResponseEnvelope struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
Result Item `json:"result,required"`
// Whether the API call was successful
Success RequestNewResponseEnvelopeSuccess `json:"success,required"`
Result Item `json:"result"`
JSON requestNewResponseEnvelopeJSON `json:"-"`
}

Expand All @@ -553,8 +544,8 @@ type RequestNewResponseEnvelope struct {
type requestNewResponseEnvelopeJSON struct {
Errors apijson.Field
Messages apijson.Field
Success apijson.Field
Result apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
Expand Down Expand Up @@ -621,9 +612,9 @@ func (r RequestUpdateParamsTlp) IsKnown() bool {
type RequestUpdateResponseEnvelope struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
Result Item `json:"result,required"`
// Whether the API call was successful
Success RequestUpdateResponseEnvelopeSuccess `json:"success,required"`
Result Item `json:"result"`
JSON requestUpdateResponseEnvelopeJSON `json:"-"`
}

Expand All @@ -632,8 +623,8 @@ type RequestUpdateResponseEnvelope struct {
type requestUpdateResponseEnvelopeJSON struct {
Errors apijson.Field
Messages apijson.Field
Success apijson.Field
Result apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
Expand Down Expand Up @@ -724,12 +715,55 @@ func (r RequestListParamsStatus) IsKnown() bool {
return false
}

type RequestDeleteResponseEnvelope struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
Result RequestDeleteResponseUnion `json:"result,required"`
// Whether the API call was successful
Success RequestDeleteResponseEnvelopeSuccess `json:"success,required"`
JSON requestDeleteResponseEnvelopeJSON `json:"-"`
}

// requestDeleteResponseEnvelopeJSON contains the JSON metadata for the struct
// [RequestDeleteResponseEnvelope]
type requestDeleteResponseEnvelopeJSON struct {
Errors apijson.Field
Messages apijson.Field
Result apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}

func (r *RequestDeleteResponseEnvelope) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}

func (r requestDeleteResponseEnvelopeJSON) RawJSON() string {
return r.raw
}

// Whether the API call was successful
type RequestDeleteResponseEnvelopeSuccess bool

const (
RequestDeleteResponseEnvelopeSuccessTrue RequestDeleteResponseEnvelopeSuccess = true
)

func (r RequestDeleteResponseEnvelopeSuccess) IsKnown() bool {
switch r {
case RequestDeleteResponseEnvelopeSuccessTrue:
return true
}
return false
}

type RequestConstantsResponseEnvelope struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
Result RequestConstants `json:"result,required"`
// Whether the API call was successful
Success RequestConstantsResponseEnvelopeSuccess `json:"success,required"`
Result RequestConstants `json:"result"`
JSON requestConstantsResponseEnvelopeJSON `json:"-"`
}

Expand All @@ -738,8 +772,8 @@ type RequestConstantsResponseEnvelope struct {
type requestConstantsResponseEnvelopeJSON struct {
Errors apijson.Field
Messages apijson.Field
Success apijson.Field
Result apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
Expand Down Expand Up @@ -770,9 +804,9 @@ func (r RequestConstantsResponseEnvelopeSuccess) IsKnown() bool {
type RequestGetResponseEnvelope struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
Result Item `json:"result,required"`
// Whether the API call was successful
Success RequestGetResponseEnvelopeSuccess `json:"success,required"`
Result Item `json:"result"`
JSON requestGetResponseEnvelopeJSON `json:"-"`
}

Expand All @@ -781,8 +815,8 @@ type RequestGetResponseEnvelope struct {
type requestGetResponseEnvelopeJSON struct {
Errors apijson.Field
Messages apijson.Field
Success apijson.Field
Result apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
Expand Down Expand Up @@ -813,9 +847,9 @@ func (r RequestGetResponseEnvelopeSuccess) IsKnown() bool {
type RequestQuotaResponseEnvelope struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
Result Quota `json:"result,required"`
// Whether the API call was successful
Success RequestQuotaResponseEnvelopeSuccess `json:"success,required"`
Result Quota `json:"result"`
JSON requestQuotaResponseEnvelopeJSON `json:"-"`
}

Expand All @@ -824,8 +858,8 @@ type RequestQuotaResponseEnvelope struct {
type requestQuotaResponseEnvelopeJSON struct {
Errors apijson.Field
Messages apijson.Field
Success apijson.Field
Result apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
Expand Down Expand Up @@ -856,9 +890,9 @@ func (r RequestQuotaResponseEnvelopeSuccess) IsKnown() bool {
type RequestTypesResponseEnvelope struct {
Errors []shared.ResponseInfo `json:"errors,required"`
Messages []shared.ResponseInfo `json:"messages,required"`
Result RequestTypes `json:"result,required"`
// Whether the API call was successful
Success RequestTypesResponseEnvelopeSuccess `json:"success,required"`
Result RequestTypes `json:"result"`
JSON requestTypesResponseEnvelopeJSON `json:"-"`
}

Expand All @@ -867,8 +901,8 @@ type RequestTypesResponseEnvelope struct {
type requestTypesResponseEnvelopeJSON struct {
Errors apijson.Field
Messages apijson.Field
Success apijson.Field
Result apijson.Field
Success apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
Expand Down

0 comments on commit 48003b3

Please sign in to comment.