{"id":13708850,"url":"https://github.com/googleads/google-ads-ruby","last_synced_at":"2026-04-02T13:33:23.894Z","repository":{"id":38748696,"uuid":"127753189","full_name":"googleads/google-ads-ruby","owner":"googleads","description":"Google Ads API Ruby Client Library","archived":false,"fork":false,"pushed_at":"2025-03-11T12:57:35.000Z","size":10905,"stargazers_count":74,"open_issues_count":18,"forks_count":64,"subscribers_count":23,"default_branch":"main","last_synced_at":"2025-04-13T00:45:19.960Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://developers.google.com/google-ads/api/","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/googleads.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-04-02T12:27:43.000Z","updated_at":"2025-03-11T12:57:38.000Z","dependencies_parsed_at":"2023-01-22T22:31:24.508Z","dependency_job_id":"a05c3494-4581-4100-be40-d57a8ab1a678","html_url":"https://github.com/googleads/google-ads-ruby","commit_stats":{"total_commits":322,"total_committers":26,"mean_commits":"12.384615384615385","dds":0.5869565217391304,"last_synced_commit":"47177b6101b46a6eb8a5efd0494e7c63659f4ae5"},"previous_names":[],"tags_count":56,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googleads%2Fgoogle-ads-ruby","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googleads%2Fgoogle-ads-ruby/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googleads%2Fgoogle-ads-ruby/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/googleads%2Fgoogle-ads-ruby/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/googleads","download_url":"https://codeload.github.com/googleads/google-ads-ruby/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248650420,"owners_count":21139672,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T23:00:33.409Z","updated_at":"2026-04-02T13:33:23.889Z","avatar_url":"https://github.com/googleads.png","language":"Ruby","funding_links":[],"categories":["Client libraries"],"sub_categories":[],"readme":"# Google Ads Client Library for Ruby\n\n`google-ads-googleads` uses [Google API extensions][google-gax] to provide an\neasy-to-use client library for the [Google Ads API][].\n\n[google-gax]: https://github.com/googleapis/gax-ruby\n[Google Ads API]: https://developers.google.com/google-ads/api\n\n# Documentation for Users\n\n**For thorough documentation of all features and utilities, visit our\n[Developers site Ruby guide][].**\n\n[Developers site Ruby guide]: https://developers.google.com/google-ads/api/docs/client-libs/ruby/\n\n## API Versions\n\nThe developer site also contains a\n[list](https://developers.google.com/google-ads/api/docs/client-libs#ruby)\nof which `google-ads-googleads` gem version you would need to use for each API version.\n\n## Getting started\n\n`google-ads-googleads` will allow you to connect to the\n[Google Ads API][] and access all its methods.\n\n## Installation\n\nThe recommended way to install is using [bundler][].\n\nAdd a line to your `Gemfile` (replacing x.y.z with the version number\nyou're interested in):\n\n    gem 'google-ads-googleads', '~\u003e x.y.z'\n\nThen run:\n\n    $ bundle install\n\nThis will cause bundler to update your `Gemfile.lock` locking to the exact\nversion of the gem, and all dependencies of the gem that were installed.\nUsing the pessimistic version operator `\"~\u003e x.y.z\"` will cause `bundle\nupdate` to only install new versions in the `x.y.*` series, which will\nmake it so you must manually opt into new versions.\n\nYou can then update to a new version of the gem by updating the `Gemfile`.\n\n### Other Installation Options\n\nIf you are not using bundler, you can use one of these options.\n\n1. Install this library using gem:\n\n       $ [sudo] gem install google-ads-googleads\n\n1. Download the gem from the [Releases][] page and install it from the local\nfile:\n\n       $ [sudo] gem install google-ads-googleads-[version].gem\n\n[Releases]: https://github.com/googleads/google-ads-ruby/releases\n[bundler]: https://bundler.io/\n\n## Set Up Authentication\n\nTo authenticate your API calls, you need to specify your client ID, client\nsecret, refresh token, and developer token to the library.\n\n1. See the [Developer token guide][] to obtain your developer token, if you\n   don't already have one.\n\n1. See the [Authorization guide][] to generate a client ID and client secret,\n   if you don't already have them.\n\n1. Run the [Authentication example][] to generate your refresh token.\n\n1. Copy [google_ads_config.rb][] to your home directory and modify it to include\nthe client ID, client secret, and refresh token.\n\nThe client will automatically read it from the home directory if instantiated\nwith no arguments:\n\n    client = Google::Ads::GoogleAds::GoogleAdsClient.new\n\nAlternatively, if you prefer to keep the file elsewhere, you can instantiate the\nclient by passing the path to where you keep this file:\n\n    client = Google::Ads::GoogleAds::GoogleAdsClient.new('path/to/google_ads_config.rb')\n\nIf you prefer not to store this information in a file at all, and would rather\npass the information programmatically at runtime, you can accomplish that this\nway:\n\n    client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|\n      config.client_id = 'INSERT_CLIENT_ID_HERE'\n      config.client_secret = 'INSERT_CLIENT_SECRET_HERE'\n      config.refresh_token = 'INSERT_REFRESH_TOKEN_HERE'\n      config.developer_token = 'INSERT_DEVELOPER_TOKEN_HERE'\n    end\n\nFind out more at the [Configuration guide][].\n\n[Developer token guide]: https://developers.google.com/google-ads/api/docs/first-call/dev-token\n[Authorization guide]: https://developers.google.com/google-ads/api/docs/oauth/overview\n[Authentication example]: https://github.com/googleads/google-ads-ruby/blob/main/examples/authentication/generate_user_credentials.rb\n[google_ads_config.rb]: https://github.com/googleads/google-ads-ruby/blob/main/google_ads_config.rb\n[Configuration guide]: https://developers.google.com/google-ads/api/docs/client-libs/ruby/configuration\n\n## Usage\n\nTo include the gem in your code:\n\n    require 'google/ads/google_ads'\n\nTo fetch a specific service, for example CampaignService:\n\n    client = Google::Ads::GoogleAds::GoogleAdsClient.new\n    campaign_service = client.service.campaign\n\nSee the provided [examples][] for more detailed demonstrations of how to use the\nlibrary.\n\n**Note:** You can ignore comments with `[START...]` and `[END...]` in\nexamples—they are specifically used by Google.\n\nOnce you're familiar with the [examples][], we also recommend familiarizing\nyourself with [factories][], which provides a set of high level convenience\nmethods for working with the Google Ads API\n\n[examples]: https://github.com/googleads/google-ads-ruby/blob/main/examples\n[factories]: https://developers.google.com/google-ads/api/docs/client-libs/ruby/factories\n\n## Logging\n\nSee the [Logging guide][].\n\n[Logging guide]: https://developers.google.com/google-ads/api/docs/client-libs/ruby/logging\n\n## Ruby versions\n\nThe client library supports versions 3.2, 3.3, and 3.4 of Ruby. We plan to\nsupport three Ruby releases at any one time. As Ruby releases once a year on\nDecember 25th, we will look at dropping support for the oldest version early in\nthe following year.\n\nOlder versions of Ruby may still work with the library once our official support ends.\nHowever, we will not actively fix bugs for unsupported Ruby versions. If you run\ninto an issue on an older version of Ruby, be sure to upgrade to a new version\nand test again before filing an issue.\n\n# Authors\n\nAuthors:\n\n - Danial Klimkin\n - Michael Cloonan\n\nMaintainers:\n\n - Michael Cloonan\n - Daniel Rodriguez\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoogleads%2Fgoogle-ads-ruby","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoogleads%2Fgoogle-ads-ruby","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoogleads%2Fgoogle-ads-ruby/lists"}