Git Product home page Git Product logo

laravel-ads-sdk's Introduction

Laravel Ads SDK

Join the Discord – For support, updates and collaboration.

For Google Ads, Bing Ads and Facebook Ads API.

This is a wrapper for connecting each ad source into your Laravel application. This SDK provides a cleaner and a more consistent integration across many ad platforms than the official SDKs, and ultimately making it a lot easier to implement in your projects. You shouldn't have to learn how to communicate and understand the responses to every API.

Installation

Use Composer to install package.

Run composer require tmarois/laravel-ads-sdk

Config

  1. Run php artisan vendor:publish --tag=laravel-ads-sdk

  2. Copy this to your .env and update with your credentials (if you dont have credentials, continue to the next step).

ADWORDS_DEVELOPER_TOKEN=""
ADWORDS_OAUTH2_CLIENT_ID=""
ADWORDS_OAUTH2_CLIENT_SECRET=""
ADWORDS_OAUTH2_REFRESH_TOKEN=""

BING_DEVELOPER_TOKEN=""
BING_CLIENT_ID=""
BING_CLIENT_SECRET=""
BING_REFRESH_TOKEN=""

FB_APP_ID=""
FB_APP_SECRET=""
FB_ACCESS_TOKEN=""
FB_REFRESH_TOKEN=""

Authentication

πŸ‘‰ For GoogleAds

You will need your developer token, client id and client secret to continue. Learn More

Follow the steps in the command line to generate a refresh token.

Run php artisan laravelads:token:generate --service=GoogleAds

Having Trouble? Learn More

πŸ‘‰ For BingAds

You will need your developer token, client id and client secret to continue. Learn More

Follow the steps in the command line to generate a refresh token.

Run php artisan laravelads:token:generate --service=BingAds

Having Trouble? Learn More

πŸ‘‰ For FacebookAds

You will need your app id, app secret and access token. Learn More

NOTE: It appears for facebook, you do not need to generate refresh token, once you have your access token, the api should connect as long as you've given yourself the correct access, permissions, scopes to marketing api and ads account.

πŸš€ Usage

Accessing GoogleAds, BingAds or FacebookAds use the following:

// The namespace to the Facade for laravel Ads SDK
use LaravelAds;

// calling Google Ads and including the Account ID
$googleAds = LaravelAds::googleAds()->with('ACCOUNT_ID');

// calling Bing Ads and including the Account ID
$bingAds = LaravelAds::bingAds()->with('ACCOUNT_ID');

// calling Facebook Ads and including the Account ID
$facebookAds = LaravelAds::facebookAds()->with('ACCOUNT_ID');

Google Ads

This uses the googleads-php-lib SDK for the Google Ads API

NOTICE – You will need to Request Google Ads API Access.

Need help with authentication?

Management

Reports

Bing Ads

This uses the BingAds-PHP-SDK for the Bing Ads API

NOTICE – You will need to Request Bing Ads API Access.

Need help with authentication or sandbox mode?

Management

Reports

Facebook Ads

This uses the facebook-php-business-sdk for Facebook Marketing API

Management

Reports

Customization

We realize that we can't add every endpoint so in order to help improve your developer experience, we have made the Service classes Macroable. Macros are a way to add a new custom method to the classes. This way you are able to utilize the existing auth and all of the other goodies that come with this package.

Typically, you should call this method from the boot method of one of your application's service providers, such as the App\Providers\AppServiceProvider service provider:

public function boot()
{
    LaravelAds\Services\BingAds\Service::macro('addUetTags', function($tags){
        $serviceCall = $this->call(ServiceClientType::CampaignManagementVersion13);

        try {
            $request = new AddUetTagsRequest();
            $request->UetTags = $tags;

            $serverResponse = $serviceCall->GetService()->AddUetTags($request);

            return $serverResponse;
        } catch (\Exception $e) {
            print $serviceCall->GetService()->__getLastRequest()."\n";
            print $serviceCall->GetService()->__getLastResponse()."\n";
        }
    });

    LaravelAds\Services\GoogleAds\Service::macro('dd', function(){
        dd($this);
    });
}

Then in your controller or job you would call:

