neclimdul/oauth2-marketo

Marketo OAuth 2.0 support for the PHP League's OAuth2-Client

v2.0.3 2022-03-25 20:37 UTC

This package is auto-updated.

Last update: 2024-04-26 00:50:47 UTC


README

Software License

This package provides Marketo OAuth 2.0 support for the PHP League's OAuth 2.0 Client.

This package is based on https://github.com/kristenlk/oauth2-marketo and mostly just updated to support newer releases of dependencies.

Installation

To install, use composer:

composer require neclimdul/oauth2-marketo

Usage

Usage is the same as The League's OAuth client, using \NecLimDul\OAuth2\Client\Provider\Marketo as the provider.

Authorization Code Flow

Marketo's REST APIs are authenticated with two-legged OAuth 2.0. We don't need to pass a redirectUri to the provider, but we do need to include a base url that will be used to request an access token.

<?php
$provider = new \NecLimDul\OAuth2\Client\Provider\Marketo([
    'clientId'          => '{marketo-client-id}',
    'clientSecret'      => '{marketo-client-secret}',
    'baseUrl'           => 'https://your-base-url.mktorest.com'
]);

// Try to get an access token (using the client credentials grant)
$token = $provider->getAccessToken('client_credentials');

// Use this to interact with an API on the users behalf
echo $token->getToken();

If the access token expires, we can just call getAccessToken() again.

Testing

$ ./vendor/bin/phpunit

Contributing

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.