// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.

package shared

type SourceWrikeCreateRequest struct {
	// Name of the source e.g. dev-mysql-instance.
	Name string `json:"name"`
	// The UUID of the connector definition. One of configuration.sourceType or definitionId must be provided.
	DefinitionID  *string     `json:"definitionId,omitempty"`
	WorkspaceID   string      `json:"workspaceId"`
	Configuration SourceWrike `json:"configuration"`
	// Optional secretID obtained through the public API OAuth redirect flow.
	SecretID *string `json:"secretId,omitempty"`
}

func (o *SourceWrikeCreateRequest) GetName() string {
	if o == nil {
		return ""
	}
	return o.Name
}

func (o *SourceWrikeCreateRequest) GetDefinitionID() *string {
	if o == nil {
		return nil
	}
	return o.DefinitionID
}

func (o *SourceWrikeCreateRequest) GetWorkspaceID() string {
	if o == nil {
		return ""
	}
	return o.WorkspaceID
}

func (o *SourceWrikeCreateRequest) GetConfiguration() SourceWrike {
	if o == nil {
		return SourceWrike{}
	}
	return o.Configuration
}

func (o *SourceWrikeCreateRequest) GetSecretID() *string {
	if o == nil {
		return nil
	}
	return o.SecretID
}
