Live Direct Marketing Reports API

The reports API from Live Direct Marketing — 11 operation(s) for reports.

Operations 14

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/reports/{token} Open a published report by its public token · Reports controller get report #
Ask an LLM
“What does someone see when they open a public report link?”
“Can a report be viewed by its share token without logging in?”
Tell an agent
Open the public report with token {token}.
Show the shared report behind link token {token}.
GET /api/reports/{token}/pdf Get a public report as a PDF · Reports controller get report pdf #
Ask an LLM
“Can I get a shared report as a PDF file?”
“Is the public report PDF available in another language?”
Tell an agent
Download the PDF of public report {token}.
Get the PDF for report link {token} in language {lang}.
GET /api/reports List reports and storage quota · List tenant reports (paginated) + storage quota #
Ask an LLM
“Which reports have been saved in my workspace?”
“Can I search my reports by title or filter them by source?”
Tell an agent
List my reports, page {page} with {pageSize} per page.
Find reports matching {q} from source {source}.
POST /api/reports Create a report from base64 content · Create a report from base64 content (agent/MCP path) #
Ask an LLM
“How can an agent save a file as a report without a multipart upload?”
“What's the size limit for a report sent as base64?”
Tell an agent
Save {fileName} as report {title} described as {description} from content {contentBase64}.
Create report {title} with description {description} from base64 file {fileName} using {contentBase64}.
GET /api/reports/limits Check report storage limits and usage · Reports storage limits and current usage #
Ask an LLM
“How much report storage have I used so far?”
“What are the storage limits for reports in my workspace?”
Tell an agent
Show my report storage limits and current usage.
Check how much report space I have left.
POST /api/reports/upload Upload a report file · Upload a report file (multipart, UI path) #
Ask an LLM
“Can I upload a spreadsheet or PDF as a report from my computer?”
“Does a multipart report upload need a description?”
Tell an agent
Upload {file} as report {title} with description {description}.
Add file {file} to my reports as {title}, noting {description}.
POST /api/reports/from-export/{exportJobId} Save a finished export as a report · Register a completed export job as a report (idempotent) #
Ask an LLM
“Can a completed export be kept as a report?”
“Will the export download link still work after I register it as a report?”
Tell an agent
Register export job {exportJobId} as a report.
Turn export {exportJobId} into a report titled {title}.
GET /api/reports/{id} Get one report · Get one report #
Ask an LLM
“Can I view the details of one of my saved reports?”
“What's recorded about a specific report, like its title and source?”
Tell an agent
Get report {id}.
Show the details of saved report {id}.
PATCH /api/reports/{id} Rename or redescribe a report · Update report title/description #
Ask an LLM
“Can I change a report's title after saving it?”
“Is it possible to edit the description on an existing report?”
Tell an agent
Rename report {id} to {title}.
Change the description of report {id} to {description}.
DELETE /api/reports/{id} Delete a report · Delete a report (file + record) #
Ask an LLM
“Does deleting a report also remove its file?”
“How do I free up report storage by removing an old report?”
Tell an agent destructive · confirm first
Delete report {id} and its file.
Remove saved report {id}.
POST /api/reports/{id}/publish Publish a public download link for a report · Publish: open a direct public download link (no auth!) #
Ask an LLM
“Can I share a report with anyone through a public download link?”
“Is a published report link protected by a login?”
Tell an agent
Publish report {id} with a public download link.
Make report {id} downloadable by anyone and give me the URL.
POST /api/reports/{id}/unpublish Close a report's public link · Unpublish: close the public link (token kept — re-publish restores the same url) #
Ask an LLM
“How do I stop sharing a report publicly?”
“If I unpublish a report and publish it again, is the link the same?”
Tell an agent
Unpublish report {id}.
Close the public link on report {id} for now.
POST /api/reports/{id}/rotate-token Rotate a report's public link token · Rotate the public token — old link dies immediately #
Ask an LLM
“A public report link leaked; can I kill it and issue a new one?”
“What happens to the old link when the report token is rotated?”
Tell an agent destructive · confirm first
Rotate the public token for report {id}.
Invalidate the old share link of report {id} immediately.
GET /api/reports/{id}/download Download a report file · Download the report file (authorized) #
Ask an LLM
“Can I download one of my own report files while signed in?”
“Where do I get the original file behind a saved report?”
Tell an agent
Download the file for report {id}.
Fetch report {id}'s file with my credentials.

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/live-direct-marketing-online:live-direct-marketing-online-reports-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

live-direct-marketing-online-reports-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Live Direct Marketing Online Reports API
  version: 1.0.0
  contact: {}
  description: 'Operations tagged reports across 2 of this provider''s published API definitions: live-direct-marketing-online-inbox-check-openapi.json, live-direct-marketing-online-ldm-v3-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.live-direct-marketing.online
  description: Production
- url: https://api.dev.live-direct-marketing.online
  description: Development
- url: http://127.0.0.1:3000
  description: Local
tags:
- name: Reports
paths:
  /api/reports/{token}:
    get:
      operationId: ReportsController_getReport
      parameters:
      - name: token
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      tags:
      - Reports
      summary: Reports controller get report
      x-summary-source: derived
  /api/reports/{token}/pdf:
    get:
      operationId: ReportsController_getReportPdf
      parameters:
      - name: token
        required: true
        in: path
        schema:
          type: string
      - name: lang
        required: false
        in: query
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Reports
      summary: Reports controller get report pdf
      x-summary-source: derived
  /api/reports:
    get:
      operationId: ReportsController_list
      parameters:
      - name: page
        required: true
        in: query
        schema:
          type: string
      - name: pageSize
        required: true
        in: query
        schema:
          type: string
      - name: source
        required: true
        in: query
        schema:
          type: string
      - name: q
        required: true
        in: query
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '200':
          description: ''
      security:
      - jwt: []
      summary: List tenant reports (paginated) + storage quota
      tags:
      - Reports
    post:
      description: 'JSON path for agents: pass fileName + contentBase64. description is REQUIRED — explain what is inside the file and where the data came from. Decoded size limit = REPORTS_MAX_FILE_BASE64_MB (default 30 MB).'
      operationId: ReportsController_create
      parameters:
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateReportDto'
      responses:
        '201':
          description: ''
      security:
      - jwt: []
      summary: Create a report from base64 content (agent/MCP path)
      tags:
      - Reports
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/limits:
    get:
      operationId: ReportsController_limits
      parameters:
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '200':
          description: ''
      security:
      - jwt: []
      summary: Reports storage limits and current usage
      tags:
      - Reports
      x-required-scope:
      - reports:read
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/upload:
    post:
      operationId: ReportsController_upload
      parameters:
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - file
              - title
              - description
              properties:
                file:
                  type: string
                  format: binary
                title:
                  type: string
                description:
                  type: string
      responses:
        '201':
          description: ''
      security:
      - jwt: []
      summary: Upload a report file (multipart, UI path)
      tags:
      - Reports
      x-required-scope:
      - reports:write
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/from-export/{exportJobId}:
    post:
      description: Moves the export file into reports storage and keeps /exports/:id/download working (file_path is updated).
      operationId: ReportsController_fromExport
      parameters:
      - name: exportJobId
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FromExportDto'
      responses:
        '201':
          description: ''
      security:
      - jwt: []
      summary: Register a completed export job as a report (idempotent)
      tags:
      - Reports
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/{id}:
    get:
      operationId: ReportsController_getOne
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '200':
          description: ''
      security:
      - jwt: []
      summary: Get one report
      tags:
      - Reports
    patch:
      operationId: ReportsController_update
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateReportDto'
      responses:
        '200':
          description: ''
      security:
      - jwt: []
      summary: Update report title/description
      tags:
      - Reports
    delete:
      operationId: ReportsController_remove
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '200':
          description: ''
      security:
      - jwt: []
      summary: Delete a report (file + record)
      tags:
      - Reports
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/{id}/publish:
    post:
      description: 'DANGER: the link is downloadable by ANYONE on the internet. For source=EXPORT this is personal data — double-check before publishing. Returns publicUrl. Re-publish returns the SAME url (rotate-token to invalidate).'
      operationId: ReportsController_publish
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '201':
          description: ''
      security:
      - jwt: []
      summary: 'Publish: open a direct public download link (no auth!)'
      tags:
      - Reports
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/{id}/unpublish:
    post:
      operationId: ReportsController_unpublish
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '201':
          description: ''
      security:
      - jwt: []
      summary: 'Unpublish: close the public link (token kept — re-publish restores the same url)'
      tags:
      - Reports
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/{id}/rotate-token:
    post:
      operationId: ReportsController_rotateToken
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '201':
          description: ''
      security:
      - jwt: []
      summary: Rotate the public token — old link dies immediately
      tags:
      - Reports
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
  /api/reports/{id}/download:
    get:
      operationId: ReportsController_download
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      - name: X-Tenant-Id
        in: header
        required: false
        schema:
          type: string
          format: uuid
        description: Tenant UUID — required for all tenant-scoped endpoints
      responses:
        '200':
          description: ''
      security:
      - jwt: []
      summary: Download the report file (authorized)
      tags:
      - Reports
    servers:
    - url: https://api.live-direct-marketing.online
      description: Production
    - url: https://api.dev.live-direct-marketing.online
      description: Development
    - url: http://127.0.0.1:3000
      description: Local
components:
  schemas:
    UpdateReportDto:
      type: object
      properties:
        title:
          type: string
          maxLength: 300
        description:
          type: string
          description: Min. 10 characters
    FromExportDto:
      type: object
      properties:
        title:
          type: string
          description: Title (default — export file name)
        description:
          type: string
          description: Explanation (default — export auto-description)
    CreateReportDto:
      type: object
      properties:
        title:
          type: string
          description: Report title
          maxLength: 300
        description:
          type: string
          description: 'Required explanation: what is in the file, where the data comes from, how to use it (min. 10 characters)'
        fileName:
          type: string
          description: File name with an extension from the whitelist (csv, xlsx, json, pdf, txt, md, zip, png, jpg)
        contentBase64:
          type: string
          description: File content in base64 (decoded size <= REPORTS_MAX_FILE_BASE64_MB, default 30 MB)
      required:
      - title
      - description
      - fileName
      - contentBase64
  securitySchemes:
    apiKey:
      scheme: bearer
      bearerFormat: icp_live_*
      type: http
    adminKey:
      type: apiKey
      in: header
      name: X-Admin-Key
    jwt:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: JWT access token from /auth/login (Bearer <token>)
    tenant-api-key:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Tenant API key (Bearer ldm_*) for MCP/A2A clients. Issued via CRM Settings → API Keys.
    rpa-service:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Dedicated RPA service key. No tenant API-key or query-key authentication.
x-refined-from:
- live-direct-marketing-online-inbox-check-openapi.json
- live-direct-marketing-online-ldm-v3-openapi.json