openapi

package
v1.0.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 4, 2025 License: MIT Imports: 3 Imported by: 0

Documentation

Overview

Package openapi provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.0 DO NOT EDIT.

Package openapi provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.0 DO NOT EDIT.

Package openapi provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.5.0 DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ApiKeyAsBasicOpts added in v1.0.4

type ApiKeyAsBasicOpts struct {
	// FieldUsed whether the API key should be used as the username or password.
	FieldUsed ApiKeyAsBasicOptsFieldUsed `json:"fieldUsed,omitempty"`

	// KeyFormat How to transform the API key in to a basic auth user:pass string. The %s is replaced with the API key value.
	KeyFormat string `json:"keyFormat,omitempty"`
}

ApiKeyAsBasicOpts when this object is present, it means that this provider uses Basic Auth to actually collect an API key

type ApiKeyAsBasicOptsFieldUsed added in v1.0.4

type ApiKeyAsBasicOptsFieldUsed string

ApiKeyAsBasicOptsFieldUsed whether the API key should be used as the username or password.

const (
	PasswordField ApiKeyAsBasicOptsFieldUsed = "password"
	UsernameField ApiKeyAsBasicOptsFieldUsed = "username"
)

Defines values for ApiKeyAsBasicOptsFieldUsed.

type ApiKeyOpts added in v1.0.4

type ApiKeyOpts struct {
	// AttachmentType How the API key should be attached to requests.
	AttachmentType ApiKeyOptsAttachmentType `json:"attachmentType" validate:"required"`

	// DocsURL URL with more information about how to get or use an API key.
	DocsURL string `json:"docsURL,omitempty"`

	// Header Configuration for API key in header. Must be provided if type is in-header.
	Header *ApiKeyOptsHeader `json:"header,omitempty"`

	// Query Configuration for API key in query parameter. Must be provided if type is in-query.
	Query *ApiKeyOptsQuery `json:"query,omitempty"`
}

ApiKeyOpts Configuration for API key. Must be provided if authType is apiKey.

type ApiKeyOptsAttachmentType added in v1.0.4

type ApiKeyOptsAttachmentType string

ApiKeyOptsAttachmentType How the API key should be attached to requests.

const (
	Header ApiKeyOptsAttachmentType = "header"
	Query  ApiKeyOptsAttachmentType = "query"
)

Defines values for ApiKeyOptsAttachmentType.

type ApiKeyOptsHeader added in v1.0.4

type ApiKeyOptsHeader struct {
	// Name The name of the header to be used for the API key.
	Name string `json:"name"`

	// ValuePrefix The prefix to be added to the API key value when it is sent in the header.
	ValuePrefix string `json:"valuePrefix,omitempty"`
}

ApiKeyOptsHeader Configuration for API key in header. Must be provided if type is in-header.

type ApiKeyOptsQuery added in v1.0.4

type ApiKeyOptsQuery struct {
	// Name The name of the query parameter to be used for the API key.
	Name string `json:"name"`
}

ApiKeyOptsQuery Configuration for API key in query parameter. Must be provided if type is in-query.

type ApiProblem

type ApiProblem = Problem

ApiProblem A Problem Details object (RFC 9457).

Additional properties specific to the problem type may be present.

type AssociationChangeEvent added in v1.0.8

type AssociationChangeEvent struct {
	// Enabled If always, the integration will subscribe to association change events.
	Enabled *AssociationChangeEventEnabled `json:"enabled,omitempty"`

	// IncludeFullRecords If true, the integration will include full records in the event payload.
	IncludeFullRecords *bool `json:"includeFullRecords,omitempty"`
}

AssociationChangeEvent defines model for AssociationChangeEvent.

type AssociationChangeEventEnabled added in v1.0.8

type AssociationChangeEventEnabled string

AssociationChangeEventEnabled If always, the integration will subscribe to association change events.

const (
	AssociationChangeEventEnabledAlways AssociationChangeEventEnabled = "always"
)

Defines values for AssociationChangeEventEnabled.

type AuthHealthCheck added in v1.0.9

type AuthHealthCheck struct {
	// Method The HTTP method to use for the health check. If not set, defaults to GET.
	Method string `json:"method,omitempty"`

	// SuccessStatusCodes The HTTP status codes that indicate a successful health check. If not set, defaults to 200 and 204.
	SuccessStatusCodes []int `json:"successStatusCodes,omitempty"`

	// Url a no-op URL to check the health of the credentials. The URL MUST not mutate any state. If the provider doesn't have such an endpoint, then don't provide credentialsHealthCheck.
	Url string `json:"url"`
}

AuthHealthCheck A URL to check the health of a provider's credentials. It's used to see if the credentials are valid and if the provider is reachable.

type AuthType added in v1.0.4

type AuthType string

AuthType The type of authentication required by the provider.

const (
	ApiKey AuthType = "apiKey"
	Basic  AuthType = "basic"
	Custom AuthType = "custom"
	Jwt    AuthType = "jwt"
	None   AuthType = "none"
	Oauth2 AuthType = "oauth2"
)

Defines values for AuthType.

type Backfill added in v1.0.3

