# Firebase Crashlytics API API

> Firebase Crashlytics API API on Apizie: 10 endpoints (Creates a Cloud Monitoring AlertPolicy for the requested Crashlytics Web alert type and returns the created…, Fetch a batch of up to 100 events by name., List the events for an issue matching filter criteria, sorted in descending order by timestamp., Change the state of a group of issues. This method is not atomic, so partial failures can occur. In the…, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `dev-tools:google-firebasecrashlytics`
- Category: Dev Tools
- Status: byok
- Source: https://firebase.google.com/docs/crashlytics
- Page: https://www.apizie.tech/api/dev-tools/google-firebasecrashlytics
- OpenAPI: https://www.apizie.tech/api/dev-tools/google-firebasecrashlytics/openapi.json

This service provides an API for mobile app developers to request deletion of user's crash reports.

## Endpoints

### Creates a Cloud Monitoring AlertPolicy for the requested Crashlytics Web alert type and returns the created…
`POST https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-generate-alert-policy` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Required. The firebase application. Format: "projects/{project}/apps/{app_id}". |
| body | object | yes | JSON request body |

### Fetch a batch of up to 100 events by name.
`GET https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-events-batch-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| names | string | no | Required. The resource names of the desired events. A maximum of 100 events can be retrieved in a batch. Format:… |
| parent | string | yes | Required. The firebase application. Format: "projects/{project}/apps/{app_id}". |
| readMask | string | no | Optional. The list of Event fields to include in the response. If omitted, the full event is returned. |

### List the events for an issue matching filter criteria, sorted in descending order by timestamp.
`GET https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-events-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| filter.browser.displayNames | string | no | Optional. Only count events from the given browser. This string matches Browser.display_name. Format: "name (display_version)" e.g.… |
| filter.device.displayNames | string | no | Only counts events from the given Device model. This string matches Device.display_name. Format: "manufacturer (model)" e.g. "Google… |
| filter.device.formFactors | string | no | Only counts events from devices with the given form factor (e.g. phone or tablet). |
| filter.interval.endTime | string | no | Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end. |
| filter.interval.startTime | string | no | Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start. |
| filter.issue.content | string | no | Optional. A space separated list of filter terms matched against the contents of the issue. Contents include the title and the stack… |
| filter.issue.errorTypes | string | no | Optional. Only counts events of the given error types. This field matches [Issue.error_type]. |
| filter.issue.id | string | no | Optional. Only counts events in the given issue ID. This field matches [Issue.id]. |
| filter.issue.signals | string | no | Optional. Only returns issues currently marked with the given signals. This field matches [Issue.signals.signal]. |
| filter.issue.state | string | no | Optional. Deprecated: Prefer `states` field. Only includes events for issues with the given issue state. Only available for `topIssues`… |
| filter.issue.states | string | no | Optional. Only includes events for issues with the given issue states. Only available for `topIssues` reports. |
| filter.issue.variantId | string | no | Optional. Only counts events for the given issue variant ID. This field matches [IssueVariant.id]. |
| filter.operatingSystem.displayNames | string | no | Only counts events in the given operating system and version. This string matches OperatingSystem.display_name. Format: "osName… |
| filter.version.displayNames | string | no | Only counts events in the given app version. This string matches Version.display_name. Format: "display_version (build_version)" e.g.… |
| filterExpression | string | no | Optional. Filters events by custom keys (https://firebase.google.com/docs/crashlytics/customize-crash-reports#add-keys). Supported forms:… |
| pageSize | integer | no | Optional. The maximum number of events per page. If omitted, defaults to 10. |
| pageToken | string | no | Optional. A page token, received from a previous calls. |
| parent | string | yes | Required. The Firebase application. Format: "projects/{project}/apps/{app_id}". |
| readMask | string | no | Optional. The list of Event fields to include in the response. If omitted, the full event is returned. |

### Change the state of a group of issues. This method is not atomic, so partial failures can occur. In the…
`POST https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-issues-batch-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| parent | string | yes | Required. The parent resource shared by all issues being updated. Format: projects/{project}/apps/{app}. If this is set, the parent field… |
| body | object | yes | JSON request body |

### Get a report with its computed results.
`GET https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-reports-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| filter.browser.displayNames | string | no | Optional. Only count events from the given browser. This string matches Browser.display_name. Format: "name (display_version)" e.g.… |
| filter.device.displayNames | string | no | Only counts events from the given Device model. This string matches Device.display_name. Format: "manufacturer (model)" e.g. "Google… |
| filter.device.formFactors | string | no | Only counts events from devices with the given form factor (e.g. phone or tablet). |
| filter.interval.endTime | string | no | Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end. |
| filter.interval.startTime | string | no | Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start. |
| filter.issue.content | string | no | Optional. A space separated list of filter terms matched against the contents of the issue. Contents include the title and the stack… |
| filter.issue.errorTypes | string | no | Optional. Only counts events of the given error types. This field matches [Issue.error_type]. |
| filter.issue.id | string | no | Optional. Only counts events in the given issue ID. This field matches [Issue.id]. |
| filter.issue.signals | string | no | Optional. Only returns issues currently marked with the given signals. This field matches [Issue.signals.signal]. |
| filter.issue.state | string | no | Optional. Deprecated: Prefer `states` field. Only includes events for issues with the given issue state. Only available for `topIssues`… |
| filter.issue.states | string | no | Optional. Only includes events for issues with the given issue states. Only available for `topIssues` reports. |
| filter.issue.variantId | string | no | Optional. Only counts events for the given issue variant ID. This field matches [IssueVariant.id]. |
| filter.operatingSystem.displayNames | string | no | Only counts events in the given operating system and version. This string matches OperatingSystem.display_name. Format: "osName… |
| filter.version.displayNames | string | no | Only counts events in the given app version. This string matches Version.display_name. Format: "display_version (build_version)" e.g.… |
| filterExpression | string | no | Optional. Filters the events counted in the report by custom keys. Not all reports support this filter. It is currently only supported for… |
| granularity | string | no | Optional. The report response will contain one data point per time grain. If omitted, the report will contain a single data point for the… |
| metricsMode | string | no | Optional. Controls whether metrics are raw observed values (mobile and web) or extrapolated values (web only). If omitted, defaults to… |
| name | string | yes | Required. The report name. Format: "projects/{project}/apps/{app_id}/reports/{report}". |
| pageSize | integer | no | Optional. The maximum number of result groups to return. The maximum value is 100; values above 100 will be coerced to 100. If omitted,… |
| pageToken | string | no | Optional. A page token, received from a previous call. The page token is only valid for the exact same set of filters, which must also be… |
| view | string | no | Optional. Response view. If not set, defaults to `REPORT_VIEW_FULL`. |

### Change the state of an issue.
`POST https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-issues-patch` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Required. Output only. Immutable. Identifier. The name of the issue resource. Format: "projects/{project}/apps/{app}/issues/{issue}". |
| updateMask | string | no | Optional. The list of Issue fields to update. Currently only "state" is mutable. |
| body | object | yes | JSON request body |

### Enqueues a request to permanently remove crash reports associated with the specified user. All reports…
`POST https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-users-delete-crash-reports` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Required. Resource name for user reports, in the format: projects/ PROJECT_IDENTIFIER/apps/APP_ID/users/USER_ID/crashReports -… |

### List all notes for a certain issue, sorted in descending order by timestamp.
`GET https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-issues-notes-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| pageSize | integer | no | Optional. The maximum number of notes per page. If omitted, defaults to 10. |
| pageToken | string | no | Optional. A page token, received from a previous calls. |
| parent | string | yes | Required. The issue the notes belongs to. Format: "projects/{project}/apps/{app}/issues/{issue}". |

### Create a new note for an issue.
`POST https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-issues-notes-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| parent | string | yes | Required. The parent resource where this note will be created. Format: "projects/{project}/apps/{app}/issues/{issue}". |
| body | object | yes | JSON request body |

### List all of the available reports.
`GET https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-reports-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| parent | string | yes | Required. The firebase application. Format: "projects/{project}/apps/{app_id}". |
| view | string | no | Optional. Response view. If not set, defaults to `REPORT_VIEW_BASIC`. `REPORT_VIEW_FULL` is not supported for list operations. |

## Example
```
curl "https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-generate-alert-policy" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Firebase Crashlytics API API?
Create a free Apizie key, then send POST https://www.apizie.tech/v1/dev-tools:google-firebasecrashlytics/firebasecrashlytics-projects-apps-generate-alert-policy with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Firebase Crashlytics API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Firebase Crashlytics API itself also needs your own key from googleapis.com.

### Can AI agents use the Firebase Crashlytics API API?
Yes. Add the Apizie MCP server (https://www.apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key dev-tools:google-firebasecrashlytics.

### What is the status of the Firebase Crashlytics API API?
Needs your own provider key (bring your own key)
