Handles
Owner handles. Users and organizations sharing one global namespace.
Every dataset on Esker is owned by a handle. Handles are users or organizations sharing one global namespace.
What a handle looks like
statcan (an organization)
archie (a user)
sec-foundation (an organization)
acme (an organization)
Lowercase, alphanumeric and hyphen, 1–39 characters, no leading or trailing hyphen, no consecutive hyphens. The same rules GitHub uses, applied uniformly to users and orgs.
Reserved handles
A small list of names cannot be claimed because they collide with platform routes or artifact filenames:
api app auth cli dashboard datasets docs hub
login logout me new orgs owners search settings
sign-in sign-up static users www
data manifest schema lineage
If your handle of choice is reserved, pick another.
Getting a handle
You don't claim one explicitly. Esker assigns one when you sign up (derived from your username or email) and on org creation (the org's slug becomes its handle). Both go through the same owners table — collisions across the user/org boundary are resolved at signup time.
Rename your own handle later with esker config set-handle <new>. Old <old>/<name> URLs 301 to <new>/<name> — direct-URL consumers keep working; lockfile-bound consumers re-resolve on next esker sync.
Verification
owners.verified_at is the only judgment Esker makes about a handle. It says: we have confirmed this account is who it claims to be. Identity, not authority.
A verified badge does not say "this dataset is the canonical one." Esker doesn't make that call. Verification helps you tell statcan (the real one) from staatcan (the typosquatter), no more.
When a publisher is verified, the badge appears next to their handle in disambiguation lists, profile pages, and search results. Verification is administered out-of-band — automated where DNS or domain ownership can prove identity, manual review otherwise.
Handles in URLs
esker.so/statcan profile
esker.so/statcan/ca.corporations.registry dataset (latest)
esker.so/statcan/ca.corporations.registry@1.0.0 versioned
esker.so/ca.corporations.registry disambiguation page
(lists every publisher of this name)
The single-segment URL routes by pattern alone — handles never contain dots, names always do — so /statcan and /ca.corporations.registry can never collide.