type Backfill struct {
	DefaultPeriod DefaultPeriod `json:"defaultPeriod"`
}

Backfill defines model for Backfill.

type BasicAuthOpts added in v1.0.4

type BasicAuthOpts struct {
	// ApiKeyAsBasic If true, the provider uses an API key which then gets encoded as a basic auth user:pass string.
	ApiKeyAsBasic bool `json:"apiKeyAsBasic,omitempty"`

	// ApiKeyAsBasicOpts when this object is present, it means that this provider uses Basic Auth to actually collect an API key
	ApiKeyAsBasicOpts *ApiKeyAsBasicOpts `json:"apiKeyAsBasicOpts,omitempty"`

	// DocsURL URL with more information about how to get or use an API key.
	DocsURL string `json:"docsURL,omitempty"`
}

BasicAuthOpts Configuration for Basic Auth. Optional.

type BulkWriteSupport added in v1.0.4

type BulkWriteSupport struct {
	Delete bool `json:"delete"`
	Insert bool `json:"insert"`
	Update bool `json:"update"`
	Upsert bool `json:"upsert"`
}

BulkWriteSupport defines model for BulkWriteSupport.

type CatalogType added in v1.0.4

type CatalogType map[string]ProviderInfo

CatalogType defines model for CatalogType.

type CatalogWrapper added in v1.0.4

type CatalogWrapper struct {
	Catalog CatalogType `json:"catalog"`

	// Timestamp An RFC3339 formatted timestamp of when the catalog was generated.
	Timestamp string `json:"timestamp" validate:"required"`
}

CatalogWrapper defines model for CatalogWrapper.

type CreateEvent added in v1.0.8

type CreateEvent struct {
	// Enabled If always, the integration will subscribe to create events by default.
	Enabled *CreateEventEnabled `json:"enabled,omitempty"`
}

CreateEvent defines model for CreateEvent.

type CreateEventEnabled added in v1.0.8

type CreateEventEnabled string

CreateEventEnabled If always, the integration will subscribe to create events by default.

const (
	CreateEventEnabledAlways CreateEventEnabled = "always"
)

Defines values for CreateEventEnabled.

type CustomAuthHeader added in v1.0.9

type CustomAuthHeader struct {
	// Name The name of the header.
	Name string `json:"name"`

	// ValueTemplate The value of the header, represented as a Golang text/template expression. Only the backend will interpret this.
	ValueTemplate string `json:"valueTemplate" skipSubstitutions:"true"`
}

CustomAuthHeader A custom header to be used for authentication. Automatically added by the backend.

type CustomAuthInput added in v1.0.9

type CustomAuthInput struct {
	// DisplayName The human-readable name for the custom auth input field.
	DisplayName string `json:"displayName"`

	// DocsURL URL with details about this authentication mechanism and how to use it. Might be specific to this field, or a general URL for the provider. Optional.
	DocsURL string `json:"docsURL,omitempty"`

	// Name The internal identifier for the custom auth input field.
	Name string `json:"name"`

	// Prompt Some helpful text or context to be displayed to the user when asking for this input.
	Prompt string `json:"prompt,omitempty"`
}

CustomAuthInput A custom input field for authentication. This is used by the frontend to dynamically render input fields for custom auth. The backend will not interpret this. It will however receive the value of this field before making a request (in the connection secrets).

type CustomAuthOpts added in v1.0.9

type CustomAuthOpts struct {
	// Headers A list of custom headers to be used for authentication. The backend will add these headers.
	Headers []CustomAuthHeader `json:"headers,omitempty"`

	// Inputs A list of custom input fields for authentication. The frontend will render these input fields and the backend will receive the values of these fields before making a request.
	Inputs []CustomAuthInput `json:"inputs,omitempty"`

	// QueryParams A list of custom query parameters to be used for authentication. The backend will add these query parameters.
	QueryParams []CustomAuthQueryParam `json:"queryParams,omitempty"`
}

CustomAuthOpts Configuration for custom auth. Optional.

type CustomAuthQueryParam added in v1.0.9

type CustomAuthQueryParam struct {
	// Name The name of the query parameter.
	Name string `json:"name"`

	// ValueTemplate The value of the query parameter, represented as a Golang text/template expression. Only the backend will interpret this.
	ValueTemplate string `json:"valueTemplate" skipSubstitutions:"true"`
}

CustomAuthQueryParam A custom query parameter to be used for authentication. Automatically added by the backend.

type DefaultPeriod added in v1.0.3

type DefaultPeriod struct {
	// Days Number of days in past to backfill from. 0 is no backfill. e.g) if 10, then backfill last 10 days of data. Required if fullHistory is not set.
	Days *int `json:"days,omitempty" validate:"required_without=FullHistory,omitempty,min=0"`

	// FullHistory If true, backfill all history. Required if days is not set.
	FullHistory *bool `json:"fullHistory,omitempty" validate:"required_without=Days"`
}

DefaultPeriod defines model for DefaultPeriod.

type DeleteEvent added in v1.0.8

type DeleteEvent struct {
	// Enabled If always, the integration will subscribe to delete events by default.
	Enabled *DeleteEventEnabled `json:"enabled,omitempty"`
}

DeleteEvent defines model for DeleteEvent.

type DeleteEventEnabled added in v1.0.8

type DeleteEventEnabled string

DeleteEventEnabled If always, the integration will subscribe to delete events by default.

const (
	DeleteEventEnabledAlways DeleteEventEnabled = "always"
)

Defines values for DeleteEventEnabled.

type Delivery added in v1.0.5

type Delivery struct {
	// Mode The data delivery mode for this object. If not specified, defaults to automatic.
	Mode *DeliveryMode `json:"mode,omitempty"`

	// PageSize The number of records to receive per data delivery.
	PageSize *int `json:"pageSize,omitempty"`
}

Delivery defines model for Delivery.

type DeliveryMode added in v1.0.5

type DeliveryMode string

DeliveryMode The data delivery mode for this object. If not specified, defaults to automatic.

const (
	Auto      DeliveryMode = "auto"
	OnRequest DeliveryMode = "onRequest"
)

Defines values for DeliveryMode.

type FieldMetadata added in v1.0.8

type FieldMetadata struct {
	// DisplayName The display name of the field from the provider API.
	DisplayName string `json:"displayName"`

	// FieldName The name of the field from the provider API.
	FieldName string `json:"fieldName"`

	// ProviderType Raw field type from the provider API.
	ProviderType string `json:"providerType,omitempty"`

	// ReadOnly Whether the field is read-only.
	ReadOnly bool `json:"readOnly,omitempty"`

	// ValueType A normalized field type
	ValueType FieldMetadataValueType `json:"valueType,omitempty"`

	// Values If the valueType is singleSelect or multiSelect, this is a list of possible values
	Values []FieldValue `json:"values,omitempty"`
}

FieldMetadata defines model for FieldMetadata.

type FieldMetadataValueType added in v1.0.8

type FieldMetadataValueType string

FieldMetadataValueType A normalized field type

const (
	Boolean      FieldMetadataValueType = "boolean"
	Date         FieldMetadataValueType = "date"
	Datetime     FieldMetadataValueType = "datetime"
	Float        FieldMetadataValueType = "float"
	Int          FieldMetadataValueType = "int"
	MultiSelect  FieldMetadataValueType = "multiSelect"
	Other        FieldMetadataValueType = "other"
	SingleSelect FieldMetadataValueType = "singleSelect"
	String       FieldMetadataValueType = "string"
)

Defines values for FieldMetadataValueType.

type FieldValue added in v1.0.8

type FieldValue struct {
	// DisplayValue The human-readable display value
	DisplayValue string `json:"displayValue"`

	// Value The internal value used by the system
	Value string `json:"value"`
}

FieldValue Represents a field value

type HydratedIntegration

type HydratedIntegration struct {
	DisplayName string                    `json:"displayName,omitempty"`
	Module      string                    `json:"module,omitempty"`
	Name        string                    `json:"name"`
	Provider    string                    `json:"provider"`
	Proxy       *HydratedIntegrationProxy `json:"proxy,omitempty"`
	Read        *HydratedIntegrationRead  `json:"read,omitempty"`
	Write       *HydratedIntegrationWrite `json:"write,omitempty"`
}

HydratedIntegration defines model for HydratedIntegration.

type HydratedIntegrationField

type HydratedIntegrationField struct {
	// contains filtered or unexported fields
}

HydratedIntegrationField defines model for HydratedIntegrationField.

func (HydratedIntegrationField) AsHydratedIntegrationFieldExistent

func (t HydratedIntegrationField) AsHydratedIntegrationFieldExistent() (HydratedIntegrationFieldExistent, error)

AsHydratedIntegrationFieldExistent returns the union data inside the HydratedIntegrationField as a HydratedIntegrationFieldExistent

func (HydratedIntegrationField) AsIntegrationFieldMapping

func (t HydratedIntegrationField) AsIntegrationFieldMapping() (IntegrationFieldMapping, error)

AsIntegrationFieldMapping returns the union data inside the HydratedIntegrationField as a IntegrationFieldMapping

func (*HydratedIntegrationField) FromHydratedIntegrationFieldExistent

func (t *HydratedIntegrationField) FromHydratedIntegrationFieldExistent(v HydratedIntegrationFieldExistent) error

FromHydratedIntegrationFieldExistent overwrites any union data inside the HydratedIntegrationField as the provided HydratedIntegrationFieldExistent

func (*HydratedIntegrationField) FromIntegrationFieldMapping

func (t *HydratedIntegrationField) FromIntegrationFieldMapping(v IntegrationFieldMapping) error

FromIntegrationFieldMapping overwrites any union data inside the HydratedIntegrationField as the provided IntegrationFieldMapping

func (HydratedIntegrationField) MarshalJSON

func (t HydratedIntegrationField) MarshalJSON() ([]byte, error)

func (*HydratedIntegrationField) MergeHydratedIntegrationFieldExistent

func (t *HydratedIntegrationField) MergeHydratedIntegrationFieldExistent(v HydratedIntegrationFieldExistent) error

