{"record":{"id":"5e58740df90c9a0d","repo":"phacility/phabricator","slug":"unknown-file-content-request-kind-s","errorCode":null,"errorMessage":"Unknown file content request kind \"%s\".","messagePattern":"Unknown file content request kind \"(.+?)\"\\.","errorType":"exception","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"src/applications/files/storage/PhabricatorFile.php","lineNumber":840,"sourceCode":"  }\n\n  public function getURI() {\n    return $this->getInfoURI();\n  }\n\n  public function getViewURI() {\n    if (!$this->getPHID()) {\n      throw new Exception(\n        pht('You must save a file before you can generate a view URI.'));\n    }\n\n    return $this->getCDNURI('data');\n  }\n\n  public function getCDNURI($request_kind) {\n    if (($request_kind !== 'data') &&\n        ($request_kind !== 'download')) {\n      throw new Exception(\n        pht(\n          'Unknown file content request kind \"%s\".',\n          $request_kind));\n    }\n\n    $name = self::normalizeFileName($this->getName());\n    $name = phutil_escape_uri($name);\n\n    $parts = array();\n    $parts[] = 'file';\n    $parts[] = $request_kind;\n\n    // If this is an instanced install, add the instance identifier to the URI.\n    // Instanced configurations behind a CDN may not be able to control the\n    // request domain used by the CDN (as with AWS CloudFront). Embedding the\n    // instance identity in the path allows us to distinguish between requests\n    // originating from different instances but served through the same CDN.\n    $instance = PhabricatorEnv::getEnvConfig('cluster.instance');","sourceCodeStart":822,"sourceCodeEnd":858,"githubUrl":"https://github.com/phacility/phabricator/blob/5720a38cfe95b00ca4be5016dd0d2f3195f4fa04/src/applications/files/storage/PhabricatorFile.php#L822-L858","documentation":"Error \"Unknown file content request kind \"%s\".\" thrown in phacility/phabricator.","triggerScenarios":"Thrown at src/applications/files/storage/PhabricatorFile.php:840 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5720a38cfe95b00ca4be5016dd0d2f3195f4fa04","analyzedAt":"2026-08-21T05:07:25.672Z","schemaVersion":2},"datasetVersion":"2026-08-21T11:28:35.574Z"}