connectors

package module
v0.0.0-...-9c64778 Latest Latest
Warning

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

Go to latest
Published: Jul 17, 2026 License: MIT Imports: 5 Imported by: 1

README


Overview

Ampersand is a declarative platform for SaaS builders who are creating product integrations. It allows you to:

  • Read data from your customer’s SaaS
  • Write data to your customer’s SaaS
  • Subscribe to events (creates, deletes, and field changes) in your customer’s SaaS

Ampersand Connectors

This is a Go library that makes it easier to make API calls to SaaS products such as Salesforce and Hubspot. It handles constructing the correct API requests given desired objects and fields.

It can be either be used as a standalone library, or as a part of the Ampersand platform, which offers additional benefits such as:

  • Handling auth flows
  • Orchestration of scheduled reads, real-time writes, or bulk writes
  • Handling API quotas from SaaS APIs
  • A dashboard for observability and troubleshooting

The key components of the Ampersand platform include:

  • Manifest file (amp.yaml): Define all your integrations, the APIs to connect to, the objects and fields for reading or writing, and the configuration options you want to expose to your customers.

  • Ampersand server: a managed service that keeps track of each of your customer’s configurations, and makes the appropriate API calls to your customer’s SaaS, while optimizing for cost, handling retries and error message parsing.

  • Embeddable UI components: open-source React components that you can embed to allow your end users to customize and manage their integrations. See the repo for more info.

  • Dashboard: Provides deep observability into customer integrations, allowing you to monitor & troubleshoot with detailed logs.

Add enterprise-grade integrations to your SaaS this week. Get started for free.

Ampersand Overview

Using connectors

Supported connectors

Browse the providers directory to see a list of all the connectors that Ampersand supports, and which features are supported for each connector.

Examples

Visit the Ampersand docs to learn about how to use connectors as a part of the Ampersand platform.

See the examples directory for examples of how to use connectors as a standalone library.

Provider Auth Connector Deep Connector Authorization Method
Salesforce example example OAuth2, Authorization Code
Adobe example OAuth2, Client Credentials
Anthropic example API Key
Blueshift example Basic Auth

Concurrency Safety

This codebase uses the future and simultaneously packages to provide safe concurrency primitives. Do NOT use the bare go keyword - always use these primitives instead.

Using the future package

For launching async operations that return a result:

// Instead of: go func() { ... }()
// Use future.Go for simple async operations:
result := future.Go(func() (User, error) {
    return fetchUser(id)
})
user, err := result.Await()

// With context support:
result := future.GoContext(ctx, func(ctx context.Context) (User, error) {
    return fetchUserWithContext(ctx, id)
})
user, err := result.AwaitContext(ctx)

Using the simultaneously package

For running multiple operations in parallel with controlled concurrency:

// Instead of launching multiple goroutines with: go func() { ... }()
// Use simultaneously.Do to run functions in parallel:
err := simultaneously.Do(maxConcurrent,
    func(ctx context.Context) error { return processItem1(ctx) },
    func(ctx context.Context) error { return processItem2(ctx) },
    func(ctx context.Context) error { return processItem3(ctx) },
)

// With context:
err := simultaneously.DoCtx(ctx, maxConcurrent, callbacks...)

Why? These primitives automatically handle panic recovery and prevent unbounded goroutine spawning, protecting against production outages.

Linter

One-time Setup

Build the custom linters:

make custom-gcl

Rebuild the linters from scratch. This is useful when the linter has been expanded with new plugins:

make linter-rebuild

Day-to-Day Usage

Run all linters:

make lint

Automatically apply formatting fixes:

make fix

Tests

Run the full test suite:

make test

Run tests with prettier, more readable output:

make test-pretty

Run tests in parallel to verify test isolation and correctness:

make test-parallel

Notes on parallelized tests:

  • -parallel=N: Runs up to N (ex:8) test functions concurrently. Useful for speeding up large test suites and for catching concurrency-related bugs.
  • -count=M: Runs the test M (ex:3) times. This helps catch flakiness or non-deterministic behavior in tests.

Contributors

Thankful to the OSS community for making Ampersand better every day.

Documentation

Index

Constants

View Source
const (
	BatchStatusSuccess = common.BatchStatusSuccess
	BatchStatusFailure = common.BatchStatusFailure
	BatchStatusPartial = common.BatchStatusPartial
	WriteTypeCreate    = common.WriteTypeCreate
	WriteTypeUpdate    = common.WriteTypeUpdate
	WriteTypeDelete    = common.WriteTypeDelete
	WriteTypeUpsert    = common.WriteTypeUpsert
)

Variables

View Source
var Fields = datautils.NewStringSet // nolint:gochecknoglobals

Functions

This section is empty.

Types

type AuthMetadataConnector

type AuthMetadataConnector interface {
	Connector

	// GetPostAuthInfo returns authentication metadata.
	GetPostAuthInfo(ctx context.Context) (*common.PostAuthInfo, error)
}

AuthMetadataConnector is an interface that extends the Connector interface with the ability to retrieve metadata information about authentication.

type BatchRecordReaderConnector

type BatchRecordReaderConnector interface {
	Connector

	// GetRecordsByIds fetches full records from the provider for a specific set of IDs.
	//
	// This method is primarily used during webhook processing to enrich events that
	// require fetching the current full state of records from the provider API.
	// In that lifecycle, webhook payloads often contain only partial data, making
	// an explicit read necessary to produce complete, descriptive ReadResultRow values.
	//
	// More generally, this method represents a targeted read operation: it allows
	// callers to retrieve a known set of records by ID without performing a full
	// collection read. This is useful in non-webhook lifecycles as well, such as
	// enriching read results with associated sub-objects, resolving references to
	// related objects, or performing joined reads where supported by the provider.
	//
	// Compared to Read (which lists collections of records), GetRecordsByIds is a
	// singular-by-identity read that operates over multiple explicit IDs.
	//
	// The connector should:
	//   - Fetch only the specified recordIds
	//   - Respect requested fields and associations when supported by the provider
	//   - Return provider responses translated into ReadResultRow
	GetRecordsByIds(
		ctx context.Context,
		objectName string,
		recordIds []string,
		fields []string,
		associations []string,
	) ([]common.ReadResultRow, error)
}

BatchRecordReaderConnector defines the interface for connectors that can fetch full record data from a provider in batch.

type BatchStatus

type BatchStatus = common.BatchStatus

We re-export the following types so that they can be used by consumers of this library.

type BatchWriteConnector

type BatchWriteConnector interface {
	Connector

	// BatchWrite performs a batch create, update, or upsert operation.
	// Each record in params.Records is processed according to params.Type.
	// The returned BatchWriteResult includes both per-record outcomes and the aggregate batch status.
	BatchWrite(ctx context.Context, params *common.BatchWriteParam) (*common.BatchWriteResult, error)
}

BatchWriteConnector provides synchronous operations for writing multiple records in a single request. It serves the same purpose as WriteConnector but operates on collections of records instead of individual ones.

Implementations should handle each record independently and report both overall and per-record outcomes through the returned result types. Errors returned from the methods represent connector-level issues such as network failures or invalid authentication, not individual record failures.

type BatchWriteParam

type BatchWriteParam = common.BatchWriteParam

We re-export the following types so that they can be used by consumers of this library.

type BatchWriteResult

type BatchWriteResult = common.BatchWriteResult

We re-export the following types so that they can be used by consumers of this library.

type ConfigurationConnector

type ConfigurationConnector interface {
	Connector

	DefaultPageSize() int
}

ConfigurationConnector is a connector that has methods to expose connector configuration values to a caller. This is an interface as opposed to a ProviderInfo value because PageSize might change based on the provider license or based on the endpoint, in which case we can modify DefaultPageSize() to accept ReadParams as well.

type Connector

type Connector interface {
	fmt.Stringer

	// JSONHTTPClient returns the underlying JSON HTTP client. This is useful for
	// testing, or for calling methods that aren't exposed by the Connector
	// interface directly. Authentication and token refreshes will be handled automatically.
	JSONHTTPClient() *common.JSONHTTPClient

	// HTTPClient returns the underlying HTTP client. This is useful for proxy requests.
	HTTPClient() *common.HTTPClient

	// Provider returns the connector provider.
	Provider() providers.Provider
}

Connector is an interface that can be used to implement a connector with basic configuration about the provider.

type DeleteConnector

type DeleteConnector interface {
	Connector

	Delete(ctx context.Context, params DeleteParams) (*DeleteResult, error)
}

DeleteConnector is an interface that extends the Connector interface with delete capabilities.

type DeleteMetadataConnector

type DeleteMetadataConnector interface {
	Connector

	DeleteMetadata(ctx context.Context, params *common.DeleteMetadataParams) (*common.DeleteMetadataResult, error)
}

DeleteMetadataConnector is an interface that extends the Connector interface with the ability to delete custom fields in the SaaS instance.

type DeleteParams

type DeleteParams = common.DeleteParams

We re-export the following types so that they can be used by consumers of this library.

type DeleteResult

type DeleteResult = common.DeleteResult

We re-export the following types so that they can be used by consumers of this library.

type ErrorWithStatus

type ErrorWithStatus = common.HTTPError //nolint:errname

We re-export the following types so that they can be used by consumers of this library.

type ListObjectMetadataResult

type ListObjectMetadataResult = common.ListObjectMetadataResult

We re-export the following types so that they can be used by consumers of this library.

type ObjectMetadataConnector

type ObjectMetadataConnector interface {
	Connector

	ListObjectMetadata(ctx context.Context, objectNames []string) (*ListObjectMetadataResult, error)
}

ObjectMetadataConnector is an interface that extends the Connector interface with the ability to list object metadata.

type ProxyConfig

type ProxyConfig struct {
	// URL is used for proxying requests.
	URL string
}

ProxyConfig describes all information required to construct a proxy request to an upstream provider.

type ProxyConnector

type ProxyConnector interface {
	Connector

	// ProxyConfig returns the general proxy configuration for the provider.
	//
	// This represents the base proxy used for the provider.
	//
	// Returns common.ErrProxyNotApplicable if proxying is not supported.
	ProxyConfig() (*ProxyConfig, error)

	// ProxyModuleConfig returns the module-specific proxy configuration.
	//
	// If the connector instance is associated with a module, the returned
	// configuration may include module-specific pathing, host, or routing.
	//
	// If the instance is not associated with a module, this MUST return the same
	// configuration as ProxyConfig().
	//
	// Returns common.ErrProxyNotApplicable if proxying is not supported.
	ProxyModuleConfig() (*ProxyConfig, error)
}

ProxyConnector defines an interface for connectors that can describe how requests should be proxied to an upstream provider.

A connector instance may optionally be associated with a module. Regardless, two proxy modes are exposed:

  • general proxy
  • module-specific proxy

If the instance does not have a module, the module-specific proxy behaves the same as the general proxy.

type ReadConnector

type ReadConnector interface {
	Connector

	// Read reads a page of data from the connector. This can be called multiple
	// times to read all the data. The caller is responsible for paging, by
	// passing the NextPage value correctly, and by terminating the loop when
	// Done is true. The caller is also responsible for handling errors.
	// Authentication corner cases are handled internally, but all other errors
	// are returned to the caller.
	Read(ctx context.Context, params ReadParams) (*ReadResult, error)
}

ReadConnector is an interface that extends the Connector interface with read capabilities.

type ReadParams

type ReadParams = common.ReadParams

We re-export the following types so that they can be used by consumers of this library.

type ReadResult

type ReadResult = common.ReadResult

We re-export the following types so that they can be used by consumers of this library.

type RecordCountConnector

type RecordCountConnector interface {
	Connector

	// GetRecordCount returns the count of records for the given object and time range.
	//
	// Parameters:
	//   - ctx: context for the operation
	//   - params: parameters specifying the object name and optional time range
	//
	// Returns:
	//   - *RecordCountResult: the result containing the count
	//   - error: any error that occurred while fetching the count
	GetRecordCount(ctx context.Context, params *common.RecordCountParams) (*common.RecordCountResult, error)
}

RecordCountConnector is an interface that extends the Connector interface with the ability to retrieve record counts.

type RecordCountParams

type RecordCountParams = common.RecordCountParams

We re-export the following types so that they can be used by consumers of this library.

type RecordCountResult

type RecordCountResult = common.RecordCountResult

We re-export the following types so that they can be used by consumers of this library.

type RegisterSubscribeConnector

type RegisterSubscribeConnector interface {
	SubscribeConnector

	// Register performs a provider-specific registration required to enable
	// webhook subscriptions.
	//
	// This is typically a one-time operation per installation that
	// may create shared infrastructure used by all subsequent subscriptions.
	Register(
		ctx context.Context,
		params common.SubscriptionRegistrationParams,
	) (*common.RegistrationResult, error)

	// DeleteRegistration removes a previously created registration from the provider.
	//
	// This method is called when the framework determines that the registration
	// is no longer needed (for example, when all subscriptions have been removed)
	DeleteRegistration(
		ctx context.Context,
		previousResult common.RegistrationResult,
	) error

	// EmptyRegistrationParams returns an empty, provider-specific common.SubscriptionRegistrationParams instance.
	//
	// The returned common.SubscriptionRegistrationParams has the Request field (of type any)
	// initialized to an empty value appropriate for the provider.
	EmptyRegistrationParams() *common.SubscriptionRegistrationParams

	// EmptyRegistrationResult returns an empty, provider-specific common.RegistrationResult instance.
	//
	// The returned common.RegistrationResult has the Result field (of type any)
	// initialized to an empty value appropriate for storing the provider's raw response.
	EmptyRegistrationResult() *common.RegistrationResult
}

type SearchConnector

type SearchConnector interface {
	Connector

	// Search searches for records in the given object and time range.
	//
	// Parameters:
	//   - ctx: context for the operation
	//   - params: parameters specifying the object name and optional time range
	//
	// Returns:
	//   - *SearchResult: the result containing the search results
	//   - error: any error that occurred while searching
	Search(ctx context.Context, params *common.SearchParams) (*common.SearchResult, error)
}

type SearchFilter

type SearchFilter = common.SearchFilter

We re-export the following types so that they can be used by consumers of this library.

type SearchParams

type SearchParams = common.SearchParams

We re-export the following types so that they can be used by consumers of this library.

type SearchResult

type SearchResult = common.SearchResult

We re-export the following types so that they can be used by consumers of this library.

type SubscribeConnector

type SubscribeConnector interface {
	WebhookVerifierConnector

	// Subscribe creates webhook subscriptions in the provider.
	//
	// SubscribeParams describe the desired subscription state in a normalized,
	// provider-agnostic format, such as subscribing to objects, certain event types,
	// or specific fields. The connector translates this configuration into
	// provider-specific API calls and returns the resulting subscription state.
	Subscribe(
		ctx context.Context,
		params common.SubscribeParams,
	) (*common.SubscriptionResult, error)

	// UpdateSubscription applies detected changes to an existing provider-side subscription.
	//
	// This method is called only after the framework detects changes in the desired
	// subscription configuration (e.g., objects or events added or removed).
	//
	// The params argument represents the new desired subscription state.
	// The previousResult contains the last known actual subscription state stored
	// by the framework.
	//
	// The connector must apply the necessary provider-specific operations to reconcile
	// the existing subscription with the desired state. The reconciliation process
	// is provider-specific.
	//
	// The returned SubscriptionResult must reflect the actual subscription state
	// after the update and will be persisted for future updates or deletion.
	UpdateSubscription(
		ctx context.Context,
		params common.SubscribeParams,
		previousResult *common.SubscriptionResult,
	) (*common.SubscriptionResult, error)

	// DeleteSubscription removes an existing provider-side subscription.
	//
	// This method is called when the framework determines that no subscription
	// lookups remain (i.e., no objects or events are left to subscribe to).
	//
	// The previousResult contains the provider-specific information needed to
	// identify and delete the subscription resources created by Subscribe or
	// UpdateSubscription.
	//
	// After this method succeeds, the provider should no longer send webhook events
	// for this subscription.
	DeleteSubscription(
		ctx context.Context,
		previousResult common.SubscriptionResult,
	) error

	// EmptySubscriptionParams returns an empty, provider-specific common.SubscribeParams instance.
	//
	// The returned common.SubscribeParams has the Request field (of type any)
	// initialized to an empty value appropriate for the provider.
	EmptySubscriptionParams() *common.SubscribeParams

	// EmptySubscriptionResult returns an empty, provider-specific common.SubscriptionResult instance.
	//
	// The returned common.SubscriptionResult has the Result field (of type any)
	// initialized to an empty value appropriate for storing the provider's raw response.
	EmptySubscriptionResult() *common.SubscriptionResult
}

SubscribeConnector defines the interface for connectors that manage webhook subscriptions.

Connectors implementing this interface are responsible for creating, updating, and deleting webhook subscriptions in a provider system. The interface extends WebhookVerifierConnector, so implementing connectors must also be able to verify incoming webhook requests.

type SubscriptionMaintainerConnector

type SubscriptionMaintainerConnector interface {
	SubscribeConnector

	// RunScheduledMaintenance performs provider-specific maintenance for an
	// existing subscription.
	//
	// The params argument represents the desired subscription state and is
	// typically identical to the currently active configuration.
	//
	// The previousResult contains the last known actual subscription state stored
	// by the framework and may include provider-specific identifiers, timestamps,
	// or expiration information required to renew the subscription.
	//
	// The returned SubscriptionResult must reflect the actual subscription state
	// after maintenance and will be persisted for future maintenance, updates,
	// or deletion.
	RunScheduledMaintenance(
		ctx context.Context,
		params common.SubscribeParams,
		previousResult *common.SubscriptionResult,
	) (*common.SubscriptionResult, error)
}

SubscriptionMaintainerConnector defines the interface for connectors that require periodic maintenance to keep subscriptions active.

Some providers issue webhook subscriptions that expire after a fixed time and must be periodically renewed or refreshed to remain valid. Connectors implementing this interface are responsible for performing any scheduled maintenance operations required to prevent subscription expiration.

type URLConnector

type URLConnector interface {
	Connector

	// GetURL returns the URL of some resource. The resource is provider-specific.
	// The URL is returned as a string, or an error is returned if the URL cannot be
	// retrieved. The precise meaning of the resource is provider-specific, and the
	// caller should consult the provider's documentation for more information.
	// The args parameter is a map of key-value pairs that can be used to customize
	// the URL. The keys and values are provider-specific, and the caller should
	// consult the provider's documentation for more information. Certain providers
	// may ignore the args parameter entirely if it's unnecessary.
	GetURL(resource string, args map[string]any) (string, error)
}

URLConnector is an interface that extends the Connector interface with the ability to retrieve URLs for resources.

type UpsertMetadataConnector

type UpsertMetadataConnector interface {
	Connector

	UpsertMetadata(ctx context.Context, params *common.UpsertMetadataParams) (*common.UpsertMetadataResult, error)
}

UpsertMetadataConnector is an interface that extends the Connector interface with the ability to create/update custom objects and fields in the SaaS instance.

type WebhookVerifierConnector

type WebhookVerifierConnector interface {
	Connector
	BatchRecordReaderConnector

	// VerifyWebhookMessage validates the authenticity of an incoming webhook request.
	//
	// The method should verify that the HTTP request was sent by the provider and
	// has not been tampered with. Verification is provider-specific and may rely on
	// request headers, the raw request body, the request URL, or other metadata.
	//
	// Example: verifying a webhook signature using a shared secret.
	//
	// Returning true allows webhook processing to continue.
	// Returning false indicates the request is not trusted and should be rejected.
	// An error should be returned only for unexpected verification failures.
	//
	// Parameters:
	//   - request: the raw webhook HTTP request received from the provider.
	//   - params: provider-specific and user-specific verification parameters, such as
	//     secrets or configuration needed to validate the webhook signature.
	VerifyWebhookMessage(
		ctx context.Context,
		request *common.WebhookRequest,
		params *common.VerificationParams,
	) (bool, error)
}

WebhookVerifierConnector defines the interface for connectors that can authenticate and process incoming webhook requests from a provider.

Implementations are responsible for verifying that a webhook request genuinely originated from the provider.

type WriteConnector

type WriteConnector interface {
	Connector

	Write(ctx context.Context, params WriteParams) (*WriteResult, error)
}

WriteConnector is an interface that extends the Connector interface with write capabilities.

type WriteParams

type WriteParams = common.WriteParams

We re-export the following types so that they can be used by consumers of this library.

type WriteResult

type WriteResult = common.WriteResult

We re-export the following types so that they can be used by consumers of this library.

type WriteType

type WriteType = common.WriteType

We re-export the following types so that they can be used by consumers of this library.

Directories

