Skip to main content

API Documentation (1.1.1) [latest]

Following this section, goes to provide all description fields of api's.

ℹ️ Remember that to use the test environment, you must use the following url prefix:

https://test.osteocom.me/sv6

While for production environment must use this link:

https://www.osteocom.me/sv6

POST Authorization API

/contentLicensing_login

<>
The Authorization api provides the access all other subsequent calls. You need two fields, clientId and clientSecret, you will use the returned token in the request header of your next calls, without it, you will not be able to do other calls.
<>


Payload

clientId*Type: String

The partner's unique client ID. Provided according with osteocom.


clientSecret*Type: String

The secret key provided according with osteocom.


Response

tokenType: String

Token used for subsequential calls as Bearer Token in the requests header.


HTTP Status Codes

Status CodeDescription
200 OKA valid JWT token.
401 Not AuthorizedUnknown client

POST Catalog API: Content catalog access

/contentLicensing_catalog

<>
It access the Osteocom content catalog, which has already been pre-agreed between the parties. At this stage, you access the necessary information about the available content. Each channel has its own data depends on its preconfigurated language as according between osteocom and the partner including exceptions for some fields that, if unnecessary, according with partner and osteocom, they cannot provided or passed with no value.
<>


Header

Authorization* Type: String

Bearer token


Payload

clientId*Type: String

The partner's unique client ID


Response
catalogType: Array of Objects

The catalog is an array containing objects. Each object represents a channel with its associated details like authors, images, and videos.

idChannelType: String

It is used in the purchase api as a parameter both for purchasing the channel in the form of productId and for gaining access to the video.

authorsType: Array

Contains references to the authors, specifically the name and image if any, for each author.

nameType: String

Author's name

imageType: String

Author's image URL

backgroundType: String

Background image URL for the channel

coverType: String

Cover image URL for the channel

trailerType: String

Trailer video URL for the channel

priceType: Int

Price of the channel content

titleType: String

A channel title realated to the channel language

subtitleType: String

A channel subtitle related to the channel language

htmlDescriptionType: String

An osteocom html description that describe the channel.

videoType: Array
videoIdType: String

Unique identifier for the video

backgroundType: String

Background image URL for the video

coverType: String

Cover image URL for the video

trailerType: String

mp4 trailer for the video

authorsType: Array

Contains references to the authors, specifically the name and image if anyfor each author

nameType: String

Author's name

imageType: String

Author's image URL

titleType: String

A video title realated to the channel language

subtitle

Type: StringManages

A video subtitle related to the channel language

htmlDescriptionType: String

An osteocom html description that describe the video.

durationType: Int

duration of a video in seconds

videoQualityType: Int

the quality of the video: i.e. FULLHD

audioType: Array
nameType: String

the language of the audio translation: i.e. italian or english


Status Code

Description

200 OK

Catalog is returned

404 Not Found

Catalog not found

500 Internal Server Error

Unexpected error


POST Content Access Authorization

/contentLicensing_contentAccessAuthorization

<>
Manages the purchase of content. Send Osteocom user and purchase details (including contents chosen and their own price). After processing this data, the user is authorized to access purchased content.
<>

Header

Authorization*Type: String

Bearer token



Payload (update from version 1.1.0)

clientId*Type: String

Unique identifier for the client.


userId*Type: String

This field id is provided by the partner. It represent the unique identifier for the user. The partner can choose it depending on how he thinks it is more manageable for him handle this field. The identifier must not have a specific formatting for osteocom. The most important thing is that must be unique for identify the customer. Osteocom manages this fields only for content authorization access and for user token creation.

User Id provided by partner.


emailType: String

This field becomes mandatory if partner gave permission to osteocom about marketing consent. The email must be a valid formatted email i.e. test@domain.com, otherwise the field is considered optional.

User's email address.


marketingConsentType: Boolean

This field is about marketing consent if the customer decide to give the permission for receiving marketing contents i.e. newsletters. It is set to false value by default.


nameType: String

User's name.


surnameType: String

User's surname.


products*Type: Array of Objects

Products is an array containing objects. Each object represents a products with the associated price.

priceType: Int

Specifies the price of that product.


productIdType: String

The channelId used for identify the channel purchased by the customer. This field is mandatory passed to osteocom requests when required.


Response

tokenType: String

A token for accessing purchased content.


HTTP Status Codes

Status CodeDescription
200 OKPurchase successful.
400 Email field required. When email field is required.
403 Unformatted emailWhen email field is required.
500 Internal Server ErrorUnexpected error.


POST Video API

/contentLicensing_videoAccess

<>
Allows end users to access purchased content. Verifies permissions and grants access if everything is correct. The api outcome is a token that you can use by embedding into our provided url within an iframe; see the section: Iframe-Based Video Access.
<>


Header

AuthorizationType: String

Bearer token mandatory


Payload

userId*Type: String

This field id is provided by the partner. It represent the unique indentifier for the user. The partner can choose it depending on how he thinks it is more manageable for him handle this field. The identifier must not have a specific formatting for osteocom. The most important thing is that must be unique for identify the customer. Osteocom manages this fields only for content authorization access and for user token creation.

clientId*Type: String

The partner's unique client ID


videoId*Type: String

Unique identifier for the video


userAccessKey*Type: String

Access key that authenticates the user


Response

tokenAuthVideoType: String

A token that must be used as parameter into a dedicated url.


HTTP Status Codes

Status Code

Description

200 OK

A signed URL for the video is returned

401 Not Authorized

The client is not authorized

401 Token Expired

Token video has expired.

404 Not Found

Video not found.

500 Internal Server Error

An unexpected error occurred



POST Revoke the access to the content

/contentLicensing_revocateActivation

<>
Osteocom provides an additional api so that you can revoke the access to the customer if he is malevolent about payments etc. You can do this operation at any time.
<>


Header

AuthorizationType: String

Bearer token mandatory


Payload

clientId*Type: String

The partner's unique client ID


channelId*Type: String

The channelId related to the product.


userId*Type: String

User Id provided by partner.


Response

userIdType: String

A returned userId of the customer


cancellationDateType: String

A returned date of the cancellation.


HTTP Status Codes

Status Code

Description

200 OK

Revocation successful.