Skip to content

Limits ​

Per call ​

LimitValue
Run time25 seconds
Memory64 MB
Requests (host.fetch)40
Response data24 MB total, 8 MB per response
Result size2 MB
Storage256 KB per plugin (storage permission)
Log lines100 per call (the panel keeps the last 500)
Redirects3, each re-checked
Hooks8 seconds, best effort

Package and manifest ​

Package up to 2 MB; index.js up to 1 MB; icon up to 100 KB; at most 20 permissions, 30 settings fields and 4 catalogs; description up to 400 characters.

Network rules ​

HTTPS only, default port only, the host must be declared in a network: permission, DNS answers must be public addresses and the connection is pinned to the checked address, redirects are re-checked, requests to localhost, private ranges, link-local (cloud metadata) and IPv4-mapped IPv6 forms are refused, and credentials in URLs are rejected. Only GET, HEAD, POST and DELETE are available. Wildcards such as *.github.io that cover shared hosting platforms cannot be granted.

Error codes ​

A failed call surfaces one of these codes (visible in the plugin's Logs):

CodeMeaningCounts towards auto-disable
timeoutThe plugin's own code ran past the limityes
upstream-timeoutThe deadline passed while a request to the catalog was still pendingno
script-errorSyntax error or an exception while loadingyes
too-largeResult over 2 MByes
host-error, bad-methodInternal or missing methodyes
plugin-errorAn error the plugin threw while runningno (shown to the administrator)
host-denied, rate-limit, limit, networkErrors a failed host.fetch rejects with (e.code)no

A plugin is switched off after five consecutive counted failures.

Single-process note ​

The plugin host runs plugin calls in one process, so a slow catalog can delay other plugin calls. Keep calls short.

Released under the AGPL-3.0-only license.