JSON Pointer is a compact sequence of exact reference tokens standardized by RFC 6901. JSONPath is a query language standardized by RFC 9535 with selectors that may return multiple nodes.
Use Pointer for identity
Use a pointer when a format needs to name one location deterministically, such as a JSON Patch path, a schema fragment reference or an error location. Every token follows one exact child edge.
Use JSONPath for selection
Use JSONPath when the task needs members, descendants, array slices or filters and may produce a list. Do not paste a JSONPath expression into a JSON Pointer field: their roots, separators and escaping rules differ.
Verify the exact decoded tokens
Check each token against the original member name. Decode ~1 to slash and ~0 to tilde only once, then distinguish object names from canonical array indices. Keep the empty root pointer distinct from / and compare important paths with the authoritative producer contract.