Skip to content

Missena Partner API

Missena Partner API is a REST API that can be used to automate the integration of Missena Ads performance into your system. The API endpoints are available at https://partners.missena.io.

Important: the v1 API has been deprecated, you should use the /v2 routes

Authentication

The API requires credentials to be accessed. These credentials are used both for authentication and authorization. The associated scheme is based on the machine to machine OAuth2 flow with a json payload. It consists in 2 steps:

  1. Use a set of client id and client secret key get an JWT access token that is limited in time and scope
  2. Use the access token to query the API

The details of those 2 steps are provided in the following sections.

Requesting an access token

To get the access token, use:

POST /v2/token

The payload looks like below. It must be access with a HTTP header that specifies the payload is a json file, i.e. Content-Type: application/json:

json
{
  "client_id": "xxx",
  "client_secret": "yyy"
}

An example of such a query is provided below with the cUrl utility. Change the CLIENT_ID and CLIENT_SECRET environment variable values to match yours:

shell
export CLIENT_ID=xxx
export CLIENT_SECRET=yyy
curl -s -H 'Content-Type: application/json' \
  -d'{"client_secret": "'${CLIENT_SECRET}'", "client_id": "'${CLIENT_ID}'"}' \
  https://partners.missena.io/v2/token

The output provides an access token with the TTL like below:

json
{
  "access_token": "zzz",
  "expires_in": 3600,
  "token_type": "Bearer"
}

You can then use the content of the access_token field to access to access the API. The token has to be renewed every hour or less.

Accessing the API with the Access Token

Once we have gain an access to the access token, assuming it is still valid, it can be used with the Authorization header and the Bearer directive like below:

shell
export ACCESS_TOKEN=zzz
curl -H 'Authorization: Bearer '$ACCESS_TOKEN \
  -H 'Content-Type: application/json' \
  https://partners.missena.io/v2/revenues/2025-10-20

Daily revenues

Get revenue for specific day.

Request

GET /v2/revenues/2025-10-20

Response

jsonc
{
  "amount": 0,
  "currency": "EUR",
  "date": "2025-10-20",
  "impressions": 14,
  "views": 9,
  "revenues": [
    {
      "amount": 0,
      "api_key": "PA-xxxxxx",
      "currency": "EUR",
      "date": "2025-10-20",
      "impressions": 6,
      "partner_id": "https://xxx/",
      "views": 4
    },
    {
      "amount": 0,
      "api_key": "PA-yyyyyy",
      "currency": "EUR",
      "date": "2025-10-20",
      "impressions": 1,
      "partner_id": "https://yyy/",
      "views": 1
    },
    {
      // ...
    }
  ]
}

Example with cURL:

shell
export ACCESS_TOKEN=zzz
curl -L -H 'Authorization: Bearer '$ACCESS_TOKEN \
  https://partners.missena.io/v2/revenues/2025-10-20

Daily revenues by placement

Get revenue for specific day split by placement.

Request

GET /v2/revenues-by-placement/2025-10-20

Response

jsonc
{
  "amount": 17.9,
  "currency": "EUR",
  "date": "2025-10-20",
  "impressions": 150,
  "revenues": [
    {
      "amount": 1.25,
      "api_key": "PA-00000000000",
      "placement": "sticky",
      "partner_id": "https://xxx/",
      "currency": "EUR",
      "date": "2025-10-20",
      "impressions": 25
    },
    {
      // ...
    }
  ]
}

Example with cURL:

shell
export ACCESS_TOKEN=zzz
curl -L -H 'Authorization: Bearer '$ACCESS_TOKEN \
  https://partners.missena.io/v2/revenues-by-placement/2025-10-20

Monthly revenue

Get revenue for specific month.

Request

GET /v2/revenues/2019-10

Response

jsonc
{
  "amount": 0,
  "currency": "EUR",
  "date": "2025-10",
  "impressions": 14,
  "views": 9,
  "revenues": [
    {
      "amount": 0,
      "api_key": "PA-xxxxxx",
      "currency": "EUR",
      "date": "2025-10",
      "impressions": 5,
      "partner_id": "https://xxx/",
      "views": 4
    },
    {
      "amount": 0,
      "api_key": "PA-yyyyyy",
      "currency": "EUR",
      "date": "2025-10",
      "impressions": 1,
      "partner_id": "https://yyy/",
      "views": 1
    },
    {
      // ...
    }
  ]
}

Example with cURL:

shell
export ACCESS_TOKEN=zzz
curl -L -H 'Authorization: Bearer '$ACCESS_TOKEN \
  https://partners.missena.io/v2/revenues/2025-10

Monthly revenues by placement

Get revenue for specific month split by placement.

Request

GET /v2/revenues-by-placement/2025-10

Response

jsonc
{
  "amount": 17.9,
  "currency": "EUR",
  "date": "2025-10",
  "impressions": 150,
  "revenues": [
    {
      "amount": 1.25,
      "api_key": "PA-00000000000",
      "placement": "sticky",
      "currency": "EUR",
      "partner_id": "https://xxx/",
      "date": "2025-10-20",
      "impressions": 25
    },
    {
      // ...
    }
  ]
}

Example with cURL:

shell
export ACCESS_TOKEN=zzz
curl -L -H 'Authorization: Bearer '$ACCESS_TOKEN \
  https://partners.missena.io/v2/revenues-by-placement/2025-10

API version

Request

GET /version

Response

jsonc
{
  "application": "croquet",
  "started_since": "5h4m3s",
  "version": "d670460b4b4aece5915caf5c68d12f560a9fe3e4"
}