{
  "openapi": "3.0.1",
  "info": {
    "title": "US Copyright Office Scraper",
    "description": "Scrape the US Copyright Office Public Records System (COINS) - 60M+ copyright registrations, recordations and card-catalog records. Search by title, keyword, owner/claimant, author or registration number; get full registration metadata, claimants, authors, dates, and catalog detail.",
    "version": "1.0",
    "x-build-id": "YcesLV6HgsePsfbAk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~us-copyright-office-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-us-copyright-office-scraper",
        "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/crawlerbros~us-copyright-office-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-us-copyright-office-scraper",
        "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/crawlerbros~us-copyright-office-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-us-copyright-office-scraper",
        "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",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "search",
              "searchByNumber",
              "searchByOwner",
              "searchByAuthor"
            ],
            "type": "string",
            "description": "What to fetch.",
            "default": "search"
          },
          "searchQuery": {
            "title": "Search query",
            "type": "string",
            "description": "Free-text query — title, name, number or any keyword (mode=search).",
            "default": "harry potter"
          },
          "searchField": {
            "title": "Search field",
            "enum": [
              "keyword",
              "title"
            ],
            "type": "string",
            "description": "Which indexed field the search query is matched against (mode=search).",
            "default": "keyword"
          },
          "registrationNumber": {
            "title": "Registration number (mode=searchByNumber)",
            "type": "string",
            "description": "Copyright registration, recordation or SR number, e.g. `TX0005739644`, `PAu004203637`, `RE0000082251`, `V3632D194`, `SR0000079638`."
          },
          "ownerQuery": {
            "title": "Owner / claimant name (mode=searchByOwner)",
            "type": "string",
            "description": "Name of the copyright claimant/owner, e.g. `Warner Brothers`."
          },
          "authorQuery": {
            "title": "Author name (mode=searchByAuthor)",
            "type": "string",
            "description": "Name of the author/creator, e.g. `Rowling`."
          },
          "workType": {
            "title": "Type of work",
            "enum": [
              "text",
              "music",
              "visual_material",
              "dramatic_work_choreography",
              "sound_recording",
              "motion_picture",
              "computer_file",
              "serial",
              "map",
              "kit",
              "mask_work",
              "preregistration",
              "cancelled_registration",
              "sound_recording_text",
              "sound_recording_music",
              "unspecified"
            ],
            "type": "string",
            "description": "Restrict to a specific type of work."
          },
          "registrationClass": {
            "title": "Registration class",
            "enum": [
              "TX",
              "PA",
              "SR",
              "VA",
              "RE",
              "MW",
              "PR",
              "book",
              "work_of_art",
              "musical_composition",
              "map",
              "motion_picture",
              "contribution_to_newspaper_or_periodical",
              "book_or_contribution_to_newspaper_or_periodical",
              "newspaper_or_periodical",
              "periodical",
              "drama",
              "dramatic_composition",
              "print_or_pictorial_illustration",
              "lecture_sermon_or_address",
              "drawing_or_plastic_work_of_scientific_or_technical_character",
              "print_or_label_used_for_an_article_of_merchandise",
              "reproduction_of_a_work_of_art",
              "photoplay",
              "photograph",
              "chromo_or_lithograph",
              "engraving_cut_or_print",
              "other_item_type",
              "map_or_chart",
              "book_or_drama",
              "music",
              "no_classification",
              "unspecified"
            ],
            "type": "string",
            "description": "Restrict to a US Copyright Office registration class."
          },
          "registrationStatus": {
            "title": "Registration status",
            "enum": [
              "published",
              "unpublished",
              "unspecified"
            ],
            "type": "string",
            "description": "Restrict by published / unpublished status."
          },
          "recordType": {
            "title": "Record type",
            "enum": [
              "registration",
              "recordation"
            ],
            "type": "string",
            "description": "Restrict to registrations or recordations."
          },
          "recordationItemType": {
            "title": "Recordation item type",
            "enum": [
              "assignment",
              "mortgage_security_agreement",
              "exclusive_license",
              "non_exclusive_license",
              "dmca_filing",
              "notice_of_termination",
              "notice_of_termination_203",
              "notice_of_termination_304_c",
              "notice_of_termination_304_d",
              "declarations_about_the_author",
              "court_action",
              "court_actions_other_than_clerk",
              "court_order",
              "mask_works_documents",
              "security_interests",
              "nafta_statements_of_interest",
              "gatt_notices_of_intent_to_enforce_a_copyright",
              "change_of_address",
              "change_of_name",
              "affidavit_declaration_certification",
              "will",
              "counternotice",
              "other",
              "unspecified"
            ],
            "type": "string",
            "description": "Restrict to a type of recorded document (assignments, security agreements, DMCA filings, terminations, licenses...)."
          },
          "systemOfOrigin": {
            "title": "System of origin",
            "enum": [
              "voyager",
              "card_catalog"
            ],
            "type": "string",
            "description": "Restrict to a source catalog: post-1977 electronic records or pre-1978 card catalog."
          },
          "dateRangeFrom": {
            "title": "Date range from",
            "type": "string",
            "description": "Earliest date of the range (YYYY-MM-DD), applied to the field selected in `dateField`."
          },
          "dateRangeTo": {
            "title": "Date range to",
            "type": "string",
            "description": "Latest date of the range (YYYY-MM-DD), applied to the field selected in `dateField`."
          },
          "dateField": {
            "title": "Date field",
            "enum": [
              "registration_date_as_date",
              "first_published_date_as_date",
              "date_creation_date_as_year",
              "date_certification_date_statement_as_date",
              "recordation_date_as_date",
              "representative_date"
            ],
            "type": "string",
            "description": "Which record date the date range is applied to.",
            "default": "registration_date_as_date"
          },
          "containsKeyword": {
            "title": "Must contain keyword",
            "type": "string",
            "description": "Only emit records whose title, claimants, authors or registration number contain this substring."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "relevancy",
              "full_title",
              "representative_date",
              "copyright_number_for_display",
              "latest_transaction_date"
            ],
            "type": "string",
            "description": "Field used to order results.",
            "default": "relevancy"
          },
          "sortOrder": {
            "title": "Sort order",
            "enum": [
              "asc",
              "desc"
            ],
            "type": "string",
            "description": "Ascending or descending order.",
            "default": "asc"
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Hard cap on emitted records.",
            "default": 50
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Optional proxy. Only used automatically if the Copyright Office API rate-limits or blocks direct requests."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}