diff --git a/src/docs.json b/src/docs.json index 328c07bf..3bdff232 100644 --- a/src/docs.json +++ b/src/docs.json @@ -127,6 +127,7 @@ "provider-guides/dynamicsBusinessCentral", "provider-guides/dynamicsCRM", "provider-guides/emailBison", + "provider-guides/fastSpring", "provider-guides/fathom", "provider-guides/figma", "provider-guides/fireflies", diff --git a/src/generate-docs.ts b/src/generate-docs.ts index a62d498b..7ed61c88 100644 --- a/src/generate-docs.ts +++ b/src/generate-docs.ts @@ -355,6 +355,7 @@ const baseConfig = { "provider-guides/dynamicsBusinessCentral", "provider-guides/dynamicsCRM", "provider-guides/emailBison", + "provider-guides/fastSpring", "provider-guides/fathom", "provider-guides/figma", "provider-guides/fireflies", diff --git a/src/images/provider-guides/fastSpring/fastSpring-api-credentials.png b/src/images/provider-guides/fastSpring/fastSpring-api-credentials.png new file mode 100644 index 00000000..7ae1e361 Binary files /dev/null and b/src/images/provider-guides/fastSpring/fastSpring-api-credentials.png differ diff --git a/src/images/provider-guides/fastSpring/fastSpring-api-tab.png b/src/images/provider-guides/fastSpring/fastSpring-api-tab.png new file mode 100644 index 00000000..d62df772 Binary files /dev/null and b/src/images/provider-guides/fastSpring/fastSpring-api-tab.png differ diff --git a/src/images/provider-guides/fastSpring/fastSpring-developer-tools.png b/src/images/provider-guides/fastSpring/fastSpring-developer-tools.png new file mode 100644 index 00000000..de4b12a4 Binary files /dev/null and b/src/images/provider-guides/fastSpring/fastSpring-developer-tools.png differ diff --git a/src/provider-guides/fastSpring.mdx b/src/provider-guides/fastSpring.mdx new file mode 100644 index 00000000..abc0269d --- /dev/null +++ b/src/provider-guides/fastSpring.mdx @@ -0,0 +1,104 @@ +--- +title: "FastSpring" +--- + +## What's supported + +### Supported actions + +This connector supports: + +- [Read Actions](/read-actions), including list reads with pagination and optional time windows for event objects. +- [Write Actions](/write-actions) (create, update, and delete where the FastSpring API allows—there is no separate Delete action in the catalog; destructive operations such as product delete or subscription cancel are part of Write). +- [Proxy Actions](/proxy-actions), using the base URL `https://api.fastspring.com`. +- Subscribe Actions are not currently supported. + +### Supported objects + +export const Check = () => +export const Cross = () => 🚫 + +
+ + + + + + + + + + + + + + + + + +
ObjectReadWriteSubscribe
accounts
orders
products
subscriptions
events-processed
events-unprocessed
+
+ +### Notes and limitations + +- **Write support** `accounts` supports create and update. `products` supports create, update, and delete. `orders` and `subscriptions` support **update**; subscription delete maps to cancel in FastSpring. Single-record operations only (no bulk write). +- **Read behavior**: List endpoints may return object arrays or ID-only lists; the connector normalizes rows into a consistent shape. Event lists (`events-processed`, `events-unprocessed`) support optional date ranges via read parameters where the API allows. + +### Example integration + +To define an integration for FastSpring, create a manifest file (`amp.yaml`). For a complete example, visit our [samples repo on GitHub](https://github.com/amp-labs/samples/blob/main/fastSpring/amp.yaml). + +```yaml +# amp.yaml +specVersion: 1.0.0 +integrations: + - name: fastSpringIntegration + displayName: My FastSpring Integration + provider: fastSpring + proxy: + enabled: true +``` + +Enable **read** and/or **write** in your manifest when those actions are configured for your integration. + +## Before you get started + +To integrate **FastSpring** with **Ampersand**, you need a [FastSpring](https://fastspring.com/) account and **API credentials** (API username and password) from FastSpring. + +**Provider App is not required.** FastSpring is a Basic Auth provider—you do not create or configure a Provider App in Ampersand (those are used for OAuth 2.0 Authorization Code and similar flows). You only need the API username and password from FastSpring. + +FastSpring documents API access in [Getting started with your API](https://developer.fastspring.com/reference/getting-started-with-your-api), including the base URL, Basic authentication, required headers, and credential generation. + +### Creating FastSpring API credentials + +Per FastSpring’s documentation: + +1. In the FastSpring application, open **Developer Tools**. + + ![FastSpring Developer Tools](/images/provider-guides/fastSpring/fastSpring-developer-tools.png) + +2. Go to **APIs** → **API Credentials**. + + ![FastSpring APIs and API Credentials](/images/provider-guides/fastSpring/fastSpring-api-tab.png) + ![FastSpring APIs and API Credentials](/images/provider-guides/fastSpring/fastSpring-api-credentials.png) + +3. Use **Create** to generate credentials for the first time. FastSpring shows the username and password; the password is available only at creation time—store it securely. + +## Using the connector + +This connector uses **Basic Auth** (username and password), the same credential shape as other Basic providers in the catalog. **A Provider App is not required**—Provider Apps are only needed for providers that use OAuth 2.0 Authorization Code (or similar) flows, not for Basic Auth. + +To start integrating with FastSpring: + +- Create a manifest file; see [Example integration](#example-integration). +- Deploy it using the [amp CLI](/cli/overview). +- If you are using Read Actions, create a [destination](/destinations). +- Embed the [InstallIntegration](/embeddable-ui-components#install-integration) UI component. Your customers enter their FastSpring API username and password when they connect their account. +- Start using the connector: + - If your integration has [Read Actions](/read-actions), scheduled reads will sync data according to your configuration. + - If your integration has [Write Actions](/write-actions), you can call the Write API for supported objects (including deletes such as product removal or subscription cancel, where supported). + - If your integration has [Proxy Actions](/proxy-actions) enabled, you can make Proxy API calls to `https://api.fastspring.com`. + +## Upstream API documentation + +- [FastSpring — Getting started with your API](https://developer.fastspring.com/reference/getting-started-with-your-api)