MergeHydratedIntegrationFieldExistent performs a merge with any union data inside the HydratedIntegrationField, using the provided HydratedIntegrationFieldExistent

func (*HydratedIntegrationField) MergeIntegrationFieldMapping

func (t *HydratedIntegrationField) MergeIntegrationFieldMapping(v IntegrationFieldMapping) error

MergeIntegrationFieldMapping performs a merge with any union data inside the HydratedIntegrationField, using the provided IntegrationFieldMapping

func (*HydratedIntegrationField) UnmarshalJSON

func (t *HydratedIntegrationField) UnmarshalJSON(b []byte) error

type HydratedIntegrationFieldExistent

type HydratedIntegrationFieldExistent struct {
	DisplayName string `json:"displayName"`
	FieldName   string `json:"fieldName"`

	// MapToDisplayName The display name to map to in the destination.
	MapToDisplayName string `json:"mapToDisplayName,omitempty"`

	// MapToName The field name to map to in the destination.
	MapToName string `json:"mapToName,omitempty"`
}

HydratedIntegrationFieldExistent defines model for HydratedIntegrationFieldExistent.

type HydratedIntegrationObject

type HydratedIntegrationObject struct {
	// AllFields This is a list of all fields on the object for a particular SaaS instance, including their display names. Prefer using allFieldsMetadata instead.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	AllFields *[]HydratedIntegrationField `json:"allFields,omitempty"`

	// AllFieldsMetadata This is a map of all fields on the object including their metadata (such as display name and type), the keys of the map are the field names.
	AllFieldsMetadata *map[string]FieldMetadata `json:"allFieldsMetadata,omitempty"`
	Backfill          *Backfill                 `json:"backfill,omitempty"`
	Destination       string                    `json:"destination"`
	DisplayName       string                    `json:"displayName"`

	// Error Error message if there was an issue hydrating this object.
	Error string `json:"error,omitempty"`

	// MapToDisplayName A display name to map to.
	MapToDisplayName string `json:"mapToDisplayName,omitempty"`

	// MapToName An object name to map to.
	MapToName          string                      `json:"mapToName,omitempty"`
	ObjectName         string                      `json:"objectName"`
	OptionalFields     *[]HydratedIntegrationField `json:"optionalFields,omitempty"`
	OptionalFieldsAuto *OptionalFieldsAutoOption   `json:"optionalFieldsAuto,omitempty"`
	RequiredFields     *[]HydratedIntegrationField `json:"requiredFields,omitempty"`
	Schedule           string                      `json:"schedule"`
}

HydratedIntegrationObject defines model for HydratedIntegrationObject.

type HydratedIntegrationProxy

type HydratedIntegrationProxy struct {
	Enabled *bool `json:"enabled,omitempty"`

	// UseModule Default is false. If this is set to true, the base URL for the proxy action will be the module's base URL. Otherwise, it is assumed that the base URL is the provider's root base URL.
	UseModule *bool `json:"useModule,omitempty"`
}

HydratedIntegrationProxy defines model for HydratedIntegrationProxy.

type HydratedIntegrationRead

type HydratedIntegrationRead struct {
	Objects *[]HydratedIntegrationObject `json:"objects,omitempty"`
}

HydratedIntegrationRead defines model for HydratedIntegrationRead.

type HydratedIntegrationWrite

type HydratedIntegrationWrite struct {
	Objects *[]HydratedIntegrationWriteObject `json:"objects,omitempty"`
}

HydratedIntegrationWrite defines model for HydratedIntegrationWrite.

type HydratedIntegrationWriteObject

type HydratedIntegrationWriteObject struct {
	DisplayName string `json:"displayName"`
	ObjectName  string `json:"objectName"`

	// ValueDefaults Configuration to set default write values for object fields.
	ValueDefaults *ValueDefaults `json:"valueDefaults,omitempty"`
}

HydratedIntegrationWriteObject defines model for HydratedIntegrationWriteObject.

type InputValidationIssue

type InputValidationIssue = ApiProblem

InputValidationIssue defines model for InputValidationIssue.

type InputValidationProblem

type InputValidationProblem = ApiProblem

InputValidationProblem defines model for InputValidationProblem.

type InputValidationProblemResponse

type InputValidationProblemResponse = InputValidationProblem

InputValidationProblemResponse defines model for InputValidationProblemResponse.

type Integration

type Integration struct {
	DisplayName string                `json:"displayName,omitempty"`
	Module      string                `json:"module,omitempty"`
	Name        string                `json:"name"`
	Provider    string                `json:"provider"`
	Proxy       *IntegrationProxy     `json:"proxy,omitempty"`
	Read        *IntegrationRead      `json:"read,omitempty"`
	Subscribe   *IntegrationSubscribe `json:"subscribe,omitempty"`
	Write       *IntegrationWrite     `json:"write,omitempty"`
}

Integration defines model for Integration.

type IntegrationField

type IntegrationField struct {
	// contains filtered or unexported fields
}

IntegrationField defines model for IntegrationField.

func (IntegrationField) AsIntegrationFieldExistent

func (t IntegrationField) AsIntegrationFieldExistent() (IntegrationFieldExistent, error)

AsIntegrationFieldExistent returns the union data inside the IntegrationField as a IntegrationFieldExistent

func (IntegrationField) AsIntegrationFieldMapping

func (t IntegrationField) AsIntegrationFieldMapping() (IntegrationFieldMapping, error)

AsIntegrationFieldMapping returns the union data inside the IntegrationField as a IntegrationFieldMapping

func (*IntegrationField) FromIntegrationFieldExistent

func (t *IntegrationField) FromIntegrationFieldExistent(v IntegrationFieldExistent) error

FromIntegrationFieldExistent overwrites any union data inside the IntegrationField as the provided IntegrationFieldExistent

func (*IntegrationField) FromIntegrationFieldMapping

func (t *IntegrationField) FromIntegrationFieldMapping(v IntegrationFieldMapping) error

FromIntegrationFieldMapping overwrites any union data inside the IntegrationField as the provided IntegrationFieldMapping

func (IntegrationField) MarshalJSON

func (t IntegrationField) MarshalJSON() ([]byte, error)

func (*IntegrationField) MergeIntegrationFieldExistent

func (t *IntegrationField) MergeIntegrationFieldExistent(v IntegrationFieldExistent) error

MergeIntegrationFieldExistent performs a merge with any union data inside the IntegrationField, using the provided IntegrationFieldExistent

func (*IntegrationField) MergeIntegrationFieldMapping

func (t *IntegrationField) MergeIntegrationFieldMapping(v IntegrationFieldMapping) error

MergeIntegrationFieldMapping performs a merge with any union data inside the IntegrationField, using the provided IntegrationFieldMapping

func (*IntegrationField) UnmarshalJSON

func (t *IntegrationField) UnmarshalJSON(b []byte) error

type IntegrationFieldExistent

type IntegrationFieldExistent struct {
	FieldName string `json:"fieldName"`

	// MapToDisplayName The display name to map to.
	MapToDisplayName string `json:"mapToDisplayName,omitempty"`

	// MapToName The field name to map to.
	MapToName string `json:"mapToName,omitempty"`
}

IntegrationFieldExistent defines model for IntegrationFieldExistent.

type IntegrationFieldMapping

type IntegrationFieldMapping struct {
	Default          *string `json:"default,omitempty"`
	MapToDisplayName *string `json:"mapToDisplayName,omitempty"`
	MapToName        string  `json:"mapToName"`
	Prompt           *string `json:"prompt,omitempty"`
}

IntegrationFieldMapping defines model for IntegrationFieldMapping.

type IntegrationObject

type IntegrationObject struct {
	Backfill    *Backfill `json:"backfill,omitempty"`
	Delivery    *Delivery `json:"delivery,omitempty"`
	Destination string    `json:"destination"`

	// MapToDisplayName A display name to map to.
	MapToDisplayName string `json:"mapToDisplayName,omitempty"`

	// MapToName An object name to map to.
	MapToName          string                    `json:"mapToName,omitempty"`
	ObjectName         string                    `json:"objectName"`
	OptionalFields     *[]IntegrationField       `json:"optionalFields,omitempty"`
	OptionalFieldsAuto *OptionalFieldsAutoOption `json:"optionalFieldsAuto,omitempty"`
	RequiredFields     *[]IntegrationField       `json:"requiredFields,omitempty"`
	Schedule           string                    `json:"schedule"`
}

IntegrationObject defines model for IntegrationObject.

type IntegrationProxy

type IntegrationProxy struct {
	Enabled *bool `json:"enabled,omitempty"`

	// UseModule Default is false. If this is set to true, the base URL for the proxy action will be the module's base URL. Otherwise, it is assumed that the base URL is the provider's root base URL.
	UseModule *bool `json:"useModule,omitempty"`
}

IntegrationProxy defines model for IntegrationProxy.

type IntegrationRead

type IntegrationRead struct {
	Objects *[]IntegrationObject `json:"objects,omitempty"`
}

IntegrationRead defines model for IntegrationRead.

type IntegrationSubscribe added in v1.0.8

type IntegrationSubscribe struct {
	Objects *[]IntegrationSubscribeObject `json:"objects,omitempty"`
}

IntegrationSubscribe defines model for IntegrationSubscribe.

type IntegrationSubscribeObject added in v1.0.8

type IntegrationSubscribeObject struct {
	AssociationChangeEvent *AssociationChangeEvent `json:"associationChangeEvent,omitempty"`
	CreateEvent            *CreateEvent            `json:"createEvent,omitempty"`
	DeleteEvent            *DeleteEvent            `json:"deleteEvent,omitempty"`
	Destination            string                  `json:"destination"`

	// InheritFieldsAndMapping If true, the integration will inherit the fields and mapping from the read object.
	InheritFieldsAndMapping bool         `json:"inheritFieldsAndMapping,omitempty"`
	ObjectName              string       `json:"objectName"`
	OtherEvents             *OtherEvents `json:"otherEvents,omitempty"`
	UpdateEvent             *UpdateEvent `json:"updateEvent,omitempty"`
}

IntegrationSubscribeObject defines model for IntegrationSubscribeObject.

type IntegrationWrite

type IntegrationWrite struct {
	Objects *[]IntegrationWriteObject `json:"objects,omitempty"`
}

IntegrationWrite defines model for IntegrationWrite.

type IntegrationWriteObject

type IntegrationWriteObject struct {
	// InheritMapping If true, the write object will inherit the mapping from the read object. If false, the write object will have no mapping.
	InheritMapping *bool  `json:"inheritMapping,omitempty"`
	ObjectName     string `json:"objectName"`

	// ValueDefaults Configuration to set default write values for object fields.
	ValueDefaults *ValueDefaults `json:"valueDefaults,omitempty"`
}

IntegrationWriteObject defines model for IntegrationWriteObject.

type Labels added in v1.0.5

type Labels map[string]string

Labels defines model for Labels.

type Manifest

type Manifest struct {
	Integrations []Integration `json:"integrations"`

	// SpecVersion The version of the manifest spec that this file conforms to.
	SpecVersion string `json:"specVersion"`
}

Manifest This is the schema of the manifest file that is used to define the integrations of the project.

type Media added in v1.0.4

type Media struct {
	// DarkMode Media to be used in dark mode.
	DarkMode *MediaTypeDarkMode `json:"darkMode,omitempty"`

	// Regular Media for light/regular mode.
	Regular *MediaTypeRegular `json:"regular,omitempty"`
}

Media defines model for Media.

type MediaTypeDarkMode added in v1.0.4

type MediaTypeDarkMode struct {
	// IconURL URL to the icon for the provider that is to be used in dark mode.
	IconURL string `json:"iconURL,omitempty"`

	// LogoURL URL to the logo for the provider that is to be used in dark mode.
	LogoURL string `json:"logoURL,omitempty"`
}

MediaTypeDarkMode Media to be used in dark mode.

type MediaTypeRegular added in v1.0.4

type MediaTypeRegular struct {
	// IconURL URL to the icon for the provider.
	IconURL string `json:"iconURL,omitempty"`

	// LogoURL URL to the logo for the provider.
	LogoURL string `json:"logoURL,omitempty"`
}

MediaTypeRegular Media for light/regular mode.

type MetadataItemInput added in v1.0.9

type MetadataItemInput struct {
	// DefaultValue Default value for this metadata item
	DefaultValue string `json:"defaultValue,omitempty"`

	// DisplayName The human-readable name for the field
	DisplayName string `json:"displayName,omitempty"`

	// DocsURL URL with more information about how to locate this value
	DocsURL string `json:"docsURL,omitempty"`

	// ModuleDependencies Does this metadata item only apply to a specific module?
	ModuleDependencies *ModuleDependencies `json:"moduleDependencies,omitempty"`

	// Name The internal identifier for the metadata field
	Name string `json:"name"`
}

MetadataItemInput defines model for MetadataItemInput.

type MetadataItemPostAuthentication added in v1.0.9

type MetadataItemPostAuthentication struct {
	// ModuleDependencies Does this metadata item only apply to a specific module?
	ModuleDependencies *ModuleDependencies `json:"moduleDependencies,omitempty"`

	// Name The internal identifier for the metadata field
	Name string `json:"name"`
}

MetadataItemPostAuthentication defines model for MetadataItemPostAuthentication.

type ModuleDependencies added in v1.0.9

type ModuleDependencies = map[common.ModuleID]ModuleDependency

ModuleDependencies Does this metadata item only apply to a specific module?

type ModuleDependency added in v1.0.9

type ModuleDependency = map[string]interface{}

ModuleDependency Dependency for a single module.

type ModuleInfo added in v1.0.9

type ModuleInfo struct {
	BaseURL     string `json:"baseURL"`
	DisplayName string `json:"displayName"`

	// Support The supported features for the provider.
	Support Support `json:"support" validate:"required"`
}

ModuleInfo defines model for ModuleInfo.

type Modules added in v1.0.9

type Modules = map[common.ModuleID]ModuleInfo

Modules The registry of provider modules.

type Oauth2Opts added in v1.0.4

type Oauth2Opts struct {
	// Audience A list of URLs that represent the audience for the token, which is needed for some client credential grant flows.
	Audience []string `json:"audience,omitempty"`

	// AuthURL The authorization URL.
	AuthURL       string            `json:"authURL,omitempty"`
	AuthURLParams map[string]string `json:"authURLParams,omitempty"`

	// DocsURL URL with more information about where to retrieve Client ID and Client Secret, etc.
	DocsURL string `json:"docsURL,omitempty"`

	// ExplicitScopesRequired Whether scopes are required to be known ahead of the OAuth flow.
	ExplicitScopesRequired bool `json:"explicitScopesRequired"`

	// ExplicitWorkspaceRequired Whether the workspace is required to be known ahead of the OAuth flow.
	ExplicitWorkspaceRequired bool                `json:"explicitWorkspaceRequired"`
	GrantType                 Oauth2OptsGrantType `json:"grantType"`

	// TokenMetadataFields Fields to be used to extract token metadata from the token response.
	TokenMetadataFields TokenMetadataFields `json:"tokenMetadataFields"`

	// TokenURL The token URL.
	TokenURL string `json:"tokenURL" validate:"required"`
}

