gettyimages / gettyimages-api
Getty Images API SDK - PHP
Installs: 116 633
Dependents: 0
Suggesters: 0
Security: 0
Stars: 14
Watchers: 9
Forks: 14
Open Issues: 2
Requires
- php: >=7.0
- php-di/php-di: ^6.0
Requires (Dev)
- phine/phar: ~1.0
- phpunit/phpunit: ^6
README
Introduction
This SDK makes using the Getty Images API easy. It handles credential management, makes HTTP requests and is written with a fluent style in mind. For more info about the API, see the Documentation.
- Search for images and videos from our extensive creative and editorial catalogs.
- Get image and video metadata.
- Download files using your Getty Images products (e.g., Editorial subscriptions, Easy Access, Thinkstock Subscriptions, and Image Packs).
- Custom Request functionality that allows user to call any endpoint.
Help & Support
Getting started
Obtain an API Key
If you don't already have an API key, fill out and submit the contact form to be connected to our Sales team.
Installing the package
The SDK is available on Packagist.
Examples
See example.md for examples.
Building From Source Code
Source code is only needed if you would like to contribute to the project. Otherwise, use the package
Initial Setup
Assumptions
- You have PHP >=7.2 setup
PHP.ini settings to build the code
[Phar]
; http://php.net/phar.readonly
phar.readonly = Off
//Extensions needed for Windows OSs
extension=php_curl.dll
extension=php_mbstring.dll
extension=php_exif.dll
extension=php_sockets.dll
extension=php_openssl.dll
Install via Composer
Please refer to README_ComposerInstall.md
Quick Build
If everything is setup on your machine where PHP will run, you can most likely run BuildSDK.bat or Build.sh to automatically build the phar. If something fails please read the error messages, PHP can have a finicky setup if you've never tried to use it to build a package before.
Windows
build.bat
Linux / OSX
Prerequisites
On Ubuntu, you may need to install a few additional packages
sudo apt update sudo apt install php-xml php-mbstring
Building
./build.sh
This will put GettyImagesApi.phar in a build folder. Then you can use the package as you would any other phar.
The build does a few things for you automatically
- Determines if you have composer.phar and will retrieve it if you don't have it
- Runs
composer install
to get dependencies that are outlined in the composer.json file - Then produces the phar file in ./build/GettyImagesApi.phar
Manually Installing PHP libraries
BuildSDK should get all the dependencies for you but if you want to do the update without a build From the root of the repository
php composer.phar install
If you want the test dependencies
php composer.phar install --require-dev
This command should install PHPUnit and any other php dependency libraries
Environment variables of interest
The sdk does support using a proxy directly as well as ignoring ssl validation errors. This can be configured through the existense environment variables
GettyImagesApi_IgnoreSSLValidation
GettyImagesApi_UseProxy
*nix Shell Example:
export GettyImagesApi_IgnoreSSLValidation=TRUE
export GettyImagesApi_UseProxy=127.0.0.0:8888
Windows CMD Example:
set GettyImagesApi_IgnoreSSLValidation=TRUE
set GettyImagesApi_UseProxy=127.0.0.0:8888
Powershell Example
$env:GettyImagesApi_IgnoreSSLValidation=TRUE
$env:GettyImagesApi_UseProxy="127.0.0.0:8888"
Tests
Running unit tests
The test project contains unit tests written using the PHPUnit Framwork.
Execute the unit tests
Assumptions
- You have PHPUnit installed
To execute all of the unit tests: ./vendor/bin/phpunit --bootstrap vendor/autoload.php unitTests/.
To execute one test class: ./vendor/bin/phpunit --bootstrap vendor/autoload.php unitTests/EXAMPLETEST
Maintainers
To publish a new version to Packagist, create a new release with an updated tag. A webhook will notify Packagist to grab the latest version.