Skip to content

This package provides a PHP client library for working with the Microsoft Graph API.

License

Notifications You must be signed in to change notification settings

apility/microsoft-graph-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microsoft Graph API client library

This package provides a Laravel wwrappers for working with the Microsoft Graph API.

Table of Contents

Installation

composer require apility/microsoft-graph-api

Laravel

Configuration

Export the configuration file:

php artisan vendor:publish --provider="Microsoft\GraphAPI\ServiceProvider" --tag="config"

Add the following environment variables to your .env file:

MICROSOFT_GRAPH_API_TENANT_ID=<your-tenant-id>
MICROSOFT_GRAPH_API_APP_ID=<your-app-id>
MICROSOFT_GRAPH_API_CLIENT_SECRET=<your-client-secret>

Usage

use Microsoft\GraphAPI\Facades\GraphAPI;

$me = GraphAPI::get('/me')->json();

Filesystem

The package also provides a Flysystem adapter.

To enable this, add the following to your disk configuration in the config/filesystems.php file:

'disks' => [
    'microsoft' => [
        'driver' => 'microsoft',
        'site_id' => env('MICROSOFT_GRAPH_API_SITE_ID'),
    ],
],

You may now use the microsoft disk in your application.

$files = Storage::disk('microsoft')->allFiles('path');

Only read, list and delete operations are currently supported.

Without Laravel (Plain PHP)

Usage

use Microsoft\GraphAPI\GraphAPI\Client;
use Microsoft\GraphAPI\GraphAPI\Auth\Credentials;

$credentials = new Credentials(
    '<your-tenant-id>',
    '<your-app-id>',
    '<your-client-secret>'
);

$client = new Client($credentials);

$me = $client->get('/me');

License

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


Copyright Apility AS © 2023

About

This package provides a PHP client library for working with the Microsoft Graph API.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages