Skip to content

Generating GAQL (Google Ads Query Language) tool.

License

Notifications You must be signed in to change notification settings

yo8568/gaql-builder

Repository files navigation

GAQL Builder Version MIT License

Generating GAQL (Google Ads Query Language) tool, this is not official library. If you want to build GAQL string much easier, you can use this tool, but it would not be validated entirely for all of posible combinations.

Please follow the building rule via official documentation.

Requirements

  • Python 2.7.13+ / 3.5.3+
  • pip

Installation

  $ pip3 install gaql-builder

Project Structure

.
├── gaql_builder/                 # Core folder
│   ├── __init__.py
│   └── main.py                   # Core library code
├── tests/                        # Test cases
├── .travis.yml                   # CI configuration
├── setup.py                      # Setup script
├── setup.cfg                     # Setup configuration
├── __init__.py                   # Root init
├── requirements.txt              # Install packages text file
└── README.md                     # Read-me file

Usage

If you want to generate the following query string,

SELECT
 campaign.id,
 campaign.name
FROM
 campaign
WHERE
 campaign.resource_name = 'customers/1234567/campaigns/987654'

you can use functional call to make it out.

    builder = GAQLBuilder()
    builder.select(['campaign.id', 'campaign.name'])
    builder.resource_from('campaign')
    builder.where("campaign.resource_name = 'customers/1234567/campaigns/987654'")
    builder.to_string()

also, you can use add_where function to add condition.

    builder = GAQLBuilder()
    builder.select(['campaign.id', 'campaign.name'])
    builder.resource_from('campaign')
    builder.add_where(
        field='campaign.resource_name',
        operator='=',
        value="'customers/1234567/campaigns/987654'"
    )

License

MIT