Oauth2Opts Configuration for OAuth2.0. Must be provided if authType is oauth2.

type Oauth2OptsGrantType added in v1.0.4

type Oauth2OptsGrantType string

Oauth2OptsGrantType defines model for Oauth2Opts.GrantType.

const (
	AuthorizationCode     Oauth2OptsGrantType = "authorizationCode"
	AuthorizationCodePKCE Oauth2OptsGrantType = "authorizationCodePKCE"
	ClientCredentials     Oauth2OptsGrantType = "clientCredentials"
	Password              Oauth2OptsGrantType = "password"
)

Defines values for Oauth2OptsGrantType.

type OptionalFieldsAutoOption

type OptionalFieldsAutoOption string

OptionalFieldsAutoOption defines model for OptionalFieldsAutoOption.

const (
	OptionalFieldsAutoOptionAll OptionalFieldsAutoOption = "all"
)

Defines values for OptionalFieldsAutoOption.

type OtherEvents added in v1.0.8

type OtherEvents = []string

OtherEvents defines model for OtherEvents.

type Problem

type Problem struct {
	// Detail A human-readable explanation specific to this occurrence of the problem
	Detail *string `json:"detail,omitempty"`

	// Href An absolute URI that, when dereferenced, provides human-readable documentation for the problem type (e.g. using HTML).
	Href *string `json:"href,omitempty"`

	// Instance An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.
	Instance *string `json:"instance,omitempty"`

	// Status The HTTP status code generated by the origin server for this occurrence of the problem.
	Status *int32 `json:"status,omitempty"`

	// Title A short summary of the problem type. Written in English and readable for engineers (usually not suited for non technical stakeholders and not localized).
	Title *string `json:"title,omitempty"`

	// Type An absolute URI that identifies the problem type
	Type *string `json:"type,omitempty"`
}

Problem A Problem Details object (RFC 9457).

Additional properties specific to the problem type may be present.

type ProblemResponse

type ProblemResponse = Problem

ProblemResponse A Problem Details object (RFC 9457).

Additional properties specific to the problem type may be present.

type Provider added in v1.0.4

type Provider = string

Provider defines model for Provider.

type ProviderInfo added in v1.0.4

type ProviderInfo struct {
	// ApiKeyOpts Configuration for API key. Must be provided if authType is apiKey.
	ApiKeyOpts *ApiKeyOpts `json:"apiKeyOpts,omitempty"`

	// AuthHealthCheck A URL to check the health of a provider's credentials. It's used to see if the credentials are valid and if the provider is reachable.
	AuthHealthCheck *AuthHealthCheck `json:"authHealthCheck,omitempty"`

	// AuthType The type of authentication required by the provider.
	AuthType AuthType `json:"authType" validate:"required"`

	// BaseURL The base URL for making API requests.
	BaseURL string `json:"baseURL" validate:"required"`

	// BasicOpts Configuration for Basic Auth. Optional.
	BasicOpts *BasicAuthOpts `json:"basicOpts,omitempty"`

	// CustomOpts Configuration for custom auth. Optional.
	CustomOpts    *CustomAuthOpts `json:"customOpts,omitempty"`
	DefaultModule common.ModuleID `json:"defaultModule"`

	// DisplayName The display name of the provider, if omitted, defaults to provider name.
	DisplayName string  `json:"displayName,omitempty"`
	Labels      *Labels `json:"labels,omitempty"`
	Media       *Media  `json:"media,omitempty"`

	// Metadata Provider metadata that needs to be given by the user or fetched by the connector post authentication for the connector to work.
	Metadata *ProviderMetadata `json:"metadata,omitempty"`

	// Modules The registry of provider modules.
	Modules *Modules `json:"modules,omitempty"`
	Name    string   `json:"name"`

	// Oauth2Opts Configuration for OAuth2.0. Must be provided if authType is oauth2.
	Oauth2Opts *Oauth2Opts `json:"oauth2Opts,omitempty"`

	// PostAuthInfoNeeded If true, we require additional information after auth to start making requests.
	PostAuthInfoNeeded bool `json:"postAuthInfoNeeded,omitempty"`

	// ProviderOpts Additional provider-specific metadata.
	ProviderOpts  ProviderOpts   `json:"providerOpts"`
	SubscribeOpts *SubscribeOpts `json:"subscribeOpts,omitempty"`

	// Support The supported features for the provider.
	Support Support `json:"support" validate:"required"`
}

ProviderInfo defines model for ProviderInfo.

type ProviderMetadata added in v1.0.9

type ProviderMetadata struct {
	// Input Metadata provided as manual input
	Input []MetadataItemInput `json:"input,omitempty"`

	// PostAuthentication Metadata fetched by the connector post authentication
	PostAuthentication []MetadataItemPostAuthentication `json:"postAuthentication,omitempty"`
}

ProviderMetadata Provider metadata that needs to be given by the user or fetched by the connector post authentication for the connector to work.

type ProviderOpts added in v1.0.4

