Skip to content
API Wrapper for SoundCloud written in PHP with support for authentication using OAuth 2.0. http://soundcloud.qvister.se
PHP
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
Services
tests
README.md

README.md

SoundCloud PHP API Wrapper

Introduction

A wrapper for the SoundCloud API written in PHP with support for authentication using OAuth 2.0.

The wrapper got a real overhaul with version 2.0. The current version was written with PEAR in mind and can easily by distributed as a PEAR package.

Getting started

Check out the getting started wiki entry for further reference on how to get started. Also make sure to check out the demo application for some example code.

Examples

The wrapper includes convenient methods used to perform HTTP requests on behalf of the authenticated user. Below you'll find a few quick examples.

Ofcourse you need to handle the authentication first before being able to request and modify protect resources as demonstrated below. Therefor I refer to the demo application which got some example code on how to handle authentication.

GET

try {
    $response = json_decode($soundcloud->get('me'), true);
} catch (Services_Soundcloud_Invalid_Http_Response_Code_Exception $e) {
    exit($e->getMessage());
}

POST

$comment = <<<EOH
<comment>
    <body>Yeah!</body>
</comment>
EOH;

try {
    $response = json_decode(
        $soundcloud->post(
            'tracks/1/comments',
            $comment,
            array(CURLOPT_HTTPHEADER => array('Content-Type: application/xml'))
        ),
        true
    );
} catch (Services_Soundcloud_Invalid_Http_Response_Code_Exception $e) {
    exit($e->getMessage());
}

PUT

$track = <<<EOH
<track>
    <downloadable>true</downloadable>
</track>
EOH;

try {
    $response = json_decode(
        $soundcloud->put(
            'tracks/1',
            $track,
            array(CURLOPT_HTTPHEADER => array('Content-Type: application/xml'))
        ),
        true
    );
} catch (Services_Soundcloud_Invalid_Http_Response_Code_Exception $e) {
    exit($e->getMessage());
}

DELETE

try {
    $response = json_decode($soundcloud->delete('tracks/1'), true);
} catch (Services_Soundcloud_Invalid_Http_Response_Code_Exception $e) {
    exit($e->getMessage());
}

Feedback and questions

Found a bug or missing a feature? Don't hesitate to create a new issue here on GitHub. Or contact me directly.

Also make sure to check out the official documentation and the join Google Group in order to stay updated.

Something went wrong with that request. Please try again.