Pixellot offers automated sports production solutions that provide affordable alternatives to traditional video capture, production, and distribution systems for professional and semi-professional sports events. Founded in 2013, Pixellot’s AI technology solution streamlines production workflow by deploying an unmanned multicamera system in a fixed location, with additional angles as required, to cover the entire field, offering a stitched panoramic image. Advanced algorithms enable automatic coverage of the flow of play and generate highlights. Pixellot systems are deployed by broadcasters, production companies, clubs, federations, universities, high schools, sports portals, and coaching solution providers around the globe.
For more information visit: www.pixellot.tv
This document contains proprietary and confidential material of Pixellot Ltd. Any unauthorized reproduction, use, or disclosure of this material, or any part thereof, is strictly prohibited. This document is solely for the use of Pixellot employees and authorized Pixellot customers.
The material furnished in this document is believed to be accurate and reliable. However, no responsibility is assumed by Pixellot Ltd. for the use of this document or any material included herein. Pixellot Ltd. reserves the right to make changes to this document or any material included herein at any time and without notice.
For more information visit: www.pixellot.tv
Copyright © 2024 Pixellot Ltd.
All Rights Reserved.
Pixellot provides its partners with a dedicated Partner API for creating new entities, updating and retrieving them. In addition, a partner can subscribe to Pixellot webhooks to get notification about different significant occurrences.
The idea is that a partner can, for instance, ask for a list of events on startup. When the partner subscribes to the webhooks service, it will get notifications about every significant change (including creation and deletion) and will update its own database. This will omit the need to repeatedly ask for the full list of events to get new events and updates to existing events. The updates can, in this way, be done passively in a push method instead of pull.
Explore Partner API through our official documentation. This resource provides essential information for integrating our services seamlessly into your applications. Find detailed API endpoints, request methods, authentication guides, and error handling instructions.
For more information, visit our REST API documentation at https://app.swaggerhub.com/apis/Pixellot/partner_api/
Pixellot
API is a RESTful HTTP API. All requests, except the login, require an
access token. If no access token will be provided in the API request, 401 Unauthorized
will be returned to the client.
Pixellot supports 2 environments for 3rd party companies: staging
and production
. Initially, 3rd party company integrates with the staging
environment to verify that the integration is correct. Once E2E staging
works correctly, the integration moves to production
.
Available environments:
[Base URL] = api.pixellot.tv/v1 (PROD) - production workloads
[Base URL] = api.stage.pixellot.tv/v1 (STAGE) - tests and integration
All
API requests, except for login, require the “Authorization” header to
be present. Authorization is based on the JWT method. JSON Web Token
(JWT) is a compact, URL-safe means of representing claims to be
transferred between two parties.
Typical authenticated request would be having the following look:
curl https://api.stage.pixellot.tv/v1/venues -H "Authorization: eyJ0eX..."
Categories serve to allow managing the content across the users of certain tenants, by distributing it within two levels, the main category and sub-category. Main and sub-categories can be mixed with each other, which means that two main categories could have the same sub-category. It's not allowed for events to have a main category only or subcategory only. Currently, categories can be created and edited only in CMS.Main categories will be shown as tabs above in OTT, but category will appear there only if some events were assigned to it.
id
- unique category identifier (string, 24 characters of digits and letters)
isArchived
- flag showing if the category was archived (boolean)
name
- category name (string, 2 - 50 characters)
type
- defines main or sub category (string, "main"/"sub")
tenant
- shows tenant affiliation (string)
permission
- category access (string, "public"/"private")
color
- hex color code
hidden
- display or hide category in OTT (string, "yes"/"no")
logo
- category image (cloudfront file link)
createdAt
- datetime when category created (yyyy-MM-ddThh:mm:ss.fffZ)
updatedAt
- datetime of last changes (yyyy-MM-ddThh:mm:ss.fffZ)
Popular use cases:
Changing sub-category in CMS during live and upcoming events changes the category in both CMS and OTT
Changing the main category in CMS will remove the event from the “Old” category and will store it under the “New” one
Archiving the category during the live event may not have any effect up until event becomes VOD
Only GET requests are allowed for categories. Create and update operations can be done in CMS.
Scheduling an event with categories requires adding both category name and ID
The archived category still exists but is not displayed in CMS (still you can access it by ID and unmark the Archived checkmark)
Get all categories in API user’s tenant with all the above parameters:
Get a category specified by ID (!even if it has a different tenant!) with all the above parameters:
A parameter schema that allows adding categories in event scheduling API call, if used in POST create event body:
Teams have next parameters:
id
- unique team identifier (string, 24 characters of digits and letters)
name
- team name (string, 2 to 50 characters)
shortName
- the name used for scoreboard (string, doesn't have characters cap)
color
- hex color code
tenant
- shows tenant affiliation (string)
images
- list of different size images
isArchived
- shows if the team was archived (boolean)
vidSwap
- shows if the team is assigned to VidSwap league/s
Popular use cases:
Short team name doesn’t have characters cap and tip for min-max characters in CMS
Only GET methods allowed for teams via API. Create and update operations can be done in CMS.
It’s possible to mix event scheduling with teams specified by ID and name. For example, “homeTeam” and “awayTeamId”
A. Open Categories tab on the left side of CMS and click on the Create button on the left bottom corner:
B. Fill in all required parameters, choose the color and add a logo:
C. Do the same procedure for Sub-category:
A. Go to Teams tab and click Create button, similar to what you did with Categories
B. For each non-practice event, you will need to have two teams, create them by filling in all the parameters and selecting the color and logo. It is important to select a color and logo since it will be shown on the event’s preview and scoreboard.
A. Make sure that you have a venue assigned to the specific club and their ID. Club and Venue ID you can get by sending an API call:
B. Now let’s get unique IDs for categories and teams that we’ve created before.
C. Once you have Venue, Club, Categories (main and sub), and two teams' IDs, use POST create event API call to schedule an event:
D. The request body of such API call should be within the next schema:
E. Once the command will be sent, you should receive a response with 200 Status code and a Response body that contains info about the created event:
F. Once the event is created, depending on the activity of the category it may appear on the list of categories tab at the top side of the page, depending on the activity of the categories. If you choose the Category, the list of sub-categories will be shown:
G. Inside the Sub-category you will see your scheduled event showing up as Upcoming:
H. By clicking on event info, you will access the event’s preview page, where you can see the Event Name, Teams, Date of the event, and Time remaining until the event will be Live: