This page describes the various public APIs offered by TT Nyhetsbyrån.
|Media API||OAuth2, API key||Access to metadata and digital assets. Trigger deliveries.||Active|
|Content API||OAuth2||Search, real time push, creating notifications.||Active|
|Deliveries||Automatic delivery of content||Active|
|Search API||API key||Search||Deprecated|
|Push API||API key||Real time push||Deprecated|
HTTP downloads, Trigger deliveries
The media API is for downloading content such as metadata, images, articles and also zips with bundled metadata and articles. Such bundles are defined using delivery channels.
A channel specifies both formats and method of delivery. Such deliveries can be either download or any push delivery such as FTP. Hence the media API both for downloading and on-demand triggering deliveries.
Content search, long poll, notifications
The Content API replaces the old Search and Push APIs. It allows clients to query our database for content, and listen for real time updates (using long poll). The search API is largely compatible with the old Search API to make migration easy.
The Content API also has some support for creating automatic mobile and email notifications.
Albeit deliveries may be pushing the definition of “API”, the reality is that several integrations use the Media API to on-demand trigger a delivery, or simply have a continuous delivery of article metadata.
We use delivery channels to configure both formats and method of delivery.
Search API (deprecated)
To query our database for keywords and metadata, the search API provides a request-response HTTP method. This is typically driven from a “search” input field.
This API is not suitable for polling integrations. I.e. where the same query is repeatedly run to discover new material. For this use, see the Push API below.
Push API (deprecated)
Socket.IO, Long poll
The push API is for supporting more “modern” push methods than traditional upload protocols (like FTP). Significant for these methods is a need to support somewhat non-dependable transports where a list of latest x number of articles can be presented.
The Media and Content APIs support OAuth2 bearer
authentication. Clients wishing to use the API need to contact TT
Nythetsbyrån to obtain a
client_secret, which they
can use to generate access tokens, either using the regular
Authorization Code Grant Flow (for web apps), Implicit Grant Flow (for
client side apps) ot Password Credentials Flow (server-side apps).
Example: generating a token using Password Credentials Flow
curl -XPOST -d username=<username> -d password=<password> -d client_id=<client_id> -d client_secret=<client_id> -d grant_type=password -d scope="roles" https://tt.se/o/oauth2/token
passwordshould be the regular TT login credentials.
client_idis the (non-secret) client ID issued by TT.
client_secretis the client secret issued by TT.
scopeneed to be at least
rolesfor the API to grant access.
The call will return an short-lived access token, which is valid for 7 days, and a refresh token that can be used to generate new access tokens, like this:
curl -XPOST -d client_id=<client_id> -d client_secret=<client_secret> -d grant_type=refresh_token -d refresh_token=<refresh_token> https://tt.se/o/oauth2/token
We support OpenID Connect. The configuration is here.
Access to our older API:s require keys that ties the requests to specific users. Generate api-keys using the kundwebb.