Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Microsoft Graph Laravel Package

microsoft/microsoft-graph

View on GitHub
Deep Wiki
Context7

1. GET ALL USERS IN A TENANT (GET /users)

$graphServiceClient = new GraphServiceClient($tokenRequestContext);

try {
    $users = $graphServiceClient->users()->get()->wait();
    if ($users && $users->getValue()) {
        foreach ($users->getValue() as $user) {
            echo "User ID: {$user->getId()}<br>";
            echo "User Display Name: {$user->getDisplayName()}<br>";
            echo "User Mail: {$user->getMail()}<br><br>";
        }
    }
} catch (ApiException $ex) {
    echo "Error: " . $ex->getResponseStatusCode() . "\n";
    echo "Error: " .$ex->getError()->getMessage();";
}

2. GET A SPECIFIC USER (GET /users/{id | userPrincipalName})

$graphServiceClient = new GraphServiceClient($tokenRequestContext);

$userId = "<USER-ID>"; 

try {
    $user = $graphServiceClient->users()->byUserId($userId)->get()->wait();
    if ($user) {
        echo "User Principal Name: {$user->getUserPrincipalName()}<br>";
        echo "User Display Name: {$user->getDisplayName()}<br>";
        echo "User ID: {$user->getId()}<br>";
    }
} catch (ApiException $ex) {
    echo "Error: " . $ex->getResponseStatusCode() . "\n";
    echo "Error: " .$ex->getError()->getMessage();";
}

3. SEARCH USER BY NAME (GET /users/$search?=)

$graphServiceClient = new GraphServiceClient($tokenRequestContext);

$userId = "<USER-ID>"; 

try {
    $memberships = $graphServiceClient->users()->byUserId($userId)->transitiveMemberOf()->get()->wait();
    if ($memberships && $memberships->getValue()) {
        foreach ($memberships->getValue() as $membership) {
            $obj = $graphServiceClient->directoryObjects()->byDirectoryObjectId($membership->getId())->get()->wait();
            if ($obj && $obj->getOdataType() === '#microsoft.graph.group') {
                $group = $graphServiceClient->groups()->byGroupId($obj->getId())->get()->wait();
                if ($group) {
                    echo "Group ID: {$group->getId()}<br>";
                    echo "Group Types: " . json_encode($group->getGroupTypes()) . "<br>";
                    echo "Group Display Name: {$group->getDisplayName()}<br>";
                    echo "Group Mail: {$group->getMail()}<br><br>";
                }
            }
        }
    }
} catch (ApiException $ex) {
    echo "Error: " . $ex->getResponseStatusCode() . "\n";
    echo "Error: " .$ex->getError()->getMessage();";
}
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky