Scrapeman
Docs: Environment Variables

Setup

Environments are stored as .env.yaml files under .scrapeman/environments/ in your workspace.

# .scrapeman/environments/dev.env.yaml
name: Development
variables:
  - key: baseUrl
    value: https://api.example.com
    secret: false
  - key: token
    value: sk-live-abc123
    secret: true

Variable resolution

{{var}} syntax works across: URL, params, headers, body, auth fields, proxy fields, and Scrape.do fields.

Scope precedence (highest wins):

  1. Folder chain (deepest folder overrides shallower)
  2. Active environment
  3. Collection variables
  4. Global variables
  5. Built-in dynamics

Global variables

Stored at .scrapeman/globals.yaml. Available to every request in the workspace, across all environments. Lowest precedence. Edit via the workspace settings gear icon in the sidebar.

# .scrapeman/globals.yaml
scrapeman: "2.0"
variables:
  - key: COMPANY_ID
    value: acme
    enabled: true
    secret: false

Collection variables

Stored at .scrapeman/collection.yaml. Apply to all requests, lower precedence than the active environment. The same file can also hold a collection-level default auth block.

Folder variables and auth inheritance

Each folder can have a _folder.yaml with its own variables and an optional auth block. Folder variables from ancestor folders merge first (root to leaf), so a deeper folder's variable wins over a shallower one's.

When a request's Auth tab is set to None (or the Inherit option), Scrapeman walks the folder chain up to the workspace root. The first ancestor with an auth block in its _folder.yaml is used. If no folder defines auth, the collection default auth applies. The Auth tab shows an Inherited from /path label when inheritance is active.

Built-in dynamic variables

These re-resolve on every send:

Variable Output
{{random}} Random 8-char alphanumeric string
{{uuid}} UUID v4
{{timestamp}} Unix timestamp in milliseconds
{{timestampSec}} Unix timestamp in seconds
{{isoDate}} ISO 8601 date string
{{randomInt}} Random integer 0–9999

Secret variables

Variables with secret: true are masked in the UI (shown as ••••••). They resolve normally at send time. History entries preserve the template ({{token}}) on disk, never the resolved secret value.