US Patent and Trademark Office · Agentic Access

US Patent and Trademark Office Agentic Access

x-agentic-access generated

US Patent and Trademark Office exposes 41 API operations that an AI agent could call, of which 8 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.

By consequence: 33 read and 8 write.

Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.

Federal GovernmentPatentsTrademarksIntellectual PropertyOpen Data
Operations: 41 Acting: 8 Human-in-the-loop: 0 Method: generated

By consequence

read 33 write 8

Source

Agentic Access

Raw ↑
generated: '2026-07-15'
method: generated
source: openapi/uspto-open-data-portal-openapi.yml, openapi/uspto-tsdr-openapi.yml
description: Recommended x-agentic-access execution contracts, classified heuristically from
  the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
  audience per deployment. See research/curity/agentic-governance/.
summary:
  operations: 41
  by_action_class:
    acting: 8
    connected: 33
  by_consequence:
    write: 8
    read: 33
  human_in_the_loop_required: 0
operations:
- path: /api/v1/patent/applications/search
  method: post
  operationId: searchPatentApplicationsPost
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/patent/applications/search
  method: get
  operationId: searchPatentApplicationsGet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/search/download
  method: post
  operationId: downloadPatentApplicationsSearch
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/patent/applications/{applicationNumberText}
  method: get
  operationId: getPatentApplication
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/meta-data
  method: get
  operationId: getPatentApplicationMetaData
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/adjustment
  method: get
  operationId: getPatentApplicationAdjustment
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/assignment
  method: get
  operationId: getPatentApplicationAssignment
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/attorney
  method: get
  operationId: getPatentApplicationAttorney
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/continuity
  method: get
  operationId: getPatentApplicationContinuity
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/foreign-priority
  method: get
  operationId: getPatentApplicationForeignPriority
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/transactions
  method: get
  operationId: getPatentApplicationTransactions
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/applications/{applicationNumberText}/documents
  method: get
  operationId: getPatentApplicationDocuments
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/status-codes
  method: get
  operationId: getPatentStatusCodes
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/datasets/products/search
  method: get
  operationId: searchDatasetProducts
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/datasets/products/{productIdentifier}
  method: get
  operationId: getDatasetProduct
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/petition/decisions/search
  method: post
  operationId: searchPetitionDecisionsPost
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/petition/decisions/search
  method: get
  operationId: searchPetitionDecisionsGet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/petition/decisions/{petitionDecisionRecordIdentifier}
  method: get
  operationId: getPetitionDecision
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/trials/proceedings/search
  method: post
  operationId: searchPtabProceedingsPost
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/patent/trials/proceedings/search
  method: get
  operationId: searchPtabProceedingsGet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/trials/proceedings/{trialNumber}
  method: get
  operationId: getPtabProceeding
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/trials/decisions/search
  method: post
  operationId: searchPtabDecisionsPost
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/patent/trials/decisions/search
  method: get
  operationId: searchPtabDecisionsGet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/trials/decisions/{documentIdentifier}
  method: get
  operationId: getPtabDecision
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/trials/documents/search
  method: post
  operationId: searchPtabDocumentsPost
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/patent/trials/documents/search
  method: get
  operationId: searchPtabDocumentsGet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/trials/documents/{documentIdentifier}
  method: get
  operationId: getPtabDocument
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/appeals/decisions/search
  method: post
  operationId: searchPtabAppealDecisionsPost
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/patent/appeals/decisions/search
  method: get
  operationId: searchPtabAppealDecisionsGet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/appeals/decisions/{documentIdentifier}
  method: get
  operationId: getPtabAppealDecision
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/interferences/decisions/search
  method: post
  operationId: searchPtabInterferenceDecisionsPost
  x-agentic-access:
    action-class: acting
    consequence: write
    subject: required
    audience: null
    token:
      max-ttl: 900
    escalation:
      human-in-the-loop: conditional
      triggers:
      - abnormal
      - high-value
    audit: required
- path: /api/v1/patent/interferences/decisions/search
  method: get
  operationId: searchPtabInterferenceDecisionsGet
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /api/v1/patent/interferences/decisions/{documentIdentifier}
  method: get
  operationId: getPtabInterferenceDecision
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /ts/cd/caseMultiStatus/{type}
  method: get
  operationId: getMultipleCaseStatus
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /ts/cd/casestatus/{caseid}/content.pdf
  method: get
  operationId: getCaseStatusPdf
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /ts/cd/casedocs/{caseid}/info
  method: get
  operationId: getCaseDocumentsInfo
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /ts/cd/casedocs/{caseid}/bundle
  method: get
  operationId: getCaseDocumentsBundle
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /ts/cd/casedoc/{caseid}/{docid}/info
  method: get
  operationId: getCaseDocumentInfo
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /ts/cd/casedoc/{caseid}/{docid}/content.pdf
  method: get
  operationId: getCaseDocumentPdf
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /ts/cd/casedoc/{caseid}/{docid}/{pageid}/media
  method: get
  operationId: getCaseDocumentPageMedia
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none
- path: /last-update/info.json
  method: get
  operationId: getLastUpdateInfo
  x-agentic-access:
    action-class: connected
    consequence: read
    subject: optional
    token:
      max-ttl: 3600
    audit: none