$bingAds = LaravelAds::bingAds()->addUetTags([
    [
        'Name' => 'Extensible!',
        'Description' => 'No PR Needed!',
    ]
]);

$bingAds = LaravelAds::googleAds()->dd();

Contributions

We are actively looking for new contributors.

If you want to contribute, Join the Discord channel and/or submit pull requests.

License

Laravel Ads SDK (This Package) is open-sourced software licensed under the MIT license. USE AT YOUR OWN RISK. Laravel Ads SDK is a tool to help you manage your accounts, it does not guarantee features listed here will work as described. If you do find a bug, please feel free to submit an issue. This package is not affiliated with Laravel LLC or the Laravel Framework team.

laravel-ads-sdk's People

Contributors

dependabot[bot] avatar dmyers avatar eugenefvdm avatar hmaesta avatar modernben avatar myen-ln avatar paulsaundersrealrates avatar rob-orch avatar samuelcompary avatar timothymarois avatar vantezzen avatar zacksmash avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

laravel-ads-sdk's Issues

Bing Report Downloader uses incorrect name when opening report CSVs

The Bing Report downloader (https://github.com/tmarois/laravel-ads-sdk/blob/master/src/Services/BingAds/ReportDownload.php) always assumes that the report will be available at "[Report ID].csv" after unzipping.

In the last few weeks, MS seems to have changed something in their system though which results in the Report ID being in a format like "15012345678_161234567890" while the actual report csv is named "15012345678.csv" after unzipping (i.e. only the part before the underscore). Consequently, the Report Downloader will fail with "File not found" while attempting to read the file.

Currently, I am solving this issue locally by using a patched downloader like this:

<?php
use LaravelAds\Services\BingAds\ReportDownload;
use ZipArchive;

class PatchedReportDownload extends ReportDownload {
    protected function extractZip($location, $name)
    {
        $zip = new ZipArchive();
        if ($zip->open($location) === true) {
            $zip->extractTo(storage_path('app/'));
            $zip->close();

            unlink($location);
        }

        $storageFilePath = $this->getStorageFilePathForReportName($name);

        // Fix new report name format
        if (!file_exists($storageFilePath) && str_contains($name, "_")) {
            $name = substr($name, 0, strpos($name, "_"));
            $storageFilePath = $this->getStorageFilePathForReportName($name);
        }

        try {
            $data = file($storageFilePath);
        } finally {
            unlink($storageFilePath);
        }
        return $data;
    }

    protected function getStorageFilePathForReportName($name): string {
        return storage_path('app/') . $name . '.csv';
    }
}

Can others confirm this issue?

How to create campaign ..?

i has install and use this library, and i have done and understand how to use, i have done to get my campaign and edit name of campaign by use this library.....but how this library create campaign, any idea..? @timothymarois

Call Undefined method ServiceClient::__getLastRequest()

Hello,

im always getting this Error since some time:
Call to undefined method Microsoft\BingAds\Auth\ServiceClient::__getLastRequest() in /root/akoro/vendor/tmarois/laravel-ads-sdk/src/Services/BingAds/Reports.php:325

Do you have a solution for this?

Where see I get the customer Client Id?

// calling the Bing Ads Service and including the Customer Client Id
$bingAds = LaravelAds::bingAds()->with('CLIENT_ID');

What is this customer client Id and where can I get it?

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

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

  • Upgrade composer to remove the old AdWords API and use the new Google Ads API
  • Look over the migration guide and upgrade the auth/configs/methods as needed
  • Test the Google Ads methods to ensure everything is working properly and update namespaces according.

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 [email protected], or chat via the discord channel.

Thanks again!

Bing Ads: Invalid client data

I'm using the Bing Ads service, with the getCampaignReport() method, and I keep getting this error:

Invalid client data. Check the SOAP fault details for more information. TrackingId: some-uuid-xxx

Here's my query:

$response = LaravelAds::bingAds()
    ->with($this->client->bing_ads_id) // I've verified I'm using the correct Bing AID
    ->reports($this->dates[0], $this->dates[1]) // The dates are well formatted: yyyy-mm-dd
    ->setFields([
        CampaignPerformanceReportColumn::TimePeriod,
        CampaignPerformanceReportColumn::AccountId,
        CampaignPerformanceReportColumn::CampaignName,
        CampaignPerformanceReportColumn::CampaignId,
        CampaignPerformanceReportColumn::CampaignType,
        CampaignPerformanceReportColumn::Impressions,
        CampaignPerformanceReportColumn::Clicks,
        CampaignPerformanceReportColumn::Conversions,
        CampaignPerformanceReportColumn::Ctr,
        CampaignPerformanceReportColumn::AverageCpc,
        CampaignPerformanceReportColumn::Spend,
    ])
    ->getCampaignReport();

I've double checked my credentials and even generated new ones to be absolutely sure. I've request a new access token, using the artisan command provided. Any ideas what could the issue?

laravel exception after restore token (bing)

PHP Fatal error:  Uncaught ErrorException: fopen(php://stderr): failed to open stream: operation failed in /home/user/workspace/project/vendor/symfony/console/Output/ConsoleOutput.php:164
Stack trace:
#0 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleError()
#1 /home/user/workspace/project/vendor/symfony/console/Output/ConsoleOutput.php(164): fopen()
#2 /home/user/workspace/project/vendor/symfony/console/Output/ConsoleOutput.php(46): Symfony\Component\Console\Output\ConsoleOutput->openErrorStream()
#3 /home/user/workspace/project/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(112): Symfony\Component\Console\Output\ConsoleOutput->__construct()
#4 /home/user/workspace/project/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(98): Illuminate\Foundation\Bootstrap\HandleExceptions->renderForConsole()
#5 [internal function]: Illuminate\Foundation\Bootstrap\HandleExcept in /home/user/workspace/project/vendor/symfony/console/Output/ConsoleOutput.php on line 164
PHP Fatal error:  Uncaught ErrorException: include(/home/user/workspace/project/vendor/symfony/debug/Exception/FatalErrorException.php): failed to open stream: Too many open files in /home/user/workspace/project/vendor/composer/ClassLoader.php:478
Stack trace:
#0 /home/user/workspace/project/vendor/composer/ClassLoader.php(478): Illuminate\Foundation\Bootstrap\HandleExceptions->handleError()
#1 /home/user/workspace/project/vendor/composer/ClassLoader.php(478): include()
#2 /home/user/workspace/project/vendor/composer/ClassLoader.php(346): Composer\Autoload\includeFile()
#3 [internal function]: Composer\Autoload\ClassLoader->loadClass()
#4 /home/user/workspace/project/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(147): spl_autoload_call()
#5 /home/user/workspace/project/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(134): Illuminate\Foundation\Bootstrap\HandleEx in /home/user/workspace/project/vendor/composer/ClassLoader.php on line 478

use latest version laravel-ads-sdk and laravel 6

(How) is it possible to get the number of Conversions inside a Conversion Action?

Hello again,

I am currently trying to find out how I can extract the number and value of the Conversions inside a Conversions Action in a given time from Google Ads.

Inside the Google Ads Interface, when going to "Tools" > "Conversions" > "Conversion Actions" I see a list like this (sorry, my Google interface is currently in German):

dgwgsgsrgsr

On the right side (highlighted in red) I can see the number and value of conversions tracked inside that Conversion Action. Using the time slider above I can also view the number and value of Conversions that happend in a daterange.

I'm now trying to automate getting these numbers from the Google Ads API so that I can graph them, comparing different Conversion Actions over time.

I thought that I might be able to get these numbers using the report functionality but I can't seem to get any of them using that method.

Does anyone know a method I could use to get these values?

Google Ads: QuotaCheckError.INVALID_TOKEN_HEADER

Hi,

I'm getting a Google\AdsApi\AdWords\v201809\cm\ApiException with the Error Message: QuotaCheckError.INVALID_TOKEN_HEADER when I want to list all Google Ads campaigns.

In the ENV I set the ADWORDS_DEVELOPER_TOKEN, ADWORDS_OAUTH2_CLIENT_ID, ADWORDS_OAUTH2_CLIENT_SECRET and ADWORDS_OAUTH2_REFRESH_TOKEN

The Developer Token is generated through the Google Cloud API Console and I activated the Google Ads API.

How can I fix this problem?

Thanks!

V12 is now available?

when I run the function eg: getCampaignReport for bing, I get the error like

Invalid client data. Check the SOAP fault details for more information

Β 

I tracked the error, but I found the error message is This version of the Bing Ads API is no longer supported. Please migrate to the latest version of the API.

this library need to updated to usd V13 for Bing?

Out-of-band (OOB) flow for Google has been removed

When using php artisan laravelads:token:generate --service=GoogleAds, the OOB flow will be used by setting the redirect URL to "urn:ietf:wg:oauth:2.0:oob".

This has been deprecated and removed by Google (https://developers.google.com/identity/protocols/oauth2/resources/oob-migration#overview), especially for new apps. Due to this, it's impossible to generate new refresh tokens on apps created after February 28th.

Google's docs recommend switching to custom API endpoint to handle this

Tag new release to support Laravel v10

@timothymarois Could there be a new release tagged? While upgrading to Laravel 10, the dependency on Google ads in the 1.5 release (latest version tagged), is set to a specific version which is locked to monolog v2 and Laravel v10 requires monolog v3.

Sort of a dependency chain problem, but if we could get v1.6 tagged I would be able to keep my minimum-stability set to stable instead of dev which is working.

Can this library be used with the Bing API Sandbox?

Hello,

first off, this library looks really awesome. I've tried setting up those services individually and it is just so much work and I can't get it to work most of the time - you are really helping me so much!

Now I wanted to start developing with this library using the Bing Ads API. When developing directly with the SDK I used the sandbox environment to test all my things but I couldn't find any information on how to use the sandbox in this library.

Is is possible to use the Bing Ads Sandbox with this library? If yes, how would I do that?

Again, thank you so much for taking the time to develop this library and open-sourcing it!

New developers must use the Google Ads API

Hi,

I'm currently trying to use this package with newly generated Google Ads credentials. And when running LaravelAds::googleAds()->with($accountNumber)->reports($startDate, $endDate)->getAccountReport(); an exception occurs with the message Details: [fieldPath: ; trigger: New developers must use the Google Ads API: https://developers.google.com/google-ads/api/docs/start; errorString: QuotaCheckError.INVALID_TOKEN_HEADER].
It seems like newly created credentials must use their new API.

Are there any plans to make this package use their new API so we that recently created our API credentials can actually use the Google Ads part of this package?

Update Facebook Business SDK to v12

I'm unable to fetch anything from Facebook API due to the library using the v11 API.

I've updated the SDK locally and haven't seen any errors. Would you be willing to bump the composer version?

Marketing API < v14.0 deprecation notice

I received this email today, letting me know that January 25, 2023 they will deprecate anything lower than v14. This lib currently uses v13, so it'd be good to get that bumped soon. I can submit a PR if necessary.

Thanks!

I have a quastion about bing

to use bing api we should define BING_CLIENT_ID ,BING_CLIENT_SECRET ,BING_REFRESH_TOKEN and for get these information we have to register app in Azure portal. According to this document https://docs.microsoft.com/en-us/advertising/guides/authentication-oauth-identity-platform?view=bingads-13 we should provide the following information:

  • Application / API Name
  • What account types should be able to access this Application / API?
  • Redirect URIs
  • Any other additional relevant information

i really dont have any idea about that so would you please guide me about that or create a clear instruction to use bing
Thank you so much
BR

Multiple accounts

Hi,

Is it possible to use this for multiple accounts?

Ex:

  • Account owner (Facebook Ads, Google Ads etc) clicks login
  • Login gets the access keys required and authorises access for their account
  • Keys are stored and used in the API for that specific user

Thank you

Facebook Reports: Need to specify proper level param

In the facebook-implement branch, src/Services/FacebookAds/Reports.php, for functions getCampaignReport and getAdGroupReport, it looks like you need to specify the proper $params['level'], either 'campaign' or 'adset'. It's currently using 'account', and using that I can't get campaign_id or campaign_name when trying to get a campaign report. It seems to work if it's set to 'campaign'. I assume adGroup/adset is the same, but I haven't tested that yet.

Googe Ads API Access

Did you have to design a document to give to Google Ads in order to get API access?

My goal is mostly to just report offline conversions for ad campaigns myself, but it seems like getting API access is a big burden just so I can spend more money and was hoping to see if anyone else had any success.

Can't install and configure laravel-ads-sdk in my laravel project

Hi,

In my laravel project I successfully ad laravel ads with this cmd line :
composer require tmarois/laravel-ads-sdk:^1.2

My laravel project version is : Laravel Framework Lumen (5.4.7) (Laravel Components 5.4.*)

But then I m stuck, I can't configure anything related to laravel-ads

When I run this : php artisan vendor:publish
I get this error message ; There are no commands defined in the "vendor" namespace.

And then I also get an error when running:
php artisan laravelads:token:generate --service=BingAds
I get : There are no commands defined in the "laravelads:token" namespace.

I successfully run composer dump-autoload -o but it didn't change nothing.

Any help would be very apreciated,
Thank you in advance !
Regards

Cannot install in fresh Laravel application

Seems to be an issue with monolog version

composer require tmarois/laravel-ads-sdk
Using version ^1.2 for tmarois/laravel-ads-sdk
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for monolog/monolog (locked at 2.0.2) -> satisfiable by monolog/monolog[2.0.2].
    - tmarois/laravel-ads-sdk 1.2.x-dev requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - tmarois/laravel-ads-sdk v1.2.11 requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - tmarois/laravel-ads-sdk v1.2.12 requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - tmarois/laravel-ads-sdk v1.2.13 requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - tmarois/laravel-ads-sdk v1.2.14 requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - tmarois/laravel-ads-sdk v1.2.15 requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - tmarois/laravel-ads-sdk v1.2.16 requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - tmarois/laravel-ads-sdk v1.2.17 requires googleads/googleads-php-lib ^40.0 -> satisfiable by googleads/googleads-php-lib[40.0.0].
    - Conclusion: don't install googleads/googleads-php-lib 40.0.0
    - tmarois/laravel-ads-sdk v1.2.0 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.1 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.10 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.2 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.3 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.4 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.5 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.6 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.7 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.8 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - tmarois/laravel-ads-sdk v1.2.9 requires googleads/googleads-php-lib ^38.0 -> satisfiable by googleads/googleads-php-lib[38.0.0].
    - Conclusion: don't install googleads/googleads-php-lib 38.0.0
    - Installation request for tmarois/laravel-ads-sdk ^1.2 -> satisfiable by tmarois/laravel-ads-sdk[1.2.x-dev, v1.2.0, v1.2.1, v1.2.10, v1.2.11, v1.2.12, v1.2.13, v1.2.14, v1.2.15, v1.2.16, v1.2.17, v1.2.2, v1.2.3, v1.2.4, v1.2.5, v1.2.6, v1.2.7, v1.2.8, v1.2.9].


Installation failed, reverting ./composer.json to its original content.


How to support lumen?

hi man,
run composer require tmarois/laravel-ads-sdk is ok.

but php artisan vendor:publish is not work.

What's the next step?

thx a lot.

Bing Campaigns broken

Bing campaigns seem to have broken in commit a37638c35a27b7e51e96162dab554d4814c819c2

Many of the Operation class methods were removed from CampaignOperations, and it does not extend the Operation class like AdGroupOperations so now there are missing methods.

Can we just extend the Operation class like AdGroupOperations does?

Trace

   Symfony\Component\Debug\Exception\FatalThrowableError  : Call to undefined method LaravelAds\Services\BingAds\Operations\Campaign::set()

  at /var/www/vhost/ad-data-gatherers/vendor/tmarois/laravel-ads-sdk/src/Services/BingAds/Service.php:196
    192|      */
    193|     public function campaign($campaign)
    194|     {
    195|         if ($campaign instanceof \stdClass) {
  > 196|             return (new Campaign($this))->set($campaign);
    197|         }
    198|
    199|         return (new Campaign($this))->setId($campaign)->get();
    200|     }

  Exception trace:

  1   LaravelAds\Services\BingAds\Service::campaign(Object(stdClass))
      /var/www/vhost/ad-data-gatherers/vendor/tmarois/laravel-ads-sdk/src/Services/BingAds/Fetch.php:59

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.