Live Direct Marketing Legal API

The Legal API from Live Direct Marketing — 8 operation(s) for legal.

Operations 10

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/legal/terms Read the current terms of service · Get the current terms of service text (public). #
Ask an LLM
“What do the current terms of service say?”
“Can I get the terms of service in English instead of Russian?”
Tell an agent
Get the current terms of service in {locale}.
Show me the terms of service text.
PUT /api/legal/terms Edit the terms of service text · Update the terms of service text (SUPER only) #
Ask an LLM
“How does a super admin change the terms of service wording?”
“Can I overwrite the current terms text directly?”
Tell an agent
Update the terms of service text.
Replace the wording of the current terms of service.
GET /api/legal/documents List the public legal documents · List all legal documents (key/title/summary) — public #
Ask an LLM
“Which legal documents are published, like privacy policy or acceptable use?”
“Can I see a summary of each public legal document?”
Tell an agent
List the public legal documents with their summaries.
Show the titles of all published legal policies.
GET /api/legal/documents/{key} Read one legal document · Get one legal document by key (terms|aup|privacy|dpa|mode2|campaign_guarantee|se… #
Ask an LLM
“Can I read the privacy policy or the DPA?”
“Where is the campaign guarantee document?”
Tell an agent
Get the {key} legal document.
Show me the full text of legal document {key}.
POST /api/legal/documents/{key}/publish Publish a new version of a legal document · Publish a new version of a legal document (SUPER) #
Ask an LLM
“How do I publish a new version of the privacy policy?”
“Can a super admin release an updated legal document version?”
Tell an agent
Publish a new version of legal document {key}.
Release an updated {key} policy.
GET /api/legal/documents/{key}/versions List versions of a legal document · List versions of a legal document (SUPER) #
Ask an LLM
“What earlier versions of a legal document exist?”
“Can I see the version history of the terms in one locale?”
Tell an agent
List versions of legal document {key}.
Show the {locale} version history of {key}.
POST /api/legal/acceptances Record my acceptance of a legal document · Record the current user's acceptance of a legal document #
Ask an LLM
“How do I record that I accepted a specific legal document?”
“Can I accept the privacy policy or the AUP for my user?”
Tell an agent
Record my acceptance of this legal document.
Log that I agreed to the latest policy version.
GET /api/legal/acceptances Search the legal acceptance registry · Acceptance registry — who accepted which version when (SUPER) #
Ask an LLM
“Who accepted which version of a legal document, and when?”
“Can I filter acceptances by user, tenant or document?”
Tell an agent
Show acceptances of document {docKey}.
List every legal acceptance recorded by user {userId}.
GET /api/legal/acceptances/me List my own legal acceptances · The current user's own acceptances #
Ask an LLM
“Which legal documents have I already accepted?”
“When did I agree to each policy?”
Tell an agent
Show my own legal acceptances.
List the policies I personally have agreed to.
GET /api/legal List all legal documents as an admin · List all legal documents (SUPER only) #
Ask an LLM
“Can a super admin see every legal document including unpublished ones?”
“What does the full admin list of legal documents contain?”
Tell an agent
List all legal documents in the admin view.
Show every legal record for super admins.

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-legal-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-legal-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: LDM v3 Legal API
  description: 'Multi-tenant B2B outreach automation platform. Auth: JWT Bearer (15-min) or tenant API key (ldm_*) managed in CRM Settings → API Keys. All tenant-scoped endpoints require the X-Tenant-Id header.'
  version: 1.0.0
  contact: {}
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: Legal
paths:
  /api/legal/terms:
    get:
      operationId: LegalController_getTerms
      parameters:
      - name: locale
        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: Get the current terms of service text (public).
      tags:
      - Legal
    put:
      operationId: LegalController_updateTerms
      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: Update the terms of service text (SUPER only)
      tags:
      - Legal
      x-required-scope:
      - legal:write
  /api/legal/documents:
    get:
      operationId: LegalController_listDocuments
      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: List all legal documents (key/title/summary) — public
      tags:
      - Legal
  /api/legal/documents/{key}:
    get:
      operationId: LegalController_getDocument
      parameters:
      - name: key
        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 legal document by key (terms|aup|privacy|dpa|mode2|campaign_guarantee|se…
      tags:
      - Legal
  /api/legal/documents/{key}/publish:
    post:
      operationId: LegalController_publishVersion
      parameters:
      - name: key
        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 a new version of a legal document (SUPER)
      tags:
      - Legal
  /api/legal/documents/{key}/versions:
    get:
      operationId: LegalController_listVersions
      parameters:
      - name: key
        required: true
        in: path
        schema:
          type: string
      - name: locale
        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 versions of a legal document (SUPER)
      tags:
      - Legal
  /api/legal/acceptances:
    post:
      operationId: LegalController_recordAcceptance
      parameters:
      - 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: Record the current user's acceptance of a legal document
      tags:
      - Legal
    get:
      operationId: LegalController_listAcceptances
      parameters:
      - name: userId
        required: true
        in: query
        schema:
          type: string
      - name: docKey
        required: true
        in: query
        schema:
          type: string
      - name: tenantId
        required: true
        in: query
        schema:
          type: string
      - name: page
        required: true
        in: query
        schema:
          type: string
      - name: limit
        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: Acceptance registry — who accepted which version when (SUPER)
      tags:
      - Legal
      x-required-scope:
      - legal:read
  /api/legal/acceptances/me:
    get:
      operationId: LegalController_myAcceptances
      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: The current user's own acceptances
      tags:
      - Legal
  /api/legal:
    get:
      operationId: LegalController_listAll
      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: List all legal documents (SUPER only)
      tags:
      - Legal
components:
  securitySchemes:
    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.