Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.
openapi: 3.2.0
info:
title: TollBit Reporting API
version: v2
description: 'TollBit is the web stack for the agentic internet: publishers analyze, control, and monetize AI agent access to their content. This API lets developers and AI agents discover licensable content (Licensed Search), fetch rates and license options, mint one-time signed access tokens, retrieve licensed or indexed content, self-report usage, and list a property''s content catalog. Reconstructed by API Evangelist from TollBit''s published per-operation OpenAPI fragments (docs.tollbit.com/reference).'
contact:
name: TollBit
email: team@tollbit.com
url: https://tollbit.com
x-apievangelist:
generated: '2026-07-21'
method: searched
source: https://docs.tollbit.com/reference (per-operation OpenAPI fragments merged; llms.txt index)
note: Reconstructed from TollBit's published per-operation OpenAPI 3.0 fragments. Only real /dev/* and subdomain endpoints included; a foreign ReadMe sample spec present on two reference pages was excluded.
servers:
- url: https://gateway.tollbit.com
description: Production API gateway
tags:
- name: Reporting
paths:
/dev/v2/transactions/selfReport:
post:
operationId: ReportingService_reportContentUsage
parameters: []
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/SelfReportContentUsageResponse'
'400':
description: The server could not understand the request due to invalid syntax.
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemJSON'
'401':
description: Access is unauthorized.
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemJSON'
'403':
description: Access is forbidden.
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemJSON'
'404':
description: The server cannot find the requested resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemJSON'
'500':
description: Server error
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemJSON'
tags:
- Reporting
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SelfReportContentUsageRequest'
security:
- ApiKeyAuth: []
summary: Reporting service report content usage
x-summary-source: derived
components:
schemas:
SelfReportUsage:
type: object
required:
- url
- timesUsed
- licensePermissions
- licenseType
properties:
url:
type: string
format: uri
timesUsed:
type: integer
format: int32
licensePermissions:
type: array
items:
$ref: '#/components/schemas/SelfReportLicensePermission'
licenseId:
type: string
licenseType:
type: string
metadata:
type: object
additionalProperties: {}
SelfReportUsageReceipt:
type: object
required:
- url
- perUnitPriceMicros
- totalUsePriceMicros
- currency
- license
properties:
url:
type: string
format: uri
perUnitPriceMicros:
type: integer
format: int64
totalUsePriceMicros:
type: integer
format: int64
currency:
type: string
license:
$ref: '#/components/schemas/RateLicenseResponse'
SelfReportLicensePermission:
type: object
required:
- name
properties:
name:
type: string
RateLicensePermission:
type: object
required:
- name
properties:
name:
type: string
ProblemJSON:
type: object
required:
- type
- title
- status
properties:
type:
type: string
title:
type: string
status:
type: integer
format: int32
detail:
type: string
instance:
type: string
additionalProperties: {}
SelfReportContentUsageRequest:
type: object
required:
- idempotencyId
- usage
properties:
idempotencyId:
type: string
usage:
type: array
items:
$ref: '#/components/schemas/SelfReportUsage'
RateLicenseResponse:
type: object
required:
- id
- licenseType
- licensePath
- permissions
properties:
id:
type: string
licenseType:
type: string
licensePath:
type: string
permissions:
type: array
items:
$ref: '#/components/schemas/RateLicensePermission'
SelfReportContentUsageResponse:
type: object
required:
- receipts
properties:
receipts:
type: array
items:
$ref: '#/components/schemas/SelfReportUsageReceipt'
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: TollbitKey
ApiKeyAuth_:
type: apiKey
in: header
name: Tollbit-Token
TollbitKey:
type: apiKey
in: header
name: TollbitKey
description: Your API key which can be found in the access page of the dashboard.
SubdomainAccessToken:
type: http
scheme: Bearer
description: 'To access content on a TollBit subdomain, you will need an access token. This token is a JWT that is signed by TollBit and includes information about the subdomain and the permissions granted to the token.
You can obtain the token by calling the TokensService to create a Content Access Token. Once you have the token, you can include it in the Authorization header of your requests to the subdomain.'