Getting Started with Bynder API

Bynder (www.bynder.com) is a Digital Asset Management solution that allows you to store, manage and share your assets. Using the Bynder API you can access assets, brands, collections and all their metadata fields as well as pointers to the file destinations. For more information on how to use the Bynder API, click here.

Note: In case you have Paw or Postman, you can download the following Paw file or Postman Collection which contain all of the API requests defined in this page.

Definitions

Consumer

  • Consists of a key and secret.
  • A website or application that uses OAuth to access the service provider on behalf of the user.

Request token pair

  • A temporary valid token pair consisting of token and secret.Used by the consumer to obtain authorization from the user, and exchanged for an access token pair.

Access token pair

  • A token pair consisting of token and secret.
  • Used by the consumer to gain access to the protected Bynder API calls.

Authorization

Bynder supports only the following type of authorization protocol to authorize API calls:

  • OAuth 2.0 using an Authorization Header including a bearer access token in JWT format.

OAuth Scopes

The scope limits an OAuth access token to only access data the user has consented to on the consent page. These are passed during the flow which is described in the OAuth 2.0 section. Additionally, Bynder will only grant the scopes matching the user's required permissions. To see which permissions are required for each scope, see the Retrieve scopes endpoint.

Below is the list of scopes and which API operation(s) require them:

ScopeOperation(s)
admin.profile:readRetrieve security profiles
Retrieve specific security profile
admin.user:readRetrieve users
Retrieve specific user
Retrieve user specific temporary access token
Retrieve users (Workflow)
admin.user:writeCreate user
Modify user
Delete user
current.profile:readRetrieve specific security profile
current.user:readRetrieve current user
asset:readRetrieve assets
Retrieve specific asset
Retrieve asset download location
Retrieve asset version download location
Retrieve specific asset item download location
Retrieve recently removed assets
Search for similar assets
asset:writeModify asset
Delete asset
Add tag to assets
Remove tag from assets
Save as new asset
Save as a new asset version
asset.usage:readRetrieve asset usage
asset.usage:writeCreate asset usage
Delete asset usage
collection:readRetrieve collections
Retrieve specific collection
Retrieve the assets of a specific collection
collection:writeCreate collection
Modify collection
Delete collection
Share collection
Add assets to a collection
Remove assets from a collection
meta.assetbank:readRetrieve metaproperties
Retrieve specific metaproperty
Retrieve metaproperty dependencies
Retrieve metaproperty options by ids
Retrieve metaproperty options
Retrieve global option dependencies
Retrieve metaproperty option dependencies
Retrieve specific metaproperty option dependencies
Retrieve metaproperties (PIM)
Retrieve specific metaproperty (PIM)
Retrieve metaproperty options (PIM)
meta.assetbank:writeCreate metaproperty
Modify metaproperty
Delete metaproperty
Create dependency
Delete dependency
Create metaproperty option
Modify metaproperty option
Delete metaproperty option
Add a dependency
Delete a dependency
Create dependency group
Modify dependency group
Delete dependency group
Add a dependency option to a group
Remove a dependency option from a group
Modify metaproperty option (PIM)
meta.workflow:readRetrieve metaproperties
Retrieve specific metaproperty
workflow.campaign:readRetrive campaigns
Retrieve specific campaign
workflow.campaign:writeCreate campaign
Modify campaign
Delete campaign
Close campaign
workflow.group:readRetrieve groups
Retrieve specific group
workflow.group:writeCreate group
Modify group
Delete group
workflow.job:readRetrieve jobs
Retrieve the jobs of a specific campaign
Retrieve specific job
Retrieve specific stage
Retrieve stages of specific job
Finish job
workflow.job:writeCreate job
Modify job
Delete job
Modify stage
workflow.job:approveFinish job
workflow.preset:readRetrieve specific job preset
brandstore.order:readRetrieve orders
Retrieve specific order info
Retrieve specific order by id
Retrieve specific order by number
Retrieve specific orderline
brandstore.order:writeModify orderline
analytics.api:readAnalytics API read access
antivirus.asset.audit:readRetrieve a list of quarantined assets
Retrieve a quarantined asset by id
antivirus.asset.audit:writeUpdate review status by id
Update review status by list of asset Ids
webhooks.config:readRetrieve Webhook configurations
webhooks.config:writeCreate a Webhook configuration
Update a Webhook configuration
Patch a Webhook configuration
Delete a Webhook configuration


Limit on requests

We applied API rate limiting to ensure that our API resources are not consumed excessively, so that all our clients can utilize our API seamlessly. We allow a number of 4500 requests in any five-minute time frame from a single IP address. When you have reached the maximum number of allowed requests the exceeding requests will be blocked. When a request is rejected you will receive the 429 (Too Many Requests) error returned via the API. If five minutes pass with no requests coming from your IP address we will lift the block and you will be able to send API requests again.

Note on identifiers

Bynder uses the following two types of UUIDs:

  • In the ColdFusion format, for the /api/v4 requests, they are grouped in 4 groups with the pattern 8-4-4-16. Example: 00000000-0000-0000-0000000000000000.
  • In the version 4 format, for the /api requests (without /v4), they are grouped in 5 groups with the pattern 8-4-4-4-12. Example: 00000000-0000-0000-0000-000000000000.