<?php

require "../src/autoload.php";
$casper = new \Casper\Developer\CasperDeveloperAPI("api_key", "api_secret");
$snapchat = new \Snapchat\Snapchat($casper);
try {
    //Login
    $login = $snapchat->login("username", "password");
    //Find friends by Numbers and Names
    $findFriends = $snapchat->findFriends("NZ", array("0000000000" => "Friend Name", "1234567890" => "Second Friend", "0987654321" => "Friend Three"));
    $results = $findFriends->getResults();
    foreach ($results as $result) {
        echo sprintf("Found Friend: Username=%s Display=%s", $result->getName(), $result->getDisplay()) . "\n";
    }
} catch (Exception $e) {
    //Something went wrong...
    echo $e->getMessage() . "\n";
}
<?php

require "../src/autoload.php";
$casper = new \Casper\Developer\CasperDeveloperAPI("api_key", "api_secret");
$snapchat = new \Snapchat\Snapchat($casper);
try {
    //Login
    $login = $snapchat->login("username", "password");
    //Download My SnapTag
    $snapchat->downloadMySnapTag(sprintf("download/snaptag/%s.png", $snapchat->getUsername()));
    //Download someone else's SnapTag
    $snapchat->downloadSnapTagByUsername("teamsnapchat", "download/snaptag/teamsnapchat.png");
} catch (Exception $e) {
    //Something went wrong...
    echo $e->getMessage() . "\n";
}
Example #3
1
<?php

use Snapchat\Util\FileUtil;
require "../src/autoload.php";
$casper = new \Casper\Developer\CasperDeveloperAPI("api_key", "api_secret");
$snapchat = new \Snapchat\Snapchat($casper);
try {
    register_account:
    echo "Email: ";
    $email = trim(fgets(STDIN));
    echo "Password: "******"Birthday (YYYY-MM-DD): ";
    $birthday = trim(fgets(STDIN));
    echo "Registering Account...\n";
    try {
        $snapchat->register($email, $password, $birthday, "America/New_York");
    } catch (Exception $e) {
        echo $e->getMessage() . "\n";
        goto register_account;
    }
    echo "Account Registered, Link a Username!\n";
    goto link_username;
    link_username:
    echo "Username: "******"\n";
        goto link_username;
<?php

require "../src/autoload.php";
$casper = new \Casper\Developer\CasperDeveloperAPI("api_key", "api_secret");
$snapchat = new \Snapchat\Snapchat($casper);
try {
    //Login
    $login = $snapchat->login("username", "password");
    //Add Friend
    $snapchat->addFriend("username_to_add");
} catch (Exception $e) {
    //Something went wrong...
    echo $e->getMessage() . "\n";
}
<?php

require "../src/autoload.php";
$casper = new \Casper\Developer\CasperDeveloperAPI("api_key", "api_secret");
$snapchat = new \Snapchat\Snapchat($casper);
try {
    //Use a Proxy for API Requests
    $casper->setProxy("127.0.0.1:8888");
    //Proxy for Casper API
    $snapchat->setProxy("127.0.0.1:8888");
    //Proxy for Snapchat API
    //Use AuthToken instead of Username and Password
    $snapchat->initWithAuthToken("username", "auth_token");
    //Download a Snap by ID. You will need to know the File Extension
    $mediapath = $snapchat->downloadSnapById("1234567890123456r", "download/snaps/SavedSnap.jpg");
    //Download a Story by ID. You will need to know the Key/IV and File Extension
    $mediapath = $snapchat->downloadStoryById("1234567890123456r", "key", "iv", "download/stories/SavedStory.jpg");
    //Mark a Snap Viewed by Id (or Snap Object)
    $snapchat->markSnapViewed("1234567890123456r");
    //Mark a Story Viewed by Media Id (or Story Object)
    $snapchat->markStoryViewed("xxxxxxxxxxxxxxxx");
    //Snaps and Chat Messages
    $conversations = $snapchat->getConversations();
    //Friends, Friend Requests
    $friendsResponse = $snapchat->getCachedFriendsResponse();
    //AuthToken, Score, Birthday, etc
    $updatesResponse = $snapchat->getAllUpdates();
    //Your Stories and Friends Stories
    $storiesResponse = $snapchat->getStories();
} catch (Exception $e) {
    //Something went wrong...
<?php

require "../src/autoload.php";
$casper = new \Casper\Developer\CasperDeveloperAPI("api_key", "api_secret");
$snapchat = new \Snapchat\Snapchat($casper);
try {
    //Login
    $login = $snapchat->login("username", "password");
    //Get Conversations from Login Response
    $conversations = $login->getConversationsResponse();
    //Download all un-viewed Snaps
    foreach ($conversations as $conversation) {
        $snaps = $conversation->getSnaps();
        foreach ($snaps as $snap) {
            //Only Received Snaps that haven't been Viewed
            if ($snap->wasReceived() && !$snap->hasBeenViewed()) {
                //Where to Save the Snap
                $filename = sprintf("download/snaps/%s.%s", $snap->getId(), $snap->getFileExtension());
                //Where to Save the Overlay (if it exists)
                $filename_overlay = sprintf("download/snaps/%s_overlay.png", $snap->getId());
                //Download the Snap
                $mediapath = $snapchat->downloadSnap($snap, $filename, $filename_overlay);
                echo "Snap saved to: " . $mediapath->getBlobPath() . "\n";
                if ($mediapath->overlayExists()) {
                    echo "Snap Overlay saved to: " . $mediapath->getOverlayPath() . "\n";
                }
            }
        }
    }
} catch (Exception $e) {
    //Something went wrong...
<?php

require "../src/autoload.php";
$casper = new \Casper\Developer\CasperDeveloperAPI("api_key", "api_secret");
$snapchat = new \Snapchat\Snapchat($casper);
try {
    //Login
    $login = $snapchat->login("username", "password");
    //Get Conversations from Login Response
    $conversations = $login->getConversationsResponse();
    //Mark all unviewed Snaps as Viewed
    foreach ($conversations as $conversation) {
        $snaps = $conversation->getSnaps();
        foreach ($snaps as $snap) {
            //Snaps we Received and haven't Viewed yet
            if ($snap->wasReceived() && !$snap->hasBeenViewed()) {
                $snapchat->markSnapViewed($snap);
            }
        }
    }
} catch (Exception $e) {
    //Something went wrong...
    echo $e->getMessage() . "\n";
}