{
  "openapi": "3.0.1",
  "info": {
    "title": "USPTO Trademark Applications & Status Feed",
    "description": "Clean, flat US trademark records from the official USPTO daily data: word mark, serial and registration number, owner, goods and services, class, status and dates, with a what-changed-since-last-run mode. Billed only per delivered record. No API key needed.",
    "version": "0.0",
    "x-build-id": "RrzCeQTLE9nhdfwQ7"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/thoob~uspto-trademark-feed/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-thoob-uspto-trademark-feed",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/thoob~uspto-trademark-feed/runs": {
      "post": {
        "operationId": "runs-sync-thoob-uspto-trademark-feed",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/thoob~uspto-trademark-feed/run-sync": {
      "post": {
        "operationId": "run-sync-thoob-uspto-trademark-feed",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "apiKey": {
            "title": "USPTO API key",
            "type": "string",
            "description": "Optional. The actor supplies a working key, so you can leave this blank. Pass your own to run against your own quota. Stored as a secret; never written to the dataset or logs."
          },
          "lookbackDays": {
            "title": "Days to look back",
            "minimum": 1,
            "maximum": 60,
            "type": "integer",
            "description": "How many days of USPTO daily trademark files to read, counting back from today. USPTO publishes on business days, so a lookback of 3 typically covers the last 2 or 3 published files. Each day holds roughly 9,500 records.",
            "default": 3
          },
          "markContains": {
            "title": "Mark text contains",
            "type": "string",
            "description": "Optional. Keep only marks whose word mark contains this text, matched case-insensitively. Leave empty for every mark."
          },
          "ownerContains": {
            "title": "Owner name contains",
            "type": "string",
            "description": "Optional. Keep only records where an owner's name contains this text, matched case-insensitively. Useful for watching one company's portfolio."
          },
          "internationalClasses": {
            "title": "International classes",
            "type": "array",
            "description": "Optional. Keep only marks in these Nice international classes (for example 009 for software, 025 for clothing, 042 for tech services). Leave empty for all classes.",
            "items": {
              "type": "string"
            }
          },
          "ownerStates": {
            "title": "Owner states",
            "type": "array",
            "description": "Optional. Keep only marks with an owner in these US states (two-letter postal codes). Leave empty for all.",
            "items": {
              "type": "string"
            }
          },
          "statusCodes": {
            "title": "Status codes",
            "type": "array",
            "description": "Optional. Keep only marks carrying one of these USPTO status codes (for example 630 for a new application awaiting examination, 700 for registered). Leave empty for all statuses.",
            "items": {
              "type": "string"
            }
          },
          "registeredOnly": {
            "title": "Registered marks only",
            "type": "boolean",
            "description": "Keep only marks that carry a registration number, dropping pending applications.",
            "default": false
          },
          "liveOnly": {
            "title": "Live marks only",
            "type": "boolean",
            "description": "Drop marks that carry an abandonment date.",
            "default": false
          },
          "mode": {
            "title": "Mode",
            "enum": [
              "full",
              "changes"
            ],
            "type": "string",
            "description": "full returns every matching record in the window. changes returns only marks that are new to you or whose status, registration, abandonment, renewal or owner has moved since your last run.",
            "default": "full"
          },
          "maxRecords": {
            "title": "Max delivered records",
            "minimum": 0,
            "maximum": 200000,
            "type": "integer",
            "description": "Cap on how many records a run delivers and bills. Defaults to 1000, because a single USPTO day holds around 9,500 records and a busy one holds far more. Set 0 for no cap. In changes mode nothing is lost to the cap: the rest arrives on a later run and is never billed twice. The platform spend cap is honored regardless.",
            "default": 1000
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}