Skip to main content
One client, configured from the environment; every route a method; every answer a typed model. The SDK signs, retries and checks for you, and a test of any call is three lines.

@fetchski/attract-cms-sdk

Node 26.12.1+ · Bun · modern browsers

What it does for you

Typed models

Always-sent fields never optional, Dates for dates, enums you can compare against.

Safe retries

Rate limits waited out; reads retried when the site doesn’t answer.

Whole lists

for await over …All(), however the list pages.

Typed errors

One class per failure, with the site’s own words and each field’s problem.

Checked answers

Every answer checked against its type before your code sees it.

Three-line tests

fakeSite(), a factory for every model, and assertCalled.

The guides

Installation

Install it from your own site, with any of its API keys. Install the SDK →

Configuration

Zero-config from the environment, or options. Configure →

Calling the API

Arguments, models, lists, ids and uploads. Make calls →

Errors, paging and testing

The reference

Every method has its own page in this tab’s sidebar, grouped like the API reference.

The call, ready to copy

One line, pinned beside the page.

Its arguments

The one object it takes, each field typed, a body’s fields among them.

What it returns

Each property of the model, typed, with nested models one click away.

Its test

A three-line fakeSite() test, ready to run.

Start with Pages → List

The first method in the reference.

Building a new app? Try AdonisJS

TypeScript’s answer to Laravel: a container, Lucid, Ace commands and Japa tests, with the SDK wired in. The AdonisJS tab walks through every file.
Your own site serves the package: any of its API keys installs it, no other account needed. Using Laravel? See the Laravel SDK.