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, video, and event 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.
We will attempt to support all versions of NodeJS that are still supported. See the NodeJS Release Page for info on this.
If you don't already have an API key, fill out and submit the contact form to be connected to our Sales team.
The SDK is available as an npm package. Install in your workspace with:
npm install --save gettyimages-api
var api = require("gettyimages-api");
var creds = { apiKey: "your_api_key", apiSecret: "your_api_secret", username: "your_username", password: "your_password" };
var client = new api (creds);
client.searchimagescreative().withPage(1).withPageSize(1).withPhrase('beach')
.execute().then(response => {
console.log(JSON.stringify(response.images[0]));
}, err => {
throw err;
});
var api = require("gettyimages-api");
var creds = { apiKey: "your_api_key", apiSecret: "your_api_secret", username: "your_username", password: "your_password" };
var client = new api (creds);
client.images().withId('200261415-001')
.execute().then(response => {
console.log(JSON.stringify(response.images[0]));
}, err => {
throw err;
});
var api = require("gettyimages-api");
var creds = { apiKey: "your_api_key", apiSecret: "your_api_secret", username: "your_username", password: "your_password" };
var client = new api (creds);
client.downloadsimages().withId('503928206')
.execute().then(response => {
console.log(response.uri);
}, err => {
throw err;
});
// Gets some info about a video and then downloads the NTSC SD version
var api = require("gettyimages-api");
var https = require("https");
var fs = require("fs");
var creds =
{
apiKey: "your api key",
apiSecret: "your api secret",
username: "username",
password: "password"
};
var client = new api(creds);
var videoId = "459425248";
client.videos().withResponseField(["summary_set", "downloads"]).withId(videoId).execute().then(response => {
console.log("Title: " + response.title);
console.log("Sizes: ");
response.download_sizes.forEach((current, index, arr) => {
console.log(current.name + " - " + current.description);
})
client.downloadsvideos().withId(videoId).withSize("ntsccm").execute().then(response => {
var downloadUri = response.uri;
https.get(downloadUri, (res) => {
if (res.statusCode === 200) {
var header = res.headers["content-disposition"];
var filename = header.split("filename=")[1];
console.log(filename);
var file = fs.createWriteStream("./" + filename);
res.on("data", (chunk) => {
file.write(chunk);
}).on("end", () => {
file.end();
});
}
});
}, err => {
throw err;
});
}, err => {
throw err;
});
var api = require("gettyimages-api");
var creds = { apiKey: "your_api_key", apiSecret: "your_api_secret", username: "your_username", password: "your_password" };
var client = new api (creds);
client.getAccessToken().then(response => {
console.log(response.access_token);
}, err => {
throw err;
});
var api = require("gettyimages-api");
var creds = { apiKey: "your_api_key", apiSecret: "your_api_secret", username: "your_username", password: "your_password" };
var client = new api (creds);
client.customrequest().withRoute("search/images").withMethod("get").withQueryParameters({"phrase": "cat", "file_types": "eps"})
.execute().then(response => {
console.log(JSON.stringify(response.images[0]));
}, err => {
throw err;
});
var api = require("gettyimages-api");
var creds = { apiKey: "your_api_key", apiSecret: "your_api_secret", username: "your_username", password: "your_password" };
var client = new api (creds);
client.searchimagescreative().withPage(1).withPageSize(1).withPhrase('beach')
.withCustomParameter("safe_search", "true")
.withCustomHeader("gi-country-code", "CAN")
.execute().then(response => {
console.log(JSON.stringify(response.images[0], null, 1));
}, err => {
throw err;
});