docs: @Patch("/metadata/{projectName}/repos/{repoName}/perm/tokens/{appId}")
      @Consumes("application/json-patch+json")
      public CompletableFuture<Revision> updateSpecificTokenPermission(@Param("projectName") String projectName,
                                                                       @Param("repoName") String repoName,
                                                                       @Param("appId") String appId,
                                                                       JsonPatch jsonPatch,
                                                                       Author author) {
          final ReplaceOperation operation = ensureSingleReplaceOperation(jsonPatch, "/permissions");
          final Collection<Permission> permissions = Jackson.convertValue(operation.value(), permissionsTypeRef);
          return mds.findTokenByAppId(appId)
                    .thenCompose(token -> mds.updatePerTokenPermission(
                            author, projectName, repoName, appId, permissions));
      }