SimpleCirc
E-commerceConnect AI agents to SimpleCirc, subscriber management and circulation software for publishers. Agents create and renew subscriptions, update subscriber addresses, and keep circulation records accurate.
What This Integration Enables
SimpleCirc is circulation software for magazine, newspaper and newsletter publishers, and its API is small on purpose. It publishes seven endpoints across three resources, subscribers, subscriptions and addresses, and this connector ships thirteen actions built from them, the extra ones being read operations derived from the subscriber payload in the pattern the vendor's own documentation prescribes. Knowing the shape saves a lot of design time. Subscribers are fully writable through Create Subscriber and Update Subscriber, listable one page at a time through List Subscribers or in bulk through List All Subscribers, and findable by exact email. Subscriptions are created and renewed through a single operation, because the vendor documents create and renew separately but both are the same request: if the subscriber already holds a subscription to that publication the purchased issues are added to it, otherwise a new subscription is created. Update Subscription changes status and issues remaining. Addresses have exactly one write, Update Subscriber Address, which creates the address when there is none and replaces it when there is, and it is the only route to an address because Update Subscriber does not accept address fields.
The constraints are where the useful design decisions live. There is no delete operation anywhere in this API, for subscribers, subscriptions or addresses, so anything a flow creates has to be removed by hand in the SimpleCirc interface, which makes create steps inside loops worth guarding carefully. Subscriptions are never returned on their own: List Subscriber Subscriptions, Get Subscription and Check Subscription Access each fetch the subscriber and select from that payload, so each one costs a full subscriber read, and a subscription is addressed by the subscriber's account ID together with the publication ID rather than by its own identifier. Account IDs are strings and can carry leading zeros, so treat them as text everywhere upstream. Custom fields are keyed by field ID on write and by field name on read, and subscription question answers are pipe separated on write and comma separated on read, which means a response cannot be fed straight back into a request. SimpleCirc also rewrites what you send, returning names, company and address values uppercased and ZIP codes frequently expanded to ZIP plus four, so a difference between what you sent and what came back is normalisation rather than failure. Authentication is HTTP Basic with a literal username and your API token as the password, and that token is a single account wide credential with full read and write rights and no scopes at all. This connector ships no triggers: SimpleCirc does publish webhooks, but endpoints are added by hand per publication in its interface and there is no API for creating, listing or deleting one, so a FlowRunner trigger cannot subscribe itself. Either wire a flow's callback URL manually on that tab, or poll List All Subscribers or Check Subscription Access on a schedule. Agents keep the circulation file current. The batch that decides who gets an issue is where human-in-the-loop oversight belongs.
Without FlowRunner
With FlowRunner
Use Case Scenarios
A purchase somewhere else becomes a circulation record here
Subscriptions are sold in a store, on a landing page, over the phone and through a payment processor, and circulation is the system that has to know about all of them. When a payment confirms, the agent calls Find Subscriber By Email first, which returns the single matching subscriber rather than a list and reports found as false rather than failing when nobody matches. That check is what keeps a reader from acquiring three account IDs across three purchases. If there is no match, Create Subscriber opens the record with the mailing address in the same call and returns the generated account ID. Either way, Create Or Renew Subscription records the purchase against the publication with the amount paid, tax, currency and promo code, so revenue reporting and circulation reporting are describing the same event. Because there is no delete anywhere in this API, the flow treats duplicate prevention as the important step rather than as a nicety: a subscriber created in error stays until somebody removes it by hand. A Stripe charge or a store checkout is the usual upstream, and the account ID is written back to it so the two systems share an identifier.
A paywall that asks the field that actually governs access
Digital access in SimpleCirc is not the same thing as subscription status, and a membership site that checks the wrong one will lock out paying readers or let lapsed ones through. Status and digital status are separate fields, and digital status stays active while the subscription's last issue still matches the last issue published. Check Subscription Access reports access from digital status and returns the subscription status, expiration date, never expires flag and issues remaining alongside it, which is exactly the payload a support conversation needs. On a login the agent calls it with the account ID and the publication ID and answers the gate. Where the two fields disagree, a subscriber whose status looks fine but whose digital access has lapsed, or the reverse, that is the interesting case rather than the error case, and it goes to the circulation team in Slack with both values quoted. A subscriber with no subscription to that publication comes back with access false rather than an exception, so the check is safe to use directly as a branch condition.
Renewal chased with a link that works
Every subscriber carries a renewal link and a login link, and Get Subscriber Links exists so a flow can pass those two URLs to an email step without carrying the rest of the subscriber payload around. On a schedule the agent walks the file with List All Subscribers, which follows the cursor automatically in pages of one hundred and stops at the Max Results ceiling, and selects subscriptions running low on issues remaining. For each, Get Subscriber Links supplies the personalised renewal URL, and the message goes out through the publisher's existing email tool. The discipline that matters here is credential handling: the login link signs a subscriber into their account without a password, so it is a credential rather than a convenience. The flow never logs either link, never writes them to a shared sheet, and only ever sends them to the address on the subscriber record. List All Subscribers on a large file is slow and produces a large payload, so Max Results is set deliberately rather than left at whatever runs.
Human-in-Loop Highlight
Update Subscription is the operation to gate, and the reason is what sits downstream of it rather than what it does to a row. Circulation ends in a print run. A mailing file is handed to a printer, an issue count is committed, postage is bought, and copies are produced for the readers whose records said they should get one. Update Subscription is what decides that list, and it has three properties that make an automated pass on it dangerous in exactly the way that is hardest to notice. First, its two fields interact: setting the status to Expired forces issues remaining to zero, and setting issues remaining to zero forces the status to Expired, so a script correcting one field silently sets the other. Second, the status vocabulary includes Bad Address, which is a fulfilment instruction dressed as a data quality flag: a record marked that way drops out of the mailing, and the reader finds out when the magazine does not arrive. Third, and decisively, this API publishes no delete operation of any kind, so there is no clean way to undo a wrongly applied batch by removing and recreating anything. The correction is a second update, made after the print run has already shipped without them. The failure that costs the most is a bulk pass over an address validation export where the delimiter shifted by one column, marking four hundred good addresses as Bad Address the week before an issue closes. Nothing errors. The file is smaller, the printer's invoice is smaller, and the first evidence is a wave of missing issue complaints a fortnight later. So the agent prepares the batch and stops. It reads List All Subscribers for the current file, Get Subscription for each record it proposes to change, and posts to the circulation manager in Slack: "Pre print pass for the April issue, publication 4. 412 records proposed for status change: 388 to Bad Address from the address validation return, 24 to Expired with issues remaining at zero. 388 removals is 6 percent of the mailing file, against 41 last cycle. 17 of the 388 renewed within the last 30 days. Setting Expired also forces issues remaining to zero, and SimpleCirc has no delete operation, so a wrong change is corrected by a second update rather than reversed. Apply all 412, apply the 24 expiries and hold the address batch for review, or hold everything?" A person answers once and the agent applies only the released rows. Create Subscriber and Create Or Renew Subscription belong behind a lighter version of the same discipline whenever they run inside a loop, precisely because nothing in this API can remove what a loop creates. This is the digital andon cord placed on the operation that decides who receives a physical copy of something already paid for.
Agent Capabilities
13 actionsSubscribers
7- Create Subscriber Creates a subscriber and returns the full record including the generated account ID, the renewal link and the login link. The mailing address is created at the same time when address fields are supplied. Custom field values are supplied keyed by custom field ID and come back keyed by field name. Creating a subscriber does not create a subscription.
- Get Subscriber Retrieves a subscriber by account ID with their mailing address, custom field values and every subscription they hold, each carrying its publication, status, digital status, expiration date, copies, promo code and issues remaining. This is the only documented way to read subscription data.
- Update Subscriber Updates a subscriber by setting only the values supplied, leaving anything omitted unchanged, which makes it safe for single field edits. Name, email, company, phone, title and custom fields are updatable here. The mailing address is not, and goes through Update Subscriber Address instead.
- List Subscribers Returns one page of subscribers with their addresses and subscriptions. Page size ranges from 1 to 100 and out of range values are clamped rather than rejected. Paging is cursor based on the account ID of the last subscriber from the previous page, and an email filter narrows the list to an exact match.
- List All Subscribers Walks the cursor automatically and returns the combined results in one array, requesting full pages until the account is exhausted, the Max Results ceiling is reached or 500 pages have been fetched. It reports how many pages were requested and whether more remain. On a large file this is slow and produces a large payload, so set the ceiling deliberately.
- Find Subscriber By Email Looks up a subscriber by email address and returns the single matching record rather than a list, which suits membership and login checks. The match is exact rather than partial. When several accounts share an address the first is returned with the total match count alongside it, and no match returns found as false rather than failing.
- Get Subscriber Links Returns the two personalised URLs SimpleCirc generates for a subscriber, the renewal link and the login link, without the rest of the payload. The login link signs the subscriber in without a password, so treat both as credentials and send them only to the address on the record.
Subscriptions
5- Create Or Renew Subscription Creates a subscription to a publication for an existing subscriber, or adds the purchased issues to their existing subscription for that publication. SimpleCirc decides which happened, which is why this ships as one action rather than two. Order details such as amount paid, amount due, tax and currency are recorded against the purchase, and question answers are keyed by question ID with multiple answers pipe separated on write.
- Update Subscription Updates the status or the remaining issue count of a subscription, addressed by the subscriber's account ID together with the publication ID. The two fields interact: Expired forces issues remaining to zero, and zero issues remaining forces Expired. Accepted statuses are Active, Bad Address, On Hold, Expired, Cancelled, Other, Bad Debt and Deceased, and anything else is rejected before a request is made.
- List Subscriber Subscriptions Returns just the subscriptions held by one subscriber, without the surrounding payload. Because SimpleCirc publishes no endpoint that reads subscriptions directly, this retrieves the subscriber and hands back the array, so it costs a full subscriber read. A subscriber with none returns an empty array rather than failing.
- Get Subscription Returns a single subscription for a subscriber and publication, selected from the subscriber payload. When the subscriber holds no subscription to that publication, found is false and the subscription is null rather than the operation failing, which makes it usable directly as a branch condition.
- Check Subscription Access Answers whether a subscriber currently has digital access to a publication, reporting access from digital status, which is the field that actually governs online access, and returning the subscription status, expiration date, never expires flag and issues remaining alongside it. This is the check a paywall or a digital edition app should make.
Addresses
1- Update Subscriber Address Sets the mailing address for a subscriber, creating one where there is none and replacing it where there is. This is the only way to change an address. Values come back uppercased and ZIP codes are often expanded to ZIP plus four, which is normalisation rather than an error, and the address that results is the one used for physical delivery.
Frequently Asked Questions
What can FlowRunner do with SimpleCirc?
FlowRunner agents can run Create Subscriber, Get Subscriber, and Update Subscriber in SimpleCirc, plus 10 more actions.
Does connecting SimpleCirc to FlowRunner require OAuth?
No. SimpleCirc connects to FlowRunner with basic authentication (a username and password), no OAuth flow required.
Can SimpleCirc trigger a FlowRunner workflow automatically?
SimpleCirc doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with SimpleCirc
$100 in credits. No card required. Connect in minutes.