Skip to main content
Version: 2024-06-05

Images

Description

This section covers the image routing functionality within the API, detailing how to access images, the parameters required, and the access controls in place.

Reachable URLs

This section describes the routes available for accessing images through the API. All routes are versioned dynamically using placeholders like /{version} or explicitly specified versions like /2024-06-05/. The public endpoints follow the format:

  • Base URL: https://api.prodb.eslgaming.com/

Image Routes

Route: /{version}/images/{imageId}/{resolution}

Description: Alternative versioned route to retrieve the URL of an image based on its ID and resolution, using a specific version of the API.

  • Parameters:
    • version (String): API version used to access the image endpoint, more deeply described in API Versioning Documentation.
    • imageId (String): Unique identifier of the image, corresponding to the id field of the Image GraphQL Type. This ID uniquely identifies the image within the system.
    • resolution (String): Desired resolution. Refer to the resolutions field in the Image GraphQL Type for the exact resolutions available for a specific image.

Example URL:

https://api.prodb.eslgaming.com/2024-06-05/images/0f1237f8-cdfe-4526-96dd-2adf7d6c9f18/THUMB`

Key Information

Rate Limiting Effects

Image access is subject to rate limiting, which imposes temporary blocks when limits are exceeded. Access is automatically resumed once the quota refills, typically every few seconds, ensuring fair usage among all customers.

Image URL Access

The API provides a link to the image, not the image itself. When accessing the image route, a redirection occurs, leading to the separate actual image location.

Real-Case Redirection Example

  1. Initial Request:

    GET https://api.prodb.eslgaming.com/2024-06-05/images/6389fd40-d1b3-4bd3-9a64-6ede7e24bd38/THUMB
  • Request Method: GET
  • Status Code: 302 Found
  1. Response Header (Location):

    The server responds with a 302 status code and a Location header pointing to the actual image URL. This URL is a temporary link to the image stored on cloud storage and includes security tokens.

    Example Location Header Value:

    Location: https://eds-production-prodb-fixturedata-euw1.s3.eu-west-1.amazonaws.com/images/584b8e66-c99f-4d15-845f-7582aedaed4b?X-Amz-Security-Token=IQoJb3JpZ2...zUoLN0CRc....3D&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20240913T105505Z&X-Amz-SignedHeaders=host&X-Amz-Credential=ASI...913%2Feu-west-1%2Fs3%2Faws4_request&X-Amz-Expires=600&X-Amz-Signature=c4917c...8f102
  2. Accessing the Real Image URL:

    The customer must follow the redirected URL to view or download the image. This URL may have an expiration time, and access tokens are included for security.

Authentication and IP Whitelisting

Access to image routes requires valid authentication tokens and is restricted to requests originating from whitelisted IP addresses. Ensure your requests meet these criteria to avoid access issues.

For more information on authentication, token management and rate limiting, see:

Error Handling and Response Codes

ScenarioStatus CodeDescription
Image URL is present302Image found, redirect to image URL.
Image URL is not present404Image found, but URL is empty.
Image is not present404No image found with the given ID and resolution.
Image URL is invalid500Invalid URL format; check the URL correctness.
Internal error500Internal server error due to gRPC service failure.
Rate limit exceeded429Too many requests; wait before retrying.
Unauthorized due to IP restriction403IP not allowed; access restricted by IP whitelisting.
Authentication required but not provided or invalid token401Authentication failed; valid token required.

Practical Usage Examples

Example 1: Accessing an Image URL

GET https://api.prodb.eslgaming.com/2024-06-05/images/0f1237f8-cdfe-4526-96dd-2adf7d6c9f18/THUMB
Response headers:
Status Code: 302 Found
Location: https://eds-production-prodb-fixturedata-euw1.s3.eu-west-1.amazonaws.com/images/0f1237f8-cdfe-4526-96dd-2adf7d6c9f18?X-Amz-Security-Token=...

Example 2: Accessing an Image with Multiple Resolutions

GET https://api.prodb.eslgaming.com/2024-06-05/images/ac9533c1-821d-4f1d-b8e0-4035577b95f9/400x400
Response headers:
Status Code: 302 Found
Location: https://eds-production-prodb-fixturedata-euw1.s3.eu-west-1.amazonaws.com/images/ac9533c1-821d-4f1d-b8e0-4035577b95f9?X-Amz-Security-Token=...

Example 3: Rate Limit Response

GET https://api.prodb.eslgaming.com/2024-06-05/images/cd448f9e-265f-434f-99f4-bfd628d48db5/ORIGINAL
Response header:
Status Code: 429 Too Many Requests
Response body:
Too Many Requests. Please wait before retrying.

Known Issues

No currently known issues.