Webgility Blog

The Channel That Went Dark

Written by Admin | Mar 19, 2026, 4:00:00 AM

EXCEPTIONS HANDLED · #10 · API & Connectivity

The Channel That Went Dark

Diagnosing Sudden API Disconnections and Token Failures

THE PROBLEM IN PLAIN ENGLISH

Your Shopify integration was working fine yesterday. Today? Nothing syncs. No orders, no inventory updates, no error that makes sense. The API token expired, or the marketplace changed their auth flow, and your integration didn’t handle the reconnection gracefully. You’re flying blind until someone notices.

API connections are the plumbing of ecommerce automation. When they work, you never think about them. When they break, everything stops. The most common failure mode isn’t a dramatic crash — it’s a quiet disconnection. An OAuth token expires after 90 days and the refresh fails. The marketplace deprecates an API version and returns empty responses instead of errors. A rate limit gets hit during a high-volume period and the integration backs off permanently instead of retrying. The result is the same: your channel goes dark, orders stop flowing, and you don’t know until a customer emails asking where their receipt is.

Detection Signals

Channel disconnections are time-sensitive. Every hour you’re disconnected is orders you’re not posting.

Sudden drop to zero orders from a channel

Yesterday you had 50 orders. Today you have zero. The channel is still selling — your integration just stopped pulling.

Inventory not updating on one channel

You received new stock and updated QB, but one channel still shows the old quantity. The push failed silently.

Authentication errors in your integration logs

Look for 401 (Unauthorized) or 403 (Forbidden) responses. These mean your token expired or was revoked.

‘Empty response’ or ‘no data’ errors

The API is responding, but with nothing. This often means a version deprecation where the old endpoint returns blank instead of an error.

Rate limit warnings that never resolved

Your integration hit a rate limit and stopped retrying. The backoff became permanent.

Why This Keeps Happening

APIs are living systems. They change, and your integration needs to keep up.

  • OAuth tokens have expiration dates. If the refresh token flow fails (due to a marketplace-side change, a clock sync issue, or a network hiccup), the connection dies.
  • Marketplaces deprecate API versions with limited notice. Old endpoints might return empty data instead of error codes, making the failure invisible.
  • Rate limits tighten during peak periods (Prime Day, BFCM). If your integration doesn’t retry gracefully, it gives up and stays disconnected.
  • Marketplace app reviews can revoke or restrict API permissions. A compliance flag on your developer account can kill your integration without warning.

How to solve it yourself (hard but possible)

First: figure out if you’re actually disconnected. Then reconnect and recover the missing data.

Check your integration’s connection status

Most tools show a connected/disconnected indicator. If it says connected but nothing’s flowing, check the API logs.

Reauthorize the connection

Go to the marketplace’s app authorization page and reconnect. For Amazon, this is Seller Central → Apps & Services. For Shopify, it’s your app settings.

Check for API deprecation notices

Visit the marketplace’s developer changelog. If they deprecated the API version your integration uses, you need an update.

Re-download missed orders

Once reconnected, pull orders for the disconnected period. Verify nothing was double-posted during the reconnection.

Set up external monitoring

Use a simple uptime check (even a Google Sheet that logs daily order counts) to catch disconnections faster than ‘customer complaint.’

How to solve this through automation (easy peasy)

Webgility monitors connection health proactively and handles token refresh, retries, and recovery automatically.

Automatic token refresh

OAuth tokens are refreshed before they expire. If a refresh fails, you’re alerted immediately — not days later.

Rate limit handling with intelligent retry

When a rate limit is hit, Webgility backs off and retries with exponential delay. It doesn’t give up permanently.

Connection health monitoring

Dashboard status for every channel. If a connection drops, you see it in Annie before it impacts your operations.

Automatic gap recovery

After a reconnection, Webgility identifies the disconnection window and re-downloads all missed orders and data.

Month-End Checklist

  • ☐ Verify connection status for every channel right now
  • ☐ Check OAuth token expiration dates — are any within 30 days?
  • ☐ Review integration logs for 401/403 errors in the last 7 days
  • ☐ Confirm API version compatibility with each marketplace
  • ☐ Set up a simple monitoring check for daily order counts per channel
  • ☐ Test reconnection flow — disconnect and reconnect one channel to verify the process works

Glossary

OAuth token

An authentication credential that grants your integration access to a marketplace’s API. Expires periodically.

API deprecation

When a marketplace retires an old API version, potentially breaking integrations that haven’t updated

Rate limit

A cap on how many API requests you can make per time period. Exceeding it results in temporary blocks.

Refresh token

A long-lived credential used to obtain new OAuth access tokens without re-authorizing

Common Questions

How do I know if my token is about to expire?

Check the token’s issued date and the marketplace’s token lifetime policy. Amazon tokens last 1 hour but refresh automatically. Shopify tokens are long-lived but can be revoked.

What do I do if I can’t reconnect?

Contact the marketplace’s developer support. It might be a compliance review, a permission change, or an account-level restriction.

How many orders can I lose during a disconnection?

Depends on your volume and how fast you catch it. A 24-hour gap at 100 orders/day is 100 unposted orders that need recovery.