tmarois / laravel-ads-sdk

PHP SDK for Google Ads, Bing Ads, and Facebook Ads API for Laravel
MIT License
110 stars 42 forks source link

Google Ads API Update (by April 27th, 2022) #52

Open timothymarois opened 2 years ago

timothymarois commented 2 years ago

Hey Laravel Ads Users,

We will need to upgrade this API to the new Google Ads API by April 27th, 2022

To avoid issues with anyone currently using the Google Ads (AdWords) Integration, we would like to get this done ASAP.

I'm asking to see if anyone currently has a few hours to help upgrade this SDK, please let me know, thank you.

I will try my best to be sure we get an upgrade released, but I am currently slammed with a work project, so I am reaching out to see if anyone else has the availability to look over the upgrade guide and move us to the new SDK library.

https://github.com/googleads/googleads-php-lib/blob/master/UPGRADING.md

I don't think there would be that much to change, we need to ensure users can authenticate using new config, and making sure all Google Ads methods are converted over as needed.

If you have any questions, feel free to respond here, reach out to me via tim@marois.io, or chat via the discord channel.

Thanks again!

dominikraff commented 2 years ago

What is about this issue?

timothymarois commented 2 years ago

@dominikraff Unless someone else can find a way, the existing googleads-php-lib looks like it's impossible to use at this stage with the new API update from Google.

The author of that package is not clear about it, and if you look at the code base of the AdWords classes, they are all still on v201809 which are all deprecated. All examples are also outdated, and nothing has been updated in over a year.

Google even removed their support to that package from their own site and now only links to their other package https://github.com/googleads/google-ads-php But, the unfortunate news is, they are using PHP extensions you need to install in order to even use the SDK, such as gRPC and protobuf.

Because of these monumental changes, I don't see a way for us to easily move over. And certainly not an easy way to use google and bing interchangeable as this was originally designed to do.

Nonetheless, I have some clients still relying on functionality, and will look into potential solutions, but thanks to Google, does look grim, to be honest.

leolll commented 2 years ago

I believe you can use gRPC or REST with the new API.

dominikraff commented 2 years ago

@timothymarois Do you have a time plan for the way to a possible solution?

timothymarois commented 2 years ago

I believe you can use gRPC or REST with the new API.

@leolll So yes, you can skip on install the PHP ext Protobuf, but you can not skip gRPC, that's a requirement of using the new API. (edit: the new PHP library, though Im sure you can write your own restful API, but unless you work for Google, no one is going to do that)

@dominikraff I have a call this afternoon to discuss a possible upgrade option. Of course, my goal/aim in building this SDK was to support the major ads APIs and make them very easy to use out of the box and for the most part cohesively together. A lot of the major institutions lack support with PHP, they usually opt for machine-coded PHP libraries, which are never as good as designing libraries using actual PHP strategies.

leolll commented 2 years ago

@timothymarois Maybe you could setup Github sponsors (or something else) so we can show our support.

leolll commented 2 years ago

To anyone wanting to help with the migration, here are some useful links I've found:

timothymarois commented 2 years ago

@timothymarois Maybe you could setup Github sponsors (or something else) so we can show our support.

Thank you, I do appreciate it! Something I am open to in the future if there is enough support around the package. I am stretched a bit thin, so it has caused a bit of a bottleneck to get updates as of recently.

I will investigate how much time it will take to get the new Google Ads implemented on this project and some new laravel examples. the gRPC extension is a big deal since it can easily be installed, just creates a bit of a hiccup for those who want a plug-n-play solution.

Also, if I can at least get something started, maybe a few of you guys could also extend it as needed for the specific use-case of features.

leolll commented 2 years ago

I've been looking at the offline conversion feature and it seems we'd need to send the conversion id instead of the conversion name. I'm thinking it's probably worth caching all conversions by client id. I could work on this feature.

Any luck updating the main GoogleAds service class?

afagard commented 1 year ago

@timothymarois I know you are no longer supporting this package. But did Google change it's stance on gRPC since you last looked? Seems like they begrudgingly support REST when gRPC isn't available?

https://developers.google.com/google-ads/api/docs/client-libs/php/transport