1What FoxPlug reads from DigitalOcean
These are the exact things it reads, and nothing else.
| What | The details it takes |
|---|---|
| Your App Platform apps | one list request for up to 20 apps, of which the first 8 are read: app id, the app's name from its spec (the id if there is none), created time and live URL |
| Custom domains per app | the domain names listed in the app's spec, taken from the same app record, so there is no separate domain request |
| Recent deployments per app | up to 10 per app: deployment id, phase, updated or created time, and the first 120 characters of the deployment's cause text. Only finished phases are kept (see limits) |
| A failing-app summary | an app whose newest finished deployment failed in the last 7 days, with how many failed in a row, since when, its live URL and the cause text. This is stored on the connection for the daily brief and nothing else is kept from the apps |
2Moments it finds, and what each becomes
A moment is one thing that happened in DigitalOcean worth a second look. Each one is scored, then it becomes a post, a changelog entry, a thing to fix or an idea to email, or it is skipped.
A deployment goes live
The moment is titled like this: Deployed acme-web
Your app called acme-web has a deployment whose phase is ACTIVE (or SUPERSEDED, meaning a newer one replaced it) and which finished after the last check. FoxPlug makes the moment 'Deployed acme-web' with the description 'Shipped acme-web on DigitalOcean' followed by the deployment's cause text when there is one.
A deployment fails
The moment is titled like this: Your acme-web deploy is failing on DigitalOcean. Fix this first.
The newest finished deployment of acme-web is in the ERROR phase and that was within the last 7 days. The first card in Today says 'Your acme-web deploy is failing on DigitalOcean. Fix this first.' with how many failed in a row, since when and the cause text. A later good deployment clears it.
A new app is created
The moment is titled like this: Launched a new app: acme-web
An app created in the last 14 days, and after the last check, becomes 'Launched a new app: acme-web' with the description 'A new app went up on DigitalOcean: acme-web.'
A custom domain is on a new app
The moment is titled like this: Added the domain acme.com
While the app is less than 30 days old, each domain in its spec becomes 'Added the domain acme.com' with 'acme.com now points at acme-web on DigitalOcean.' An older app's domains are never announced.
3How the brain uses it
The rules below are the ones that apply to DigitalOcean. The same rules, with worked examples, are on the brain page.
- An app whose newest finished deployment failed in the last 7 days becomes the fix line, naming how many failed in a row and since when. A deployment that is still building or that you cancelled is not a failure. A later good deployment clears it. How the brain decides
- A clean deployment becomes an update, like Vercel and Netlify deploys. How the brain decides
- A new app (made in the last 14 days) can be a post, and so can its domain while the app is new; an old domain is never announced. How the brain decides
- Environment variables, logs and DNS are never read. How the brain decides
- The fix-first line for a failing deploy was widened to DigitalOcean and Heroku by the T1731 change, which also spells the name 'DigitalOcean' in the card title. How the brain decides
4Set up DigitalOcean in a few steps
Access: personal access token. What to give it: Personal access token. The tile says 'personal access token with read access only'; the guide says to give it read access only if DigitalOcean offers the choice. FoxPlug makes read requests either way.
- In DigitalOcean, open API in the left menu and then Tokens (the link in the guide goes there).
- Generate a new token named FoxPlug, give it read access only if DigitalOcean offers the choice, and copy it.
- Paste it into the DigitalOcean box in FoxPlug. Keep it private; FoxPlug only reads and never writes.
5Limits worth knowing
Where it stops, so nothing surprises you.
- Up to 20 apps are listed and only the first 8 are read, with 10 deployments each.
- ACTIVE and SUPERSEDED deployments count as success and ERROR counts as failure; BUILDING, CANCELED and the other phases are ignored. This mapping comes from the reader code and was not confirmed from DigitalOcean's documentation.
- Because SUPERSEDED counts as success, an older deployment that finished after the last check can also produce a 'Deployed' moment.
- A failing line shows only for a failure in the last 7 days.
- Clean deployments count from the last check, or the last 7 days on the first read; the first read keeps only the single newest moment.
- The cause text on each deployment is cut to 120 characters and what it says is whatever DigitalOcean puts there; its exact wording was not checked.
- A failed deployments request for one app is skipped without a message, and that app then shows no deployments.
- The help page for the brain lists Render, Cloudflare and Railway in its hosts line and does not name DigitalOcean.
6What it never reads
Read only means read only, and the list below is what the code leaves alone.
- Environment variables, log lines and databases
- DNS records: the only domain data is the list of names in the app spec
- Deployments that are still building or deploying, and cancelled ones: they are not counted as a result either way
- Anything written back: the two requests are plain reads with an Authorization header only, no body, no write
7How DigitalOcean differs from the tools next to it
DigitalOcean gives one record per app with its name, created time, live URL and domains inside the app's spec, then a list of deployments with a phase. Unlike Render, domains need no second request. Unlike Railway, which has one status word per deployment from a GraphQL answer, DigitalOcean counts ACTIVE and SUPERSEDED as success and only ERROR as failure. The commit message is not read: the only text kept from a deployment is its cause.
8Questions
Can FoxPlug tell me when my DigitalOcean deploy fails?
Yes, when you press Check for what's new. An app whose newest finished deployment is in the ERROR phase, within the last 7 days, becomes the first card in your Today brief. A later good deployment clears it. This has not been tried against a real DigitalOcean account.
Does it read my environment variables, logs or databases?
No. It reads your App Platform apps and their deployments only.
Does a cancelled or still-building deployment count as a failure?
No. Only the ERROR phase counts as a failure. Cancelled and in-progress deployments are ignored.
Is the token read-only?
The connect steps say to give it read access only if DigitalOcean offers the choice. FoxPlug only makes read requests either way.
Does it cover Droplets or other DigitalOcean products?
No. The reader asks for App Platform apps and their deployments, nothing else.
FoxPlug reads this tool only when you press Check for what's new, and only to read. Plans and limits are on the pricing page. Questions: support.