---
title: "Fetch Google Lsa Account Reports"
method: GET
path: "/admin/lsa/account-reports"
tags: ["admin", "lsa-admin"]
---

# Fetch Google Lsa Account Reports

`GET /admin/lsa/account-reports`

## Request

- Base URL: `https://api-docs.upsmith.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api-docs.upsmith.com/admin/lsa/account-reports`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Fetch the Local Services Ads ``accountReports`` for an org's LSA accounts — review
rating + count, phone-lead responsiveness, connected calls, and Google's weekly budget.

This hits the separate Local Services Ads Reporting API (``localservices.googleapis.com``),
not the Google Ads API / GAQL, so it's the only way to read LSA reviews. The report is
manager-scoped: it's fetched once for the MCC and filtered to the org's own accounts.
``login_customer_id`` defaults to the org's single manager when unambiguous; ``report_date``
defaults to yesterday (the last complete day; ``current_period_*`` cover that single day,
while rating / reviews / responsiveness / weekly budget are current-state). ``customer_id``
narrows to one account. Read-only. A revoked/expired credential surfaces as a 400.

## Query parameters

- `organization_id` string, required
- `login_customer_id` string, nullable
- `customer_id` string, nullable
- `report_date` string, date, nullable

## Headers

- `organization-id` string, nullable
- `timezone` string
- `x-user-id` string, nullable
- `x-actor-email` string, nullable
- `x-request-source` string, nullable
- `x-operation-id` string, nullable
- `x-commit-message` string, nullable
- `x-confirmation-id` string, nullable
- `x-chat-id` string, nullable

## Response `200`

Successful Response

- GoogleLsaAccountReportsResult: Local Services Ads ``accountReports`` rows for one org's LSA accounts. Fetched from the separate Local Services Ads Reporting API (not the Google Ads API / GAQL), which is the only source for LSA review rating + count, phone-lead responsiveness, and Google's weekly budget. The report is manager-scoped, so it's fetched once for the MCC and filtered to the requesting org's accounts. ``credential_source`` records which OAuth identity authenticated (the MCC's shared manager credential or the org's per-org OAuth). ``report_date`` is the single day the ``current_period_*`` metrics cover; the rating / review / responsiveness / weekly-budget fields are current-state as of the call.
  - `organization_id` string, required
  - `login_customer_id` string, nullable: MCC the accountReports was fetched under (manager-scoped report).
  - `credential_source` 'manager' | 'per_org', required: Which credential authenticated: the MCC's shared manager credential or the org's own per-org OAuth.
  - `report_date` string, date, required: The single day current_period_* metrics cover (defaults to yesterday).
  - `account_count` integer, required: Number of the org's LSA accounts a report row was returned for.
  - `reports` object[]: One AccountReport per account (account_id + review/responsiveness/budget fields).

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/upsmith/apis/upsmith-api.md) - [All operations](https://skmtc.dev/upsmith/apis/upsmith-api/llms.txt) - [OpenAPI document](https://skmtc.dev/upsmith/apis/upsmith-api/revisions/86e2c2bd93af?raw)
