digicol / dcx-sdk-php
Official PHP SDK for the Digital Collections DC-X Digital Asset Management system
Installs: 78 408
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 9
Forks: 1
Open Issues: 4
Requires
- php: >=5.5.9
- ext-curl: *
- ext-json: *
- guzzlehttp/guzzle: ^7.0
- guzzlehttp/psr7: ^1.4
This package is not auto-updated.
Last update: 2024-11-05 02:13:04 UTC
README
The DcxApiClient
class helps your custom PHP code connect to your DC-X system
via the HTTP-based DC-X JSON API (documented in our partner and customer Wiki).
Versions
If you need to use the old DCX_Api_Client
class, check out the 1.0.0 release.
For everyone else, we recommend the latest, Guzzle-based version.
Installation in Composer-based projects
If your PHP project uses Composer, installation is straightforward.
- Either run
composer require digicol/dcx-sdk-php
. - Or add this to your project’s
composer.json
file:
"require":
{
"digicol/dcx-sdk-php": "^2.0"
},
… and run composer update
in your project to download the SDK.
Installation in projects not using Composer
You don’t have to use Composer in your project to use the SDK. But you still need it (see its installation instructions) for downloading the SDK’s dependencies after checking out the sources:
$ git clone https://github.com/digicol/dcx-sdk-php.git
$ cd dcx-sdk-php
$ composer install
In your PHP code, include the SDK’s autoloader like this:
require('/path/to/dcx-sdk-php/vendor/autoload.php');
Getting started
Here’s an example of retrieving a DC-X collection’s details (name, links to retrieving documents):
<?php
require __DIR__ . '/vendor/autoload.php';
$dcxApiClient = new \Digicol\DcxSdk\DcxApiClient
(
'http://example.com/dcx/api/',
['username' => 'testuser', 'password' => 'secret'],
['http_useragent' => 'MyCustomProject']
);
$httpStatusCode = $dcxApiClient->get
(
'document',
[
'q' => ['channel' => ['ch050dcxsystempoolnative']],
's' => ['fields' => ['_display_title', 'DateCreated']]
],
$documentsData
);
echo "Got search results:\n";
var_dump($httpStatusCode);
print_r($documentsData);
See the DC-X JSON API documentation for more examples.