Skip to main content

Run symbolication

Enterprise

This endpoint is part of Countly Enterprise. To get access, contact sales or compare versions. Existing customers can reach the support portal with questions.

Endpoint

/i/crash_symbols/symbolicate

Overview

Starts symbolication for a crash group using a selected symbol document.

Authentication

Pass api_key or auth_token as a query parameter, or send countly-token as a header. See Authentication.

Permissions

  • Required permission: Update on the crashes feature

Request Parameters

ParameterTypeRequiredDescription
app_idStringYesApplication identifier
crashgroup_idStringYesCrash group ID
symbol_idStringYesSymbol document ID
return_urlStringYesCallback URL for external symbolication server flow
api_keyStringYes (or auth_token)API key authentication
auth_tokenStringYes (or api_key)Auth token authentication

Examples

Example 1: Start symbolication for a crash group

/i/crash_symbols/symbolicate?api_key=YOUR_API_KEY&app_id=5f9c8a3b4d1e2a001f3b4567&crashgroup_id=65c5dd952c5f5300121a0009&symbol_id=65c5e0732c5f5300121a0020&return_url=https://your-server.com/i/crash_symbols/symbolicatation_result

Response

Success Response

Success message depends on symbolication path:

{
"result": "Symbolication success"
}
{
"result": "Success"
}
{
"result": "Data sent to symbolication server"
}

Response Fields

FieldTypeDescription
resultStringStatus/result message

Error Responses

HTTP StatusResponse
400{ "result": "Missing report id" }
400{ "result": "Missing symbol id" }
400{ "result": "Missing return url" }
400{ "result": "Could not find symbol file" }
400{ "result": "Could not find crashgroup" }
400{ "result": "Could not create job" } or { "result": "Could not create job: ..." }
400{ "result": "Symbolication file is not found..." }
400{ "result": "Could not save result, please see symbolication log for more details" }
400{ "result": "Please set symbolication server url" }
400{ "result": "Please provide symbolication server's api key" }
500{ "result": "Crash plugin is not enabled or is older version" }
500{ "result": "No original binary available" }
500{ "result": "Error loading JS source map file" }

Behavior

  • Creates a job record in symbolication_jobs and updates crash group status fields.
  • Uses one of three paths:
    • Android native (minidump_stackwalk local processing)
    • JavaScript (local source map deobfuscation)
    • External symbolication server (symbolication_server + symbolication_key)
  • External-server path is asynchronous and returns after submitting job data.
Implementation details

Database Collections

CollectionUsed forData touched by this endpoint
countly.app_crashsymbols{app_id}Endpoint data sourceStores endpoint-related records this endpoint reads or modifies.
countly.app_crashgroups{app_id}Endpoint data sourceStores endpoint-related records this endpoint reads or modifies.
countly.symbolication_jobsEndpoint data sourceStores endpoint-related records this endpoint reads or modifies.
countly_fs.crash_symbolsEndpoint data sourceStores endpoint-related records this endpoint reads or modifies.