Developer/Data & Pipeline/CLI & Automation Tools

CLI & Automation Tools

Automation

Documentation for running CLI import scripts, dry-run flags, limit filters, and REST endpoints.

Last revised: September 2026•Rory Skagen Art Studio Docs

Running the CLI Tool

We created a dedicated CLI runner located in scripts/import-artworks-to-fourthwall.ts. You can execute it directly via npm:

bash
# Run dry-run validation (no API writes)
npm run import:fourthwall -- --dry-run

# Run full live sync with active Fourthwall credentials
npm run import:fourthwall

# Process a small test batch (e.g. 5 artworks)
npm run import:fourthwall -- --limit=5

CLI Options & Flags

FlagTypeDescription
--dry-runBooleanRuns full payload generation and schema validation without making network writes to Fourthwall.
--limit=NumberRestricts the sync run to the first items (useful for testing single items or rate limits).
--slug=StringSyncs a specific single artwork by slug (e.g. --slug=greetings-from-austin).

REST API Endpoints

The web application exposes a dedicated internal API route at /api/import/fourthwall:

1. Catalog Status & Health Check

http
GET /api/import/fourthwall

Response:

json
{
  "status": "ready",
  "summary": {
    "totalArtworks": 137,
    "seriesBreakdown": {
      "Austin Iconic & Texas Pop": 11,
      "Monsters & Kaiju": 34,
      "Pop Surrealism & Folklore": 87,
      "Atomic Pop & Sci-Fi": 5
    },
    "credentialsStatus": {
      "apiUrl": "https://storefront-api.fourthwall.com",
      "hasStorefrontToken": true,
      "hasPlatformCredentials": false
    }
  }
}

2. Triggering Sync via HTTP

http
POST /api/import/fourthwall
Content-Type: application/json

{
  "dryRun": true,
  "limit": 10
}

CSV & Open API Exports

For merchants who prefer importing via Fourthwall's dashboard or third-party bulk tools:

  • Download Fourthwall Product CSV:

```http

GET /api/import/fourthwall?format=csv

```

Generates a standard CSV with handles, titles, HTML descriptions, option sizes, prices, and high-res image sources.

  • Download Open API JSON:

```http

GET /api/import/fourthwall?format=fourthwall-json

```

Returns a pre-formatted JSON array ready for direct ingestion via Fourthwall's Platform API batch endpoints.