type ProviderOpts map[string]string

ProviderOpts Additional provider-specific metadata.

type SubscribeOpts added in v1.0.8

type SubscribeOpts struct {
	// RegistrationTiming The timing of the registration.
	RegistrationTiming SubscribeOptsRegistrationTiming `json:"registrationTiming"`

	// SubscriptionScope The scope of the subscription.
	SubscriptionScope SubscribeOptsSubscriptionScope `json:"subscriptionScope"`

	// TargetURLScope The scope of the target URL.
	TargetURLScope interface{} `json:"targetURLScope"`
}

SubscribeOpts defines model for SubscribeOpts.

type SubscribeOptsRegistrationTiming added in v1.0.8

type SubscribeOptsRegistrationTiming string

SubscribeOptsRegistrationTiming The timing of the registration.

const (
	SubscribeOptsRegistrationTimingInstallation SubscribeOptsRegistrationTiming = "installation"
	SubscribeOptsRegistrationTimingIntegration  SubscribeOptsRegistrationTiming = "integration"
	SubscribeOptsRegistrationTimingProviderApp  SubscribeOptsRegistrationTiming = "providerApp"
)

Defines values for SubscribeOptsRegistrationTiming.

type SubscribeOptsSubscriptionScope added in v1.0.8

type SubscribeOptsSubscriptionScope string

SubscribeOptsSubscriptionScope The scope of the subscription.

const (
	SubscribeOptsSubscriptionScopeInstallation SubscribeOptsSubscriptionScope = "installation"
	SubscribeOptsSubscriptionScopeIntegration  SubscribeOptsSubscriptionScope = "integration"
)

Defines values for SubscribeOptsSubscriptionScope.

type SubscribeSupport added in v1.0.8

type SubscribeSupport struct {
	Create      *bool `json:"create,omitempty"`
	Delete      *bool `json:"delete,omitempty"`
	PassThrough *bool `json:"passThrough,omitempty"`
	Update      *bool `json:"update,omitempty"`
}

SubscribeSupport defines model for SubscribeSupport.

type Support added in v1.0.4

type Support struct {
	BulkWrite        BulkWriteSupport  `json:"bulkWrite" validate:"required"`
	Proxy            bool              `json:"proxy"`
	Read             bool              `json:"read"`
	Subscribe        bool              `json:"subscribe"`
	SubscribeSupport *SubscribeSupport `json:"subscribeSupport,omitempty"`
	Write            bool              `json:"write"`
}

Support The supported features for the provider.

type TokenMetadataFields added in v1.0.4

type TokenMetadataFields struct {
	ConsumerRefField string `json:"consumerRefField,omitempty"`

	// OtherFields Additional fields to extract and transform from the token response
	OtherFields       *TokenMetadataFieldsOtherFields `json:"otherFields,omitempty"`
	ScopesField       string                          `json:"scopesField,omitempty"`
	WorkspaceRefField string                          `json:"workspaceRefField,omitempty"`
}

TokenMetadataFields Fields to be used to extract token metadata from the token response.

type TokenMetadataFieldsOtherFields added in v1.0.9

type TokenMetadataFieldsOtherFields = []struct {
	// Capture A regex expression to capture the value that we need from the path. There must be only one capture group named 'result' in the expression. If not provided, will cause an error.
	Capture string `json:"capture,omitempty"`

	// DisplayName The human-readable name of the field
	DisplayName string `json:"displayName"`

	// Name The internal name of the field
	Name string `json:"name"`

	// Path The path to the field in the token response (accepts dot notation for nested fields)
	Path string `json:"path"`
}

TokenMetadataFieldsOtherFields Additional fields to extract and transform from the token response

type UpdateEvent added in v1.0.8

type UpdateEvent struct {
	// Enabled If always, the integration will subscribe to update events by default.
	Enabled             *UpdateEventEnabled `json:"enabled,omitempty"`
	RequiredWatchFields *[]string           `json:"requiredWatchFields,omitempty"`

	// WatchFieldsAuto If all, the integration will watch all fields for updates.
	WatchFieldsAuto *UpdateEventWatchFieldsAuto `json:"watchFieldsAuto,omitempty"`
}

UpdateEvent defines model for UpdateEvent.

type UpdateEventEnabled added in v1.0.8

type UpdateEventEnabled string

UpdateEventEnabled If always, the integration will subscribe to update events by default.

const (
	UpdateEventEnabledAlways UpdateEventEnabled = "always"
)

Defines values for UpdateEventEnabled.

type UpdateEventWatchFieldsAuto added in v1.0.9

type UpdateEventWatchFieldsAuto string

UpdateEventWatchFieldsAuto If all, the integration will watch all fields for updates.

const (
	UpdateEventWatchFieldsAutoAll UpdateEventWatchFieldsAuto = "all"
)

Defines values for UpdateEventWatchFieldsAuto.

type ValueDefaults added in v1.0.8

type ValueDefaults struct {
	// AllowAnyFields If true, users can set default values for any field.
	AllowAnyFields *bool `json:"allowAnyFields,omitempty"`
}

ValueDefaults Configuration to set default write values for object fields.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL