Jeeng Reporting API

The Reporting API from Jeeng — 6 operation(s) for reporting.

Operations 6

GET /reporting/advertiserperformance Advertiser Performance Report #
GET /reporting/lines/{interval} Campaign Lines Report #
GET /reporting/campaigns/{interval} Campaigns Report #
GET /reporting/containers Containers Report #
GET /reporting/placements Placements Report #
GET /reporting/publisherperformance Publisher Performance Report #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/jeeng-reporting-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

jeeng-reporting-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Jeeng Reporting API
  version: '1.0'
  contact:
    name: Jeeng Technical Support
    email: support@jeeng.com
    url: https://developers.jeeng.com/
  description: 'Operations tagged Reporting across 2 of this provider''s published API definitions: jeeng-advertisers-openapi.yml, jeeng-publishers-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://powerinbox.azure-api.net/
security:
- sec0: []
tags:
- name: Reporting
paths:
  /reporting/advertiserperformance:
    get:
      summary: Advertiser Performance Report
      description: Retrieve a flexible advertiser performance report by specifying the fields, filters, and grouping you need. The endpoint returns a 303 redirect with a Location header. Follow the redirect to download the report data as CSV.
      operationId: reporting-advertiser-performance
      parameters:
      - name: Accept
        in: header
        description: Must be set to text/csv
        required: true
        schema:
          type: string
          default: text/csv
      - name: requestedFields
        in: query
        description: Comma-separated list of fields to include in the results
        required: true
        schema:
          type: string
          default: DateTime,CampaignId,Impressions,Clicks,Spend
      - name: startInclusive
        in: query
        description: Start of the date range (inclusive)
        required: true
        schema:
          type: string
          format: date-time
          default: '2026-03-01T00:00:00Z'
      - name: endExclusive
        in: query
        description: End of the date range (exclusive)
        required: true
        schema:
          type: string
          format: date-time
          default: '2026-04-01T00:00:00Z'
      - name: filter
        in: query
        description: Key-value filter pairs (e.g. filter[CampaignId]=123)
        required: false
        schema:
          type: string
      - name: groupBy
        in: query
        description: Comma-separated list of fields to group results by
        required: false
        schema:
          type: string
      - name: api-version
        in: query
        description: The API version
        required: true
        schema:
          type: string
          default: '1.0'
      responses:
        '200':
          description: 200 - Response from following the redirect. Contains the report data as CSV.
          content:
            text/csv:
              examples:
                Result:
                  value: '"DateTime","CampaignId","Impressions","Clicks","Spend"

                    "2026-03-01T00:00:00Z",123,8425048,1949,2046.45

                    "2026-03-02T00:00:00Z",123,115692,24,22.80'
        '303':
          description: 303 See Other - The endpoint returns this status code directly. The Location header contains the URL where the report data can be downloaded. Most HTTP clients follow this redirect automatically.
          headers:
            Location:
              description: URL to download the report data. Issue a GET request to this URL to retrieve the CSV response shown above.
              schema:
                type: string
        '400':
          description: 400 Bad Request - The request parameters are invalid. Check that all field names are valid, groupBy fields are included in requestedFields, and the date range does not exceed 32 days.
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
        '401':
          description: 401 Unauthorized - The request is missing a valid access token, or the token does not have the required scope.
        '500':
          description: 500 Internal Server Error - An unexpected error occurred while processing the request.
      deprecated: false
      tags:
      - Reporting
    servers:
    - url: https://powerinbox.azure-api.net/
  /reporting/lines/{interval}:
    get:
      summary: Campaign Lines Report
      description: Retrieve a campaign line report with daily or hourly grain.
      operationId: reporting-campaign-lines
      parameters:
      - name: $filter
        in: query
        description: OData filter expression
        required: true
        schema:
          type: string
          default: Date eq 2023-12-13Z
      - name: api-version
        in: query
        description: The API version
        required: true
        schema:
          type: string
          default: '1.0'
      - name: interval
        in: path
        description: The time interval
        schema:
          type: string
          enum:
          - daily
          - hourly
        required: true
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n\"@odata.context\": \"https://powerinbox.azure-api.net/reporting/$metadata#CampaignLines\",\n\"value\": [\n\t{\n\t\t\"Date\": \"2023-12-13T00:00:00Z\",\n\t\t\"CampaignId\": 100,\n\t\t\"CampaignLineId\": 200,\n\t\t\"Impressions\": 7016314,\n\t\t\"Clicks\": 893,\n\t\t\"Conversions\": 10,\n\t\t\"Cost\": 937.65\n\t},\n\t{\n\t\t\"Date\": \"2023-12-13T00:00:00Z\",\n\t\t\"CampaignId\": 100,\n\t\t\"CampaignLineId\": 201,\n\t\t\"Impressions\": 66328,\n\t\t\"Clicks\": 43,\n\t\t\"Conversions\": 3,\n\t\t\"Cost\": 45.15\n\t},\n\t{\n\t\t\"Date\": \"2023-12-13T00:00:00Z\",\n\t\t\"CampaignId\": 101,\n\t\t\"CampaignLineId\": 300,\n\t\t\"Impressions\": 45212,\n\t\t\"Clicks\": 30,\n\t\t\"Conversions\": 0,\n\t\t\"Cost\": 31.5\n\t}\n]}"
              schema:
                type: object
                properties:
                  '@odata.context':
                    type: string
                    example: https://powerinbox.azure-api.net/reporting/$metadata#CampaignLines
                  value:
                    type: array
                    items:
                      type: object
                      properties:
                        Date:
                          type: string
                          example: '2023-12-13T00:00:00Z'
                        CampaignId:
                          type: integer
                          example: 100
                          default: 0
                        CampaignLineId:
                          type: integer
                          example: 200
                          default: 0
                        Impressions:
                          type: integer
                          example: 7016314
                          default: 0
                        Clicks:
                          type: integer
                          example: 893
                          default: 0
                        Conversions:
                          type: integer
                          example: 10
                          default: 0
                        Cost:
                          type: number
                          example: 937.65
                          default: 0
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      tags:
      - Reporting
    servers:
    - url: https://powerinbox.azure-api.net/
  /reporting/campaigns/{interval}:
    get:
      summary: Campaigns Report
      description: Retrieve a campaign report with daily or hourly grain. The query and response are OData V4 format. The response may include a "next" link.
      operationId: reporting-campaigns
      parameters:
      - name: $filter
        in: query
        description: OData filter expression
        required: true
        schema:
          type: string
          default: Date eq 2023-12-13Z
      - name: api-version
        in: query
        description: The API version
        required: true
        schema:
          type: string
          default: '1.0'
      - name: interval
        in: path
        description: The time interval for the report
        schema:
          type: string
          enum:
          - daily
          - hourly
        required: true
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n\"@odata.context\": \"https://powerinbox.azure-api.net/reporting/$metadata#Campaigns\",\n\"value\": [\n\t{\n\t\t\"Date\": \"2023-12-13T00:00:00Z\",\n\t\t\"CampaignId\": 100,\n\t\t\"Impressions\": 8425048,\n\t\t\"Clicks\": 1949,\n\t\t\"Conversions\": 31,\n\t\t\"Cost\": 2046.45\n\t},\n\t{\n\t\t\"Date\": \"2023-12-13T00:00:00Z\",\n\t\t\"CampaignId\": 101,\n\t\t\"Impressions\": 115692,\n\t\t\"Clicks\": 24,\n\t\t\"Conversions\": 0,\n\t\t\"Cost\": 22.8\n\t},\n\t{\n\t\t\"Date\": \"2023-12-13T00:00:00Z\",\n\t\t\"CampaignId\": 102,\n\t\t\"Impressions\": 6086488,\n\t\t\"Clicks\": 790,\n\t\t\"Conversions\": 9,\n\t\t\"Cost\": 513.5\n\t}\n]}"
              schema:
                type: object
                properties:
                  '@odata.context':
                    type: string
                    example: https://powerinbox.azure-api.net/reporting/$metadata#Campaigns
                  value:
                    type: array
                    items:
                      type: object
                      properties:
                        Date:
                          type: string
                          example: '2023-12-13T00:00:00Z'
                        CampaignId:
                          type: integer
                          example: 100
                          default: 0
                        Impressions:
                          type: integer
                          example: 8425048
                          default: 0
                        Clicks:
                          type: integer
                          example: 1949
                          default: 0
                        Conversions:
                          type: integer
                          example: 31
                          default: 0
                        Cost:
                          type: number
                          example: 2046.45
                          default: 0
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      tags:
      - Reporting
    servers:
    - url: https://powerinbox.azure-api.net/
  /reporting/containers:
    get:
      summary: Containers Report
      description: Retrieve container reports with a daily grain.
      operationId: reporting-containers
      parameters:
      - name: $filter
        in: query
        description: OData filter expression
        required: true
        schema:
          type: string
          default: Date eq 2023-12-13Z
      - name: api-version
        in: query
        description: The API version
        required: true
        schema:
          type: string
          default: '1.0'
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n    \"@odata.context\": \"https://.../$metadata#Containers\",\n    \"value\": [{\n            \"Date\": \"2019-10-01T00:00:00Z\",\n            \"ContainerId\": 33,\n            \"ClicksTotal\": 0,\n            \"CompanyId\": 15,\n            \"RequestsUnique\": 6,\n            \"RevenueNet\": 0.00,\n        },\n        {\n            \"Date\": \"2019-10-01T00:00:00Z\",\n            \"ContainerId\": 36,\n            \"ClicksTotal\": 0,\n            \"CompanyId\": 15,\n            \"RequestsUnique\": 5,\n            \"RevenueNet\": 0.00,\n        }\n    ]\n}"
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      tags:
      - Reporting
    servers:
    - url: https://powerinbox.azure-api.net/
  /reporting/placements:
    get:
      summary: Placements Report
      description: Retrieve placement reports with a daily grain
      operationId: reporting-placements
      parameters:
      - name: $filter
        in: query
        description: OData filter expression
        required: true
        schema:
          type: string
          default: Date eq 2023-12-13Z
      - name: api-version
        in: query
        description: The API version
        required: true
        schema:
          type: string
          default: '1.0'
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value: "{\n    \"@odata.context\": \"https://.../$metadata#Placements\",\n    \"value\": [{\n            \"Date\": \"2019-10-01T00:00:00Z\",\n            \"PlacementId\": 152,\n            \"ClicksTotal\": 0,\n            \"CompanyId\": 15,\n            \"RequestsUnique\": 10,\n            \"RevenueNet\": 0.00,\n            \"RequestsTotal\": 20,\n        },\n        {\n            \"Date\": \"2019-10-01T00:00:00Z\",\n            \"PlacementId\": 153,\n            \"ClicksTotal\": 0,\n            \"CompanyId\": 15,\n            \"RequestsUnique\": 13,\n            \"RevenueNet\": 0.00,\n            \"RequestsTotal\": 71,\n        }\n    ]\n}"
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
      deprecated: false
      tags:
      - Reporting
    servers:
    - url: https://powerinbox.azure-api.net/
  /reporting/publisherperformance:
    get:
      summary: Publisher Performance Report
      description: Retrieve a flexible publisher performance report by specifying the fields, filters, and grouping you need. The endpoint returns a 303 redirect with a Location header. Follow the redirect to download the report data as CSV.
      operationId: reporting-publisher-performance
      parameters:
      - name: Accept
        in: header
        description: Must be set to text/csv
        required: true
        schema:
          type: string
          default: text/csv
      - name: requestedFields
        in: query
        description: Comma-separated list of fields to include in the results
        required: true
        schema:
          type: string
          default: DateTime,PlacementId,Opens,Clicks,Revenue
      - name: startInclusive
        in: query
        description: Start of the date range (inclusive)
        required: true
        schema:
          type: string
          format: date-time
          default: '2026-03-01T00:00:00Z'
      - name: endExclusive
        in: query
        description: End of the date range (exclusive)
        required: true
        schema:
          type: string
          format: date-time
          default: '2026-04-01T00:00:00Z'
      - name: filter
        in: query
        description: Key-value filter pairs (e.g. filter[PlacementId]=456)
        required: false
        schema:
          type: string
      - name: groupBy
        in: query
        description: Comma-separated list of fields to group results by
        required: false
        schema:
          type: string
      - name: api-version
        in: query
        description: The API version
        required: true
        schema:
          type: string
          default: '1.0'
      responses:
        '200':
          description: 200 - Response from following the redirect. Contains the report data as CSV.
          content:
            text/csv:
              examples:
                Result:
                  value: '"DateTime","PlacementId","ContainerId","Opens","Clicks","Revenue"

                    "2026-03-01T00:00:00Z",152,300,4820,312,148.50

                    "2026-03-02T00:00:00Z",152,300,3210,198,96.30'
        '303':
          description: 303 See Other - The endpoint returns this status code directly. The Location header contains the URL where the report data can be downloaded. Most HTTP clients follow this redirect automatically.
          headers:
            Location:
              description: URL to download the report data. Issue a GET request to this URL to retrieve the CSV response shown above.
              schema:
                type: string
        '400':
          description: 400 Bad Request - The request parameters are invalid. Check that all field names are valid, groupBy fields are included in requestedFields, and the date range does not exceed 32 days.
          content:
            application/json:
              examples:
                Result:
                  value: '{}'
              schema:
                type: object
                properties: {}
        '401':
          description: 401 Unauthorized - The request is missing a valid access token, or the token does not have the required scope.
        '500':
          description: 500 Internal Server Error - An unexpected error occurred while processing the request.
      deprecated: false
      tags:
      - Reporting
    servers:
    - url: https://powerinbox.azure-api.net/
