Skip to content
littleworksdocs

Explore the documentation

Meet LittleworksA little backend for what you’re building on Shopify.Littleworks or your own appWhat it takes to give a Shopify feature a backend: with Littleworks, or with a custom app you build and run yourself.Connect to LittleworksChoose the CLI, a plugin, or a remote MCP connection.CLIConnect from your terminal with Shopify approval and no manual tokens.Claude pluginThe Littleworks MCP connection and agent guidance in one package.OpenAI pluginThe Littleworks MCP connection and agent guidance in one package.MCP with OAuthConnect a compatible client directly, without a marketplace plugin.Build with an agentThe operating guide for agents building on Shopify with Littleworks.Write a workA JavaScript handler, a small manifest, and a version you test and then publish.Keep secretsEncrypted credentials, shared across your store’s works.Call external servicesMake public HTTPS API requests from a work using http.fetch().Store dataDocument collections with a small API, scoped automatically to the work that uses them.Call ShopifyCall Shopify’s Admin and Storefront GraphQL APIs with credentials held by Littleworks.Store filesKeep uploads such as artwork and photos in the merchant’s Shopify Files, uploaded by the browser straight to Shopify.Expose an endpointConnect an existing frontend to a work through a small JSON API.Customer access and invitationsRequire a signed-in shopper or a narrow, expiring invitation before a work runs.RecipesUseful things to build for your store, with the backend already taken care of.Product reviewsCollect customer reviews, verify purchases, and publish approved content directly into your Shopify theme.Customer wishlistsGive signed-in customers a persistent list of products they can revisit across devices.Customer quote requestsCollect a customer’s products, quantities, and requirements without turning a request into an order.Back-in-stock alertsCollect confirmed signups on sold-out variants, email them through your own provider when stock returns, and see every signup and send in your admin.Transactional emailSend email from your works through your own provider, never twice for the same thing, and see what was sent and what failed.Build a merchant pageDescribe your records and what merchants do with them; Littleworks renders a native Shopify admin page.Run works on their ownRun a work when something happens in the store, on a schedule, or from a Shopify Flow workflow.Run background jobsQueue runs for later or in the background: fan out to thousands of customers, import in pages, follow up days later, and retry what fails.MCP tool referenceTools to inspect, deploy, run, and organize the backend for a connected store.Usage and allowancesSee what your works use, how much capacity remains, and when allowances reset.Inspect and troubleshootFind the relevant run, understand the failure, and make the next change deliberately.Limits and securityThe current runtime boundaries, data isolation model, and execution allowances.
Shopify admin
Reference
Markdown

Usage and allowances

See what your works use, how much capacity remains, and when allowances reset.

In Littleworks, open Works → Usage. The page shows current allowances for the store, with a breakdown by work. Test runs count like any run and are shown separately in the activity data. Agents can call get_usage without running or changing a work.

Inspect usage from the CLI
littleworks usage

Activity over time

Choose the last 7, 14, or 30 days. View daily runs and test runs, external requests and responses served from cache as line charts, compare the previous period, or expand Activity data for the underlying values. Today is partial; the final comparison day ends at the same time of day in UTC. Work rankings cover the current subscription period.

Daily activity for up to 60 UTC dates is shown on the Usage page. get_usage keeps agent responses compact: it returns current-period totals, the most active existing works, and one deletedWorks aggregate instead of rows for works deleted since they ran; store-wide totals still include them. Activity comes from retained run records, includes failed runs and deleted works, and survives detailed-log cleanup. External requests are attributed to the run’s start time. Storage shows a current snapshot; historical storage snapshots are not recorded.

What counts

  • Runs count when execution is admitted, including runs that fail or time out. Invalid authorization, rejected input, paused works, rate-limited admissions, and idempotent replays do not consume another run.
  • Responses served from the edge cache don’t count as runs. The request that fills or refreshes the cache is a run. Usage shows them as Served from cache, overall and by work, and get_usage.cache reports the same approximate counts. See Cache a public read.
  • External requests count each admitted outbound attempt, including redirect hops. Allowance totals use the attempt time; work breakdowns group attempts by their run’s start time, so they can differ around a UTC reset.
  • Documents count the records retained across features and collections, including test records until they are deleted. The allowance does not reset monthly. Updating a document keeps the same place; deleting it frees one. Expired records count until cleanup. Each document can contain up to 64 KiB of JSON, with no separate store byte quota.

Shared capacity and reset dates

Run and request allowances reset with the verified Shopify subscription billing period. There is no daily consumption cap. get_usage.period contains exact dates. Storage does not reset. The page warns at 80% and 95% and shows when a limit is reached. Refresh for current usage; in-flight activity can cause small differences between counters and breakdowns.

All entrypoints share one billing-period run allowance. Visitor-triggered runs include public endpoints, signed-in customers, and invitation links. Littleworks manages short-term traffic protection internally. Collections have the same platform safeguard on every plan. See Limits and security for execution constraints.

Choose or manage a plan

Open Usage → Manage plan. Starter is $19 USD per 30 days with 10,000 runs, 2,000 retained documents and 2 published admin pages. Growth is $39 USD per 30 days with 50,000 runs, 10,000 retained documents and 5 published admin pages. Scale is $79 USD per 30 days with 250,000 runs, 50,000 retained documents and 15 published admin pages. Every plan includes external HTTPS requests and Shopify GraphQL within approved permissions.

There is a 14-day trial of the selected plan, once per store, followed by a paid subscription. There is no permanent free plan or automatic overage charge. Shopify shows the charge and effective date before the merchant approves. Upgrades retain used runs; scheduled downgrades apply at renewal. Documents and views are retained counts and never reset.

If a call returns SUBSCRIPTION_REQUIRED, ask the merchant to choose or renew a plan through Usage. Agents cannot approve subscription charges. Without an active subscription, stored data remains available to inspect, but works cannot run.

External requests

External HTTPS requests are included on every plan, with no monthly allowance: each run can make up to 50. Usage shows how many were made this period, and get_usage.externalRequests.used reports the same count. Shopify GraphQL calls are separate.

When a limit is reached

A run allowance stops new executions. A full document allowance stops additional documents; existing documents can still be updated or deleted. When above a reduced allowance, changes that do not increase the document count remain possible. You can still inspect, pause, and delete works. Deleting a work does not erase its usage. Before retrying a failed run, check for partial effects.

Protection notices are sampled signals, not a complete count of blocked traffic. They explain the affected work and the retry time. Respect Retry-After; do not automatically replay mutations, redeploy or publish to bypass a limit. Usage visibility does not change your plan or create a charge.