vendorify
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_list_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_list_parameters.go
new file mode 100644
index 0000000..f195561
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_list_parameters.go
@@ -0,0 +1,128 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsChoicesListParams creates a new SecretsChoicesListParams object
+// with the default values initialized.
+func NewSecretsChoicesListParams() *SecretsChoicesListParams {
+
+	return &SecretsChoicesListParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsChoicesListParamsWithTimeout creates a new SecretsChoicesListParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsChoicesListParamsWithTimeout(timeout time.Duration) *SecretsChoicesListParams {
+
+	return &SecretsChoicesListParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsChoicesListParamsWithContext creates a new SecretsChoicesListParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsChoicesListParamsWithContext(ctx context.Context) *SecretsChoicesListParams {
+
+	return &SecretsChoicesListParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsChoicesListParamsWithHTTPClient creates a new SecretsChoicesListParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsChoicesListParamsWithHTTPClient(client *http.Client) *SecretsChoicesListParams {
+
+	return &SecretsChoicesListParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsChoicesListParams contains all the parameters to send to the API endpoint
+for the secrets choices list operation typically these are written to a http.Request
+*/
+type SecretsChoicesListParams struct {
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets choices list params
+func (o *SecretsChoicesListParams) WithTimeout(timeout time.Duration) *SecretsChoicesListParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets choices list params
+func (o *SecretsChoicesListParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets choices list params
+func (o *SecretsChoicesListParams) WithContext(ctx context.Context) *SecretsChoicesListParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets choices list params
+func (o *SecretsChoicesListParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets choices list params
+func (o *SecretsChoicesListParams) WithHTTPClient(client *http.Client) *SecretsChoicesListParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets choices list params
+func (o *SecretsChoicesListParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsChoicesListParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_list_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_list_responses.go
new file mode 100644
index 0000000..6990d01
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_list_responses.go
@@ -0,0 +1,70 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// SecretsChoicesListReader is a Reader for the SecretsChoicesList structure.
+type SecretsChoicesListReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsChoicesListReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsChoicesListOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsChoicesListOK creates a SecretsChoicesListOK with default headers values
+func NewSecretsChoicesListOK() *SecretsChoicesListOK {
+	return &SecretsChoicesListOK{}
+}
+
+/*SecretsChoicesListOK handles this case with default header values.
+
+SecretsChoicesListOK secrets choices list o k
+*/
+type SecretsChoicesListOK struct {
+}
+
+func (o *SecretsChoicesListOK) Error() string {
+	return fmt.Sprintf("[GET /secrets/_choices/][%d] secretsChoicesListOK ", 200)
+}
+
+func (o *SecretsChoicesListOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_read_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_read_parameters.go
new file mode 100644
index 0000000..9f8e92d
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_read_parameters.go
@@ -0,0 +1,148 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsChoicesReadParams creates a new SecretsChoicesReadParams object
+// with the default values initialized.
+func NewSecretsChoicesReadParams() *SecretsChoicesReadParams {
+	var ()
+	return &SecretsChoicesReadParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsChoicesReadParamsWithTimeout creates a new SecretsChoicesReadParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsChoicesReadParamsWithTimeout(timeout time.Duration) *SecretsChoicesReadParams {
+	var ()
+	return &SecretsChoicesReadParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsChoicesReadParamsWithContext creates a new SecretsChoicesReadParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsChoicesReadParamsWithContext(ctx context.Context) *SecretsChoicesReadParams {
+	var ()
+	return &SecretsChoicesReadParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsChoicesReadParamsWithHTTPClient creates a new SecretsChoicesReadParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsChoicesReadParamsWithHTTPClient(client *http.Client) *SecretsChoicesReadParams {
+	var ()
+	return &SecretsChoicesReadParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsChoicesReadParams contains all the parameters to send to the API endpoint
+for the secrets choices read operation typically these are written to a http.Request
+*/
+type SecretsChoicesReadParams struct {
+
+	/*ID*/
+	ID string
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets choices read params
+func (o *SecretsChoicesReadParams) WithTimeout(timeout time.Duration) *SecretsChoicesReadParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets choices read params
+func (o *SecretsChoicesReadParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets choices read params
+func (o *SecretsChoicesReadParams) WithContext(ctx context.Context) *SecretsChoicesReadParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets choices read params
+func (o *SecretsChoicesReadParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets choices read params
+func (o *SecretsChoicesReadParams) WithHTTPClient(client *http.Client) *SecretsChoicesReadParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets choices read params
+func (o *SecretsChoicesReadParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithID adds the id to the secrets choices read params
+func (o *SecretsChoicesReadParams) WithID(id string) *SecretsChoicesReadParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets choices read params
+func (o *SecretsChoicesReadParams) SetID(id string) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsChoicesReadParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	// path param id
+	if err := r.SetPathParam("id", o.ID); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_read_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_read_responses.go
new file mode 100644
index 0000000..e85f4f5
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_choices_read_responses.go
@@ -0,0 +1,70 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// SecretsChoicesReadReader is a Reader for the SecretsChoicesRead structure.
+type SecretsChoicesReadReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsChoicesReadReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsChoicesReadOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsChoicesReadOK creates a SecretsChoicesReadOK with default headers values
+func NewSecretsChoicesReadOK() *SecretsChoicesReadOK {
+	return &SecretsChoicesReadOK{}
+}
+
+/*SecretsChoicesReadOK handles this case with default header values.
+
+SecretsChoicesReadOK secrets choices read o k
+*/
+type SecretsChoicesReadOK struct {
+}
+
+func (o *SecretsChoicesReadOK) Error() string {
+	return fmt.Sprintf("[GET /secrets/_choices/{id}/][%d] secretsChoicesReadOK ", 200)
+}
+
+func (o *SecretsChoicesReadOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_client.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_client.go
new file mode 100644
index 0000000..43f4525
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_client.go
@@ -0,0 +1,526 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// New creates a new secrets API client.
+func New(transport runtime.ClientTransport, formats strfmt.Registry) *Client {
+	return &Client{transport: transport, formats: formats}
+}
+
+/*
+Client for secrets API
+*/
+type Client struct {
+	transport runtime.ClientTransport
+	formats   strfmt.Registry
+}
+
+/*
+SecretsChoicesList secrets choices list API
+*/
+func (a *Client) SecretsChoicesList(params *SecretsChoicesListParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsChoicesListOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsChoicesListParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets__choices_list",
+		Method:             "GET",
+		PathPattern:        "/secrets/_choices/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsChoicesListReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsChoicesListOK), nil
+
+}
+
+/*
+SecretsChoicesRead secrets choices read API
+*/
+func (a *Client) SecretsChoicesRead(params *SecretsChoicesReadParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsChoicesReadOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsChoicesReadParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets__choices_read",
+		Method:             "GET",
+		PathPattern:        "/secrets/_choices/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsChoicesReadReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsChoicesReadOK), nil
+
+}
+
+/*
+SecretsGenerateRsaKeyPairList This endpoint can be used to generate a new RSA key pair. The keys are returned in PEM format.
+
+    {
+        "public_key": "<public key>",
+        "private_key": "<private key>"
+    }
+*/
+func (a *Client) SecretsGenerateRsaKeyPairList(params *SecretsGenerateRsaKeyPairListParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsGenerateRsaKeyPairListOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsGenerateRsaKeyPairListParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_generate-rsa-key-pair_list",
+		Method:             "GET",
+		PathPattern:        "/secrets/generate-rsa-key-pair/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsGenerateRsaKeyPairListReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsGenerateRsaKeyPairListOK), nil
+
+}
+
+/*
+SecretsGetSessionKeyCreate Retrieve a temporary session key to use for encrypting and decrypting secrets via the API. The user's private RSA
+key is POSTed with the name `private_key`. An example:
+
+    curl -v -X POST -H "Authorization: Token <token>" -H "Accept: application/json; indent=4" \
+    --data-urlencode "private_key@<filename>" https://netbox/api/secrets/get-session-key/
+
+This request will yield a base64-encoded session key to be included in an `X-Session-Key` header in future requests:
+
+    {
+        "session_key": "+8t4SI6XikgVmB5+/urhozx9O5qCQANyOk1MNe6taRf="
+    }
+
+This endpoint accepts one optional parameter: `preserve_key`. If True and a session key exists, the existing session
+key will be returned instead of a new one.
+*/
+func (a *Client) SecretsGetSessionKeyCreate(params *SecretsGetSessionKeyCreateParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsGetSessionKeyCreateCreated, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsGetSessionKeyCreateParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_get-session-key_create",
+		Method:             "POST",
+		PathPattern:        "/secrets/get-session-key/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsGetSessionKeyCreateReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsGetSessionKeyCreateCreated), nil
+
+}
+
+/*
+SecretsSecretRolesCreate secrets secret roles create API
+*/
+func (a *Client) SecretsSecretRolesCreate(params *SecretsSecretRolesCreateParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretRolesCreateCreated, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretRolesCreateParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secret-roles_create",
+		Method:             "POST",
+		PathPattern:        "/secrets/secret-roles/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretRolesCreateReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretRolesCreateCreated), nil
+
+}
+
+/*
+SecretsSecretRolesDelete secrets secret roles delete API
+*/
+func (a *Client) SecretsSecretRolesDelete(params *SecretsSecretRolesDeleteParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretRolesDeleteNoContent, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretRolesDeleteParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secret-roles_delete",
+		Method:             "DELETE",
+		PathPattern:        "/secrets/secret-roles/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretRolesDeleteReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretRolesDeleteNoContent), nil
+
+}
+
+/*
+SecretsSecretRolesList secrets secret roles list API
+*/
+func (a *Client) SecretsSecretRolesList(params *SecretsSecretRolesListParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretRolesListOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretRolesListParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secret-roles_list",
+		Method:             "GET",
+		PathPattern:        "/secrets/secret-roles/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretRolesListReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretRolesListOK), nil
+
+}
+
+/*
+SecretsSecretRolesPartialUpdate secrets secret roles partial update API
+*/
+func (a *Client) SecretsSecretRolesPartialUpdate(params *SecretsSecretRolesPartialUpdateParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretRolesPartialUpdateOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretRolesPartialUpdateParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secret-roles_partial_update",
+		Method:             "PATCH",
+		PathPattern:        "/secrets/secret-roles/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretRolesPartialUpdateReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretRolesPartialUpdateOK), nil
+
+}
+
+/*
+SecretsSecretRolesRead secrets secret roles read API
+*/
+func (a *Client) SecretsSecretRolesRead(params *SecretsSecretRolesReadParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretRolesReadOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretRolesReadParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secret-roles_read",
+		Method:             "GET",
+		PathPattern:        "/secrets/secret-roles/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretRolesReadReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretRolesReadOK), nil
+
+}
+
+/*
+SecretsSecretRolesUpdate secrets secret roles update API
+*/
+func (a *Client) SecretsSecretRolesUpdate(params *SecretsSecretRolesUpdateParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretRolesUpdateOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretRolesUpdateParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secret-roles_update",
+		Method:             "PUT",
+		PathPattern:        "/secrets/secret-roles/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretRolesUpdateReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretRolesUpdateOK), nil
+
+}
+
+/*
+SecretsSecretsCreate secrets secrets create API
+*/
+func (a *Client) SecretsSecretsCreate(params *SecretsSecretsCreateParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretsCreateCreated, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretsCreateParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secrets_create",
+		Method:             "POST",
+		PathPattern:        "/secrets/secrets/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretsCreateReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretsCreateCreated), nil
+
+}
+
+/*
+SecretsSecretsDelete secrets secrets delete API
+*/
+func (a *Client) SecretsSecretsDelete(params *SecretsSecretsDeleteParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretsDeleteNoContent, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretsDeleteParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secrets_delete",
+		Method:             "DELETE",
+		PathPattern:        "/secrets/secrets/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretsDeleteReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretsDeleteNoContent), nil
+
+}
+
+/*
+SecretsSecretsList secrets secrets list API
+*/
+func (a *Client) SecretsSecretsList(params *SecretsSecretsListParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretsListOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretsListParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secrets_list",
+		Method:             "GET",
+		PathPattern:        "/secrets/secrets/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretsListReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretsListOK), nil
+
+}
+
+/*
+SecretsSecretsPartialUpdate secrets secrets partial update API
+*/
+func (a *Client) SecretsSecretsPartialUpdate(params *SecretsSecretsPartialUpdateParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretsPartialUpdateOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretsPartialUpdateParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secrets_partial_update",
+		Method:             "PATCH",
+		PathPattern:        "/secrets/secrets/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretsPartialUpdateReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretsPartialUpdateOK), nil
+
+}
+
+/*
+SecretsSecretsRead secrets secrets read API
+*/
+func (a *Client) SecretsSecretsRead(params *SecretsSecretsReadParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretsReadOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretsReadParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secrets_read",
+		Method:             "GET",
+		PathPattern:        "/secrets/secrets/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretsReadReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretsReadOK), nil
+
+}
+
+/*
+SecretsSecretsUpdate secrets secrets update API
+*/
+func (a *Client) SecretsSecretsUpdate(params *SecretsSecretsUpdateParams, authInfo runtime.ClientAuthInfoWriter) (*SecretsSecretsUpdateOK, error) {
+	// TODO: Validate the params before sending
+	if params == nil {
+		params = NewSecretsSecretsUpdateParams()
+	}
+
+	result, err := a.transport.Submit(&runtime.ClientOperation{
+		ID:                 "secrets_secrets_update",
+		Method:             "PUT",
+		PathPattern:        "/secrets/secrets/{id}/",
+		ProducesMediaTypes: []string{"application/json"},
+		ConsumesMediaTypes: []string{"application/json"},
+		Schemes:            []string{"http"},
+		Params:             params,
+		Reader:             &SecretsSecretsUpdateReader{formats: a.formats},
+		AuthInfo:           authInfo,
+		Context:            params.Context,
+		Client:             params.HTTPClient,
+	})
+	if err != nil {
+		return nil, err
+	}
+	return result.(*SecretsSecretsUpdateOK), nil
+
+}
+
+// SetTransport changes the transport on the client
+func (a *Client) SetTransport(transport runtime.ClientTransport) {
+	a.transport = transport
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_generate_rsa_key_pair_list_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_generate_rsa_key_pair_list_parameters.go
new file mode 100644
index 0000000..617c6d1
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_generate_rsa_key_pair_list_parameters.go
@@ -0,0 +1,128 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsGenerateRsaKeyPairListParams creates a new SecretsGenerateRsaKeyPairListParams object
+// with the default values initialized.
+func NewSecretsGenerateRsaKeyPairListParams() *SecretsGenerateRsaKeyPairListParams {
+
+	return &SecretsGenerateRsaKeyPairListParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsGenerateRsaKeyPairListParamsWithTimeout creates a new SecretsGenerateRsaKeyPairListParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsGenerateRsaKeyPairListParamsWithTimeout(timeout time.Duration) *SecretsGenerateRsaKeyPairListParams {
+
+	return &SecretsGenerateRsaKeyPairListParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsGenerateRsaKeyPairListParamsWithContext creates a new SecretsGenerateRsaKeyPairListParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsGenerateRsaKeyPairListParamsWithContext(ctx context.Context) *SecretsGenerateRsaKeyPairListParams {
+
+	return &SecretsGenerateRsaKeyPairListParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsGenerateRsaKeyPairListParamsWithHTTPClient creates a new SecretsGenerateRsaKeyPairListParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsGenerateRsaKeyPairListParamsWithHTTPClient(client *http.Client) *SecretsGenerateRsaKeyPairListParams {
+
+	return &SecretsGenerateRsaKeyPairListParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsGenerateRsaKeyPairListParams contains all the parameters to send to the API endpoint
+for the secrets generate rsa key pair list operation typically these are written to a http.Request
+*/
+type SecretsGenerateRsaKeyPairListParams struct {
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets generate rsa key pair list params
+func (o *SecretsGenerateRsaKeyPairListParams) WithTimeout(timeout time.Duration) *SecretsGenerateRsaKeyPairListParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets generate rsa key pair list params
+func (o *SecretsGenerateRsaKeyPairListParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets generate rsa key pair list params
+func (o *SecretsGenerateRsaKeyPairListParams) WithContext(ctx context.Context) *SecretsGenerateRsaKeyPairListParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets generate rsa key pair list params
+func (o *SecretsGenerateRsaKeyPairListParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets generate rsa key pair list params
+func (o *SecretsGenerateRsaKeyPairListParams) WithHTTPClient(client *http.Client) *SecretsGenerateRsaKeyPairListParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets generate rsa key pair list params
+func (o *SecretsGenerateRsaKeyPairListParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsGenerateRsaKeyPairListParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_generate_rsa_key_pair_list_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_generate_rsa_key_pair_list_responses.go
new file mode 100644
index 0000000..eac1128
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_generate_rsa_key_pair_list_responses.go
@@ -0,0 +1,70 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// SecretsGenerateRsaKeyPairListReader is a Reader for the SecretsGenerateRsaKeyPairList structure.
+type SecretsGenerateRsaKeyPairListReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsGenerateRsaKeyPairListReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsGenerateRsaKeyPairListOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsGenerateRsaKeyPairListOK creates a SecretsGenerateRsaKeyPairListOK with default headers values
+func NewSecretsGenerateRsaKeyPairListOK() *SecretsGenerateRsaKeyPairListOK {
+	return &SecretsGenerateRsaKeyPairListOK{}
+}
+
+/*SecretsGenerateRsaKeyPairListOK handles this case with default header values.
+
+SecretsGenerateRsaKeyPairListOK secrets generate rsa key pair list o k
+*/
+type SecretsGenerateRsaKeyPairListOK struct {
+}
+
+func (o *SecretsGenerateRsaKeyPairListOK) Error() string {
+	return fmt.Sprintf("[GET /secrets/generate-rsa-key-pair/][%d] secretsGenerateRsaKeyPairListOK ", 200)
+}
+
+func (o *SecretsGenerateRsaKeyPairListOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_get_session_key_create_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_get_session_key_create_parameters.go
new file mode 100644
index 0000000..1b6a820
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_get_session_key_create_parameters.go
@@ -0,0 +1,128 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsGetSessionKeyCreateParams creates a new SecretsGetSessionKeyCreateParams object
+// with the default values initialized.
+func NewSecretsGetSessionKeyCreateParams() *SecretsGetSessionKeyCreateParams {
+
+	return &SecretsGetSessionKeyCreateParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsGetSessionKeyCreateParamsWithTimeout creates a new SecretsGetSessionKeyCreateParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsGetSessionKeyCreateParamsWithTimeout(timeout time.Duration) *SecretsGetSessionKeyCreateParams {
+
+	return &SecretsGetSessionKeyCreateParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsGetSessionKeyCreateParamsWithContext creates a new SecretsGetSessionKeyCreateParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsGetSessionKeyCreateParamsWithContext(ctx context.Context) *SecretsGetSessionKeyCreateParams {
+
+	return &SecretsGetSessionKeyCreateParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsGetSessionKeyCreateParamsWithHTTPClient creates a new SecretsGetSessionKeyCreateParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsGetSessionKeyCreateParamsWithHTTPClient(client *http.Client) *SecretsGetSessionKeyCreateParams {
+
+	return &SecretsGetSessionKeyCreateParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsGetSessionKeyCreateParams contains all the parameters to send to the API endpoint
+for the secrets get session key create operation typically these are written to a http.Request
+*/
+type SecretsGetSessionKeyCreateParams struct {
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets get session key create params
+func (o *SecretsGetSessionKeyCreateParams) WithTimeout(timeout time.Duration) *SecretsGetSessionKeyCreateParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets get session key create params
+func (o *SecretsGetSessionKeyCreateParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets get session key create params
+func (o *SecretsGetSessionKeyCreateParams) WithContext(ctx context.Context) *SecretsGetSessionKeyCreateParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets get session key create params
+func (o *SecretsGetSessionKeyCreateParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets get session key create params
+func (o *SecretsGetSessionKeyCreateParams) WithHTTPClient(client *http.Client) *SecretsGetSessionKeyCreateParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets get session key create params
+func (o *SecretsGetSessionKeyCreateParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsGetSessionKeyCreateParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_get_session_key_create_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_get_session_key_create_responses.go
new file mode 100644
index 0000000..5e68480
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_get_session_key_create_responses.go
@@ -0,0 +1,70 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// SecretsGetSessionKeyCreateReader is a Reader for the SecretsGetSessionKeyCreate structure.
+type SecretsGetSessionKeyCreateReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsGetSessionKeyCreateReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 201:
+		result := NewSecretsGetSessionKeyCreateCreated()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsGetSessionKeyCreateCreated creates a SecretsGetSessionKeyCreateCreated with default headers values
+func NewSecretsGetSessionKeyCreateCreated() *SecretsGetSessionKeyCreateCreated {
+	return &SecretsGetSessionKeyCreateCreated{}
+}
+
+/*SecretsGetSessionKeyCreateCreated handles this case with default header values.
+
+SecretsGetSessionKeyCreateCreated secrets get session key create created
+*/
+type SecretsGetSessionKeyCreateCreated struct {
+}
+
+func (o *SecretsGetSessionKeyCreateCreated) Error() string {
+	return fmt.Sprintf("[POST /secrets/get-session-key/][%d] secretsGetSessionKeyCreateCreated ", 201)
+}
+
+func (o *SecretsGetSessionKeyCreateCreated) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_create_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_create_parameters.go
new file mode 100644
index 0000000..9079873
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_create_parameters.go
@@ -0,0 +1,151 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// NewSecretsSecretRolesCreateParams creates a new SecretsSecretRolesCreateParams object
+// with the default values initialized.
+func NewSecretsSecretRolesCreateParams() *SecretsSecretRolesCreateParams {
+	var ()
+	return &SecretsSecretRolesCreateParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretRolesCreateParamsWithTimeout creates a new SecretsSecretRolesCreateParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretRolesCreateParamsWithTimeout(timeout time.Duration) *SecretsSecretRolesCreateParams {
+	var ()
+	return &SecretsSecretRolesCreateParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretRolesCreateParamsWithContext creates a new SecretsSecretRolesCreateParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretRolesCreateParamsWithContext(ctx context.Context) *SecretsSecretRolesCreateParams {
+	var ()
+	return &SecretsSecretRolesCreateParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretRolesCreateParamsWithHTTPClient creates a new SecretsSecretRolesCreateParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretRolesCreateParamsWithHTTPClient(client *http.Client) *SecretsSecretRolesCreateParams {
+	var ()
+	return &SecretsSecretRolesCreateParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretRolesCreateParams contains all the parameters to send to the API endpoint
+for the secrets secret roles create operation typically these are written to a http.Request
+*/
+type SecretsSecretRolesCreateParams struct {
+
+	/*Data*/
+	Data *models.SecretRole
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) WithTimeout(timeout time.Duration) *SecretsSecretRolesCreateParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) WithContext(ctx context.Context) *SecretsSecretRolesCreateParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) WithHTTPClient(client *http.Client) *SecretsSecretRolesCreateParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithData adds the data to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) WithData(data *models.SecretRole) *SecretsSecretRolesCreateParams {
+	o.SetData(data)
+	return o
+}
+
+// SetData adds the data to the secrets secret roles create params
+func (o *SecretsSecretRolesCreateParams) SetData(data *models.SecretRole) {
+	o.Data = data
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretRolesCreateParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Data != nil {
+		if err := r.SetBodyParam(o.Data); err != nil {
+			return err
+		}
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_create_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_create_responses.go
new file mode 100644
index 0000000..3e7f580
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_create_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretRolesCreateReader is a Reader for the SecretsSecretRolesCreate structure.
+type SecretsSecretRolesCreateReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretRolesCreateReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 201:
+		result := NewSecretsSecretRolesCreateCreated()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretRolesCreateCreated creates a SecretsSecretRolesCreateCreated with default headers values
+func NewSecretsSecretRolesCreateCreated() *SecretsSecretRolesCreateCreated {
+	return &SecretsSecretRolesCreateCreated{}
+}
+
+/*SecretsSecretRolesCreateCreated handles this case with default header values.
+
+SecretsSecretRolesCreateCreated secrets secret roles create created
+*/
+type SecretsSecretRolesCreateCreated struct {
+	Payload *models.SecretRole
+}
+
+func (o *SecretsSecretRolesCreateCreated) Error() string {
+	return fmt.Sprintf("[POST /secrets/secret-roles/][%d] secretsSecretRolesCreateCreated  %+v", 201, o.Payload)
+}
+
+func (o *SecretsSecretRolesCreateCreated) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.SecretRole)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_delete_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_delete_parameters.go
new file mode 100644
index 0000000..a817be2
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_delete_parameters.go
@@ -0,0 +1,152 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsSecretRolesDeleteParams creates a new SecretsSecretRolesDeleteParams object
+// with the default values initialized.
+func NewSecretsSecretRolesDeleteParams() *SecretsSecretRolesDeleteParams {
+	var ()
+	return &SecretsSecretRolesDeleteParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretRolesDeleteParamsWithTimeout creates a new SecretsSecretRolesDeleteParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretRolesDeleteParamsWithTimeout(timeout time.Duration) *SecretsSecretRolesDeleteParams {
+	var ()
+	return &SecretsSecretRolesDeleteParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretRolesDeleteParamsWithContext creates a new SecretsSecretRolesDeleteParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretRolesDeleteParamsWithContext(ctx context.Context) *SecretsSecretRolesDeleteParams {
+	var ()
+	return &SecretsSecretRolesDeleteParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretRolesDeleteParamsWithHTTPClient creates a new SecretsSecretRolesDeleteParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretRolesDeleteParamsWithHTTPClient(client *http.Client) *SecretsSecretRolesDeleteParams {
+	var ()
+	return &SecretsSecretRolesDeleteParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretRolesDeleteParams contains all the parameters to send to the API endpoint
+for the secrets secret roles delete operation typically these are written to a http.Request
+*/
+type SecretsSecretRolesDeleteParams struct {
+
+	/*ID
+	  A unique integer value identifying this secret role.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) WithTimeout(timeout time.Duration) *SecretsSecretRolesDeleteParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) WithContext(ctx context.Context) *SecretsSecretRolesDeleteParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) WithHTTPClient(client *http.Client) *SecretsSecretRolesDeleteParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithID adds the id to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) WithID(id int64) *SecretsSecretRolesDeleteParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secret roles delete params
+func (o *SecretsSecretRolesDeleteParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretRolesDeleteParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_delete_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_delete_responses.go
new file mode 100644
index 0000000..e8691fa
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_delete_responses.go
@@ -0,0 +1,70 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// SecretsSecretRolesDeleteReader is a Reader for the SecretsSecretRolesDelete structure.
+type SecretsSecretRolesDeleteReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretRolesDeleteReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 204:
+		result := NewSecretsSecretRolesDeleteNoContent()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretRolesDeleteNoContent creates a SecretsSecretRolesDeleteNoContent with default headers values
+func NewSecretsSecretRolesDeleteNoContent() *SecretsSecretRolesDeleteNoContent {
+	return &SecretsSecretRolesDeleteNoContent{}
+}
+
+/*SecretsSecretRolesDeleteNoContent handles this case with default header values.
+
+SecretsSecretRolesDeleteNoContent secrets secret roles delete no content
+*/
+type SecretsSecretRolesDeleteNoContent struct {
+}
+
+func (o *SecretsSecretRolesDeleteNoContent) Error() string {
+	return fmt.Sprintf("[DELETE /secrets/secret-roles/{id}/][%d] secretsSecretRolesDeleteNoContent ", 204)
+}
+
+func (o *SecretsSecretRolesDeleteNoContent) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_list_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_list_parameters.go
new file mode 100644
index 0000000..3f348ef
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_list_parameters.go
@@ -0,0 +1,253 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsSecretRolesListParams creates a new SecretsSecretRolesListParams object
+// with the default values initialized.
+func NewSecretsSecretRolesListParams() *SecretsSecretRolesListParams {
+	var ()
+	return &SecretsSecretRolesListParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretRolesListParamsWithTimeout creates a new SecretsSecretRolesListParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretRolesListParamsWithTimeout(timeout time.Duration) *SecretsSecretRolesListParams {
+	var ()
+	return &SecretsSecretRolesListParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretRolesListParamsWithContext creates a new SecretsSecretRolesListParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretRolesListParamsWithContext(ctx context.Context) *SecretsSecretRolesListParams {
+	var ()
+	return &SecretsSecretRolesListParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretRolesListParamsWithHTTPClient creates a new SecretsSecretRolesListParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretRolesListParamsWithHTTPClient(client *http.Client) *SecretsSecretRolesListParams {
+	var ()
+	return &SecretsSecretRolesListParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretRolesListParams contains all the parameters to send to the API endpoint
+for the secrets secret roles list operation typically these are written to a http.Request
+*/
+type SecretsSecretRolesListParams struct {
+
+	/*Limit
+	  Number of results to return per page.
+
+	*/
+	Limit *int64
+	/*Name*/
+	Name *string
+	/*Offset
+	  The initial index from which to return the results.
+
+	*/
+	Offset *int64
+	/*Slug*/
+	Slug *string
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) WithTimeout(timeout time.Duration) *SecretsSecretRolesListParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) WithContext(ctx context.Context) *SecretsSecretRolesListParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) WithHTTPClient(client *http.Client) *SecretsSecretRolesListParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithLimit adds the limit to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) WithLimit(limit *int64) *SecretsSecretRolesListParams {
+	o.SetLimit(limit)
+	return o
+}
+
+// SetLimit adds the limit to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) SetLimit(limit *int64) {
+	o.Limit = limit
+}
+
+// WithName adds the name to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) WithName(name *string) *SecretsSecretRolesListParams {
+	o.SetName(name)
+	return o
+}
+
+// SetName adds the name to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) SetName(name *string) {
+	o.Name = name
+}
+
+// WithOffset adds the offset to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) WithOffset(offset *int64) *SecretsSecretRolesListParams {
+	o.SetOffset(offset)
+	return o
+}
+
+// SetOffset adds the offset to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) SetOffset(offset *int64) {
+	o.Offset = offset
+}
+
+// WithSlug adds the slug to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) WithSlug(slug *string) *SecretsSecretRolesListParams {
+	o.SetSlug(slug)
+	return o
+}
+
+// SetSlug adds the slug to the secrets secret roles list params
+func (o *SecretsSecretRolesListParams) SetSlug(slug *string) {
+	o.Slug = slug
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretRolesListParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Limit != nil {
+
+		// query param limit
+		var qrLimit int64
+		if o.Limit != nil {
+			qrLimit = *o.Limit
+		}
+		qLimit := swag.FormatInt64(qrLimit)
+		if qLimit != "" {
+			if err := r.SetQueryParam("limit", qLimit); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Name != nil {
+
+		// query param name
+		var qrName string
+		if o.Name != nil {
+			qrName = *o.Name
+		}
+		qName := qrName
+		if qName != "" {
+			if err := r.SetQueryParam("name", qName); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Offset != nil {
+
+		// query param offset
+		var qrOffset int64
+		if o.Offset != nil {
+			qrOffset = *o.Offset
+		}
+		qOffset := swag.FormatInt64(qrOffset)
+		if qOffset != "" {
+			if err := r.SetQueryParam("offset", qOffset); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Slug != nil {
+
+		// query param slug
+		var qrSlug string
+		if o.Slug != nil {
+			qrSlug = *o.Slug
+		}
+		qSlug := qrSlug
+		if qSlug != "" {
+			if err := r.SetQueryParam("slug", qSlug); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_list_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_list_responses.go
new file mode 100644
index 0000000..5c9ef19
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_list_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretRolesListReader is a Reader for the SecretsSecretRolesList structure.
+type SecretsSecretRolesListReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretRolesListReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretRolesListOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretRolesListOK creates a SecretsSecretRolesListOK with default headers values
+func NewSecretsSecretRolesListOK() *SecretsSecretRolesListOK {
+	return &SecretsSecretRolesListOK{}
+}
+
+/*SecretsSecretRolesListOK handles this case with default header values.
+
+SecretsSecretRolesListOK secrets secret roles list o k
+*/
+type SecretsSecretRolesListOK struct {
+	Payload *models.SecretsSecretRolesListOKBody
+}
+
+func (o *SecretsSecretRolesListOK) Error() string {
+	return fmt.Sprintf("[GET /secrets/secret-roles/][%d] secretsSecretRolesListOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretRolesListOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.SecretsSecretRolesListOKBody)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_partial_update_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_partial_update_parameters.go
new file mode 100644
index 0000000..8d5cc74
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_partial_update_parameters.go
@@ -0,0 +1,173 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// NewSecretsSecretRolesPartialUpdateParams creates a new SecretsSecretRolesPartialUpdateParams object
+// with the default values initialized.
+func NewSecretsSecretRolesPartialUpdateParams() *SecretsSecretRolesPartialUpdateParams {
+	var ()
+	return &SecretsSecretRolesPartialUpdateParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretRolesPartialUpdateParamsWithTimeout creates a new SecretsSecretRolesPartialUpdateParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretRolesPartialUpdateParamsWithTimeout(timeout time.Duration) *SecretsSecretRolesPartialUpdateParams {
+	var ()
+	return &SecretsSecretRolesPartialUpdateParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretRolesPartialUpdateParamsWithContext creates a new SecretsSecretRolesPartialUpdateParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretRolesPartialUpdateParamsWithContext(ctx context.Context) *SecretsSecretRolesPartialUpdateParams {
+	var ()
+	return &SecretsSecretRolesPartialUpdateParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretRolesPartialUpdateParamsWithHTTPClient creates a new SecretsSecretRolesPartialUpdateParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretRolesPartialUpdateParamsWithHTTPClient(client *http.Client) *SecretsSecretRolesPartialUpdateParams {
+	var ()
+	return &SecretsSecretRolesPartialUpdateParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretRolesPartialUpdateParams contains all the parameters to send to the API endpoint
+for the secrets secret roles partial update operation typically these are written to a http.Request
+*/
+type SecretsSecretRolesPartialUpdateParams struct {
+
+	/*Data*/
+	Data *models.SecretRole
+	/*ID
+	  A unique integer value identifying this secret role.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) WithTimeout(timeout time.Duration) *SecretsSecretRolesPartialUpdateParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) WithContext(ctx context.Context) *SecretsSecretRolesPartialUpdateParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) WithHTTPClient(client *http.Client) *SecretsSecretRolesPartialUpdateParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithData adds the data to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) WithData(data *models.SecretRole) *SecretsSecretRolesPartialUpdateParams {
+	o.SetData(data)
+	return o
+}
+
+// SetData adds the data to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) SetData(data *models.SecretRole) {
+	o.Data = data
+}
+
+// WithID adds the id to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) WithID(id int64) *SecretsSecretRolesPartialUpdateParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secret roles partial update params
+func (o *SecretsSecretRolesPartialUpdateParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretRolesPartialUpdateParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Data != nil {
+		if err := r.SetBodyParam(o.Data); err != nil {
+			return err
+		}
+	}
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_partial_update_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_partial_update_responses.go
new file mode 100644
index 0000000..e32c3b9
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_partial_update_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretRolesPartialUpdateReader is a Reader for the SecretsSecretRolesPartialUpdate structure.
+type SecretsSecretRolesPartialUpdateReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretRolesPartialUpdateReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretRolesPartialUpdateOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretRolesPartialUpdateOK creates a SecretsSecretRolesPartialUpdateOK with default headers values
+func NewSecretsSecretRolesPartialUpdateOK() *SecretsSecretRolesPartialUpdateOK {
+	return &SecretsSecretRolesPartialUpdateOK{}
+}
+
+/*SecretsSecretRolesPartialUpdateOK handles this case with default header values.
+
+SecretsSecretRolesPartialUpdateOK secrets secret roles partial update o k
+*/
+type SecretsSecretRolesPartialUpdateOK struct {
+	Payload *models.SecretRole
+}
+
+func (o *SecretsSecretRolesPartialUpdateOK) Error() string {
+	return fmt.Sprintf("[PATCH /secrets/secret-roles/{id}/][%d] secretsSecretRolesPartialUpdateOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretRolesPartialUpdateOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.SecretRole)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_read_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_read_parameters.go
new file mode 100644
index 0000000..2f77a4f
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_read_parameters.go
@@ -0,0 +1,152 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsSecretRolesReadParams creates a new SecretsSecretRolesReadParams object
+// with the default values initialized.
+func NewSecretsSecretRolesReadParams() *SecretsSecretRolesReadParams {
+	var ()
+	return &SecretsSecretRolesReadParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretRolesReadParamsWithTimeout creates a new SecretsSecretRolesReadParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretRolesReadParamsWithTimeout(timeout time.Duration) *SecretsSecretRolesReadParams {
+	var ()
+	return &SecretsSecretRolesReadParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretRolesReadParamsWithContext creates a new SecretsSecretRolesReadParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretRolesReadParamsWithContext(ctx context.Context) *SecretsSecretRolesReadParams {
+	var ()
+	return &SecretsSecretRolesReadParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretRolesReadParamsWithHTTPClient creates a new SecretsSecretRolesReadParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretRolesReadParamsWithHTTPClient(client *http.Client) *SecretsSecretRolesReadParams {
+	var ()
+	return &SecretsSecretRolesReadParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretRolesReadParams contains all the parameters to send to the API endpoint
+for the secrets secret roles read operation typically these are written to a http.Request
+*/
+type SecretsSecretRolesReadParams struct {
+
+	/*ID
+	  A unique integer value identifying this secret role.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) WithTimeout(timeout time.Duration) *SecretsSecretRolesReadParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) WithContext(ctx context.Context) *SecretsSecretRolesReadParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) WithHTTPClient(client *http.Client) *SecretsSecretRolesReadParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithID adds the id to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) WithID(id int64) *SecretsSecretRolesReadParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secret roles read params
+func (o *SecretsSecretRolesReadParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretRolesReadParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_read_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_read_responses.go
new file mode 100644
index 0000000..1af11f6
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_read_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretRolesReadReader is a Reader for the SecretsSecretRolesRead structure.
+type SecretsSecretRolesReadReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretRolesReadReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretRolesReadOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretRolesReadOK creates a SecretsSecretRolesReadOK with default headers values
+func NewSecretsSecretRolesReadOK() *SecretsSecretRolesReadOK {
+	return &SecretsSecretRolesReadOK{}
+}
+
+/*SecretsSecretRolesReadOK handles this case with default header values.
+
+SecretsSecretRolesReadOK secrets secret roles read o k
+*/
+type SecretsSecretRolesReadOK struct {
+	Payload *models.SecretRole
+}
+
+func (o *SecretsSecretRolesReadOK) Error() string {
+	return fmt.Sprintf("[GET /secrets/secret-roles/{id}/][%d] secretsSecretRolesReadOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretRolesReadOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.SecretRole)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_update_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_update_parameters.go
new file mode 100644
index 0000000..fbee6d4
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_update_parameters.go
@@ -0,0 +1,173 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// NewSecretsSecretRolesUpdateParams creates a new SecretsSecretRolesUpdateParams object
+// with the default values initialized.
+func NewSecretsSecretRolesUpdateParams() *SecretsSecretRolesUpdateParams {
+	var ()
+	return &SecretsSecretRolesUpdateParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretRolesUpdateParamsWithTimeout creates a new SecretsSecretRolesUpdateParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretRolesUpdateParamsWithTimeout(timeout time.Duration) *SecretsSecretRolesUpdateParams {
+	var ()
+	return &SecretsSecretRolesUpdateParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretRolesUpdateParamsWithContext creates a new SecretsSecretRolesUpdateParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretRolesUpdateParamsWithContext(ctx context.Context) *SecretsSecretRolesUpdateParams {
+	var ()
+	return &SecretsSecretRolesUpdateParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretRolesUpdateParamsWithHTTPClient creates a new SecretsSecretRolesUpdateParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretRolesUpdateParamsWithHTTPClient(client *http.Client) *SecretsSecretRolesUpdateParams {
+	var ()
+	return &SecretsSecretRolesUpdateParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretRolesUpdateParams contains all the parameters to send to the API endpoint
+for the secrets secret roles update operation typically these are written to a http.Request
+*/
+type SecretsSecretRolesUpdateParams struct {
+
+	/*Data*/
+	Data *models.SecretRole
+	/*ID
+	  A unique integer value identifying this secret role.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) WithTimeout(timeout time.Duration) *SecretsSecretRolesUpdateParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) WithContext(ctx context.Context) *SecretsSecretRolesUpdateParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) WithHTTPClient(client *http.Client) *SecretsSecretRolesUpdateParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithData adds the data to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) WithData(data *models.SecretRole) *SecretsSecretRolesUpdateParams {
+	o.SetData(data)
+	return o
+}
+
+// SetData adds the data to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) SetData(data *models.SecretRole) {
+	o.Data = data
+}
+
+// WithID adds the id to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) WithID(id int64) *SecretsSecretRolesUpdateParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secret roles update params
+func (o *SecretsSecretRolesUpdateParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretRolesUpdateParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Data != nil {
+		if err := r.SetBodyParam(o.Data); err != nil {
+			return err
+		}
+	}
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_update_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_update_responses.go
new file mode 100644
index 0000000..335f724
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secret_roles_update_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretRolesUpdateReader is a Reader for the SecretsSecretRolesUpdate structure.
+type SecretsSecretRolesUpdateReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretRolesUpdateReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretRolesUpdateOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretRolesUpdateOK creates a SecretsSecretRolesUpdateOK with default headers values
+func NewSecretsSecretRolesUpdateOK() *SecretsSecretRolesUpdateOK {
+	return &SecretsSecretRolesUpdateOK{}
+}
+
+/*SecretsSecretRolesUpdateOK handles this case with default header values.
+
+SecretsSecretRolesUpdateOK secrets secret roles update o k
+*/
+type SecretsSecretRolesUpdateOK struct {
+	Payload *models.SecretRole
+}
+
+func (o *SecretsSecretRolesUpdateOK) Error() string {
+	return fmt.Sprintf("[PUT /secrets/secret-roles/{id}/][%d] secretsSecretRolesUpdateOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretRolesUpdateOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.SecretRole)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_create_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_create_parameters.go
new file mode 100644
index 0000000..955ef7a
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_create_parameters.go
@@ -0,0 +1,151 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// NewSecretsSecretsCreateParams creates a new SecretsSecretsCreateParams object
+// with the default values initialized.
+func NewSecretsSecretsCreateParams() *SecretsSecretsCreateParams {
+	var ()
+	return &SecretsSecretsCreateParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretsCreateParamsWithTimeout creates a new SecretsSecretsCreateParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretsCreateParamsWithTimeout(timeout time.Duration) *SecretsSecretsCreateParams {
+	var ()
+	return &SecretsSecretsCreateParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretsCreateParamsWithContext creates a new SecretsSecretsCreateParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretsCreateParamsWithContext(ctx context.Context) *SecretsSecretsCreateParams {
+	var ()
+	return &SecretsSecretsCreateParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretsCreateParamsWithHTTPClient creates a new SecretsSecretsCreateParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretsCreateParamsWithHTTPClient(client *http.Client) *SecretsSecretsCreateParams {
+	var ()
+	return &SecretsSecretsCreateParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretsCreateParams contains all the parameters to send to the API endpoint
+for the secrets secrets create operation typically these are written to a http.Request
+*/
+type SecretsSecretsCreateParams struct {
+
+	/*Data*/
+	Data *models.WritableSecret
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) WithTimeout(timeout time.Duration) *SecretsSecretsCreateParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) WithContext(ctx context.Context) *SecretsSecretsCreateParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) WithHTTPClient(client *http.Client) *SecretsSecretsCreateParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithData adds the data to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) WithData(data *models.WritableSecret) *SecretsSecretsCreateParams {
+	o.SetData(data)
+	return o
+}
+
+// SetData adds the data to the secrets secrets create params
+func (o *SecretsSecretsCreateParams) SetData(data *models.WritableSecret) {
+	o.Data = data
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretsCreateParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Data != nil {
+		if err := r.SetBodyParam(o.Data); err != nil {
+			return err
+		}
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_create_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_create_responses.go
new file mode 100644
index 0000000..7bfc702
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_create_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretsCreateReader is a Reader for the SecretsSecretsCreate structure.
+type SecretsSecretsCreateReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretsCreateReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 201:
+		result := NewSecretsSecretsCreateCreated()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretsCreateCreated creates a SecretsSecretsCreateCreated with default headers values
+func NewSecretsSecretsCreateCreated() *SecretsSecretsCreateCreated {
+	return &SecretsSecretsCreateCreated{}
+}
+
+/*SecretsSecretsCreateCreated handles this case with default header values.
+
+SecretsSecretsCreateCreated secrets secrets create created
+*/
+type SecretsSecretsCreateCreated struct {
+	Payload *models.WritableSecret
+}
+
+func (o *SecretsSecretsCreateCreated) Error() string {
+	return fmt.Sprintf("[POST /secrets/secrets/][%d] secretsSecretsCreateCreated  %+v", 201, o.Payload)
+}
+
+func (o *SecretsSecretsCreateCreated) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.WritableSecret)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_delete_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_delete_parameters.go
new file mode 100644
index 0000000..b4d4592
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_delete_parameters.go
@@ -0,0 +1,152 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsSecretsDeleteParams creates a new SecretsSecretsDeleteParams object
+// with the default values initialized.
+func NewSecretsSecretsDeleteParams() *SecretsSecretsDeleteParams {
+	var ()
+	return &SecretsSecretsDeleteParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretsDeleteParamsWithTimeout creates a new SecretsSecretsDeleteParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretsDeleteParamsWithTimeout(timeout time.Duration) *SecretsSecretsDeleteParams {
+	var ()
+	return &SecretsSecretsDeleteParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretsDeleteParamsWithContext creates a new SecretsSecretsDeleteParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretsDeleteParamsWithContext(ctx context.Context) *SecretsSecretsDeleteParams {
+	var ()
+	return &SecretsSecretsDeleteParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretsDeleteParamsWithHTTPClient creates a new SecretsSecretsDeleteParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretsDeleteParamsWithHTTPClient(client *http.Client) *SecretsSecretsDeleteParams {
+	var ()
+	return &SecretsSecretsDeleteParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretsDeleteParams contains all the parameters to send to the API endpoint
+for the secrets secrets delete operation typically these are written to a http.Request
+*/
+type SecretsSecretsDeleteParams struct {
+
+	/*ID
+	  A unique integer value identifying this secret.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) WithTimeout(timeout time.Duration) *SecretsSecretsDeleteParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) WithContext(ctx context.Context) *SecretsSecretsDeleteParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) WithHTTPClient(client *http.Client) *SecretsSecretsDeleteParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithID adds the id to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) WithID(id int64) *SecretsSecretsDeleteParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secrets delete params
+func (o *SecretsSecretsDeleteParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretsDeleteParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_delete_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_delete_responses.go
new file mode 100644
index 0000000..d4f3a92
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_delete_responses.go
@@ -0,0 +1,70 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// SecretsSecretsDeleteReader is a Reader for the SecretsSecretsDelete structure.
+type SecretsSecretsDeleteReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretsDeleteReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 204:
+		result := NewSecretsSecretsDeleteNoContent()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretsDeleteNoContent creates a SecretsSecretsDeleteNoContent with default headers values
+func NewSecretsSecretsDeleteNoContent() *SecretsSecretsDeleteNoContent {
+	return &SecretsSecretsDeleteNoContent{}
+}
+
+/*SecretsSecretsDeleteNoContent handles this case with default header values.
+
+SecretsSecretsDeleteNoContent secrets secrets delete no content
+*/
+type SecretsSecretsDeleteNoContent struct {
+}
+
+func (o *SecretsSecretsDeleteNoContent) Error() string {
+	return fmt.Sprintf("[DELETE /secrets/secrets/{id}/][%d] secretsSecretsDeleteNoContent ", 204)
+}
+
+func (o *SecretsSecretsDeleteNoContent) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_list_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_list_parameters.go
new file mode 100644
index 0000000..0692ae4
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_list_parameters.go
@@ -0,0 +1,401 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsSecretsListParams creates a new SecretsSecretsListParams object
+// with the default values initialized.
+func NewSecretsSecretsListParams() *SecretsSecretsListParams {
+	var ()
+	return &SecretsSecretsListParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretsListParamsWithTimeout creates a new SecretsSecretsListParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretsListParamsWithTimeout(timeout time.Duration) *SecretsSecretsListParams {
+	var ()
+	return &SecretsSecretsListParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretsListParamsWithContext creates a new SecretsSecretsListParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretsListParamsWithContext(ctx context.Context) *SecretsSecretsListParams {
+	var ()
+	return &SecretsSecretsListParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretsListParamsWithHTTPClient creates a new SecretsSecretsListParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretsListParamsWithHTTPClient(client *http.Client) *SecretsSecretsListParams {
+	var ()
+	return &SecretsSecretsListParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretsListParams contains all the parameters to send to the API endpoint
+for the secrets secrets list operation typically these are written to a http.Request
+*/
+type SecretsSecretsListParams struct {
+
+	/*Device*/
+	Device *string
+	/*DeviceID*/
+	DeviceID *string
+	/*IDIn
+	  Multiple values may be separated by commas.
+
+	*/
+	IDIn *string
+	/*Limit
+	  Number of results to return per page.
+
+	*/
+	Limit *int64
+	/*Name*/
+	Name *string
+	/*Offset
+	  The initial index from which to return the results.
+
+	*/
+	Offset *int64
+	/*Q*/
+	Q *string
+	/*Role*/
+	Role *string
+	/*RoleID*/
+	RoleID *string
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithTimeout(timeout time.Duration) *SecretsSecretsListParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithContext(ctx context.Context) *SecretsSecretsListParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithHTTPClient(client *http.Client) *SecretsSecretsListParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithDevice adds the device to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithDevice(device *string) *SecretsSecretsListParams {
+	o.SetDevice(device)
+	return o
+}
+
+// SetDevice adds the device to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetDevice(device *string) {
+	o.Device = device
+}
+
+// WithDeviceID adds the deviceID to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithDeviceID(deviceID *string) *SecretsSecretsListParams {
+	o.SetDeviceID(deviceID)
+	return o
+}
+
+// SetDeviceID adds the deviceId to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetDeviceID(deviceID *string) {
+	o.DeviceID = deviceID
+}
+
+// WithIDIn adds the iDIn to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithIDIn(iDIn *string) *SecretsSecretsListParams {
+	o.SetIDIn(iDIn)
+	return o
+}
+
+// SetIDIn adds the idIn to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetIDIn(iDIn *string) {
+	o.IDIn = iDIn
+}
+
+// WithLimit adds the limit to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithLimit(limit *int64) *SecretsSecretsListParams {
+	o.SetLimit(limit)
+	return o
+}
+
+// SetLimit adds the limit to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetLimit(limit *int64) {
+	o.Limit = limit
+}
+
+// WithName adds the name to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithName(name *string) *SecretsSecretsListParams {
+	o.SetName(name)
+	return o
+}
+
+// SetName adds the name to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetName(name *string) {
+	o.Name = name
+}
+
+// WithOffset adds the offset to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithOffset(offset *int64) *SecretsSecretsListParams {
+	o.SetOffset(offset)
+	return o
+}
+
+// SetOffset adds the offset to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetOffset(offset *int64) {
+	o.Offset = offset
+}
+
+// WithQ adds the q to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithQ(q *string) *SecretsSecretsListParams {
+	o.SetQ(q)
+	return o
+}
+
+// SetQ adds the q to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetQ(q *string) {
+	o.Q = q
+}
+
+// WithRole adds the role to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithRole(role *string) *SecretsSecretsListParams {
+	o.SetRole(role)
+	return o
+}
+
+// SetRole adds the role to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetRole(role *string) {
+	o.Role = role
+}
+
+// WithRoleID adds the roleID to the secrets secrets list params
+func (o *SecretsSecretsListParams) WithRoleID(roleID *string) *SecretsSecretsListParams {
+	o.SetRoleID(roleID)
+	return o
+}
+
+// SetRoleID adds the roleId to the secrets secrets list params
+func (o *SecretsSecretsListParams) SetRoleID(roleID *string) {
+	o.RoleID = roleID
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretsListParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Device != nil {
+
+		// query param device
+		var qrDevice string
+		if o.Device != nil {
+			qrDevice = *o.Device
+		}
+		qDevice := qrDevice
+		if qDevice != "" {
+			if err := r.SetQueryParam("device", qDevice); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.DeviceID != nil {
+
+		// query param device_id
+		var qrDeviceID string
+		if o.DeviceID != nil {
+			qrDeviceID = *o.DeviceID
+		}
+		qDeviceID := qrDeviceID
+		if qDeviceID != "" {
+			if err := r.SetQueryParam("device_id", qDeviceID); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.IDIn != nil {
+
+		// query param id__in
+		var qrIDIn string
+		if o.IDIn != nil {
+			qrIDIn = *o.IDIn
+		}
+		qIDIn := qrIDIn
+		if qIDIn != "" {
+			if err := r.SetQueryParam("id__in", qIDIn); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Limit != nil {
+
+		// query param limit
+		var qrLimit int64
+		if o.Limit != nil {
+			qrLimit = *o.Limit
+		}
+		qLimit := swag.FormatInt64(qrLimit)
+		if qLimit != "" {
+			if err := r.SetQueryParam("limit", qLimit); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Name != nil {
+
+		// query param name
+		var qrName string
+		if o.Name != nil {
+			qrName = *o.Name
+		}
+		qName := qrName
+		if qName != "" {
+			if err := r.SetQueryParam("name", qName); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Offset != nil {
+
+		// query param offset
+		var qrOffset int64
+		if o.Offset != nil {
+			qrOffset = *o.Offset
+		}
+		qOffset := swag.FormatInt64(qrOffset)
+		if qOffset != "" {
+			if err := r.SetQueryParam("offset", qOffset); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Q != nil {
+
+		// query param q
+		var qrQ string
+		if o.Q != nil {
+			qrQ = *o.Q
+		}
+		qQ := qrQ
+		if qQ != "" {
+			if err := r.SetQueryParam("q", qQ); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.Role != nil {
+
+		// query param role
+		var qrRole string
+		if o.Role != nil {
+			qrRole = *o.Role
+		}
+		qRole := qrRole
+		if qRole != "" {
+			if err := r.SetQueryParam("role", qRole); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if o.RoleID != nil {
+
+		// query param role_id
+		var qrRoleID string
+		if o.RoleID != nil {
+			qrRoleID = *o.RoleID
+		}
+		qRoleID := qrRoleID
+		if qRoleID != "" {
+			if err := r.SetQueryParam("role_id", qRoleID); err != nil {
+				return err
+			}
+		}
+
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_list_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_list_responses.go
new file mode 100644
index 0000000..be87d65
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_list_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretsListReader is a Reader for the SecretsSecretsList structure.
+type SecretsSecretsListReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretsListReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretsListOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretsListOK creates a SecretsSecretsListOK with default headers values
+func NewSecretsSecretsListOK() *SecretsSecretsListOK {
+	return &SecretsSecretsListOK{}
+}
+
+/*SecretsSecretsListOK handles this case with default header values.
+
+SecretsSecretsListOK secrets secrets list o k
+*/
+type SecretsSecretsListOK struct {
+	Payload *models.SecretsSecretsListOKBody
+}
+
+func (o *SecretsSecretsListOK) Error() string {
+	return fmt.Sprintf("[GET /secrets/secrets/][%d] secretsSecretsListOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretsListOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.SecretsSecretsListOKBody)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_partial_update_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_partial_update_parameters.go
new file mode 100644
index 0000000..fcd0af3
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_partial_update_parameters.go
@@ -0,0 +1,173 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// NewSecretsSecretsPartialUpdateParams creates a new SecretsSecretsPartialUpdateParams object
+// with the default values initialized.
+func NewSecretsSecretsPartialUpdateParams() *SecretsSecretsPartialUpdateParams {
+	var ()
+	return &SecretsSecretsPartialUpdateParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretsPartialUpdateParamsWithTimeout creates a new SecretsSecretsPartialUpdateParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretsPartialUpdateParamsWithTimeout(timeout time.Duration) *SecretsSecretsPartialUpdateParams {
+	var ()
+	return &SecretsSecretsPartialUpdateParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretsPartialUpdateParamsWithContext creates a new SecretsSecretsPartialUpdateParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretsPartialUpdateParamsWithContext(ctx context.Context) *SecretsSecretsPartialUpdateParams {
+	var ()
+	return &SecretsSecretsPartialUpdateParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretsPartialUpdateParamsWithHTTPClient creates a new SecretsSecretsPartialUpdateParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretsPartialUpdateParamsWithHTTPClient(client *http.Client) *SecretsSecretsPartialUpdateParams {
+	var ()
+	return &SecretsSecretsPartialUpdateParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretsPartialUpdateParams contains all the parameters to send to the API endpoint
+for the secrets secrets partial update operation typically these are written to a http.Request
+*/
+type SecretsSecretsPartialUpdateParams struct {
+
+	/*Data*/
+	Data *models.WritableSecret
+	/*ID
+	  A unique integer value identifying this secret.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) WithTimeout(timeout time.Duration) *SecretsSecretsPartialUpdateParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) WithContext(ctx context.Context) *SecretsSecretsPartialUpdateParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) WithHTTPClient(client *http.Client) *SecretsSecretsPartialUpdateParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithData adds the data to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) WithData(data *models.WritableSecret) *SecretsSecretsPartialUpdateParams {
+	o.SetData(data)
+	return o
+}
+
+// SetData adds the data to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) SetData(data *models.WritableSecret) {
+	o.Data = data
+}
+
+// WithID adds the id to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) WithID(id int64) *SecretsSecretsPartialUpdateParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secrets partial update params
+func (o *SecretsSecretsPartialUpdateParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretsPartialUpdateParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Data != nil {
+		if err := r.SetBodyParam(o.Data); err != nil {
+			return err
+		}
+	}
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_partial_update_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_partial_update_responses.go
new file mode 100644
index 0000000..283b1aa
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_partial_update_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretsPartialUpdateReader is a Reader for the SecretsSecretsPartialUpdate structure.
+type SecretsSecretsPartialUpdateReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretsPartialUpdateReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretsPartialUpdateOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretsPartialUpdateOK creates a SecretsSecretsPartialUpdateOK with default headers values
+func NewSecretsSecretsPartialUpdateOK() *SecretsSecretsPartialUpdateOK {
+	return &SecretsSecretsPartialUpdateOK{}
+}
+
+/*SecretsSecretsPartialUpdateOK handles this case with default header values.
+
+SecretsSecretsPartialUpdateOK secrets secrets partial update o k
+*/
+type SecretsSecretsPartialUpdateOK struct {
+	Payload *models.WritableSecret
+}
+
+func (o *SecretsSecretsPartialUpdateOK) Error() string {
+	return fmt.Sprintf("[PATCH /secrets/secrets/{id}/][%d] secretsSecretsPartialUpdateOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretsPartialUpdateOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.WritableSecret)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_read_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_read_parameters.go
new file mode 100644
index 0000000..080922f
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_read_parameters.go
@@ -0,0 +1,152 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+)
+
+// NewSecretsSecretsReadParams creates a new SecretsSecretsReadParams object
+// with the default values initialized.
+func NewSecretsSecretsReadParams() *SecretsSecretsReadParams {
+	var ()
+	return &SecretsSecretsReadParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretsReadParamsWithTimeout creates a new SecretsSecretsReadParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretsReadParamsWithTimeout(timeout time.Duration) *SecretsSecretsReadParams {
+	var ()
+	return &SecretsSecretsReadParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretsReadParamsWithContext creates a new SecretsSecretsReadParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretsReadParamsWithContext(ctx context.Context) *SecretsSecretsReadParams {
+	var ()
+	return &SecretsSecretsReadParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretsReadParamsWithHTTPClient creates a new SecretsSecretsReadParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretsReadParamsWithHTTPClient(client *http.Client) *SecretsSecretsReadParams {
+	var ()
+	return &SecretsSecretsReadParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretsReadParams contains all the parameters to send to the API endpoint
+for the secrets secrets read operation typically these are written to a http.Request
+*/
+type SecretsSecretsReadParams struct {
+
+	/*ID
+	  A unique integer value identifying this secret.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secrets read params
+func (o *SecretsSecretsReadParams) WithTimeout(timeout time.Duration) *SecretsSecretsReadParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secrets read params
+func (o *SecretsSecretsReadParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secrets read params
+func (o *SecretsSecretsReadParams) WithContext(ctx context.Context) *SecretsSecretsReadParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secrets read params
+func (o *SecretsSecretsReadParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secrets read params
+func (o *SecretsSecretsReadParams) WithHTTPClient(client *http.Client) *SecretsSecretsReadParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secrets read params
+func (o *SecretsSecretsReadParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithID adds the id to the secrets secrets read params
+func (o *SecretsSecretsReadParams) WithID(id int64) *SecretsSecretsReadParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secrets read params
+func (o *SecretsSecretsReadParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretsReadParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_read_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_read_responses.go
new file mode 100644
index 0000000..2f7b82f
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_read_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretsReadReader is a Reader for the SecretsSecretsRead structure.
+type SecretsSecretsReadReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretsReadReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretsReadOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretsReadOK creates a SecretsSecretsReadOK with default headers values
+func NewSecretsSecretsReadOK() *SecretsSecretsReadOK {
+	return &SecretsSecretsReadOK{}
+}
+
+/*SecretsSecretsReadOK handles this case with default header values.
+
+SecretsSecretsReadOK secrets secrets read o k
+*/
+type SecretsSecretsReadOK struct {
+	Payload *models.Secret
+}
+
+func (o *SecretsSecretsReadOK) Error() string {
+	return fmt.Sprintf("[GET /secrets/secrets/{id}/][%d] secretsSecretsReadOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretsReadOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.Secret)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_update_parameters.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_update_parameters.go
new file mode 100644
index 0000000..9e0f8e6
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_update_parameters.go
@@ -0,0 +1,173 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"net/http"
+	"time"
+
+	"golang.org/x/net/context"
+
+	"github.com/go-openapi/errors"
+	"github.com/go-openapi/runtime"
+	cr "github.com/go-openapi/runtime/client"
+	"github.com/go-openapi/swag"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// NewSecretsSecretsUpdateParams creates a new SecretsSecretsUpdateParams object
+// with the default values initialized.
+func NewSecretsSecretsUpdateParams() *SecretsSecretsUpdateParams {
+	var ()
+	return &SecretsSecretsUpdateParams{
+
+		timeout: cr.DefaultTimeout,
+	}
+}
+
+// NewSecretsSecretsUpdateParamsWithTimeout creates a new SecretsSecretsUpdateParams object
+// with the default values initialized, and the ability to set a timeout on a request
+func NewSecretsSecretsUpdateParamsWithTimeout(timeout time.Duration) *SecretsSecretsUpdateParams {
+	var ()
+	return &SecretsSecretsUpdateParams{
+
+		timeout: timeout,
+	}
+}
+
+// NewSecretsSecretsUpdateParamsWithContext creates a new SecretsSecretsUpdateParams object
+// with the default values initialized, and the ability to set a context for a request
+func NewSecretsSecretsUpdateParamsWithContext(ctx context.Context) *SecretsSecretsUpdateParams {
+	var ()
+	return &SecretsSecretsUpdateParams{
+
+		Context: ctx,
+	}
+}
+
+// NewSecretsSecretsUpdateParamsWithHTTPClient creates a new SecretsSecretsUpdateParams object
+// with the default values initialized, and the ability to set a custom HTTPClient for a request
+func NewSecretsSecretsUpdateParamsWithHTTPClient(client *http.Client) *SecretsSecretsUpdateParams {
+	var ()
+	return &SecretsSecretsUpdateParams{
+		HTTPClient: client,
+	}
+}
+
+/*SecretsSecretsUpdateParams contains all the parameters to send to the API endpoint
+for the secrets secrets update operation typically these are written to a http.Request
+*/
+type SecretsSecretsUpdateParams struct {
+
+	/*Data*/
+	Data *models.WritableSecret
+	/*ID
+	  A unique integer value identifying this secret.
+
+	*/
+	ID int64
+
+	timeout    time.Duration
+	Context    context.Context
+	HTTPClient *http.Client
+}
+
+// WithTimeout adds the timeout to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) WithTimeout(timeout time.Duration) *SecretsSecretsUpdateParams {
+	o.SetTimeout(timeout)
+	return o
+}
+
+// SetTimeout adds the timeout to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) SetTimeout(timeout time.Duration) {
+	o.timeout = timeout
+}
+
+// WithContext adds the context to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) WithContext(ctx context.Context) *SecretsSecretsUpdateParams {
+	o.SetContext(ctx)
+	return o
+}
+
+// SetContext adds the context to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) SetContext(ctx context.Context) {
+	o.Context = ctx
+}
+
+// WithHTTPClient adds the HTTPClient to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) WithHTTPClient(client *http.Client) *SecretsSecretsUpdateParams {
+	o.SetHTTPClient(client)
+	return o
+}
+
+// SetHTTPClient adds the HTTPClient to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) SetHTTPClient(client *http.Client) {
+	o.HTTPClient = client
+}
+
+// WithData adds the data to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) WithData(data *models.WritableSecret) *SecretsSecretsUpdateParams {
+	o.SetData(data)
+	return o
+}
+
+// SetData adds the data to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) SetData(data *models.WritableSecret) {
+	o.Data = data
+}
+
+// WithID adds the id to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) WithID(id int64) *SecretsSecretsUpdateParams {
+	o.SetID(id)
+	return o
+}
+
+// SetID adds the id to the secrets secrets update params
+func (o *SecretsSecretsUpdateParams) SetID(id int64) {
+	o.ID = id
+}
+
+// WriteToRequest writes these params to a swagger request
+func (o *SecretsSecretsUpdateParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
+
+	if err := r.SetTimeout(o.timeout); err != nil {
+		return err
+	}
+	var res []error
+
+	if o.Data != nil {
+		if err := r.SetBodyParam(o.Data); err != nil {
+			return err
+		}
+	}
+
+	// path param id
+	if err := r.SetPathParam("id", swag.FormatInt64(o.ID)); err != nil {
+		return err
+	}
+
+	if len(res) > 0 {
+		return errors.CompositeValidationError(res...)
+	}
+	return nil
+}
diff --git a/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_update_responses.go b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_update_responses.go
new file mode 100644
index 0000000..a956a68
--- /dev/null
+++ b/go/vendor/github.com/digitalocean/go-netbox/netbox/client/secrets/secrets_secrets_update_responses.go
@@ -0,0 +1,81 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+// Copyright 2018 The go-netbox Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package secrets
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+	"fmt"
+	"io"
+
+	"github.com/go-openapi/runtime"
+
+	strfmt "github.com/go-openapi/strfmt"
+
+	"github.com/digitalocean/go-netbox/netbox/models"
+)
+
+// SecretsSecretsUpdateReader is a Reader for the SecretsSecretsUpdate structure.
+type SecretsSecretsUpdateReader struct {
+	formats strfmt.Registry
+}
+
+// ReadResponse reads a server response into the received o.
+func (o *SecretsSecretsUpdateReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
+	switch response.Code() {
+
+	case 200:
+		result := NewSecretsSecretsUpdateOK()
+		if err := result.readResponse(response, consumer, o.formats); err != nil {
+			return nil, err
+		}
+		return result, nil
+
+	default:
+		return nil, runtime.NewAPIError("unknown error", response, response.Code())
+	}
+}
+
+// NewSecretsSecretsUpdateOK creates a SecretsSecretsUpdateOK with default headers values
+func NewSecretsSecretsUpdateOK() *SecretsSecretsUpdateOK {
+	return &SecretsSecretsUpdateOK{}
+}
+
+/*SecretsSecretsUpdateOK handles this case with default header values.
+
+SecretsSecretsUpdateOK secrets secrets update o k
+*/
+type SecretsSecretsUpdateOK struct {
+	Payload *models.WritableSecret
+}
+
+func (o *SecretsSecretsUpdateOK) Error() string {
+	return fmt.Sprintf("[PUT /secrets/secrets/{id}/][%d] secretsSecretsUpdateOK  %+v", 200, o.Payload)
+}
+
+func (o *SecretsSecretsUpdateOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
+
+	o.Payload = new(models.WritableSecret)
+
+	// response payload
+	if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
+		return err
+	}
+
+	return nil
+}