> ## Documentation Index
> Fetch the complete documentation index at: https://docs.base44.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Link a Google Business Profile

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

Links a Google Business Profile location to the account, so Smart campaigns created from now on can show its address and hours.

Send the location as `locations/<id>`, which is how Google names it. A malformed value comes back as a 400.

<Note>This affects campaigns created after the link. Campaigns that already exist are not changed.</Note>

<Warning>The response includes fields beyond the ones documented here. Don't rely on undocumented response fields, as they can change at any time. Send only the fields documented here. Other request fields are not supported and their behavior can change.</Warning>



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json post /api/apps/{app_id}/google-ads/accounts/{account_id}/business-profile/link
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - ApiKeyAuth: []
paths:
  /api/apps/{app_id}/google-ads/accounts/{account_id}/business-profile/link:
    post:
      summary: Link a Google Business Profile
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Links a Google Business Profile location to the account, so Smart
        campaigns created from now on can show its address and hours.


        Send the location as `locations/<id>`, which is how Google names it. A
        malformed value comes back as a 400.


        <Note>This affects campaigns created after the link. Campaigns that
        already exist are not changed.</Note>


        <Warning>The response includes fields beyond the ones documented here.
        Don't rely on undocumented response fields, as they can change at any
        time. Send only the fields documented here. Other request fields are not
        supported and their behavior can change.</Warning>
      operationId: >-
        link_business_profile_api_apps__app_id__google_ads_accounts__account_id__business_profile_link_post
      parameters:
        - name: app_id
          in: path
          required: true
          schema:
            type: string
            description: ID of the app whose Google Ads campaigns to manage.
            title: App Id
          description: ID of the app whose Google Ads campaigns to manage.
          example: 6820f3a4e7b91d003c45a1f2
        - name: account_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              ID of the Google Ads account, as returned in `id` by [Get Google
              Ads account](/api-reference/get-google-ads-account). An account
              that belongs to a different app returns a 404.
            title: Account Id
          description: >-
            ID of the Google Ads account, as returned in `id` by [Get Google Ads
            account](/api-reference/get-google-ads-account). An account that
            belongs to a different app returns a 404.
          example: 68b1c0d4e7b91d003c45a1f8
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: LinkBusinessProfile
              type: object
              required:
                - location_id
              properties:
                location_id:
                  type: string
                  description: >-
                    Google Business Profile location, as Google names it:
                    `locations/<id>`.
            example:
              location_id: locations/12345
      responses:
        '200':
          description: The linked location.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BusinessProfileLinkResponse'
        '400':
          description: '`location_id` is not a Google Business Profile location name.'
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            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.
        '404':
          description: >-
            The app has no connected Google Ads account, or no account with this
            ID belongs to this app.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    BusinessProfileLinkResponse:
      properties:
        business_profile_location_id:
          type: string
          title: Business Profile Location Id
          description: The linked location as `locations/<id>`. Empty after unlinking.
          example: locations/12345
      type: object
      required:
        - business_profile_location_id
      title: BusinessProfileLinkResponse
      description: The account's linked Google Business Profile location.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key
      description: Personal API key.

````