redact-secret · Report
Public app access token
Access token for a public/listed app, prefixed shppa_.
Research record
2 events in the review history: 1 observed, 1 reviewed. Latest: observed on 2026-09-20 by automation, project maintainer. Project-maintained review is not independent validation. The family record at this release.
Format
What it looks like
Shape not recorded.
Format facts
Provider documented ·
provider-source· current · observed 2026-09-17shpat_/shppa_ opaque tokens: shpat_ and shppa_ prefixes; 32-hex body is tool-corroborated [Legacy contract 'shopify-token' is shared by 2 families; this statement is not specific to one of them.]
- shopify.dev/docs/apps/build/authentication-authorization/access-tokensprovider-documentation · last read 2026-10-04 · latest outcome read · supports shpat_ and shppa_ prefixes; 32-hex body is tool-corroborated
Tool corroborated ·
tool-corroboration· current · observed 2026-09-17Pinned scanner rules are consistent with the contract grammar (2 artifacts: gitleaks 8.30.1; trufflehog 3.97.4). [Legacy contract 'shopify-token' is shared by 2 families; this statement is not specific to one of them.]
- gitleaks/gitleaks @ v8.30.1: config/gitleaks.tomlscanner-rule-source · last read 2026-10-04 · latest outcome read · supports gitleaks 8.30.1: gitleaks.toml
- trufflesecurity/trufflehog @ v3.97.4: pkg/detectors/shopify/shopify.goscanner-rule-source · last read 2026-10-04 · latest outcome read · supports trufflehog 3.97.4: shopify/shopify
Provider documented ·
dossier-research· current · observed 2026-09-20Legacy dossier research (verdict ready, tier T1) cited 1 source; the dossier does not attribute sources to individual properties.
- shopify.dev/docs/apps/build/authentication-authorization/access-tokensprovider-documentation · last read 2026-10-04 · latest outcome read · supports Cited by the legacy dossier research for this family
Open questions
No open question is recorded for this revision.
Benchmark dossier notes
- Shape
- Access token for a public/listed app, prefixed shppa_.
- Basis
- T1 per the shipped
shopify-tokencontract in the benchmarks assessment: Shopify's access-tokens page documents the prefix. The page calls the body an "opaque string" and states no length or character class; the 32-hex body is tool-corroborated only. The contract also requires amyshopify.comshop domain alongside the token. Re-checked 2026-09-20 in benchmarks#33 (PR #34). - Contract in core
- detector-families.md.
In this benchmark
- Fixtures
- 8
- Left readable
- 0
- Redacted too much
- 0
- False alarms
- 0
8 fixtures: 2 expect a redaction, 2 must stay quiet, 4 record project policy. See every row
| Evidence level | Fixtures | Left readable | Too much | False alarms |
|---|---|---|---|---|
| T1Provider-documented | 2 | 0 | 0 | 0 |
| T2Tool-corroborated | 2 | 0 | 0 | 0 |
| T3Project policy | 4 | 0 | 0 | 0 |
Every scanner on the same fixtures
In run order. Counts are what each scanner recorded on this family's fixtures, whichever rules it has; a scanner with no rule for the family has nothing to report on it.
| Scanner | Fixtures | Left readable | Too much | False alarms |
|---|---|---|---|---|
| flare-redactRuntime library · 1.6.1 · Published npm package · secrets-only (pii, generic_assignment disabled) · JavaScript engine1 rule targets it | 8 | 0 | 0 | 0 |
| gitleaksRepository scanner · 8.30.1 · Directory scan · default rules1 rule targets it | 8 | 0 | 0 | 0 |
| redact-secretProduct measured here · 0.1.0-beta.14 · Published npm package · default detectors1 detector mapped | 8 | 0 | 0 | 0 |
| trufflehogRepository scanner · 3.97.4 · Filesystem scan · verification disabled1 rule targets it | 8 | 3 | 0 | 0 |
Scanner rules for this family
| Scanner | Rule | What the rule matches |
|---|---|---|
| flare-redact · rules 1.6.1 | shopify_token | shpat_ or shppa_ + 32 hex |
| gitleaks · rules 8.30.1 | shopify-private-app-access-token | shppa_ + 32 hex |
| trufflehog · rules 3.97.4 | shopify | shppa_ or shpat_ + 32 hex |
No rule maps to this family in openredaction.
Fixtures in this family
| Fixture | Kind and evidence | redact-secret |
|---|---|---|
shopify-token-shape-2-bareshopify · documented-format-literal | Project policyT3 · Project policy | Redacted |
shopify-token-shape-2-quotedshopify · documented-format-literal | Project policyT3 · Project policy | Redacted |
shopify-token-shape-2-unicode-crlfshopify · documented-format-literal | Project policyT3 · Project policy | Redacted |
shopify-token-private-app-clientshopify · documented-format-literal | Project policyT3 · Project policy | Redacted |
shopify-token-shppa-plainshopify · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
shopify-token-shppa-plain-twinshopify · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
shopify-token-shppa-unicode-crlfshopify · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
shopify-token-shppa-unicode-crlf-twinshopify · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
Sources
Documentation and code
- shopify.dev/docs/apps/build/authentication-authorization/access-tokens
Research log
- redact-secret/redact-secret-benchmarks#33Research issue