components:
  securitySchemes:
    sec0:
      type: oauth2
      flows: {}
externalDocs:
  description: Jeeng / OpenWeb Email Monetization developer documentation
  url: https://developers.jeeng.com/reference
x-refined-from:
- jeeng-advertisers-openapi.yml
- jeeng-publishers-openapi.yml
x-readme:
  headers: []
  explorer-enabled: true
  proxy-enabled: true
x-readme-fauxas: true
x-api-evangelist:
  method: searched
  source:
  - https://developers.jeeng.com/reference/management-line-update.md
  - https://developers.jeeng.com/reference/management-line-status.md
  - https://developers.jeeng.com/reference/management-creative-status.md
  - https://developers.jeeng.com/reference/reporting-campaigns.md
  - https://developers.jeeng.com/reference/reporting-campaign-lines.md
  - https://developers.jeeng.com/reference/reporting-advertiser-performance.md
  note: Assembled verbatim from the per-operation OpenAPI 3.1.0 definitions Jeeng publishes on its own developer hub (developers.jeeng.com, a ReadMe hub whose readme-subdomain is "jeeng"). The hub renders each reference page as markdown at <page>.md with the full "# OpenAPI definition" JSON block for that operation; it exposes no whole-file spec download, so the paths and components of the three published registry files (authentication.json, advertisers.json, publishers.json) were merged back together without alteration. info.title/description/contact and externalDocs were added by API Evangelist and are captured in overlays/.
  ownership: Served from developers.jeeng.com, a subdomain of the company domain. servers[] names powerinbox.azure-api.net and the Entra tenant revenuestripe.onmicrosoft.com — PowerInbox is Jeeng's former corporate name (www.powerinbox.com 301s to www.jeeng.com) and RevenueStripe was its ad-monetization brand. The hub is titled "OpenWeb Email Monetization" because OpenWeb acquired Jeeng/PowerInbox in 2022 and the product now ships under the OpenWeb brand on the original Jeeng domains (manage.jeeng.com 302s to manage.powerinbox.com and then to portal.openweb.com).