Skip to content

CRUD CRUD โ€‹

crudcrud wraps the crudcrud.com REST sandbox โ€” a free, throwaway JSON store that exposes a generic /<resource>/<id> shape. One instance = one sandbox endpoint.

The point of shipping it is not the sandbox itself. It's the canonical three-file example for building your own connector: connector.go + service.go + repo.go, five operations, one destructive. When the LLM (or you) asks "where do I look for a connector template?", point at this one.

Sourceinternal/connectors/crudcrud/
Keycrudcrud
Icon๐Ÿงช
Tierlab sample โ€” registered only by cmd/lab, not by production binaries

When you'd touch it โ€‹

WantDo this
Build a new connectorCopy internal/connectors/crudcrud/ โ†’ rename โ†’ swap the upstream API. See Connector Module โ–ถ File structure.
Smoke-test the connector framework end-to-endBoot cmd/lab, claim a free endpoint at crudcrud.com, paste it into the row's BaseURL, run all five ops from the test panel.
Demo connector + workflow integration without a real APISame โ€” crudcrud is happy to hold any shape you invent.

Configs โ€‹

FieldTypeRequiredNotes
BaseURLURLโœ…Unique crudcrud endpoint. Example: https://crudcrud.com/api/abcdef0123456789.
SecretWordsecretReserved sensitive field โ€” kept around as a secret example, currently unused.
SecretWordskvlistOne keyword per row. Any keyword that appears in a create / get / update response is replaced with a wick_enc_ token before the response leaves wick.
SecretWordsIgnoreCaseboolWhen checked, keyword matching folds case (Admin == admin) and all variants share one token.

The SecretWords machinery is an example of the dynamic-masking pattern โ€” c.Mask / c.MaskIgnoreCase (Encrypted Fields) applied to upstream response data the static schema can't know about up front.

Operations โ€‹

OpDestructiveInputWhat it does
createnoresource, bodyPOST a JSON document under {resource}. crudcrud auto-generates the _id.
listnoresourceGET every document in {resource}. Empty array if the collection is fresh.
getnoresource, idFetch one document by _id.
updatenoresource, id, bodyPUT โ€” full replacement, not patch.
deleteyesresource, idDELETE the document. Cannot be undone (no soft-delete in crudcrud).

create / update are idempotent in shape but mutate state โ€” they're still connector.Op, not destructive. Only delete is marked destructive so the admin opts in explicitly.

See also โ€‹

  • Connector Module โ€” the contract crudcrud is the canonical example of.
  • HTTP / REST โ€” generic untyped variant when you don't want to wrap an API at all.
  • Encrypted Fields โ€” the layer behind SecretWords dynamic masking.
Built with โค๏ธ by a developer, for developers.