Path Synopsis
nolint:revive,godoclint
nolint:revive,godoclint
paramsbuilder
Package paramsbuilder provides common parameters used to initialize connectors.
Package paramsbuilder provides common parameters used to initialize connectors.
scanning/credscanning
Package credscanning is a wrapper for scanning package.
Package credscanning is a wrapper for scanning package.
subscriptionhelper
Package subscriptionhelper provides utilities for categorizing object subscription events based on their existing and desired states.
Package subscriptionhelper provides utilities for categorizing object subscription events based on their existing and desired states.
try
Package try provides a Result type for error handling in Go.
Package try provides a Result type for error handling in Go.
examples
utils
nolint:revive,godoclint
nolint:revive,godoclint
internal
future
Package future provides a Future/Promise implementation for asynchronous programming in Go.
Package future provides a Future/Promise implementation for asynchronous programming in Go.
Package memstore provides an in-memory mock connector with JSON Schema validation.
Package memstore provides an in-memory mock connector with JSON Schema validation.
nolint:lll,godoclint
nolint:lll,godoclint
acculynx
Package acculynx provides a connector for the AccuLynx V2 API.
Package acculynx provides a connector for the AccuLynx V2 API.
aha
aws
Package webhook
fireflies
nolint
nolint
g2
google/internal/core
Package core hosts cross-module helpers shared by the Google connector's Gmail, Calendar, and Contacts adapters.
Package core hosts cross-module helpers shared by the Google connector's Gmail, Calendar, and Contacts adapters.
goto
Package gotoconn implements the GoTo connector.
Package gotoconn implements the GoTo connector.
goto/internal/gotocore
Package gotocore handles GoTo's core API functionality.
Package gotocore handles GoTo's core API functionality.
gusto
Package gusto provides a connector for the Gusto HR & Payroll API.
Package gusto provides a connector for the Gusto HR & Payroll API.
insightly
nolint:tagliatelle,godoclint
nolint:tagliatelle,godoclint
jobber
nolint
nolint
justcall
Package justcall provides a connector for the JustCall API.
Package justcall provides a connector for the JustCall API.
keap
Package keap nolint:gocritic,godot
Package keap nolint:gocritic,godot
kit
nolint
nolint
okta
Package okta provides a connector for the Okta Management API.
Package okta provides a connector for the Okta Management API.
salesforce
nolint:lll,tagliatelle,godoclint
nolint:lll,tagliatelle,godoclint
salesforce/jwt
Package jwt implements the Salesforce OAuth 2.0 JWT Bearer Flow (RFC 7523 §2.1) for server-to-server authentication.
Package jwt implements the Salesforce OAuth 2.0 JWT Bearer Flow (RFC 7523 §2.1) for server-to-server authentication.
scripts
catalog command
oauth command
nolint
nolint
openapi/acculynx/metadata command
Generates providers/acculynx/metadata/schemas.json from the AccuLynx V2 OpenAPI spec.
Generates providers/acculynx/metadata/schemas.json from the AccuLynx V2 OpenAPI spec.
openapi/devrev/metadata command
Extracts list endpoint schemas from OpenAPI spec and writes providers/devrev/metadata/schemas.json.
Extracts list endpoint schemas from OpenAPI spec and writes providers/devrev/metadata/schemas.json.
openapi/dixa command
openapi/gitlab command
openapi/housecallPro/metadata command
Extracts list endpoint schemas from OpenAPI spec and writes providers/housecallPro/metadata/schemas.json.
Extracts list endpoint schemas from OpenAPI spec and writes providers/housecallPro/metadata/schemas.json.
openapi/intercom/metadata command
OpenAPI documentation can be found under this official github repository.
OpenAPI documentation can be found under this official github repository.
openapi/okta/metadata command
Extracts list endpoint schemas from OpenAPI spec and writes providers/okta/metadata/schemas.json.
Extracts list endpoint schemas from OpenAPI spec and writes providers/okta/metadata/schemas.json.
openapi/paddle command
openapi/recurly command
openapi/seismic command
proxy command
nolint
nolint
scraper/capsule/metadata command
nolint:forbidigo
nolint:forbidigo
scraper/salesforce/pardot command
nolint:forbidigo,mnd
nolint:forbidigo,mnd
test
acculynx/delete command
acculynx/read command
acculynx/subscribe command
Live scaffold: runs Subscribe → UpdateSubscription → DeleteSubscription.
Live scaffold: runs Subscribe → UpdateSubscription → DeleteSubscription.
acculynx/write command
aha
aha/metadata command
aha/read command
aha/write command
aircall/delete command
aircall/read command
aircall/write command
amplitude/read command
amplitude/write command
apollo/metadata command
apollo/read command
apollo/write command
asana/metadata command
asana/read command
asana/write command
ashby/metadata command
ashby/read command
ashby/write command
atlassian/read command
attio/metadata command
attio/read command
attio/write command
avoma/metadata command
avoma/read command
avoma/write command
aws
aws/metadata command
aws/read/all command
aws/read/groups command
aws/read/users command
bentley/read command
bentley/write command
bigquery/benchmark command
Command benchmark measures BigQuery Storage Read API throughput.
Command benchmark measures BigQuery Storage Read API throughput.
bigquery/read command
bitbucket/read command
bitbucket/write command
blackbaud/read command
blackbaud/write command
blueshift/read command
blueshift/write command
braintree/read command
braintree/write command
braze/metadata command
braze/read command
braze/write command
breakcold/read command
breakcold/write command
breezy
Package breezy provides live-test helpers for the Breezy HR connector.
Package breezy provides live-test helpers for the Breezy HR connector.
brevo/metadata command
brevo/read command
brevo/write command
calendly/read command
calendly/write command
callrail/read command
callrail/write command
chargebee/read command
chargebee/write command
chargeover/read command
chilipiper/read command
clickup/read command
closecrm/read command
closecrm/search command
closecrm/write command
cloudtalk/read command
copper/metadata command
devrev/metadata command
devrev/read command
devrev/write command
dixa/metadata command
dixa/read command
dixa/write command
drift/metadata command
drift/read command
drift/write command
fastspring/orders/write command
Orders integration write: lists orders, takes the first row, and updates its tags.
Orders integration write: lists orders, takes the first row, and updates its tags.
fathom/metadata command
fathom/read command
fathom/write command
fireflies/read command
fireflies/write command
flatfile/read command
flatfile/write command
fourfour/read command
freshdesk/read command
freshdesk/write command
front/metadata command
front/read command
front/write command
g2
g2/metadata command
g2/read command
github/delete command
github/metadata command
github/read command
github/write command
gitlab/metadata command
gitlab/read command
gitlab/write command
gong/metadata command
gong/read/calls command
gong/read/flows command
gong/write command
google/calendar/classify command
Live test for Calendar subscription-event classification — the step the subscribe pipeline runs on the rows GetRecordsByIds returns.
Live test for Calendar subscription-event classification — the step the subscribe pipeline runs on the rows GetRecordsByIds returns.
google/calendar/record command
Unlike other connectors, Calendar push notifications carry no record IDs, so the subscribe pipeline passes recordIds[0] as a verbatim RFC3339 (UTC, ms) timestamp that becomes the events.list updatedMin query param.
Unlike other connectors, Calendar push notifications carry no record IDs, so the subscribe pipeline passes recordIds[0] as a verbatim RFC3339 (UTC, ms) timestamp that becomes the events.list updatedMin query param.
gorgias/read command
gorgias/write command
goto/metadata command
goto/read command
goto/write command
granola/read command
groove/metadata command
groove/read command
groove/write command
gusto/metadata command
gusto/read command
gusto/write command
happyfox/read command
heyreach/read command
heyreach/write command
hubspot/record command
hunter/metadata command
hunter/read command
hunter/write command
instantly/read command
intercom/read command
intercom/search command
iterable/read command
jobber/delete command
jobber/metadata command
jobber/read command
jobber/write command
justcall/delete command
justcall/read command
justcall/write command
kaseyavsax/read command
keap/metadata command
keap/read/tags command
kit
kit/metadata command
kit/read command
kit/write command
klaviyo/read command
lemlist/read command
lemlist/write command
lever/delete command
lever/metadata command
lever/read command
lever/write command
linear/metadata command
linear/read command
linear/write command
livestorm/read command
loxo/delete command
loxo/metadata command
loxo/read command
loxo/write command
marketo/read command
marketo/search command
marketo/write command
memstore/read command
memstore/write command
mixmax/metadata command
mixmax/read command
mixmax/write command
monday/metadata command
monday/read command
monday/write command
odoo/metadata command
odoo/read command
okta/delete command
okta/metadata command
okta/read command
okta/write command
outplay/read command
outplay/write command
outreach/read command
outreach/record command
Package main provides an integration test for the GetRecordsByIds method.
Package main provides an integration test for the GetRecordsByIds method.
outreach/write command
paddle/metadata command
paddle/read command
paddle/write command
pinterest/read command
pinterest/write command
pipeliner/read command
podium/metadata command
podium/read command
podium/write command
pylon/metadata command
pylon/read command
pylon/write command
quickbooks/read command
recurly/read command
recurly/write command
salesforce/apex command
salesforce/existence/apextrigger command
Integration test for Connector.ApexTriggerExists.
Integration test for Connector.ApexTriggerExists.
salesforce/existence/customfield command
Integration test for Connector.CustomFieldExists.
Integration test for Connector.CustomFieldExists.
seismic/read command
sellsy/metadata command
servicenow/read command
slack/metadata command
slack/read command
slack/write command
smartlead/read command
solarwinds/read command
square/metadata command
square/read command
supersend/read command
supersend/write command
talkdesk/read command
talkdesk/write command
teamleader/read command
utils/testconn
Package testconn holds a collection of common test procedures.
Package testconn holds a collection of common test procedures.
webex/metadata command
webex/read command
xero/metadata command
xero/read command
xero/write command
zoho/desk/read command
zoho/desk/write command
zoho/mail/read command
zoho/mail/write command
zoho/metadata command
zoho/read/deals command
zoho/read/leads command
zoho/read/users command
zoho/subscribe command
zoho/write command
zoom/metadata command
zoom/read command
zoom/write command
tools
fileconv/api3
nolint:forbidigo,godoclint
nolint:forbidigo,godoclint

Jump to

Keyboard shortcuts

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