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.
openapi: 3.2.0
info:
title: USPTO Trademark Status and Document Retrieval Case Documents API
description: The USPTO Trademark Status and Document Retrieval (TSDR) REST API provides programmatic access to trademark case status, associated documents, case images, and related metadata. An API key is required for bulk data downloads.
version: 1.0.0
contact:
name: USPTO
email: TEAS@uspto.gov
url: https://developer.uspto.gov/api-catalog/tsdr-data-api
servers:
- url: https://tsdrapi.uspto.gov
security:
- ApiKeyAuth: []
tags:
- name: Case Documents
description: Retrieve trademark case documents and images
paths:
/ts/cd/casedocs/{caseid}/info:
get:
tags:
- Case Documents
operationId: getCaseDocumentsInfo
summary: Get Trademark Case Document List
description: Retrieve the list of documents associated with a trademark case.
parameters:
- name: caseid
in: path
required: true
description: Trademark serial or registration number
schema:
type: string
responses:
'200':
description: Case document list
content:
application/json:
schema:
$ref: '#/components/schemas/CaseDocumentListResponse'
'404':
description: Not Found
/ts/cd/casedocs/{caseid}/bundle:
get:
tags:
- Case Documents
operationId: getCaseDocumentsBundle
summary: Get Trademark Case Documents Bundle
description: Download all documents for a trademark case as a bundle.
parameters:
- name: caseid
in: path
required: true
description: Trademark serial or registration number
schema:
type: string
responses:
'200':
description: Bundle of case documents
content:
application/zip:
schema:
type: string
format: binary
'404':
description: Not Found
/ts/cd/casedoc/{caseid}/{docid}/info:
get:
tags:
- Case Documents
operationId: getCaseDocumentInfo
summary: Get Trademark Case Document Metadata
description: Retrieve metadata for a specific trademark case document.
parameters:
- name: caseid
in: path
required: true
schema:
type: string
- name: docid
in: path
required: true
schema:
type: string
responses:
'200':
description: Document metadata
content:
application/json:
schema:
$ref: '#/components/schemas/CaseDocumentInfo'
'404':
description: Not Found
/ts/cd/casedoc/{caseid}/{docid}/content.pdf:
get:
tags:
- Case Documents
operationId: getCaseDocumentPdf
summary: Get Trademark Case Document as PDF
parameters:
- name: caseid
in: path
required: true
schema:
type: string
- name: docid
in: path
required: true
schema:
type: string
responses:
'200':
description: Document as PDF
content:
application/pdf:
schema:
type: string
format: binary
'404':
description: Not Found
/ts/cd/casedoc/{caseid}/{docid}/{pageid}/media:
get:
tags:
- Case Documents
operationId: getCaseDocumentPageMedia
summary: Get Trademark Case Document Page Image
parameters:
- name: caseid
in: path
required: true
schema:
type: string
- name: docid
in: path
required: true
schema:
type: string
- name: pageid
in: path
required: true
schema:
type: string
responses:
'200':
description: Document page image
content:
image/jpeg:
schema:
type: string
format: binary
'404':
description: Not Found
components:
schemas:
CaseDocumentInfo:
type: object
description: Metadata for a trademark case document
properties:
documentId:
type: string
documentDescription:
type: string
mailDate:
type: string
format: date
numberOfPages:
type: integer
documentUrl:
type: string
format: uri
CaseDocumentListResponse:
type: object
description: List of documents for a trademark case
properties:
serialNumber:
type: string
documentList:
type: array
items:
$ref: '#/components/schemas/CaseDocumentInfo'
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: USPTO-API-KEY