---
title: "Get Google Ads budget boundaries"
method: GET
path: "/api/apps/{app_id}/google-ads/campaigns/budget-boundaries"
---

# Get Google Ads budget boundaries

`GET /api/apps/{app_id}/google-ads/campaigns/budget-boundaries`

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Reads the daily budget range Google accepts for a campaign type and currency, so you can validate a budget before you create a campaign.

The numbers come from a fixed table rather than from Google, because Google does not publish them as a queryable resource. They change rarely. `min_daily_budget_micros` is the same floor the create, update, and bulk-budget endpoints enforce, so a budget that passes here is accepted there.

You do not need a connected Google Ads account to call this, which is what lets you show a budget slider before the account exists. An unrecognized `currency_code` or `campaign_type` is not rejected: you get the US dollar and Smart campaign defaults back, with the values you sent echoed in `currency_code` and `campaign_type`. Compare those two fields against what you sent if you need to know that happened.

<Note>This endpoint accepts a personal API key. Workspace API keys are not authorized for it and are rejected with a 403.</Note>

## Path parameters

- `app_id` string, required — ID of the app you are planning a Google Ads campaign for.

## Query parameters

- `currency_code` string — Currency to report the bounds in, as an ISO 4217 code. An unrecognized code falls back to `USD`.
- `campaign_type` string — Campaign type to report bounds for: `SMART` or `PERFORMANCE_MAX`. Anything else falls back to `SMART`.

## Response `200`

The accepted daily budget range.

- GoogleAdsBudgetBoundaries — The daily budget range Google accepts for a campaign type and currency.
  - `currency_code` string, required — The currency these amounts are in, upper-cased from what you sent.
  - `campaign_type` string, required — The campaign type these bounds apply to, upper-cased from what you sent.
  - `min_daily_budget_micros` integer, required — Smallest daily budget Google accepts for this campaign type and currency, in micros (1,000,000 micros = 1 unit of the currency). Sending less than this to [Create campaign](/api-reference/create-google-ads-campaign) is rejected with a 400.
  - `max_daily_budget_micros` integer, required — Largest daily budget accepted for this campaign type and currency, in micros.
  - `recommended_daily_budget_micros` integer, required — A sensible starting daily budget, in micros. Never above `max_daily_budget_micros`.
  - `preset_daily_budget_micros` integer[], required — Three suggested daily budgets, in micros, from lowest to highest. These are raw presets, so unlike `recommended_daily_budget_micros` the highest one can sit above `max_daily_budget_micros`.
  - `usd_to_currency_rate` number, required — How many units of this currency Base44 counts per US dollar when it converts the presets.

## Other responses

- `401` — Missing or invalid credentials.
- `403` — You don't have access to this app, the app does not exist, or you used a workspace API key. A missing app and an app you cannot reach are deliberately the same answer.

---

[API](https://skmtc.dev/base44/apis/base44-app-management-api.md) · [All operations](https://skmtc.dev/base44/apis/base44-app-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/base44/apis/base44-app-management-api/revisions/0e0a206b2f33?raw)
