1. Go to this page and download the library: Download dream-group/dream-apply-sdk library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
dream-group / dream-apply-sdk example snippets
$client = new \Dream\Apply\Client\Client('https://instance.dreamapply.com/api/', 'abcdefghijklmnopqrstuvwxyz123456');
$client->applications[1]->academicTerm; // 'academic_term' from /applications/1
$client->academicTerms; // /academic-terms
$client->applicants[1];
foreach ($client->applicants as $applicantId => $applicant) {
print "{$applicantId} email is {$applicant->email}";
}
$client->applicants->count(); // count items (sends HEAD request)
$client->applicants->exists(1); // existence check (sends HEAD request)
$client->applicants->toArray(); // convert to array
// filters are ent->getApplications(['byCommenceYear' => 2016, 'byStatuses' => 'Submitted']);
$inactive = $applications->filter(['byStatuses' => 'Inactive']); // add or override conditions in filter
$inactive->count(); // count filtered
$inactive->toArray(); // array of filtered items
// returned fields are properties
$client->applicants[1]->email;
$client->applicants[1]->name['given'];
// all links between records are automatically resolved
$client->applicants[1]->trackers[1]->assigned; // get field of tracker association
$client->applicants[1]->trackers[1]->tracker; // get actual tracker from association
// when iterating over collections, object properties are lazy loaded
// please note when calculating API request count
$applications = $client->getApplications(['byCommenceYear' => 2016, 'byStatuses' => 'Submitted']);
// one request
foreach ($applications as $id => $app) {
var_dump($app->revised); // 'revised' is returned in collection
}
// collection request + 1 request per object
foreach ($applications as $id => $app) {
var_dump($app->profile); // 'profile' is not returned in collection, we have to request it
}
$photo = $client->applicants[1]->photo;
$photo->name; // file name
$photo->mime; // mime type
$photo->size; // file size
$photo->uploaded; // file uploaded timestamp
$photo->content; // file content, an instance of StreamInterface from PSR-7
$photo->expires; // expiration timestamp (is set for reports)
file_put_contents("/tmp/{$photo->name}", $photo->content);
$client->applicants[1]->trackers->add($newTracker); // add by associated object
$flagAssoc = $client->applications[1]->flags->add(123); // add by associated object id, get assoc instance
$client->applications[1]->flags->delete(123); // delete by id
$client->applications[1]->flags->delete($flagAssoc); // delete by association object
$client->applications[1]->flags->delete($newFlag); // delete by associated record
use Dream\Apply\Client\Models\Offer;
$client->applications[21]->tasks[4]->setStatus('This is an example status of a task.');
$client->applications[32]->offers[76]->setType(Offer::TYPE_ACCEPTED);
// list all available reports
$client->reports->getAvailable();
// get report as binary record
$client->reports->getReport('ReportStatus', ['regions' => 1, 'academicTerm' => 1, 'institutions' => 1]);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.