API voor sportplatformen

Oneindig veel databases en platformen koppelen aan één API

SportsFan Media is een snelgroeiend bedrijf dat gespecialiseerd is in de ontwikkeling van platformen zoals FootballCritic, FootballTransfers en GPFans. Deze internationaal opererende platformen zijn bedoeld voor sportstatistieken. Het platform GPFans staat al live, de andere twee platformen zijn nog in ontwikkeling.

SportsFan Media ging een samenwerking met Covadis aan als aanvulling op het eigen team ontwikkelaars. Er is veel contact en er wordt nauw samengewerkt.

De vraag:

Een API ontwikkelen voor de verschillende platformen

SportsFans Media heeft aan Covadis gevraagd de API 'sportsbase' te ontwikkelen. Deze API verwerkt aanvragen (calls) uit de platformen door verschillende databronnen aan te roepen. 'Platformen' kunnen in dit geval de website, een native app, een nieuwsfeed, een webapp of een social media-template zijn.

De oplossing:

API 'sportsbase'

In antwoord op de vraag van SportsFan Media heeft Covadis de API 'sportsbase' ontwikkeld. De API 'sportsbase' ontsluit informatie uit verschillende databronnen voor de platformen van SportsFan Media.

Deze API is zo ontwikkeld dat het oneindig schaalbaar is. Een onbeperkt aantal databases en platformen kunnen gekoppeld worden op de API, zonder dat dit gevolgen heeft voor de performance. Doordat nieuwe databronnen aan deze API gekoppeld kunnen worden, is het niet nodig om een nieuwe API te ontwikkelen wanneer SportsFan Media bijvoorbeeld ook een tennisplatform gaat ontwikkelen. Er is eenmalig een goede, stevige basis gelegd. Van daaruit kan SportsFan media verbreden.

Backoffice

De API heeft een backoffice waar statistieken over de API calls te zien zijn. Denk bijvoorbeeld aan de snelheid waarmee de gevraagde informatie weergegeven wordt. Ook is inzichtelijk hoe vaak de API is aangeroepen en door wie en worden er vergelijkingen gemaakt met voorgaande weken. Deze statistieken worden twee keer per dag middels een script berekend.

Vanuit de backoffice van de API kunnen nieuwe databases toegevoegd worden. Ook is het mogelijk om API-calls te configureren. Je geeft dan aan welke gegevens uit de database mogen worden ontsloten, toegevoegd, gemuteerd of verwijderd. Als bijvoorbeeld Voetbal International deze gegevens ook op de website wil weergeven, kunnen hierover afspraken gemaakt worden. Daarna is via de backoffice van de API in te stellen welke gegevens wel en niet ontsloten mogen worden.

Technieken

Belangrijke onderdelen tijdens de ontwikkeling van de API zijn beveiliging en performance. De API Sportsbase is ontwikkeld in PHP, met MySQL als onderliggende database. Deze API is ontwikkeld met behulp van het framework Lumen en draait op Linux. Voor de ontwikkeling van de backoffice is gebruik gemaakt van Angular. Voor een optimale performance wordt Redis Cache gebruikt.

Stel een vraag!