Resolve an error's frames to a code location
Resolve the stack frames of one error signature to a code location.
Separate from /error-types/detail on purpose. It leaves the process to
fetch the customer's bundle, so it is slower than every other analytics
read and it fails in ways the drill-down must survive. The dashboard asks
for it after the detail has rendered, and a frame that cannot be resolved
comes back with a status rather than an error.
bearerAuthAuthentifizierungBearer <token>API token generated from the fastmon dashboard (Account → API Token) or at organization level (fmo_…, one that outlives its creator). Send as Authorization: Bearer fm_... or paste the full token (including its prefix) into the Authorize dialog.
org_id*Org Iduuidapplication/json- body
Request for /analytics/error-types/symbolicate.
Carries the same identity as the error detail. There is deliberately no URL parameter: the frames come from what we stored for this fingerprint, so a caller cannot point our fetcher at a host of their choosing.
time_range*Time range for the query
filters?Optional filters
fingerprint*Fingerprint1 <= length <= 16Successful Response
application/json- response
Response for /analytics/error-types/symbolicate.
meta*Facts about the result
request*The request as the server resolved it
frames*array<>error_type?Error TypeThe group's error type, repeated here so the stack reads alone.
""message_kind?Message KindThe group's message shape, repeated here for the same reason as error_type. Together with the top frame's object and property this is the sentence: not_defined plus uc plus setServiceAlias says what was called and what was missing.
""message_value?Message ValueThe identifier that shape names, '' when it names none.
""sample_message?Sample MessageThe group's message. Often the whole answer where the stack is not: a selector, a bad token, the value that failed to parse. Empty when the site does not collect messages.
""messages_collected?Messages CollectedEvery application in scope stores error messages, so an empty sample_message means the error carried none. False means the message may simply not be collected, which is the default.
falseall_frames_in_libraries?All Frames In LibrariesEvery frame is a known library, so the mistake is in a call that is no longer on the stack. The stack was cut at five frames.
falsecurl -X POST 'https://api.fastmon.eu/organizations/497f6eca-6276-4993-bfeb-53cbbbba6f08/analytics/error-types/symbolicate' \ -H 'Content-Type: application/json' \ -d '{ "time_range": { "from": "2019-08-24T14:15:22Z", "to": "2019-08-24T14:15:22Z" }, "fingerprint": "string"}'{ "meta": { "execution_time_ms": 0, "total": 0, "limit": 0, "offset": 0, "has_more": true, "next_cursor": "string", "sampling": { "sampling_rate": 0, "is_sampled": true, "estimated_metrics": [ "string" ] }, "is_identity_mixed": true }, "request": { "time_range": { "from": "2019-08-24T14:15:22Z", "to": "2019-08-24T14:15:22Z" }, "comparison_time_range": { "from": "2019-08-24T14:15:22Z", "to": "2019-08-24T14:15:22Z" }, "granularity": "minute", "identity": "stitch", "window_seconds": 0, "filters": {} }, "frames": [ { "index": 0, "host": "string", "path": "string", "line": 0, "column": 0, "status": "resolved", "module_id": "", "method": "", "object": "", "property": "", "snippet": "", "caret_offset": 0, "near_boundary": false, "throw_kind": "", "library": "" } ], "error_type": "", "message_kind": "", "message_value": "", "sample_message": "", "messages_collected": false, "all_frames_in_libraries": false}