openapi-directory
Version:
Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS
1 lines • 11.1 kB
JSON
{"openapi":"3.0.0","info":{"description":"Bulk Data Storage System (BDSS) allows the public to discover, search, and download patent and trademark data in bulk form.","title":"Bulk Data Storage System Services","version":"1.0.0","x-origin":[{"format":"swagger","url":"https://bulkdata.uspto.gov/BDSS-API/swagger","version":"2.0"}],"x-providerName":"uspto.gov","x-serviceName":"bdss"},"tags":[{"name":"products"}],"paths":{"/products/all/latest":{"get":{"description":"Use this GET to retrieve latest released bulk data products. Note that there is one file per product. The response includes product fields such as title, description, frequency, and level.","operationId":"getProductsWithLatestProductFiles","responses":{"200":{"description":"Successful operation."},"404":{"description":"Unexpected error accessing metadata."},"500":{"description":"Internal server error."}},"summary":"Returns all products with Latest Files.","tags":["products"]}},"/products/byname/{productName}":{"get":{"description":"Use this GET to search for bulk data services by product name or description. An error message will be returned if the product cannot be found by name. Note that product name is not case sensitive. You can enter full or partial name of an existing product to receive bulk data services. Default values for field names are as follows\n- if both years are not defined, toYear will be set equal to current year, fromYear will be set equal to previous year\n- if fromYear is defined, toYear will be set equal to fromYear+1\n- if fromMonth not defined, current month will be used\n- if toMonth not defined, it will be set equal to fromMonth\n- if fromDay is not defined, it will be set equal to current day (today)\n- if toDay is not defined, it will be set to the last day of toMonth/toYear","operationId":"getProductsByName","parameters":[{"description":"Name of the product, for example, \"Trademark\"","in":"path","name":"productName","required":true,"schema":{"type":"string"}},{"description":"Year from when the product files are needed, for example, 1999.","in":"query","name":"fromYear","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Year until when the product files are needed, for example, 2000.","in":"query","name":"toYear","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Month from when the product files are needed, for example, 01.","in":"query","name":"fromMonth","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Month until when the product files are needed, for example, 12.","in":"query","name":"toMonth","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Day from when the product files are needed, for example, 01.","in":"query","name":"fromDay","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Day until when the product files are needed, for example, 31.","in":"query","name":"toDay","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Boolean flag to indicate if product hierarchy needs to be return in the response. By default it doesn't return the hierarchy in the response.","in":"query","name":"hierarchy","required":false,"schema":{"type":"string","default":"false"}},{"description":"Max. number of files to retrieve, per product. Set value to -1 to get all files","in":"query","name":"maxFiles","required":false,"schema":{"type":"integer","format":"int32","default":20}}],"responses":{"200":{"description":"Successful operation."},"404":{"description":"Unexpected error accessing metadata."},"500":{"description":"Internal server error."}},"summary":"Returns files associated with products (of level PRODUCT) based on their full or partial names.","tags":["products"]}},"/products/popular":{"get":{"description":"Use this GET to retrieve these bulk data files by their popularity. The response includes product fields such as title, description, frequency, and level.","operationId":"getPopulartProducts","responses":{"200":{"description":"Successful operation."},"404":{"description":"Unexpected error accessing metadata."},"500":{"description":"Internal server error."}},"summary":"Returns popular products along with latest files.","tags":["products"]}},"/products/tree":{"get":{"description":"Use this GET to retrieve short name and parent/child relationships for bulk data products. Short names are unique IDs of the products and should be used in other GETs where {shortName} parameter is required\nUse this GET to perform initial exploration of the existing products hierarchy\nShort names are unique IDs of the products and should be used in other GETs where {shortName} parameter is required","operationId":"getProductsTree","responses":{"200":{"description":"Successful operation."},"404":{"description":"Unexpected error accessing metadata."},"500":{"description":"Internal server error."}},"summary":"Returns products' hierarchical tree.","tags":["products"]}},"/products/tree/{shortName}":{"get":{"description":"Use this GET to search for bulk data products by their short names. This works almost like products/tree GET, the difference is that it returns subtree data starting from a particular tree node (i.e. the GET returns all children if parent short name is entered). If a product cannot be found by its short name (has to be exact match and is not case sensitive), then an error message will appear in response body.","operationId":"getProductSubTree","parameters":[{"description":"Short name of the product, for example, \"PTISSD\"","in":"path","name":"shortName","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful operation."},"404":{"description":"Product not found."},"500":{"description":"Internal server error."}},"summary":"Returns products' hierarchical subtree.","tags":["products"]}},"/products/{shortName}":{"get":{"description":"Use this GET to search for bulk data products by their short names and description. Note that \"From\" and \"To\" dates can be inputted separately as year/month/day values or as a single date string in format \"YYYY-MM-DD\".\nIf all values are entered, single date strings have a higher priority\nFor the list of default values rules, see GET /products/byname/{productName} above","operationId":"getProductsByShortName","parameters":[{"description":"Short name of the product, for example, \"PTGRSP\"","in":"path","name":"shortName","required":true,"schema":{"type":"string"}},{"description":"Year from when the product files are needed, for example, 1999.","in":"query","name":"fromYear","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Year until when the product files are needed, for example, 2000.","in":"query","name":"toYear","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Month from when the product files are needed, for example, 01.","in":"query","name":"fromMonth","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Month until when the product files are needed, for example, 12.","in":"query","name":"toMonth","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Day from when the product files are needed, for example, 01.","in":"query","name":"fromDay","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Day until when the product files are needed, for example, 31.","in":"query","name":"toDay","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Year from when the product files are needed, for example, 1999-01-01.","in":"query","name":"fromDate","required":false,"schema":{"type":"string"}},{"description":"Year until when the product files are needed, for example, 2001-12-31.","in":"query","name":"toDate","required":false,"schema":{"type":"string"}},{"description":"Boolean flag (possible values: true and false) to indicate if product hierarchy needs to be return in the response. By default it doesn't return the hierarchy in the response.","in":"query","name":"hierarchy","required":false,"schema":{"type":"string","default":"false"}}],"responses":{"200":{"description":"Successful operation."},"404":{"description":"Product not found."},"500":{"description":"Internal server error."}},"summary":"Returns products along with their associated files by short names.","tags":["products"]}},"/products/{shortName}/latest":{"get":{"description":"Use this GET to search for latest released bulk data products by their short names and release year. The return response will include the latest files within the year specified. An error message will be returned if product(s) cannot be found for the year specified","operationId":"getLatestProductFilesByProductIdAndTime","parameters":[{"description":"Short name of the product, for example, \"PTGRSP\"","in":"path","name":"shortName","required":true,"schema":{"type":"string"}},{"description":"Year of the product files needed, for example, 2001.","in":"query","name":"year","required":false,"schema":{"type":"integer","format":"int32"}},{"description":"Boolean flag (possible values: true and false) to indicate if product hierarchy needs to be return in the response. By default it doesn't return the hierarchy in the response.","in":"query","name":"hierarchy","required":false,"schema":{"type":"string","default":"false"}}],"responses":{"200":{"description":"Successful operation."},"404":{"description":"Product not found."},"500":{"description":"Internal server error."}},"summary":"Returns products along with their latest files by short names.","tags":["products"]}}},"servers":[{"url":"/BDSS-API"}],"components":{"schemas":{"ProductFileModel":{"properties":{"fileDownloadUrl":{"type":"string"},"fileFromTime":{"type":"string"},"fileIdentifier":{"format":"int32","type":"integer"},"fileLinkPath":{"format":"uri","type":"string"},"fileName":{"type":"string"},"fileReleaseDate":{"type":"string"},"fileSize":{"type":"integer"},"fileToTime":{"type":"string"},"fileType":{"type":"string"}},"type":"object"},"ProductModel":{"description":"Product Model","properties":{"numberOfFiles":{"format":"int64","type":"integer"},"parentProduct":{"$ref":"#/components/schemas/ProductModel"},"productDesc":{"type":"string"},"productFiles":{"items":{"$ref":"#/components/schemas/ProductFileModel"},"type":"array"},"productFrequency":{"type":"string"},"productFromDate":{"type":"string"},"productIdentifier":{"format":"int32","type":"integer"},"productLevel":{"description":"Represents the Level in the Product hierarchy.","enum":["available","pending","sold"],"type":"string"},"productLinkPath":{"format":"uri","type":"string"},"productShortName":{"type":"string"},"productTitle":{"type":"string"},"productToDate":{"type":"string"}},"type":"object"},"ProductModelShort":{"description":"Product Model, short version, with the list of child products","properties":{"productChildren":{"items":{"$ref":"#/components/schemas/ProductModelShort"},"type":"array"},"productLinkPath":{"format":"uri","type":"string"},"productShortName":{"type":"string"},"productTitle":{"type":"string"}},"type":"object"}}}}