143 lines
7.1 KiB
HTML
143 lines
7.1 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>13 Config - Momentry API Docs</title>
|
|
<style>
|
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: #f5f5f5; color: #333; padding: 40px; }
|
|
.container { max-width: 960px; margin: 0 auto; background: white; border-radius: 12px; box-shadow: 0 2px 12px rgba(0,0,0,0.08); padding: 40px; }
|
|
h1 { font-size: 24px; margin: 24px 0 12px; }
|
|
h2 { font-size: 20px; margin: 20px 0 10px; color: #222; }
|
|
h3 { font-size: 16px; margin: 16px 0 8px; color: #444; }
|
|
p { line-height: 1.6; margin: 8px 0; }
|
|
table { border-collapse: collapse; width: 100%; margin: 12px 0; font-size: 14px; }
|
|
th, td { border: 1px solid #ddd; padding: 8px 12px; text-align: left; }
|
|
th { background: #f0f0f0; font-weight: 600; }
|
|
code { background: #f0f0f0; padding: 2px 6px; border-radius: 3px; font-size: 13px; }
|
|
pre { background: #f8f8f8; border: 1px solid #ddd; border-radius: 6px; padding: 12px; overflow-x: auto; margin: 12px 0; }
|
|
pre code { background: none; padding: 0; }
|
|
a { color: #0066cc; }
|
|
.back { display: inline-block; margin-bottom: 20px; color: #666; }
|
|
.back:hover { color: #333; }
|
|
.topbar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
|
|
.logout-btn { font-size: 13px; color: #999; text-decoration: none; }
|
|
.logout-btn:hover { color: #cc0000; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="topbar">
|
|
<a class="back" href="index.html">← Back to index</a>
|
|
<a class="logout-btn" href="#" onclick="fetch('/api/v1/auth/logout',{method:'POST'}).then(()=>window.location.reload());return false">Logout</a>
|
|
</div>
|
|
<!-- module: config -->
|
|
<!-- description: System configuration — cache, auto-pipeline, watcher-auto-register toggles -->
|
|
<!-- depends: 01_auth -->
|
|
|
|
<h2>System Configuration</h2>
|
|
<p>Runtime configuration toggles for system behavior. All endpoints require authentication and system-level scope.</p>
|
|
<h3><code>POST /api/v1/config/cache</code></h3>
|
|
<p><strong>Auth</strong>: Required
|
|
<strong>Scope</strong>: system-level</p>
|
|
<p>Toggle the Redis cache on or off.</p>
|
|
<h4>Request Parameters</h4>
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Field</th>
|
|
<th>Type</th>
|
|
<th>Required</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>enabled</code></td>
|
|
<td>boolean</td>
|
|
<td>Yes</td>
|
|
<td><code>true</code> to enable, <code>false</code> to disable</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h4>Example</h4>
|
|
<div class="codehilite"><pre><span></span><code>curl<span class="w"> </span>-s<span class="w"> </span>-X<span class="w"> </span>POST<span class="w"> </span><span class="s2">"</span><span class="nv">$API</span><span class="s2">/api/v1/config/cache"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"Content-Type: application/json"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"X-API-Key: </span><span class="nv">$KEY</span><span class="s2">"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-d<span class="w"> </span><span class="s1">'{"enabled": false}'</span>
|
|
</code></pre></div>
|
|
|
|
<hr />
|
|
<h3><code>POST /api/v1/config/auto-pipeline</code></h3>
|
|
<p><strong>Auth</strong>: Required
|
|
<strong>Scope</strong>: system-level</p>
|
|
<p>Toggle automatic processing pipeline trigger on file registration (disabled by default).
|
|
When enabled, registering a video file automatically creates a monitor job and starts processing.</p>
|
|
<h4>Request Parameters</h4>
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Field</th>
|
|
<th>Type</th>
|
|
<th>Required</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>enabled</code></td>
|
|
<td>boolean</td>
|
|
<td>Yes</td>
|
|
<td><code>true</code> to enable auto-pipeline, <code>false</code> to disable</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h4>Example</h4>
|
|
<div class="codehilite"><pre><span></span><code><span class="c1"># Enable auto-pipeline</span>
|
|
curl<span class="w"> </span>-s<span class="w"> </span>-X<span class="w"> </span>POST<span class="w"> </span><span class="s2">"</span><span class="nv">$API</span><span class="s2">/api/v1/config/auto-pipeline"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"Content-Type: application/json"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"X-API-Key: </span><span class="nv">$KEY</span><span class="s2">"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-d<span class="w"> </span><span class="s1">'{"enabled": true}'</span>
|
|
|
|
<span class="c1"># Disable auto-pipeline</span>
|
|
curl<span class="w"> </span>-s<span class="w"> </span>-X<span class="w"> </span>POST<span class="w"> </span><span class="s2">"</span><span class="nv">$API</span><span class="s2">/api/v1/config/auto-pipeline"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"Content-Type: application/json"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"X-API-Key: </span><span class="nv">$KEY</span><span class="s2">"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-d<span class="w"> </span><span class="s1">'{"enabled": false}'</span>
|
|
</code></pre></div>
|
|
|
|
<hr />
|
|
<h3><code>POST /api/v1/config/watcher-auto-register</code></h3>
|
|
<p><strong>Auth</strong>: Required
|
|
<strong>Scope</strong>: system-level</p>
|
|
<p>Toggle automatic registration of newly detected files in the watcher (disabled by default).
|
|
When enabled, the file watcher automatically pre-processes and registers new files into the database.</p>
|
|
<h4>Request Parameters</h4>
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Field</th>
|
|
<th>Type</th>
|
|
<th>Required</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><code>enabled</code></td>
|
|
<td>boolean</td>
|
|
<td>Yes</td>
|
|
<td><code>true</code> to enable watcher auto-register, <code>false</code> to disable</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h4>Example</h4>
|
|
<div class="codehilite"><pre><span></span><code><span class="c1"># Enable watcher auto-register</span>
|
|
curl<span class="w"> </span>-s<span class="w"> </span>-X<span class="w"> </span>POST<span class="w"> </span><span class="s2">"</span><span class="nv">$API</span><span class="s2">/api/v1/config/watcher-auto-register"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"Content-Type: application/json"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-H<span class="w"> </span><span class="s2">"X-API-Key: </span><span class="nv">$KEY</span><span class="s2">"</span><span class="w"> </span><span class="se">\</span>
|
|
<span class="w"> </span>-d<span class="w"> </span><span class="s1">'{"enabled": true}'</span>
|
|
</code></pre></div>
|
|
</div>
|
|
</body>
|
|
</html> |