<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://docs.denchikp.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Denchikp</id>
	<title>DenchikP Docs - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.denchikp.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Denchikp"/>
	<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Denchikp"/>
	<updated>2026-09-24T02:50:39Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=DenchikP:Cookies_Policy&amp;diff=369</id>
		<title>DenchikP:Cookies Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=DenchikP:Cookies_Policy&amp;diff=369"/>
		<updated>2026-08-16T04:15:18Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= Cookies Policy =  &amp;#039;&amp;#039;&amp;#039;Last updated:&amp;#039;&amp;#039;&amp;#039; {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}  == 1. Introduction ==  This Cookies Policy explains how &amp;#039;&amp;#039;&amp;#039;DenchikP&amp;#039;&amp;#039;&amp;#039; (hereinafter referred to as &amp;quot;the Website&amp;quot;, &amp;quot;we&amp;quot;, &amp;quot;us&amp;quot;, or &amp;quot;our&amp;quot;) uses cookies and similar technologies when you visit the Website.  We are committed to being transparent about the technologies we use and providing you with clear information about how they work.  == 2. What Are Cookies? ==  Cookie...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Cookies Policy =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Last updated:&#039;&#039;&#039; {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}&lt;br /&gt;
&lt;br /&gt;
== 1. Introduction ==&lt;br /&gt;
&lt;br /&gt;
This Cookies Policy explains how &#039;&#039;&#039;DenchikP&#039;&#039;&#039; (hereinafter referred to as &amp;quot;the Website&amp;quot;, &amp;quot;we&amp;quot;, &amp;quot;us&amp;quot;, or &amp;quot;our&amp;quot;) uses cookies and similar technologies when you visit the Website.&lt;br /&gt;
&lt;br /&gt;
We are committed to being transparent about the technologies we use and providing you with clear information about how they work.&lt;br /&gt;
&lt;br /&gt;
== 2. What Are Cookies? ==&lt;br /&gt;
&lt;br /&gt;
Cookies are small text files that are placed on your device (computer, smartphone, tablet) by websites you visit. They are widely used to make websites work more efficiently, provide a better user experience, and give website owners useful information.&lt;br /&gt;
&lt;br /&gt;
Cookies can be:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Session cookies&#039;&#039;&#039; — temporary cookies that are deleted when you close your browser&lt;br /&gt;
* &#039;&#039;&#039;Persistent cookies&#039;&#039;&#039; — cookies that remain on your device for a set period of time or until you manually delete them&lt;br /&gt;
* &#039;&#039;&#039;First-party cookies&#039;&#039;&#039; — cookies set by the website you are visiting&lt;br /&gt;
* &#039;&#039;&#039;Third-party cookies&#039;&#039;&#039; — cookies set by a different domain than the one you are visiting&lt;br /&gt;
&lt;br /&gt;
== 3. Our Use of Cookies ==&lt;br /&gt;
&lt;br /&gt;
=== 3.1 Cookies We Do NOT Use ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DenchikP&#039;&#039;&#039; does &#039;&#039;&#039;not&#039;&#039;&#039; use:&lt;br /&gt;
&lt;br /&gt;
* Advertising or marketing cookies&lt;br /&gt;
* Analytics tracking cookies (such as Google Analytics)&lt;br /&gt;
* Social media tracking cookies&lt;br /&gt;
* Cross-site tracking cookies&lt;br /&gt;
* Any cookies that collect personal information&lt;br /&gt;
* Any cookies that profile user behavior&lt;br /&gt;
&lt;br /&gt;
=== 3.2 Technologies We Use Instead of Cookies ===&lt;br /&gt;
&lt;br /&gt;
Instead of traditional cookies, the Website uses &#039;&#039;&#039;browser local storage&#039;&#039;&#039; for the following limited purposes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Technology !! Purpose !! Data Stored !! Duration !! Required&lt;br /&gt;
|-&lt;br /&gt;
| Local Storage || Theme preference || &amp;lt;code&amp;gt;theme: &amp;quot;dark&amp;quot;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;theme: &amp;quot;light&amp;quot;&amp;lt;/code&amp;gt; || Until manually cleared || No (optional)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important details about local storage:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Local storage data is stored &#039;&#039;&#039;only in your browser&#039;&#039;&#039;&lt;br /&gt;
* It is &#039;&#039;&#039;never&#039;&#039;&#039; transmitted to our servers&lt;br /&gt;
* It is &#039;&#039;&#039;never&#039;&#039;&#039; shared with any third parties&lt;br /&gt;
* It is &#039;&#039;&#039;not&#039;&#039;&#039; used for tracking, profiling, or advertising&lt;br /&gt;
* It is used solely to remember your preferred visual theme (light or dark mode)&lt;br /&gt;
* You can clear it at any time by clearing your browser&#039;s local storage or site data&lt;br /&gt;
&lt;br /&gt;
== 4. Third-Party Cookies ==&lt;br /&gt;
&lt;br /&gt;
=== 4.1 YouTube (Google) ===&lt;br /&gt;
&lt;br /&gt;
The Website uses &#039;&#039;&#039;YouTube API Services&#039;&#039;&#039; to display public YouTube data (channel statistics, video metadata). When YouTube content is displayed or embedded, Google may set cookies on your device.&lt;br /&gt;
&lt;br /&gt;
These cookies are governed by Google&#039;s own policies:&lt;br /&gt;
&lt;br /&gt;
* [https://policies.google.com/privacy Google Privacy Policy]&lt;br /&gt;
* [https://policies.google.com/technologies/cookies How Google Uses Cookies]&lt;br /&gt;
&lt;br /&gt;
Google may use cookies for purposes including:&lt;br /&gt;
&lt;br /&gt;
* Security and fraud prevention&lt;br /&gt;
* Remembering preferences&lt;br /&gt;
* Analytics and performance measurement&lt;br /&gt;
&lt;br /&gt;
You can manage Google&#039;s cookies through:&lt;br /&gt;
&lt;br /&gt;
* [https://adssettings.google.com/ Google Ads Settings]&lt;br /&gt;
* [https://security.google.com/settings/security/permissions Google Security Settings]&lt;br /&gt;
* Your browser&#039;s cookie settings&lt;br /&gt;
&lt;br /&gt;
=== 4.2 Twitch ===&lt;br /&gt;
&lt;br /&gt;
If the Website embeds a Twitch player or retrieves Twitch data, Twitch (Amazon) may set cookies on your device.&lt;br /&gt;
&lt;br /&gt;
These cookies are governed by:&lt;br /&gt;
&lt;br /&gt;
* [https://www.twitch.tv/p/en/legal/privacy-notice/ Twitch Privacy Notice]&lt;br /&gt;
* [https://www.twitch.tv/p/en/legal/cookie-notice/ Twitch Cookie Notice]&lt;br /&gt;
&lt;br /&gt;
=== 4.3 Content Delivery Network (CDN) ===&lt;br /&gt;
&lt;br /&gt;
The Website may use a Content Delivery Network (CDN) to serve static assets such as images, scripts, and stylesheets. CDN providers may use cookies or similar technologies for:&lt;br /&gt;
&lt;br /&gt;
* Load balancing and performance optimization&lt;br /&gt;
* Security and DDoS protection&lt;br /&gt;
* Content caching&lt;br /&gt;
&lt;br /&gt;
These cookies are strictly functional and are governed by the CDN provider&#039;s own privacy and cookie policies.&lt;br /&gt;
&lt;br /&gt;
=== 4.4 Other Third-Party Services ===&lt;br /&gt;
&lt;br /&gt;
When you click on external links from the Website (such as links to GitHub, Spotify, AniList, Steam, HoYoLAB, or other services), those external websites may set their own cookies. We have no control over third-party cookies and recommend reviewing the cookie and privacy policies of each service you visit.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookie Consent ==&lt;br /&gt;
&lt;br /&gt;
Since the Website does &#039;&#039;&#039;not&#039;&#039;&#039; use first-party cookies for tracking, profiling, or advertising, and only uses browser local storage for a non-essential theme preference, we believe a cookie consent banner is not strictly required under most privacy regulations.&lt;br /&gt;
&lt;br /&gt;
However, if your jurisdiction requires explicit consent for any form of local data storage, you may:&lt;br /&gt;
&lt;br /&gt;
* Disable local storage in your browser settings&lt;br /&gt;
* Use your browser&#039;s private/incognito mode&lt;br /&gt;
* Clear site data for &#039;&#039;&#039;DenchikP&#039;&#039;&#039; at any time&lt;br /&gt;
&lt;br /&gt;
The Website will function normally without local storage — the only difference is that your theme preference will not be remembered between visits.&lt;br /&gt;
&lt;br /&gt;
== 6. How to Manage Cookies and Local Storage ==&lt;br /&gt;
&lt;br /&gt;
=== 6.1 Managing Cookies in Your Browser ===&lt;br /&gt;
&lt;br /&gt;
You can control and delete cookies through your browser settings. Here are links to instructions for major browsers:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Google Chrome:&#039;&#039;&#039; [https://support.google.com/chrome/answer/95647 Manage cookies in Chrome]&lt;br /&gt;
* &#039;&#039;&#039;Mozilla Firefox:&#039;&#039;&#039; [https://support.mozilla.org/en-US/kb/clear-cookies-and-site-data-firefox Clear cookies in Firefox]&lt;br /&gt;
* &#039;&#039;&#039;Safari:&#039;&#039;&#039; [https://support.apple.com/en-us/105082 Manage cookies in Safari]&lt;br /&gt;
* &#039;&#039;&#039;Microsoft Edge:&#039;&#039;&#039; [https://support.microsoft.com/en-us/microsoft-edge/delete-cookies-in-microsoft-edge-63947406-40ac-c3b8-57b9-2a946a29ae09 Delete cookies in Edge]&lt;br /&gt;
* &#039;&#039;&#039;Opera:&#039;&#039;&#039; [https://help.opera.com/en/latest/web-preferences/#cookies Manage cookies in Opera]&lt;br /&gt;
&lt;br /&gt;
=== 6.2 Managing Local Storage ===&lt;br /&gt;
&lt;br /&gt;
To clear local storage data for the Website:&lt;br /&gt;
&lt;br /&gt;
# Open your browser&#039;s Developer Tools (usually &#039;&#039;&#039;F12&#039;&#039;&#039; or &#039;&#039;&#039;Ctrl+Shift+I&#039;&#039;&#039; / &#039;&#039;&#039;Cmd+Option+I&#039;&#039;&#039;)&lt;br /&gt;
# Navigate to the &#039;&#039;&#039;Application&#039;&#039;&#039; tab (Chrome/Edge) or &#039;&#039;&#039;Storage&#039;&#039;&#039; tab (Firefox)&lt;br /&gt;
# Find &#039;&#039;&#039;Local Storage&#039;&#039;&#039; in the left sidebar&lt;br /&gt;
# Select the Website&#039;s domain&lt;br /&gt;
# Delete the relevant entries or clear all local storage&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can clear all site data for the Website through your browser&#039;s settings.&lt;br /&gt;
&lt;br /&gt;
=== 6.3 Opt-Out of Third-Party Cookies ===&lt;br /&gt;
&lt;br /&gt;
To opt out of cookies set by third-party services:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Google:&#039;&#039;&#039; [https://adssettings.google.com/ Google Ads Settings] and [https://tools.google.com/dlpage/gaoptout Google Analytics Opt-out]&lt;br /&gt;
* &#039;&#039;&#039;General opt-out:&#039;&#039;&#039; [https://www.youronlinechoices.com/ Your Online Choices] (EU) or [https://optout.aboutads.info/ DAA Opt-Out] (US)&lt;br /&gt;
&lt;br /&gt;
== 7. Do Not Track (DNT) ==&lt;br /&gt;
&lt;br /&gt;
Some browsers offer a &amp;quot;Do Not Track&amp;quot; (DNT) feature that sends a signal to websites requesting that your browsing activity not be tracked.&lt;br /&gt;
&lt;br /&gt;
The Website does &#039;&#039;&#039;not&#039;&#039;&#039; track user browsing activity, so the DNT signal does not change the Website&#039;s behavior. Regardless of your DNT setting, we do not engage in any form of user tracking.&lt;br /&gt;
&lt;br /&gt;
== 8. Updates to This Cookies Policy ==&lt;br /&gt;
&lt;br /&gt;
We reserve the right to update this Cookies Policy at any time. Changes will be posted on this page with an updated &amp;quot;Last updated&amp;quot; date.&lt;br /&gt;
&lt;br /&gt;
Continued use of the Website after changes to this Cookies Policy constitutes acceptance of the revised policy.&lt;br /&gt;
&lt;br /&gt;
We encourage you to review this Cookies Policy periodically.&lt;br /&gt;
&lt;br /&gt;
== 9. Relationship to Other Policies ==&lt;br /&gt;
&lt;br /&gt;
This Cookies Policy should be read in conjunction with our:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;[[DenchikP:Terms of Use]]&#039;&#039;&#039; — governing the use of the Website&lt;br /&gt;
* &#039;&#039;&#039;[[DenchikP:Privacy Policy]]&#039;&#039;&#039; — describing how we handle information&lt;br /&gt;
&lt;br /&gt;
== 10. Contact ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions or concerns about this Cookies Policy, you may contact us at:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Email:&#039;&#039;&#039; support@denchikp.com (support[at]denchikp[dot]com)&lt;br /&gt;
* &#039;&#039;&#039;Website:&#039;&#039;&#039; https://denchikp.com&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;This Cookies Policy was last updated on {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=DenchikP:Privacy_Policy&amp;diff=368</id>
		<title>DenchikP:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=DenchikP:Privacy_Policy&amp;diff=368"/>
		<updated>2026-08-16T04:02:14Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= Privacy Policy =  &amp;#039;&amp;#039;&amp;#039;Last updated:&amp;#039;&amp;#039;&amp;#039; {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}  == 1. Introduction ==  This Privacy Policy describes how &amp;#039;&amp;#039;&amp;#039;DenchikP&amp;#039;&amp;#039;&amp;#039; (hereinafter referred to as &amp;quot;the Website&amp;quot;, &amp;quot;we&amp;quot;, &amp;quot;us&amp;quot;, or &amp;quot;our&amp;quot;) collects, uses, and protects information when you visit and use the Website.  We are committed to protecting your privacy and handling any personal information transparently and in compliance with applicable data protection laws....»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Privacy Policy =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Last updated:&#039;&#039;&#039; {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}&lt;br /&gt;
&lt;br /&gt;
== 1. Introduction ==&lt;br /&gt;
&lt;br /&gt;
This Privacy Policy describes how &#039;&#039;&#039;DenchikP&#039;&#039;&#039; (hereinafter referred to as &amp;quot;the Website&amp;quot;, &amp;quot;we&amp;quot;, &amp;quot;us&amp;quot;, or &amp;quot;our&amp;quot;) collects, uses, and protects information when you visit and use the Website.&lt;br /&gt;
&lt;br /&gt;
We are committed to protecting your privacy and handling any personal information transparently and in compliance with applicable data protection laws.&lt;br /&gt;
&lt;br /&gt;
== 2. Information We Collect ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Information We Do NOT Collect ===&lt;br /&gt;
&lt;br /&gt;
* We do &#039;&#039;&#039;not&#039;&#039;&#039; require user registration or login&lt;br /&gt;
* We do &#039;&#039;&#039;not&#039;&#039;&#039; collect personal information such as names, email addresses, or phone numbers through the Website&lt;br /&gt;
* We do &#039;&#039;&#039;not&#039;&#039;&#039; collect payment or financial information&lt;br /&gt;
* We do &#039;&#039;&#039;not&#039;&#039;&#039; use cookies for tracking or advertising purposes&lt;br /&gt;
&lt;br /&gt;
=== 2.2 Automatically Collected Information ===&lt;br /&gt;
&lt;br /&gt;
When you visit the Website, our server may automatically collect certain technical information, including:&lt;br /&gt;
&lt;br /&gt;
* IP address&lt;br /&gt;
* Browser type and version&lt;br /&gt;
* Operating system&lt;br /&gt;
* Referring URL&lt;br /&gt;
* Pages visited and time spent on the Website&lt;br /&gt;
* Date and time of access&lt;br /&gt;
&lt;br /&gt;
This information is used solely for:&lt;br /&gt;
&lt;br /&gt;
* Ensuring the security and proper operation of the Website&lt;br /&gt;
* Analyzing traffic and usage patterns in aggregate&lt;br /&gt;
* Diagnosing technical issues&lt;br /&gt;
&lt;br /&gt;
=== 2.3 Local Storage ===&lt;br /&gt;
&lt;br /&gt;
The Website uses &#039;&#039;&#039;browser local storage&#039;&#039;&#039; (not cookies) to store your theme preference (light/dark mode). This data:&lt;br /&gt;
&lt;br /&gt;
* Is stored only in your browser&lt;br /&gt;
* Is not transmitted to our servers&lt;br /&gt;
* Is not shared with any third parties&lt;br /&gt;
* Can be cleared by clearing your browser data&lt;br /&gt;
&lt;br /&gt;
== 3. Third-Party Services and API Data ==&lt;br /&gt;
&lt;br /&gt;
=== 3.1 YouTube API Services ===&lt;br /&gt;
&lt;br /&gt;
The Website uses &#039;&#039;&#039;YouTube API Services&#039;&#039;&#039; to retrieve and display public YouTube data, including:&lt;br /&gt;
&lt;br /&gt;
* Public channel statistics (subscriber count, video count)&lt;br /&gt;
* Public video metadata (titles, thumbnails, view counts, durations)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* By using the Website, you acknowledge that the Website uses YouTube API Services&lt;br /&gt;
* YouTube API Services are provided by Google LLC&lt;br /&gt;
* Your use of features that display YouTube data is also subject to the [https://www.youtube.com/t/terms YouTube Terms of Service]&lt;br /&gt;
* Google&#039;s Privacy Policy applies to YouTube API Services: [https://policies.google.com/privacy Google Privacy Policy]&lt;br /&gt;
* You may revoke access to your Google account data at any time via [https://security.google.com/settings/security/permissions Google Security Settings]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Data handling:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* We only retrieve &#039;&#039;&#039;publicly available&#039;&#039;&#039; YouTube data&lt;br /&gt;
* We do &#039;&#039;&#039;not&#039;&#039;&#039; access any user&#039;s private YouTube data, watch history, or personal account information&lt;br /&gt;
* YouTube API Data is refreshed periodically (at least every 30 days) and outdated data is deleted or overwritten&lt;br /&gt;
* We do &#039;&#039;&#039;not&#039;&#039;&#039; sell, share, or transfer YouTube API Data to any third parties&lt;br /&gt;
* We do &#039;&#039;&#039;not&#039;&#039;&#039; use YouTube API Data for advertising, profiling, or any purpose unrelated to displaying public information on the Website&lt;br /&gt;
&lt;br /&gt;
=== 3.2 Twitch ===&lt;br /&gt;
&lt;br /&gt;
The Website may retrieve and display public Twitch data, such as follower counts. This data is publicly available and is used solely for display purposes on the Website.&lt;br /&gt;
&lt;br /&gt;
Twitch&#039;s privacy practices are governed by: [https://www.twitch.tv/p/en/legal/privacy-notice/ Twitch Privacy Notice]&lt;br /&gt;
&lt;br /&gt;
=== 3.3 Steam ===&lt;br /&gt;
&lt;br /&gt;
The Website may display public Steam profile information. This data is publicly available and is used solely for display purposes.&lt;br /&gt;
&lt;br /&gt;
Steam&#039;s privacy practices are governed by: [https://store.steampowered.com/privacy_agreement/ Steam Privacy Policy]&lt;br /&gt;
&lt;br /&gt;
=== 3.4 Other Third-Party Services ===&lt;br /&gt;
&lt;br /&gt;
The Website may contain links to or display data from other third-party services, including but not limited to:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;GitHub&#039;&#039;&#039; — [https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statement GitHub Privacy Statement]&lt;br /&gt;
* &#039;&#039;&#039;Spotify&#039;&#039;&#039; — [https://www.spotify.com/legal/privacy-policy/ Spotify Privacy Policy]&lt;br /&gt;
* &#039;&#039;&#039;AniList&#039;&#039;&#039; — [https://anilist.co/terms AniList Terms]&lt;br /&gt;
* &#039;&#039;&#039;HoYoLAB / HoYoverse&#039;&#039;&#039; — [https://account.hoyoverse.com/privacy.html HoYoverse Privacy Policy]&lt;br /&gt;
&lt;br /&gt;
We are not responsible for the privacy practices of these external services. We recommend reviewing their respective privacy policies.&lt;br /&gt;
&lt;br /&gt;
=== 3.5 Content Delivery Network (CDN) ===&lt;br /&gt;
&lt;br /&gt;
The Website may use a CDN to serve static assets (images, scripts, stylesheets). CDN providers may automatically collect technical information such as IP addresses for the purpose of content delivery and security. This processing is governed by the CDN provider&#039;s own privacy policy.&lt;br /&gt;
&lt;br /&gt;
== 4. How We Use Information ==&lt;br /&gt;
&lt;br /&gt;
Any information collected is used solely for the following purposes:&lt;br /&gt;
&lt;br /&gt;
* Displaying public statistics and content from third-party platforms&lt;br /&gt;
* Maintaining the security and proper operation of the Website&lt;br /&gt;
* Improving the Website&#039;s performance and user experience&lt;br /&gt;
* Diagnosing and resolving technical issues&lt;br /&gt;
&lt;br /&gt;
We do &#039;&#039;&#039;not&#039;&#039;&#039; use any collected information for:&lt;br /&gt;
&lt;br /&gt;
* Advertising or marketing&lt;br /&gt;
* User profiling or tracking&lt;br /&gt;
* Selling or sharing with third parties for commercial purposes&lt;br /&gt;
&lt;br /&gt;
== 5. Data Sharing ==&lt;br /&gt;
&lt;br /&gt;
We do &#039;&#039;&#039;not&#039;&#039;&#039; sell, trade, rent, or otherwise share your personal information with third parties, except:&lt;br /&gt;
&lt;br /&gt;
* When required by law or legal process&lt;br /&gt;
* To protect the rights, property, or safety of the Website and its users&lt;br /&gt;
* In anonymized or aggregated form that cannot identify individual users&lt;br /&gt;
&lt;br /&gt;
== 6. Data Retention ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Server logs:&#039;&#039;&#039; Technical access logs may be retained for up to &#039;&#039;&#039;30 days&#039;&#039;&#039; for security and diagnostic purposes, after which they are automatically deleted&lt;br /&gt;
* &#039;&#039;&#039;YouTube API Data:&#039;&#039;&#039; Refreshed or deleted within 30 days, in compliance with YouTube API Services Terms&lt;br /&gt;
* &#039;&#039;&#039;Local storage data:&#039;&#039;&#039; Stored in your browser until you clear it; we have no access to it&lt;br /&gt;
&lt;br /&gt;
== 7. Data Security ==&lt;br /&gt;
&lt;br /&gt;
We implement reasonable technical and organizational measures to protect information, including:&lt;br /&gt;
&lt;br /&gt;
* HTTPS encryption for all Website traffic&lt;br /&gt;
* Regular security updates and patches&lt;br /&gt;
* Access controls and monitoring&lt;br /&gt;
&lt;br /&gt;
However, no method of transmission over the Internet or method of electronic storage is 100% secure. We cannot guarantee absolute security.&lt;br /&gt;
&lt;br /&gt;
== 8. Children&#039;s Privacy ==&lt;br /&gt;
&lt;br /&gt;
The Website is not directed at children under the age of &#039;&#039;&#039;13&#039;&#039;&#039; (or the applicable age of digital consent in your jurisdiction). We do not knowingly collect personal information from children. If you believe we have inadvertently collected such information, please contact us immediately so we can take appropriate action.&lt;br /&gt;
&lt;br /&gt;
== 9. Your Rights ==&lt;br /&gt;
&lt;br /&gt;
Depending on your jurisdiction, you may have the following rights regarding your personal data:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Right of access&#039;&#039;&#039; — to request information about what data we hold about you&lt;br /&gt;
* &#039;&#039;&#039;Right of deletion&#039;&#039;&#039; — to request deletion of your personal data&lt;br /&gt;
* &#039;&#039;&#039;Right to object&#039;&#039;&#039; — to object to the processing of your data&lt;br /&gt;
* &#039;&#039;&#039;Right to data portability&#039;&#039;&#039; — to request a copy of your data in a structured format&lt;br /&gt;
&lt;br /&gt;
To exercise any of these rights, please contact us using the information provided in Section 12.&lt;br /&gt;
&lt;br /&gt;
=== 9.1 Google Account Data ===&lt;br /&gt;
&lt;br /&gt;
If YouTube API Services access any authorized data (note: our current implementation only accesses public data), you may revoke access at any time through [https://security.google.com/settings/security/permissions Google Security Settings].&lt;br /&gt;
&lt;br /&gt;
== 10. International Users ==&lt;br /&gt;
&lt;br /&gt;
The Website may be accessed from various countries. By using the Website, you consent to the transfer and processing of any technical information as described in this Privacy Policy, in accordance with applicable laws.&lt;br /&gt;
&lt;br /&gt;
== 11. Changes to This Privacy Policy ==&lt;br /&gt;
&lt;br /&gt;
We reserve the right to update this Privacy Policy at any time. Changes will be posted on this page with an updated &amp;quot;Last updated&amp;quot; date.&lt;br /&gt;
&lt;br /&gt;
Continued use of the Website after changes to this Privacy Policy constitutes acceptance of the revised policy.&lt;br /&gt;
&lt;br /&gt;
We encourage you to review this Privacy Policy periodically.&lt;br /&gt;
&lt;br /&gt;
== 12. Contact ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions, concerns, or requests regarding this Privacy Policy, you may contact us at:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Email:&#039;&#039;&#039; support@denchikp.com (support[at]denchikp[dot]com)&lt;br /&gt;
* &#039;&#039;&#039;Website:&#039;&#039;&#039; https://denchikp.com&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;This Privacy Policy was last updated on {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=DenchikP:Terms_of_Use&amp;diff=367</id>
		<title>DenchikP:Terms of Use</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=DenchikP:Terms_of_Use&amp;diff=367"/>
		<updated>2026-08-16T03:58:29Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= Terms of Use =  &amp;#039;&amp;#039;&amp;#039;Last updated:&amp;#039;&amp;#039;&amp;#039; {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}  == 1. Acceptance of Terms ==  By accessing and using &amp;#039;&amp;#039;&amp;#039;DenchikP&amp;#039;&amp;#039;&amp;#039; (hereinafter referred to as &amp;quot;the Website&amp;quot;, &amp;quot;we&amp;quot;, &amp;quot;us&amp;quot;, or &amp;quot;our&amp;quot;), you agree to comply with and be bound by these Terms of Use. If you do not agree with any part of these terms, you must not use the Website.  == 2. Description of Service ==  The Website provides informational and entertainment content,...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Terms of Use =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Last updated:&#039;&#039;&#039; {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}&lt;br /&gt;
&lt;br /&gt;
== 1. Acceptance of Terms ==&lt;br /&gt;
&lt;br /&gt;
By accessing and using &#039;&#039;&#039;DenchikP&#039;&#039;&#039; (hereinafter referred to as &amp;quot;the Website&amp;quot;, &amp;quot;we&amp;quot;, &amp;quot;us&amp;quot;, or &amp;quot;our&amp;quot;), you agree to comply with and be bound by these Terms of Use. If you do not agree with any part of these terms, you must not use the Website.&lt;br /&gt;
&lt;br /&gt;
== 2. Description of Service ==&lt;br /&gt;
&lt;br /&gt;
The Website provides informational and entertainment content, including but not limited to:&lt;br /&gt;
&lt;br /&gt;
* Display of public YouTube channel statistics and video metadata&lt;br /&gt;
* Display of public Twitch channel statistics&lt;br /&gt;
* Display of public Steam profile information&lt;br /&gt;
* Links to social media profiles and external platforms&lt;br /&gt;
* Game profile integration and display&lt;br /&gt;
&lt;br /&gt;
== 3. Third-Party Services ==&lt;br /&gt;
&lt;br /&gt;
=== 3.1 YouTube ===&lt;br /&gt;
&lt;br /&gt;
The Website uses &#039;&#039;&#039;YouTube API Services&#039;&#039;&#039; to display public YouTube data such as channel statistics and video information.&lt;br /&gt;
&lt;br /&gt;
By using the Website, you also agree to be bound by the &#039;&#039;&#039;[https://www.youtube.com/t/terms YouTube Terms of Service]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
YouTube API Services are provided by Google LLC. You can review Google&#039;s Privacy Policy here: [https://policies.google.com/privacy Google Privacy Policy].&lt;br /&gt;
&lt;br /&gt;
=== 3.2 Twitch ===&lt;br /&gt;
&lt;br /&gt;
The Website may display public Twitch data, such as follower counts. By using the Website, you acknowledge that Twitch data is subject to the [https://www.twitch.tv/p/en/legal/terms-of-service/ Twitch Terms of Service].&lt;br /&gt;
&lt;br /&gt;
=== 3.3 Steam ===&lt;br /&gt;
&lt;br /&gt;
The Website may display public Steam profile information. Steam data is subject to the [https://store.steampowered.com/subscriber_agreement/ Steam Subscriber Agreement].&lt;br /&gt;
&lt;br /&gt;
=== 3.4 Other Third-Party Services ===&lt;br /&gt;
&lt;br /&gt;
The Website may contain links to third-party websites and services, including but not limited to GitHub, AniList, Spotify, and HoYoLAB. We are not responsible for the content, terms, or privacy practices of these external services. Use of third-party services is subject to their respective terms and policies.&lt;br /&gt;
&lt;br /&gt;
== 4. Intellectual Property ==&lt;br /&gt;
&lt;br /&gt;
=== 4.1 Website Content ===&lt;br /&gt;
&lt;br /&gt;
All original content on the Website, including but not limited to text, design, code, graphics, and logos, is the property of &#039;&#039;&#039;DenchikP&#039;&#039;&#039; unless otherwise stated.&lt;br /&gt;
&lt;br /&gt;
=== 4.2 Third-Party Content ===&lt;br /&gt;
&lt;br /&gt;
All third-party trademarks, logos, brand names, and content displayed on the Website (including but not limited to YouTube, Twitch, Steam, GitHub, Spotify, AniList, Arknights: Endfield, Zenless Zone Zero) are the property of their respective owners. Their use on the Website does not imply endorsement or affiliation.&lt;br /&gt;
&lt;br /&gt;
=== 4.3 YouTube Branding ===&lt;br /&gt;
&lt;br /&gt;
YouTube logos and icons used on the Website comply with the [https://developers.google.com/youtube/terms/branding-guidelines YouTube Branding Guidelines]. YouTube™ is a trademark of Google LLC.&lt;br /&gt;
&lt;br /&gt;
== 5. User Conduct ==&lt;br /&gt;
&lt;br /&gt;
By using the Website, you agree not to:&lt;br /&gt;
&lt;br /&gt;
* Use the Website for any unlawful purpose&lt;br /&gt;
* Attempt to gain unauthorized access to any part of the Website&lt;br /&gt;
* Interfere with or disrupt the Website&#039;s functionality&lt;br /&gt;
* Scrape, copy, or redistribute content from the Website without permission&lt;br /&gt;
* Use any automated systems (bots, crawlers) to access the Website in a manner that exceeds reasonable use&lt;br /&gt;
&lt;br /&gt;
== 6. Disclaimer of Warranties ==&lt;br /&gt;
&lt;br /&gt;
The Website is provided on an &#039;&#039;&#039;&amp;quot;as is&amp;quot;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;quot;as available&amp;quot;&#039;&#039;&#039; basis without warranties of any kind, either express or implied, including but not limited to:&lt;br /&gt;
&lt;br /&gt;
* Accuracy, completeness, or reliability of displayed data&lt;br /&gt;
* Uninterrupted or error-free operation of the Website&lt;br /&gt;
* Fitness for a particular purpose&lt;br /&gt;
&lt;br /&gt;
Data displayed on the Website (including YouTube statistics, Twitch followers, Steam profile data, and game statistics) is retrieved from third-party APIs and may not always be current or accurate.&lt;br /&gt;
&lt;br /&gt;
== 7. Limitation of Liability ==&lt;br /&gt;
&lt;br /&gt;
To the maximum extent permitted by applicable law, &#039;&#039;&#039;DenchikP&#039;&#039;&#039; and its owner(s) shall not be liable for any direct, indirect, incidental, consequential, or special damages arising from:&lt;br /&gt;
&lt;br /&gt;
* Your use of or inability to use the Website&lt;br /&gt;
* Any errors or inaccuracies in the content&lt;br /&gt;
* Unauthorized access to or alteration of your data&lt;br /&gt;
* Any third-party actions or content&lt;br /&gt;
&lt;br /&gt;
== 8. External Links ==&lt;br /&gt;
&lt;br /&gt;
The Website contains links to external websites and services. We are not responsible for the availability, content, or practices of these external sites. Clicking on external links is at your own risk.&lt;br /&gt;
&lt;br /&gt;
The Website may use a redirect page to notify users before navigating to an external URL.&lt;br /&gt;
&lt;br /&gt;
== 9. Availability and Modifications ==&lt;br /&gt;
&lt;br /&gt;
We reserve the right to:&lt;br /&gt;
&lt;br /&gt;
* Modify, suspend, or discontinue the Website (or any part of it) at any time without notice&lt;br /&gt;
* Update these Terms of Use at any time&lt;br /&gt;
&lt;br /&gt;
Continued use of the Website after changes to these terms constitutes acceptance of the revised terms.&lt;br /&gt;
&lt;br /&gt;
== 10. Governing Law ==&lt;br /&gt;
&lt;br /&gt;
These Terms of Use shall be governed by and construed in accordance with the laws of &#039;&#039;&#039;Iceland&#039;&#039;&#039;, without regard to conflict of law provisions.&lt;br /&gt;
&lt;br /&gt;
== 11. Contact ==&lt;br /&gt;
&lt;br /&gt;
If you have any questions about these Terms of Use, you may contact us at:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Email:&#039;&#039;&#039; support@denchikp.com (support[at]denchikp[dot]com)&lt;br /&gt;
* &#039;&#039;&#039;Website:&#039;&#039;&#039; https://denchikp.com&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;These Terms of Use were last updated on {{CURRENTMONTHNAME}} {{CURRENTDAY}}, {{CURRENTYEAR}}.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=366</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=366"/>
		<updated>2026-07-31T16:00:23Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 31 июля 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
&lt;br /&gt;
API-ключи (в том числе при входе через DenchikP CDN по ключу)&lt;br /&gt;
Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
Домены и URL-адреса&lt;br /&gt;
Webhook URL, секрет webhook (HMAC) и список событий (если вы используете webhooks)&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
&lt;br /&gt;
IP-адрес&lt;br /&gt;
Журналы запросов (загрузка, скачивание, удаление, доступ, просмотр, валидация, редактирование, сканирование)&lt;br /&gt;
Временные метки и данные об активности&lt;br /&gt;
Технические данные, необходимые для работы сессии (cookies/идентификатор сессии)&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя&lt;br /&gt;
Адрес электронной почты&lt;br /&gt;
Фотография профиля&lt;br /&gt;
Идентификатор пользователя Google&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
=== 2.4 Данные Discord-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Discord, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя Discord&lt;br /&gt;
Отображаемое имя (global name), если доступно&lt;br /&gt;
Адрес электронной почты, если он предоставляется Discord&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя Discord&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, серверам, спискам друзей, содержимому аккаунта Discord или иным данным, не связанным напрямую с базовой аутентификацией.&lt;br /&gt;
&lt;br /&gt;
=== 2.5 Данные GitHub-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью GitHub, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя GitHub&lt;br /&gt;
Отображаемое имя, если оно указано&lt;br /&gt;
Адрес электронной почты, если он доступен через GitHub и предоставлен пользователем&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя GitHub&lt;br /&gt;
Мы не получаем доступ к вашим репозиториям, коду, организациям, приватным данным аккаунта GitHub или иным сведениям, кроме тех, которые необходимы для базовой аутентификации и идентификации пользователя.&lt;br /&gt;
&lt;br /&gt;
=== 2.6 Данные Telegram-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Telegram (через Telegram Login Widget или протокол Telegram OpenID Connect), мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя (first name)&lt;br /&gt;
Фамилия (last name), если указана&lt;br /&gt;
Имя пользователя (username), если указано&lt;br /&gt;
Фотография профиля (URL изображения), если разрешена пользователем&lt;br /&gt;
Идентификатор пользователя Telegram&lt;br /&gt;
Метка времени авторизации (auth_date)&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, чатам, каналам, спискам контактов, номеру телефона (кроме случаев, когда вы явно разрешили его передачу), группам, ботам и любым другим данным Telegram, не связанным напрямую с базовой аутентификацией и идентификацией пользователя.&lt;br /&gt;
&lt;br /&gt;
Все данные, получаемые от Telegram, криптографически подписываются серверами Telegram (HMAC-SHA256 или JWT-подпись) и верифицируются на нашей стороне для защиты от подделки.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
&lt;br /&gt;
Аутентификации пользователей&lt;br /&gt;
Привязки аккаунтов Google, Discord, GitHub и Telegram к API-ключам&lt;br /&gt;
Предоставления доступа к функциям CDN (загрузка/удаление/скачивание/просмотр/валидация/редактирование)&lt;br /&gt;
Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
Поддержки работы и улучшения сервиса&lt;br /&gt;
Работы webhooks (доставка событий, журналирование доставок)&lt;br /&gt;
== 4. Данные пользователей Google, Discord, GitHub и Telegram ==&lt;br /&gt;
Данные пользователей Google, Discord, GitHub и Telegram используются исключительно для целей:&lt;br /&gt;
&lt;br /&gt;
аутентификации и идентификации пользователя;&lt;br /&gt;
привязки аккаунта к API-ключу;&lt;br /&gt;
отображения статуса авторизации в интерфейсе.&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google, Discord, GitHub или Telegram третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies, механизмы сессий и аналогичные технические средства для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
&lt;br /&gt;
Для выполнения требований законодательства&lt;br /&gt;
Для предотвращения мошенничества, нарушений безопасности или злоупотреблений&lt;br /&gt;
Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
&#039;&#039;&#039;Важно:&#039;&#039;&#039; при использовании входа через сторонних провайдеров (Google/Discord/GitHub/Telegram) часть данных передаётся этим провайдерам в рамках стандартного OAuth/OIDC-процесса (например, факт авторизации/запрос разрешений), что регулируется политиками соответствующих провайдеров.&lt;br /&gt;
&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
&lt;br /&gt;
Данные сессии: до окончания срока действия сессии или выхода пользователя из аккаунта&lt;br /&gt;
Данные привязки аккаунтов Google, Discord, GitHub и Telegram: до отвязки пользователем или удаления соответствующей записи&lt;br /&gt;
Журналы: хранятся для обеспечения безопасности, мониторинга и технического анализа&lt;br /&gt;
Файлы и их метаданные: до удаления пользователем или системой (например, автоматическая очистка public)&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные организационные и технические меры безопасности для защиты данных. Однако ни одна система хранения или передачи данных не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление, если это применимо и не противоречит требованиям законодательства или техническим ограничениям сервиса.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис может использовать:&lt;br /&gt;
&lt;br /&gt;
Google&lt;br /&gt;
Discord&lt;br /&gt;
GitHub&lt;br /&gt;
Telegram&lt;br /&gt;
Политика конфиденциальности Google:&lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Discord:&lt;br /&gt;
[https://discord.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности GitHub:&lt;br /&gt;
[https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Telegram:&lt;br /&gt;
[https://telegram.org/privacy]&lt;br /&gt;
&lt;br /&gt;
== 11. Удаление данных Telegram ==&lt;br /&gt;
Если вы использовали вход через Telegram, вы можете запросить удаление данных, связанных с вашим Telegram-аккаунтом в DenchikP CDN (например, данных привязки аккаунта к API-ключу).&lt;br /&gt;
&lt;br /&gt;
Для этого вы можете:&lt;br /&gt;
&lt;br /&gt;
отвязать API-ключ через интерфейс DenchikP CDN;&lt;br /&gt;
выйти из Telegram-сессии в личном кабинете;&lt;br /&gt;
направить запрос на удаление данных по адресу &#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039; с указанием вашего Telegram ID или имени пользователя.&lt;br /&gt;
&lt;br /&gt;
После получения запроса связанные с вашим Telegram-аккаунтом данные (идентификатор, имя, имя пользователя, аватар, метки времени привязки) будут удалены из наших баз данных в разумный срок, если иное не требуется законодательством.&lt;br /&gt;
&lt;br /&gt;
== 12. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 13. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=365</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=365"/>
		<updated>2026-07-31T16:00:17Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 30 июля 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
&lt;br /&gt;
API-ключи (в том числе при входе через DenchikP CDN по ключу)&lt;br /&gt;
Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
Домены и URL-адреса&lt;br /&gt;
Webhook URL, секрет webhook (HMAC) и список событий (если вы используете webhooks)&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
&lt;br /&gt;
IP-адрес&lt;br /&gt;
Журналы запросов (загрузка, скачивание, удаление, доступ, просмотр, валидация, редактирование, сканирование)&lt;br /&gt;
Временные метки и данные об активности&lt;br /&gt;
Технические данные, необходимые для работы сессии (cookies/идентификатор сессии)&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя&lt;br /&gt;
Адрес электронной почты&lt;br /&gt;
Фотография профиля&lt;br /&gt;
Идентификатор пользователя Google&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
=== 2.4 Данные Discord-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Discord, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя Discord&lt;br /&gt;
Отображаемое имя (global name), если доступно&lt;br /&gt;
Адрес электронной почты, если он предоставляется Discord&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя Discord&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, серверам, спискам друзей, содержимому аккаунта Discord или иным данным, не связанным напрямую с базовой аутентификацией.&lt;br /&gt;
&lt;br /&gt;
=== 2.5 Данные GitHub-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью GitHub, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя GitHub&lt;br /&gt;
Отображаемое имя, если оно указано&lt;br /&gt;
Адрес электронной почты, если он доступен через GitHub и предоставлен пользователем&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя GitHub&lt;br /&gt;
Мы не получаем доступ к вашим репозиториям, коду, организациям, приватным данным аккаунта GitHub или иным сведениям, кроме тех, которые необходимы для базовой аутентификации и идентификации пользователя.&lt;br /&gt;
&lt;br /&gt;
=== 2.6 Данные Telegram-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Telegram (через Telegram Login Widget или протокол Telegram OpenID Connect), мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя (first name)&lt;br /&gt;
Фамилия (last name), если указана&lt;br /&gt;
Имя пользователя (username), если указано&lt;br /&gt;
Фотография профиля (URL изображения), если разрешена пользователем&lt;br /&gt;
Идентификатор пользователя Telegram&lt;br /&gt;
Метка времени авторизации (auth_date)&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, чатам, каналам, спискам контактов, номеру телефона (кроме случаев, когда вы явно разрешили его передачу), группам, ботам и любым другим данным Telegram, не связанным напрямую с базовой аутентификацией и идентификацией пользователя.&lt;br /&gt;
&lt;br /&gt;
Все данные, получаемые от Telegram, криптографически подписываются серверами Telegram (HMAC-SHA256 или JWT-подпись) и верифицируются на нашей стороне для защиты от подделки.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
&lt;br /&gt;
Аутентификации пользователей&lt;br /&gt;
Привязки аккаунтов Google, Discord, GitHub и Telegram к API-ключам&lt;br /&gt;
Предоставления доступа к функциям CDN (загрузка/удаление/скачивание/просмотр/валидация/редактирование)&lt;br /&gt;
Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
Поддержки работы и улучшения сервиса&lt;br /&gt;
Работы webhooks (доставка событий, журналирование доставок)&lt;br /&gt;
== 4. Данные пользователей Google, Discord, GitHub и Telegram ==&lt;br /&gt;
Данные пользователей Google, Discord, GitHub и Telegram используются исключительно для целей:&lt;br /&gt;
&lt;br /&gt;
аутентификации и идентификации пользователя;&lt;br /&gt;
привязки аккаунта к API-ключу;&lt;br /&gt;
отображения статуса авторизации в интерфейсе.&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google, Discord, GitHub или Telegram третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies, механизмы сессий и аналогичные технические средства для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
&lt;br /&gt;
Для выполнения требований законодательства&lt;br /&gt;
Для предотвращения мошенничества, нарушений безопасности или злоупотреблений&lt;br /&gt;
Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
&#039;&#039;&#039;Важно:&#039;&#039;&#039; при использовании входа через сторонних провайдеров (Google/Discord/GitHub/Telegram) часть данных передаётся этим провайдерам в рамках стандартного OAuth/OIDC-процесса (например, факт авторизации/запрос разрешений), что регулируется политиками соответствующих провайдеров.&lt;br /&gt;
&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
&lt;br /&gt;
Данные сессии: до окончания срока действия сессии или выхода пользователя из аккаунта&lt;br /&gt;
Данные привязки аккаунтов Google, Discord, GitHub и Telegram: до отвязки пользователем или удаления соответствующей записи&lt;br /&gt;
Журналы: хранятся для обеспечения безопасности, мониторинга и технического анализа&lt;br /&gt;
Файлы и их метаданные: до удаления пользователем или системой (например, автоматическая очистка public)&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные организационные и технические меры безопасности для защиты данных. Однако ни одна система хранения или передачи данных не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление, если это применимо и не противоречит требованиям законодательства или техническим ограничениям сервиса.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис может использовать:&lt;br /&gt;
&lt;br /&gt;
Google&lt;br /&gt;
Discord&lt;br /&gt;
GitHub&lt;br /&gt;
Telegram&lt;br /&gt;
Политика конфиденциальности Google:&lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Discord:&lt;br /&gt;
[https://discord.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности GitHub:&lt;br /&gt;
[https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Telegram:&lt;br /&gt;
[https://telegram.org/privacy]&lt;br /&gt;
&lt;br /&gt;
== 11. Удаление данных Telegram ==&lt;br /&gt;
Если вы использовали вход через Telegram, вы можете запросить удаление данных, связанных с вашим Telegram-аккаунтом в DenchikP CDN (например, данных привязки аккаунта к API-ключу).&lt;br /&gt;
&lt;br /&gt;
Для этого вы можете:&lt;br /&gt;
&lt;br /&gt;
отвязать API-ключ через интерфейс DenchikP CDN;&lt;br /&gt;
выйти из Telegram-сессии в личном кабинете;&lt;br /&gt;
направить запрос на удаление данных по адресу &#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039; с указанием вашего Telegram ID или имени пользователя.&lt;br /&gt;
&lt;br /&gt;
После получения запроса связанные с вашим Telegram-аккаунтом данные (идентификатор, имя, имя пользователя, аватар, метки времени привязки) будут удалены из наших баз данных в разумный срок, если иное не требуется законодательством.&lt;br /&gt;
&lt;br /&gt;
== 12. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 13. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=364</id>
		<title>CDN:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=364"/>
		<updated>2026-07-31T15:59:07Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
TOC&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, Discord, GitHub и Telegram, загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 31.07.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса ==&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google, Discord, GitHub и/или Telegram для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий ==&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
&lt;br /&gt;
ознакомились с настоящими Условиями использования;&lt;br /&gt;
согласны соблюдать их полностью;&lt;br /&gt;
обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
будете использовать сервис только законным образом.&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация ==&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
&lt;br /&gt;
Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
=== 3.3. Авторизация через Google, Discord, GitHub и Telegram ===&lt;br /&gt;
Сервис может поддерживать вход через Google, Discord, GitHub и/или Telegram. Используя такую функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между аккаунтом внешнего сервиса и API ключом.&lt;br /&gt;
&lt;br /&gt;
Авторизация через Telegram осуществляется с использованием официального протокола Telegram OpenID Connect (OIDC) и/или Telegram Login Widget, при этом сервис получает от Telegram только те данные, которые вы явно разрешили предоставить (идентификатор аккаунта, имя, имя пользователя, аватар и, при необходимости, иные публичные сведения).&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google-, Discord-, GitHub- или Telegram-аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
=== 3.5. Авторизация через DenchikP CDN ===&lt;br /&gt;
Сервис также может поддерживать вход непосредственно по API ключу DenchikP CDN. В таком случае вы обязуетесь использовать только тот API ключ, который был выдан вам законно и на использование которого у вас имеется право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование ==&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
&lt;br /&gt;
нарушения законодательства;&lt;br /&gt;
нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
обхода ограничений доступа;&lt;br /&gt;
сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
получения несанкционированного доступа к чужим доменам, файлам, статистике, аккаунтам или ключам.&lt;br /&gt;
== 5. Контент пользователя ==&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
&lt;br /&gt;
Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
== 6. Публичные и временные каталоги ==&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация ==&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
&lt;br /&gt;
удалять файлы и контент;&lt;br /&gt;
отключать API ключи;&lt;br /&gt;
блокировать IP-адреса;&lt;br /&gt;
отзывать доступ к доменам;&lt;br /&gt;
ограничивать или отключать авторизацию через Google, Discord, GitHub, Telegram или иные поддерживаемые механизмы входа;&lt;br /&gt;
вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
&lt;br /&gt;
копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
использовать фирменные обозначения без разрешения.&lt;br /&gt;
== 9. Жалобы правообладателей ==&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю, аккаунту или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса ==&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров (включая провайдеров авторизации), ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности ==&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
&lt;br /&gt;
потерю данных;&lt;br /&gt;
автоматическое или ручное удаление файлов;&lt;br /&gt;
недоступность сервиса;&lt;br /&gt;
косвенные убытки и упущенную выгоду;&lt;br /&gt;
действия третьих лиц;&lt;br /&gt;
ошибки или ограничения Google-авторизации, Discord-авторизации, GitHub-авторизации, Telegram-авторизации или сторонних сервисов;&lt;br /&gt;
несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
== 12. Возмещение убытков ==&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
&lt;br /&gt;
вашим использованием сервиса;&lt;br /&gt;
вашим контентом;&lt;br /&gt;
нарушением настоящих Условий;&lt;br /&gt;
нарушением прав третьих лиц;&lt;br /&gt;
неправомерным использованием API ключа, Google аккаунта, Discord аккаунта, GitHub аккаунта или Telegram аккаунта.&lt;br /&gt;
== 13. Безопасность ==&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа ==&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий ==&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право ==&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений ==&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения ==&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты ==&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=363</id>
		<title>CDN:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=363"/>
		<updated>2026-07-31T15:58:56Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
TOC&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, Discord, GitHub и Telegram, загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 30.07.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса ==&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google, Discord, GitHub и/или Telegram для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий ==&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
&lt;br /&gt;
ознакомились с настоящими Условиями использования;&lt;br /&gt;
согласны соблюдать их полностью;&lt;br /&gt;
обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
будете использовать сервис только законным образом.&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация ==&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
&lt;br /&gt;
Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
=== 3.3. Авторизация через Google, Discord, GitHub и Telegram ===&lt;br /&gt;
Сервис может поддерживать вход через Google, Discord, GitHub и/или Telegram. Используя такую функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между аккаунтом внешнего сервиса и API ключом.&lt;br /&gt;
&lt;br /&gt;
Авторизация через Telegram осуществляется с использованием официального протокола Telegram OpenID Connect (OIDC) и/или Telegram Login Widget, при этом сервис получает от Telegram только те данные, которые вы явно разрешили предоставить (идентификатор аккаунта, имя, имя пользователя, аватар и, при необходимости, иные публичные сведения).&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google-, Discord-, GitHub- или Telegram-аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
=== 3.5. Авторизация через DenchikP CDN ===&lt;br /&gt;
Сервис также может поддерживать вход непосредственно по API ключу DenchikP CDN. В таком случае вы обязуетесь использовать только тот API ключ, который был выдан вам законно и на использование которого у вас имеется право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование ==&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
&lt;br /&gt;
нарушения законодательства;&lt;br /&gt;
нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
обхода ограничений доступа;&lt;br /&gt;
сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
получения несанкционированного доступа к чужим доменам, файлам, статистике, аккаунтам или ключам.&lt;br /&gt;
== 5. Контент пользователя ==&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
&lt;br /&gt;
Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
== 6. Публичные и временные каталоги ==&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация ==&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
&lt;br /&gt;
удалять файлы и контент;&lt;br /&gt;
отключать API ключи;&lt;br /&gt;
блокировать IP-адреса;&lt;br /&gt;
отзывать доступ к доменам;&lt;br /&gt;
ограничивать или отключать авторизацию через Google, Discord, GitHub, Telegram или иные поддерживаемые механизмы входа;&lt;br /&gt;
вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
&lt;br /&gt;
копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
использовать фирменные обозначения без разрешения.&lt;br /&gt;
== 9. Жалобы правообладателей ==&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю, аккаунту или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса ==&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров (включая провайдеров авторизации), ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности ==&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
&lt;br /&gt;
потерю данных;&lt;br /&gt;
автоматическое или ручное удаление файлов;&lt;br /&gt;
недоступность сервиса;&lt;br /&gt;
косвенные убытки и упущенную выгоду;&lt;br /&gt;
действия третьих лиц;&lt;br /&gt;
ошибки или ограничения Google-авторизации, Discord-авторизации, GitHub-авторизации, Telegram-авторизации или сторонних сервисов;&lt;br /&gt;
несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
== 12. Возмещение убытков ==&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
&lt;br /&gt;
вашим использованием сервиса;&lt;br /&gt;
вашим контентом;&lt;br /&gt;
нарушением настоящих Условий;&lt;br /&gt;
нарушением прав третьих лиц;&lt;br /&gt;
неправомерным использованием API ключа, Google аккаунта, Discord аккаунта, GitHub аккаунта или Telegram аккаунта.&lt;br /&gt;
== 13. Безопасность ==&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа ==&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий ==&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право ==&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений ==&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения ==&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты ==&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=362</id>
		<title>CDN:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=362"/>
		<updated>2026-06-23T20:42:34Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
TOC&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, Discord, GitHub и Facebook (Meta), загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 23.06.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса ==&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google, Discord, GitHub и/или Facebook (Meta) для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий ==&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
&lt;br /&gt;
ознакомились с настоящими Условиями использования;&lt;br /&gt;
согласны соблюдать их полностью;&lt;br /&gt;
обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
будете использовать сервис только законным образом.&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация ==&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
&lt;br /&gt;
Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
=== 3.3. Авторизация через Google, Discord, GitHub и Facebook (Meta) ===&lt;br /&gt;
Сервис может поддерживать вход через Google, Discord, GitHub и/или Facebook (Meta). Используя такую функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между аккаунтом внешнего сервиса и API ключом.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Примечание:&#039;&#039;&#039; Facebook и Meta признаны экстремистскими организациями и запрещены на территории РФ.&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google-, Discord-, GitHub- или Facebook-аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
=== 3.5. Авторизация через DenchikP CDN ===&lt;br /&gt;
Сервис также может поддерживать вход непосредственно по API ключу DenchikP CDN. В таком случае вы обязуетесь использовать только тот API ключ, который был выдан вам законно и на использование которого у вас имеется право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование ==&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
&lt;br /&gt;
нарушения законодательства;&lt;br /&gt;
нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
обхода ограничений доступа;&lt;br /&gt;
сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
получения несанкционированного доступа к чужим доменам, файлам, статистике, аккаунтам или ключам.&lt;br /&gt;
== 5. Контент пользователя ==&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
&lt;br /&gt;
Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
== 6. Публичные и временные каталоги ==&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация ==&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
&lt;br /&gt;
удалять файлы и контент;&lt;br /&gt;
отключать API ключи;&lt;br /&gt;
блокировать IP-адреса;&lt;br /&gt;
отзывать доступ к доменам;&lt;br /&gt;
ограничивать или отключать авторизацию через Google, Discord, GitHub, Facebook (Meta) или иные поддерживаемые механизмы входа;&lt;br /&gt;
вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
&lt;br /&gt;
копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
использовать фирменные обозначения без разрешения.&lt;br /&gt;
== 9. Жалобы правообладателей ==&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю, аккаунту или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса ==&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров (включая провайдеров авторизации), ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности ==&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
&lt;br /&gt;
потерю данных;&lt;br /&gt;
автоматическое или ручное удаление файлов;&lt;br /&gt;
недоступность сервиса;&lt;br /&gt;
косвенные убытки и упущенную выгоду;&lt;br /&gt;
действия третьих лиц;&lt;br /&gt;
ошибки или ограничения Google-авторизации, Discord-авторизации, GitHub-авторизации, Facebook-авторизации (Meta) или сторонних сервисов;&lt;br /&gt;
несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
== 12. Возмещение убытков ==&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
&lt;br /&gt;
вашим использованием сервиса;&lt;br /&gt;
вашим контентом;&lt;br /&gt;
нарушением настоящих Условий;&lt;br /&gt;
нарушением прав третьих лиц;&lt;br /&gt;
неправомерным использованием API ключа, Google аккаунта, Discord аккаунта, GitHub аккаунта или Facebook аккаунта (Meta).&lt;br /&gt;
== 13. Безопасность ==&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа ==&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий ==&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право ==&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений ==&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения ==&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты ==&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=361</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=361"/>
		<updated>2026-06-23T20:41:28Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
TOC&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, Discord, GitHub и Facebook (Meta), загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 23.06.2026&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса ==&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google, Discord, GitHub и/или Facebook (Meta) для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий ==&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
&lt;br /&gt;
ознакомились с настоящими Условиями использования;&lt;br /&gt;
согласны соблюдать их полностью;&lt;br /&gt;
обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
будете использовать сервис только законным образом.&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация ==&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
&lt;br /&gt;
Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
=== 3.3. Авторизация через Google, Discord, GitHub и Facebook (Meta) ===&lt;br /&gt;
Сервис может поддерживать вход через Google, Discord, GitHub и/или Facebook (Meta). Используя такую функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между аккаунтом внешнего сервиса и API ключом.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Примечание:&#039;&#039;&#039; Facebook и Meta признаны экстремистскими организациями и запрещены на территории РФ.&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google-, Discord-, GitHub- или Facebook-аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
=== 3.5. Авторизация через DenchikP CDN ===&lt;br /&gt;
Сервис также может поддерживать вход непосредственно по API ключу DenchikP CDN. В таком случае вы обязуетесь использовать только тот API ключ, который был выдан вам законно и на использование которого у вас имеется право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование ==&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
&lt;br /&gt;
нарушения законодательства;&lt;br /&gt;
нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
обхода ограничений доступа;&lt;br /&gt;
сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
получения несанкционированного доступа к чужим доменам, файлам, статистике, аккаунтам или ключам.&lt;br /&gt;
== 5. Контент пользователя ==&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
&lt;br /&gt;
Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
== 6. Публичные и временные каталоги ==&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация ==&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
&lt;br /&gt;
удалять файлы и контент;&lt;br /&gt;
отключать API ключи;&lt;br /&gt;
блокировать IP-адреса;&lt;br /&gt;
отзывать доступ к доменам;&lt;br /&gt;
ограничивать или отключать авторизацию через Google, Discord, GitHub, Facebook (Meta) или иные поддерживаемые механизмы входа;&lt;br /&gt;
вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
&lt;br /&gt;
копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
использовать фирменные обозначения без разрешения.&lt;br /&gt;
== 9. Жалобы правообладателей ==&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю, аккаунту или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса ==&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров (включая провайдеров авторизации), ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности ==&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
&lt;br /&gt;
потерю данных;&lt;br /&gt;
автоматическое или ручное удаление файлов;&lt;br /&gt;
недоступность сервиса;&lt;br /&gt;
косвенные убытки и упущенную выгоду;&lt;br /&gt;
действия третьих лиц;&lt;br /&gt;
ошибки или ограничения Google-авторизации, Discord-авторизации, GitHub-авторизации, Facebook-авторизации (Meta) или сторонних сервисов;&lt;br /&gt;
несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
== 12. Возмещение убытков ==&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
&lt;br /&gt;
вашим использованием сервиса;&lt;br /&gt;
вашим контентом;&lt;br /&gt;
нарушением настоящих Условий;&lt;br /&gt;
нарушением прав третьих лиц;&lt;br /&gt;
неправомерным использованием API ключа, Google аккаунта, Discord аккаунта, GitHub аккаунта или Facebook аккаунта (Meta).&lt;br /&gt;
== 13. Безопасность ==&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа ==&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий ==&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право ==&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений ==&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения ==&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты ==&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=360</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=360"/>
		<updated>2026-06-23T20:37:55Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 23 июня 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
&lt;br /&gt;
API-ключи (в том числе при входе через DenchikP CDN по ключу)&lt;br /&gt;
Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
Домены и URL-адреса&lt;br /&gt;
Webhook URL, секрет webhook (HMAC) и список событий (если вы используете webhooks)&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
&lt;br /&gt;
IP-адрес&lt;br /&gt;
Журналы запросов (загрузка, скачивание, удаление, доступ, просмотр, валидация, редактирование, сканирование)&lt;br /&gt;
Временные метки и данные об активности&lt;br /&gt;
Технические данные, необходимые для работы сессии (cookies/идентификатор сессии)&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя&lt;br /&gt;
Адрес электронной почты&lt;br /&gt;
Фотография профиля&lt;br /&gt;
Идентификатор пользователя Google&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
=== 2.4 Данные Discord-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Discord, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя Discord&lt;br /&gt;
Отображаемое имя (global name), если доступно&lt;br /&gt;
Адрес электронной почты, если он предоставляется Discord&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя Discord&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, серверам, спискам друзей, содержимому аккаунта Discord или иным данным, не связанным напрямую с базовой аутентификацией.&lt;br /&gt;
&lt;br /&gt;
=== 2.5 Данные GitHub-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью GitHub, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя GitHub&lt;br /&gt;
Отображаемое имя, если оно указано&lt;br /&gt;
Адрес электронной почты, если он доступен через GitHub и предоставлен пользователем&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя GitHub&lt;br /&gt;
Мы не получаем доступ к вашим репозиториям, коду, организациям, приватным данным аккаунта GitHub или иным сведениям, кроме тех, которые необходимы для базовой аутентификации и идентификации пользователя.&lt;br /&gt;
&lt;br /&gt;
=== 2.6 Данные Facebook-аккаунта (Meta) ===&lt;br /&gt;
Когда вы входите с помощью Facebook, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя&lt;br /&gt;
Адрес электронной почты (если предоставлен Facebook и разрешён пользователем)&lt;br /&gt;
Фотография профиля (URL изображения)&lt;br /&gt;
Идентификатор пользователя Facebook&lt;br /&gt;
Мы не получаем доступ к вашим друзьям, публикациям, сообщениям, страницам, рекламным данным и другим данным Facebook/Meta, не связанным напрямую с базовой аутентификацией и идентификацией пользователя.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Примечание:&#039;&#039;&#039; Facebook и Meta признаны экстремистскими организациями и запрещены на территории РФ.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
&lt;br /&gt;
Аутентификации пользователей&lt;br /&gt;
Привязки аккаунтов Google, Discord, GitHub и Facebook к API-ключам&lt;br /&gt;
Предоставления доступа к функциям CDN (загрузка/удаление/скачивание/просмотр/валидация/редактирование)&lt;br /&gt;
Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
Поддержки работы и улучшения сервиса&lt;br /&gt;
Работы webhooks (доставка событий, журналирование доставок)&lt;br /&gt;
== 4. Данные пользователей Google, Discord, GitHub и Facebook ==&lt;br /&gt;
Данные пользователей Google, Discord, GitHub и Facebook используются исключительно для целей:&lt;br /&gt;
&lt;br /&gt;
аутентификации и идентификации пользователя;&lt;br /&gt;
привязки аккаунта к API-ключу;&lt;br /&gt;
отображения статуса авторизации в интерфейсе.&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google, Discord, GitHub или Facebook третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies, механизмы сессий и аналогичные технические средства для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
&lt;br /&gt;
Для выполнения требований законодательства&lt;br /&gt;
Для предотвращения мошенничества, нарушений безопасности или злоупотреблений&lt;br /&gt;
Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
&#039;&#039;&#039;Важно:&#039;&#039;&#039; при использовании входа через сторонних провайдеров (Google/Discord/GitHub/Facebook) часть данных передаётся этим провайдерам в рамках стандартного OAuth-процесса (например, факт авторизации/запрос разрешений), что регулируется политиками соответствующих провайдеров.&lt;br /&gt;
&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
&lt;br /&gt;
Данные сессии: до окончания срока действия сессии или выхода пользователя из аккаунта&lt;br /&gt;
Данные привязки аккаунтов Google, Discord, GitHub и Facebook: до отвязки пользователем или удаления соответствующей записи&lt;br /&gt;
Журналы: хранятся для обеспечения безопасности, мониторинга и технического анализа&lt;br /&gt;
Файлы и их метаданные: до удаления пользователем или системой (например, автоматическая очистка public)&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные организационные и технические меры безопасности для защиты данных. Однако ни одна система хранения или передачи данных не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление, если это применимо и не противоречит требованиям законодательства или техническим ограничениям сервиса.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис может использовать:&lt;br /&gt;
&lt;br /&gt;
Google&lt;br /&gt;
Discord&lt;br /&gt;
GitHub&lt;br /&gt;
Facebook (Meta)&lt;br /&gt;
Политика конфиденциальности Google:&lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Discord:&lt;br /&gt;
[https://discord.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности GitHub:&lt;br /&gt;
[https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Meta (Facebook):&lt;br /&gt;
[https://www.facebook.com/privacy/policy/]&lt;br /&gt;
&lt;br /&gt;
== 11. Удаление данных Facebook (Meta) ==&lt;br /&gt;
Если вы использовали вход через Facebook, вы можете запросить удаление данных, связанных с вашим Facebook-аккаунтом в DenchikP CDN (например, данных привязки аккаунта к API-ключу).&lt;br /&gt;
&lt;br /&gt;
Мы обрабатываем запросы удаления данных Facebook через механизм Meta “User Data Deletion”.&lt;br /&gt;
&lt;br /&gt;
== 12. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 13. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=359</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=359"/>
		<updated>2026-06-23T20:37:07Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 23 июня 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
&lt;br /&gt;
API-ключи (в том числе при входе через DenchikP CDN по ключу)&lt;br /&gt;
Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
Домены и URL-адреса&lt;br /&gt;
Webhook URL, секрет webhook (HMAC) и список событий (если вы используете webhooks)&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
&lt;br /&gt;
IP-адрес&lt;br /&gt;
Журналы запросов (загрузка, скачивание, удаление, доступ, просмотр, валидация, редактирование, сканирование)&lt;br /&gt;
Временные метки и данные об активности&lt;br /&gt;
Технические данные, необходимые для работы сессии (cookies/идентификатор сессии)&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя&lt;br /&gt;
Адрес электронной почты&lt;br /&gt;
Фотография профиля&lt;br /&gt;
Идентификатор пользователя Google&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
=== 2.4 Данные Discord-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Discord, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя Discord&lt;br /&gt;
Отображаемое имя (global name), если доступно&lt;br /&gt;
Адрес электронной почты, если он предоставляется Discord&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя Discord&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, серверам, спискам друзей, содержимому аккаунта Discord или иным данным, не связанным напрямую с базовой аутентификацией.&lt;br /&gt;
&lt;br /&gt;
=== 2.5 Данные GitHub-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью GitHub, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя пользователя GitHub&lt;br /&gt;
Отображаемое имя, если оно указано&lt;br /&gt;
Адрес электронной почты, если он доступен через GitHub и предоставлен пользователем&lt;br /&gt;
Аватар профиля&lt;br /&gt;
Идентификатор пользователя GitHub&lt;br /&gt;
Мы не получаем доступ к вашим репозиториям, коду, организациям, приватным данным аккаунта GitHub или иным сведениям, кроме тех, которые необходимы для базовой аутентификации и идентификации пользователя.&lt;br /&gt;
&lt;br /&gt;
=== 2.6 Данные Facebook-аккаунта (Meta) ===&lt;br /&gt;
Когда вы входите с помощью Facebook, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя&lt;br /&gt;
Адрес электронной почты (если предоставлен Facebook и разрешён пользователем)&lt;br /&gt;
Фотография профиля (URL изображения)&lt;br /&gt;
Идентификатор пользователя Facebook&lt;br /&gt;
Мы не получаем доступ к вашим друзьям, публикациям, сообщениям, страницам, рекламным данным и другим данным Facebook/Meta, не связанным напрямую с базовой аутентификацией и идентификацией пользователя.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Примечание:&#039;&#039;&#039; Facebook и Meta признаны экстремистскими организациями и запрещены на территории РФ.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
&lt;br /&gt;
Аутентификации пользователей&lt;br /&gt;
Привязки аккаунтов Google, Discord, GitHub и Facebook к API-ключам&lt;br /&gt;
Предоставления доступа к функциям CDN (загрузка/удаление/скачивание/просмотр/валидация/редактирование)&lt;br /&gt;
Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
Поддержки работы и улучшения сервиса&lt;br /&gt;
Работы webhooks (доставка событий, журналирование доставок)&lt;br /&gt;
== 4. Данные пользователей Google, Discord, GitHub и Facebook ==&lt;br /&gt;
Данные пользователей Google, Discord, GitHub и Facebook используются исключительно для целей:&lt;br /&gt;
&lt;br /&gt;
аутентификации и идентификации пользователя;&lt;br /&gt;
привязки аккаунта к API-ключу;&lt;br /&gt;
отображения статуса авторизации в интерфейсе.&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google, Discord, GitHub или Facebook третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies, механизмы сессий и аналогичные технические средства для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
&lt;br /&gt;
Для выполнения требований законодательства&lt;br /&gt;
Для предотвращения мошенничества, нарушений безопасности или злоупотреблений&lt;br /&gt;
Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
&#039;&#039;&#039;Важно:&#039;&#039;&#039; при использовании входа через сторонних провайдеров (Google/Discord/GitHub/Facebook) часть данных передаётся этим провайдерам в рамках стандартного OAuth-процесса (например, факт авторизации/запрос разрешений), что регулируется политиками соответствующих провайдеров.&lt;br /&gt;
&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
&lt;br /&gt;
Данные сессии: до окончания срока действия сессии или выхода пользователя из аккаунта&lt;br /&gt;
Данные привязки аккаунтов Google, Discord, GitHub и Facebook: до отвязки пользователем или удаления соответствующей записи&lt;br /&gt;
Журналы: хранятся для обеспечения безопасности, мониторинга и технического анализа&lt;br /&gt;
Файлы и их метаданные: до удаления пользователем или системой (например, автоматическая очистка public)&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные организационные и технические меры безопасности для защиты данных. Однако ни одна система хранения или передачи данных не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление, если это применимо и не противоречит требованиям законодательства или техническим ограничениям сервиса.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис может использовать:&lt;br /&gt;
&lt;br /&gt;
Google&lt;br /&gt;
Discord&lt;br /&gt;
GitHub&lt;br /&gt;
Facebook (Meta)&lt;br /&gt;
Политика конфиденциальности Google:&lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Discord:&lt;br /&gt;
[https://discord.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности GitHub:&lt;br /&gt;
[https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Meta (Facebook):&lt;br /&gt;
[https://www.facebook.com/privacy/policy/]&lt;br /&gt;
&lt;br /&gt;
== 11. Удаление данных Facebook (Meta) ==&lt;br /&gt;
Если вы использовали вход через Facebook, вы можете запросить удаление данных, связанных с вашим Facebook-аккаунтом в DenchikP CDN (например, данных привязки аккаунта к API-ключу).&lt;br /&gt;
&lt;br /&gt;
Мы обрабатываем запросы удаления данных Facebook через механизм Meta “User Data Deletion”.&lt;br /&gt;
&lt;br /&gt;
== 12. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 13. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=358</id>
		<title>CDN:API Docs</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=358"/>
		<updated>2026-06-17T00:45:28Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= CDN API (Reference) =&lt;br /&gt;
&lt;br /&gt;
== Общие требования ==&lt;br /&gt;
&#039;&#039;&#039;Base URL:&#039;&#039;&#039; https://cdnapi.denchikp.com&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;CDN URL файлов:&#039;&#039;&#039; https://cdn.denchikp.com/&amp;amp;lt;domain&amp;amp;gt;/&amp;amp;lt;folder&amp;amp;gt;/&amp;amp;lt;filename&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Большинство CDN‑эндпоинтов требуют:&lt;br /&gt;
* заголовок &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;  &lt;br /&gt;
или&lt;br /&gt;
* активную cookie‑сессию, где ключ может резолвиться автоматически (OAuth/CDN login + bind).&lt;br /&gt;
&lt;br /&gt;
Во многих операциях, где передаётся &amp;lt;code&amp;gt;url&amp;lt;/code&amp;gt;, принимаются &#039;&#039;&#039;только&#039;&#039;&#039; ссылки вида:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
https://cdn.denchikp.com/&amp;amp;lt;domain&amp;amp;gt;/&amp;amp;lt;folder&amp;amp;gt;/&amp;amp;lt;filename&amp;amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ключ / домены / квоты ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/api-key/me&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Информация о текущем API‑ключе (по &amp;lt;code&amp;gt;X-Api-Key&amp;lt;/code&amp;gt; или по сессии).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt; (рекомендуется)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;key&amp;quot;:{&lt;br /&gt;
    &amp;quot;name&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
    &amp;quot;is_admin&amp;quot;:false,&lt;br /&gt;
    &amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;],&lt;br /&gt;
    &amp;quot;ips&amp;quot;:[&amp;quot;1.2.3.4&amp;quot;]&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 401 — нет ключа и нет валидной авторизации&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/domains&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список доменов, доступных для ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (примеры):&#039;&#039;&#039;&lt;br /&gt;
* admin‑ключ:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;any&amp;quot;,&amp;quot;domains&amp;quot;:[]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* allowlist‑ключ:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;allowlist&amp;quot;,&amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;,&amp;quot;example.com&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* ключ без доменов (разрешён как минимум public):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;any&amp;quot;,&amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/usage&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Текущее использование (без лимитов квоты).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;usage&amp;quot;:{&lt;br /&gt;
    &amp;quot;total_files&amp;quot;:120,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;:123456789,&lt;br /&gt;
    &amp;quot;month&amp;quot;:&amp;quot;2026-06&amp;quot;,&lt;br /&gt;
    &amp;quot;monthly_uploaded_files&amp;quot;:10,&lt;br /&gt;
    &amp;quot;monthly_uploaded_bytes&amp;quot;:12300000&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/quota&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Квоты + использование + остатки (remaining).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;api_key_name&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;is_admin&amp;quot;:false,&lt;br /&gt;
  &amp;quot;quota&amp;quot;:{&lt;br /&gt;
    &amp;quot;max_file_bytes&amp;quot;:524288000,&lt;br /&gt;
    &amp;quot;max_total_bytes&amp;quot;:10737418240,&lt;br /&gt;
    &amp;quot;max_total_files&amp;quot;:50000,&lt;br /&gt;
    &amp;quot;max_monthly_upload_bytes&amp;quot;:5368709120,&lt;br /&gt;
    &amp;quot;max_monthly_upload_files&amp;quot;:null&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;usage&amp;quot;:{&lt;br /&gt;
    &amp;quot;total_files&amp;quot;:120,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;:123456789,&lt;br /&gt;
    &amp;quot;month&amp;quot;:&amp;quot;2026-06&amp;quot;,&lt;br /&gt;
    &amp;quot;monthly_uploaded_files&amp;quot;:10,&lt;br /&gt;
    &amp;quot;monthly_uploaded_bytes&amp;quot;:12300000&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;remaining&amp;quot;:{&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;:10000000000,&lt;br /&gt;
    &amp;quot;total_files&amp;quot;:49880,&lt;br /&gt;
    &amp;quot;monthly_upload_bytes&amp;quot;:5300000000,&lt;br /&gt;
    &amp;quot;monthly_upload_files&amp;quot;:null&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 403 — если ключ невалиден/запрещён по IP и т.п.&lt;br /&gt;
&lt;br /&gt;
== Файлы (БД / meta / exists) ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список «моих» файлов из БД.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Query parameters (все опциональны):&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Name !! Type !! Default !! Description&lt;br /&gt;
|-&lt;br /&gt;
| q || string || — || поиск по &amp;lt;code&amp;gt;filename&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;original_filename&amp;lt;/code&amp;gt; (LIKE)&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || — || фильтр домена (нормализуется)&lt;br /&gt;
|-&lt;br /&gt;
| folder || string || — || фильтр папки&lt;br /&gt;
|-&lt;br /&gt;
| ext || string || — || фильтр расширения&lt;br /&gt;
|-&lt;br /&gt;
| exists_on_disk || bool || true || фильтр по наличию на диске&lt;br /&gt;
|-&lt;br /&gt;
| limit || int || 50 || максимум 200&lt;br /&gt;
|-&lt;br /&gt;
| offset || int || 0 || смещение&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;total&amp;quot;:123,&lt;br /&gt;
  &amp;quot;limit&amp;quot;:50,&lt;br /&gt;
  &amp;quot;offset&amp;quot;:0,&lt;br /&gt;
  &amp;quot;files&amp;quot;:[&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;id&amp;quot;:1,&lt;br /&gt;
      &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
      &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
      &amp;quot;filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;original_filename&amp;quot;:&amp;quot;cat.png&amp;quot;,&lt;br /&gt;
      &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
      &amp;quot;created_at&amp;quot;:&amp;quot;2026-06-16T10:00:00&amp;quot;,&lt;br /&gt;
      &amp;quot;exists_on_disk&amp;quot;:true&lt;br /&gt;
    }&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/meta&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Метаданные файла: сведения из БД + проверка на диске.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (схема):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;db&amp;quot;:{&lt;br /&gt;
    &amp;quot;id&amp;quot;:1,&lt;br /&gt;
    &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
    &amp;quot;api_key_id&amp;quot;:10,&lt;br /&gt;
    &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
    &amp;quot;exists_on_disk&amp;quot;:true,&lt;br /&gt;
    &amp;quot;created_at&amp;quot;:&amp;quot;...&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;disk&amp;quot;:{&lt;br /&gt;
    &amp;quot;exists&amp;quot;:true,&lt;br /&gt;
    &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
    &amp;quot;mime_type&amp;quot;:&amp;quot;image/png&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — URL не CDN формата/не парсится&lt;br /&gt;
* 403 — нет доступа к домену&lt;br /&gt;
* 401 — нет ключа&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/exists&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Проверка существования файла (в БД и на диске).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;exists_in_db&amp;quot;:true,&amp;quot;exists_on_disk&amp;quot;:true}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/redirect&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Публичный редирект на CDN URL.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Query:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;?url=https://cdn.denchikp.com/...&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — если url не начинается с &amp;lt;code&amp;gt;https://cdn.denchikp.com/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Загрузка ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Загрузка файла (multipart/form-data).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Content-Type:&#039;&#039;&#039; &amp;lt;code&amp;gt;multipart/form-data&amp;lt;/code&amp;gt;  &lt;br /&gt;
&#039;&#039;&#039;Max size:&#039;&#039;&#039; 500 MB&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Form fields:&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Required !! Default !! Description&lt;br /&gt;
|-&lt;br /&gt;
| file || file || да || — || загружаемый файл&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || нет || &amp;quot;&amp;quot; || &amp;quot;&amp;quot; → public&lt;br /&gt;
|-&lt;br /&gt;
| name_mode || string || нет || uuid || uuid | original | custom&lt;br /&gt;
|-&lt;br /&gt;
| custom_filename || string || нет || &amp;quot;&amp;quot; || используется при name_mode=custom&lt;br /&gt;
|-&lt;br /&gt;
| conflict_action || string || нет || &amp;quot;&amp;quot; || overwrite → перезаписать (с проверками прав)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/...&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
  &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;ip&amp;quot;:&amp;quot;1.2.3.4&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;...&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 409 (конфликт имени, если не overwrite):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;conflict&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;quot;FILE_EXISTS&amp;quot;,&lt;br /&gt;
  &amp;quot;requested_filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;existing_url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки (частые):&#039;&#039;&#039;&lt;br /&gt;
* 403 — квота превышена / домен не разрешён / IP не разрешён / overwrite запрещён&lt;br /&gt;
* 413 — файл слишком большой&lt;br /&gt;
* 500 — внутренняя ошибка&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Пример (curl):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -X POST &amp;quot;https://cdnapi.denchikp.com/upload&amp;quot; \&lt;br /&gt;
  -H &amp;quot;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot; \&lt;br /&gt;
  -F &amp;quot;domain=public&amp;quot; \&lt;br /&gt;
  -F &amp;quot;name_mode=uuid&amp;quot; \&lt;br /&gt;
  -F &amp;quot;file=@./cat.png&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/by-url&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Сервер скачивает файл по ссылке и сохраняет в CDN.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;source_url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ограничения:&#039;&#039;&#039;&lt;br /&gt;
* только http/https&lt;br /&gt;
* SSRF‑защита: запрещено скачивать с private/loopback/link-local/reserved/multicast адресов&lt;br /&gt;
* max 500 MB&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/...&amp;quot;,&amp;quot;size&amp;quot;:12345,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;by_url&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Multipart Upload ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/start&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Создать multipart‑сессию.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;ext&amp;quot;:&amp;quot;mp4&amp;quot;,&lt;br /&gt;
  &amp;quot;mime_type&amp;quot;:&amp;quot;video/mp4&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;upload_id&amp;quot;:&amp;quot;&amp;lt;uuid&amp;gt;&amp;quot;,&amp;quot;chunk_size&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,191,36,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fbbf24;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;PUT&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/part/{part_no}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Загрузить часть файла (chunk).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Content-Type:&#039;&#039;&#039; &amp;lt;code&amp;gt;multipart/form-data&amp;lt;/code&amp;gt;  &lt;br /&gt;
Form-data:&lt;br /&gt;
* &amp;lt;code&amp;gt;file&amp;lt;/code&amp;gt; — chunk&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;part_no&amp;quot;:1,&amp;quot;bytes&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 404 — upload_id не найден&lt;br /&gt;
* 403 — upload_id принадлежит другому ключу (для не‑админов)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/complete&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Склеить части и создать итоговый файл.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — нет частей&lt;br /&gt;
* 413 — итоговый файл &amp;gt; 500MB&lt;br /&gt;
* 403 — квота/права&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;multipart&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/abort&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Отменить multipart‑сессию и удалить временные части.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Операции с файлами ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files/bulk-delete&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удалить много файлов за один запрос (до 500 URL).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;urls&amp;quot;:[&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&amp;quot;...&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;results&amp;quot;:[&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;},&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;error&amp;quot;,&amp;quot;error&amp;quot;:&amp;quot;...&amp;quot;}&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;BULK_DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Перемещение/переименование файла (можно менять домен/папку/имя).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;new_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;new_folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;new_filename&amp;quot;:&amp;quot;b.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Правила:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;new_folder&amp;lt;/code&amp;gt; должен быть одним из: img/css/js/fonts/files&lt;br /&gt;
* &amp;lt;code&amp;gt;new_filename&amp;lt;/code&amp;gt; не должен содержать &amp;lt;code&amp;gt;..&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;from&amp;quot;:&amp;quot;https://.../a.png&amp;quot;,&amp;quot;to&amp;quot;:&amp;quot;https://.../b.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_MOVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/rename&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Переименовать файл (alias для &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt;, но меняется только имя).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;new_filename&amp;quot;:&amp;quot;b.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — &amp;lt;code&amp;gt;new_filename&amp;lt;/code&amp;gt; обязателен&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/copy&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Копирование файла (квоты учитываются как новая загрузка).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;target_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;target_folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;target_filename&amp;quot;:&amp;quot;copy.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/copy.png&amp;quot;,&amp;quot;size&amp;quot;:12345}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_COPY&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/hash&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Посчитать хэш файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.bin&amp;quot;,&amp;quot;algo&amp;quot;:&amp;quot;sha256&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;algo&amp;lt;/code&amp;gt;: sha256 | sha1 | md5&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;algo&amp;quot;:&amp;quot;sha256&amp;quot;,&amp;quot;hash&amp;quot;:&amp;quot;&amp;lt;hex&amp;gt;&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://...&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Browse / Folders / Download ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/browse&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Просмотр файлов на диске в домене.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&amp;quot;filter&amp;quot;:&amp;quot;cat&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Поля:&lt;br /&gt;
* &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt; — обязательно&lt;br /&gt;
* &amp;lt;code&amp;gt;folder&amp;lt;/code&amp;gt; — опционально&lt;br /&gt;
* &amp;lt;code&amp;gt;filter&amp;lt;/code&amp;gt; — подстрока в имени файла (опционально)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (схема):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;total_files&amp;quot;:2,&amp;quot;files&amp;quot;:[{&amp;quot;name&amp;quot;:&amp;quot;a.png&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;img/a.png&amp;quot;,&amp;quot;size&amp;quot;:12345,&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;}]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/folders/{domain}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список папок домена + агрегаты.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;total_files&amp;quot;:10,&lt;br /&gt;
  &amp;quot;total_size&amp;quot;:1234567,&lt;br /&gt;
  &amp;quot;folders&amp;quot;:[{&amp;quot;name&amp;quot;:&amp;quot;img&amp;quot;,&amp;quot;file_count&amp;quot;:5,&amp;quot;size&amp;quot;:1000000,&amp;quot;path&amp;quot;:&amp;quot;public/img&amp;quot;}]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/download/{domain}/{folder}/{filename:path}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Скачивание файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Важно:&#039;&#039;&#039;&lt;br /&gt;
хотя параметр &amp;lt;code&amp;gt;{filename:path}&amp;lt;/code&amp;gt; технически может содержать “/”, сервер отклонит имя, если в нём есть &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;..&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
* бинарный поток (FileResponse), &amp;lt;code&amp;gt;application/octet-stream&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 404 — файл не найден&lt;br /&gt;
* 403 — нет доступа к домену&lt;br /&gt;
&lt;br /&gt;
== Validate URL ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/validate&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Валидация ссылки (http/https). Делает HEAD, при необходимости GET range 0-0, возвращает HTTP статус и заголовки.  &lt;br /&gt;
Если URL — CDN URL, дополнительно парсит &amp;lt;code&amp;gt;domain/folder/filename&amp;lt;/code&amp;gt; и проверяет наличие на диске.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (схема, укорочено):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;checked_by&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;,&lt;br /&gt;
  &amp;quot;is_valid_url&amp;quot;:true,&lt;br /&gt;
  &amp;quot;is_cdn_url&amp;quot;:false,&lt;br /&gt;
  &amp;quot;available&amp;quot;:true,&lt;br /&gt;
  &amp;quot;http_status&amp;quot;:200,&lt;br /&gt;
  &amp;quot;headers&amp;quot;:{&amp;quot;content_type&amp;quot;:&amp;quot;image/png&amp;quot;,&amp;quot;content_length&amp;quot;:&amp;quot;12345&amp;quot;,&amp;quot;last_modified&amp;quot;:null,&amp;quot;etag&amp;quot;:null,&amp;quot;server&amp;quot;:&amp;quot;nginx&amp;quot;},&lt;br /&gt;
  &amp;quot;file_info&amp;quot;:{&amp;quot;filename&amp;quot;:&amp;quot;file.png&amp;quot;,&amp;quot;extension&amp;quot;:&amp;quot;png&amp;quot;,&amp;quot;host&amp;quot;:&amp;quot;example.com&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;/file.png&amp;quot;},&lt;br /&gt;
  &amp;quot;cdn_info&amp;quot;:null,&lt;br /&gt;
  &amp;quot;error&amp;quot;:null&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Delete file ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/delete&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удаление файла по CDN URL.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;quot;Файл успешно удален&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;a.txt&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&lt;br /&gt;
  &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;ip&amp;quot;:&amp;quot;1.2.3.4&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Text Editor (Read/Save) ==&lt;br /&gt;
&lt;br /&gt;
Только для “текстовых” файлов и ограничение по размеру: ≤ 2 MB.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/content&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Получить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;app.js&amp;quot;,&lt;br /&gt;
  &amp;quot;mime_type&amp;quot;:&amp;quot;application/javascript&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;:1200,&lt;br /&gt;
  &amp;quot;content&amp;quot;:&amp;quot;console.log(&#039;hi&#039;);\n&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — файл не текстовый / &amp;gt;2MB / неподдерживаемая кодировка&lt;br /&gt;
* 404 — файл не найден&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/save&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Сохранить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;console.log(&#039;hi&#039;);\n&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;message&amp;quot;:&amp;quot;Файл успешно сохранен&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&amp;quot;filename&amp;quot;:&amp;quot;app.js&amp;quot;,&amp;quot;size&amp;quot;:1200}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_SAVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Webhooks (Reference) =&lt;br /&gt;
&lt;br /&gt;
Webhooks позволяют получать события от сервиса (UPLOAD/DELETE и т.д.) на ваш URL.&lt;br /&gt;
&lt;br /&gt;
== Создание / управление ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Создать webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://example.com/hook&amp;quot;,&lt;br /&gt;
  &amp;quot;events&amp;quot;:[&amp;quot;UPLOAD&amp;quot;,&amp;quot;DELETE&amp;quot;],&lt;br /&gt;
  &amp;quot;secret&amp;quot;:&amp;quot;optional&amp;quot;,&lt;br /&gt;
  &amp;quot;enabled&amp;quot;:true&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;id&amp;quot;:123}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 401/403 — нет доступа&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список webhooks текущего ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;webhooks&amp;quot;:[&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;id&amp;quot;:123,&lt;br /&gt;
      &amp;quot;url&amp;quot;:&amp;quot;https://example.com/hook&amp;quot;,&lt;br /&gt;
      &amp;quot;events&amp;quot;:[&amp;quot;UPLOAD&amp;quot;,&amp;quot;DELETE&amp;quot;],&lt;br /&gt;
      &amp;quot;enabled&amp;quot;:true,&lt;br /&gt;
      &amp;quot;created_at&amp;quot;:&amp;quot;2026-06-16T12:00:00&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks/{webhook_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удалить webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Path params:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;webhook_id&amp;lt;/code&amp;gt; — integer&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 404 — webhook не найден (или не принадлежит ключу)&lt;br /&gt;
&lt;br /&gt;
== Delivery format ==&lt;br /&gt;
&lt;br /&gt;
Сервер отправляет на URL webhook’а запрос:&lt;br /&gt;
* Method: POST&lt;br /&gt;
* Content-Type: application/json&lt;br /&gt;
* Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;event&amp;quot;:&amp;quot;UPLOAD&amp;quot;,&amp;quot;payload&amp;quot;:{...}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== События ==&lt;br /&gt;
События, которые реально используются в текущем коде:&lt;br /&gt;
* &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;BULK_DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;FILE_MOVE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;FILE_COPY&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;FILE_SAVE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;SCAN_FINISHED&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Подпись (HMAC) ==&lt;br /&gt;
Если у webhook задан &amp;lt;code&amp;gt;secret&amp;lt;/code&amp;gt; и на сервере включена подпись, рекомендуется добавлять:&lt;br /&gt;
&lt;br /&gt;
Headers:&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Event: &amp;amp;lt;EVENT&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Timestamp: &amp;amp;lt;unix_seconds&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Signature: sha256=&amp;amp;lt;hex&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Алгоритм:&lt;br /&gt;
* base = &amp;lt;code&amp;gt;{timestamp}.{raw_body}&amp;lt;/code&amp;gt;&lt;br /&gt;
* signature = &amp;lt;code&amp;gt;HMAC_SHA256(secret, base)&amp;lt;/code&amp;gt; (hex)&lt;br /&gt;
* получатель проверяет подпись и свежесть timestamp (например ±300 секунд)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; в текущем коде поле &amp;lt;code&amp;gt;secret&amp;lt;/code&amp;gt; хранится, но подпись нужно добавить отдельным патчем (если ещё не добавлено).&lt;br /&gt;
&lt;br /&gt;
= Bot (internal) =&lt;br /&gt;
&lt;br /&gt;
Все эндпоинты &amp;lt;code&amp;gt;/bot/*&amp;lt;/code&amp;gt; требуют заголовок &amp;lt;code&amp;gt;X-Bot-Token&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header !! Обязательно !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| X-Bot-Token || да || внутренний токен, должен совпадать с &amp;lt;code&amp;gt;DISCORD_BOT_INTERNAL_TOKEN&amp;lt;/code&amp;gt; на сервере&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Discord binding ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/discord/bind&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Привязать Discord пользователя к API‑ключу (для бота).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;discord_id&amp;quot;: &amp;quot;1234567890&amp;quot;,&lt;br /&gt;
  &amp;quot;api_key&amp;quot;: &amp;quot;&amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot;,&lt;br /&gt;
  &amp;quot;username&amp;quot;: &amp;quot;optional&amp;quot;,&lt;br /&gt;
  &amp;quot;global_name&amp;quot;: &amp;quot;optional&amp;quot;,&lt;br /&gt;
  &amp;quot;email&amp;quot;: &amp;quot;optional&amp;quot;,&lt;br /&gt;
  &amp;quot;avatar&amp;quot;: &amp;quot;optional&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;: &amp;quot;Discord аккаунт успешно привязан к API ключу&amp;quot;,&lt;br /&gt;
  &amp;quot;discord_id&amp;quot;: &amp;quot;1234567890&amp;quot;,&lt;br /&gt;
  &amp;quot;key_info&amp;quot;: {&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;ClientName&amp;quot;,&lt;br /&gt;
    &amp;quot;domains&amp;quot;: [&amp;quot;public&amp;quot;],&lt;br /&gt;
    &amp;quot;enabled&amp;quot;: true,&lt;br /&gt;
    &amp;quot;is_admin&amp;quot;: false,&lt;br /&gt;
    &amp;quot;ips&amp;quot;: []&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 403 — недействительный &amp;lt;code&amp;gt;X-Bot-Token&amp;lt;/code&amp;gt;&lt;br /&gt;
* 400 — API ключ не существует&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/discord/unbind&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Отвязать Discord пользователя от API‑ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;discord_id&amp;quot;: &amp;quot;1234567890&amp;quot; }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;, &amp;quot;message&amp;quot;: &amp;quot;Discord аккаунт успешно отвязан от API ключа&amp;quot; }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 403 — недействительный &amp;lt;code&amp;gt;X-Bot-Token&amp;lt;/code&amp;gt;&lt;br /&gt;
* 404 — привязка не найдена&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/discord/me/{discord_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Получить информацию о привязке Discord пользователя.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Path params:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;discord_id&amp;lt;/code&amp;gt; — Discord ID&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример, если привязан):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;authenticated&amp;quot;: true,&lt;br /&gt;
  &amp;quot;bound&amp;quot;: true,&lt;br /&gt;
  &amp;quot;discord_id&amp;quot;: &amp;quot;1234567890&amp;quot;,&lt;br /&gt;
  &amp;quot;user&amp;quot;: { &amp;quot;name&amp;quot;: &amp;quot;Display Name&amp;quot;, &amp;quot;email&amp;quot;: &amp;quot;user@example.com&amp;quot;, &amp;quot;avatar&amp;quot;: &amp;quot;https://...&amp;quot; },&lt;br /&gt;
  &amp;quot;key_info&amp;quot;: { &amp;quot;name&amp;quot;:&amp;quot;ClientName&amp;quot;,&amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;],&amp;quot;enabled&amp;quot;:true,&amp;quot;is_admin&amp;quot;:false,&amp;quot;ips&amp;quot;:[] }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 404 (если не привязан):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;authenticated&amp;quot;: false, &amp;quot;bound&amp;quot;: false }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bot files ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/upload&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Загрузка файла через Discord‑бота (multipart/form-data).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Content-Type:&#039;&#039;&#039; &amp;lt;code&amp;gt;multipart/form-data&amp;lt;/code&amp;gt;  &lt;br /&gt;
&#039;&#039;&#039;Max file size:&#039;&#039;&#039; 500 MB&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Form fields:&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Required !! Default !! Description&lt;br /&gt;
|-&lt;br /&gt;
| discord_id || string || да || — || Discord ID&lt;br /&gt;
|-&lt;br /&gt;
| file || file || да || — || файл&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || нет || &amp;quot;&amp;quot; || &amp;quot;&amp;quot; → public&lt;br /&gt;
|-&lt;br /&gt;
| name_mode || string || нет || uuid || uuid | original | custom&lt;br /&gt;
|-&lt;br /&gt;
| custom_filename || string || нет || &amp;quot;&amp;quot; || используется при custom&lt;br /&gt;
|-&lt;br /&gt;
| conflict_action || string || нет || &amp;quot;&amp;quot; || overwrite → перезаписать (с проверками)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/...&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
  &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;...&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 409 (если имя занято и overwrite не задан):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;conflict&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;quot;FILE_EXISTS&amp;quot;,&lt;br /&gt;
  &amp;quot;requested_filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;existing_url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки (частые):&#039;&#039;&#039;&lt;br /&gt;
* 401 — Discord аккаунт не привязан к API ключу&lt;br /&gt;
* 403 — нет доступа к домену / квота / overwrite запрещён&lt;br /&gt;
* 413 — файл слишком большой&lt;br /&gt;
* 500 — внутренняя ошибка&lt;br /&gt;
&lt;br /&gt;
Пример (curl):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -X POST &amp;quot;https://cdnapi.denchikp.com/bot/upload&amp;quot; \&lt;br /&gt;
  -H &amp;quot;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;quot; \&lt;br /&gt;
  -F &amp;quot;discord_id=1234567890&amp;quot; \&lt;br /&gt;
  -F &amp;quot;domain=public&amp;quot; \&lt;br /&gt;
  -F &amp;quot;name_mode=uuid&amp;quot; \&lt;br /&gt;
  -F &amp;quot;file=@./cat.png&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/delete&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удалить файл через бота.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;discord_id&amp;quot;:&amp;quot;1234567890&amp;quot;, &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot; }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;quot;Файл успешно удален&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;a.txt&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&lt;br /&gt;
  &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — некорректный URL / путь не файл&lt;br /&gt;
* 401 — Discord аккаунт не привязан&lt;br /&gt;
* 403 — нет доступа к домену&lt;br /&gt;
* 404 — файл не найден&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/download/{discord_id}/{domain}/{folder}/{filename:path}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Получить ссылки на скачивание (CDN URL + API download URL).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
  &amp;quot;cdn_url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;api_download_url&amp;quot;:&amp;quot;https://cdnapi.denchikp.com/download/public/img/a.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — недопустимое имя файла (.. или / или \)&lt;br /&gt;
* 401 — Discord аккаунт не привязан&lt;br /&gt;
* 403 — нет доступа к домену&lt;br /&gt;
* 404 — файл не найден&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/browse&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Просмотр файлов домена через бота.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;discord_id&amp;quot;:&amp;quot;1234567890&amp;quot;, &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;, &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;, &amp;quot;filter&amp;quot;:&amp;quot;cat&amp;quot; }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример, укорочено):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;, &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;, &amp;quot;total_files&amp;quot;:1, &amp;quot;files&amp;quot;:[{&amp;quot;name&amp;quot;:&amp;quot;a.png&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;img/a.png&amp;quot;,&amp;quot;size&amp;quot;:12345,&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;}] }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/folders/{discord_id}/{domain}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Папки домена через бота + статистика по папкам.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;total_files&amp;quot;:10,&lt;br /&gt;
  &amp;quot;total_size&amp;quot;:1234567,&lt;br /&gt;
  &amp;quot;folders&amp;quot;:[{&amp;quot;name&amp;quot;:&amp;quot;img&amp;quot;,&amp;quot;file_count&amp;quot;:5,&amp;quot;size&amp;quot;:1000000,&amp;quot;path&amp;quot;:&amp;quot;public/img&amp;quot;}]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/validate&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Валидация ссылки через бота (HEAD/GET, статус и заголовки). Для CDN URL также возвращает parsed info и exists_on_disk.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Bot-Token: &amp;amp;lt;BOT_TOKEN&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;discord_id&amp;quot;:&amp;quot;1234567890&amp;quot;, &amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot; }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (схема, укорочено):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;checked_by&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;,&lt;br /&gt;
  &amp;quot;is_valid_url&amp;quot;:true,&lt;br /&gt;
  &amp;quot;is_cdn_url&amp;quot;:false,&lt;br /&gt;
  &amp;quot;available&amp;quot;:true,&lt;br /&gt;
  &amp;quot;http_status&amp;quot;:200,&lt;br /&gt;
  &amp;quot;headers&amp;quot;:{&amp;quot;content_type&amp;quot;:&amp;quot;image/png&amp;quot;,&amp;quot;content_length&amp;quot;:&amp;quot;12345&amp;quot;},&lt;br /&gt;
  &amp;quot;file_info&amp;quot;:{&amp;quot;filename&amp;quot;:&amp;quot;file.png&amp;quot;,&amp;quot;extension&amp;quot;:&amp;quot;png&amp;quot;,&amp;quot;host&amp;quot;:&amp;quot;example.com&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;/file.png&amp;quot;},&lt;br /&gt;
  &amp;quot;cdn_info&amp;quot;:null,&lt;br /&gt;
  &amp;quot;error&amp;quot;:null&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/file/content&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Получить содержимое текстового файла (предпросмотр для бота).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ограничения:&#039;&#039;&#039;&lt;br /&gt;
* только текстовые файлы&lt;br /&gt;
* размер ≤ 2 MB&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{ &amp;quot;discord_id&amp;quot;:&amp;quot;1234567890&amp;quot;, &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot; }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;app.js&amp;quot;,&lt;br /&gt;
  &amp;quot;mime_type&amp;quot;:&amp;quot;application/javascript&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;:1200,&lt;br /&gt;
  &amp;quot;content&amp;quot;:&amp;quot;console.log(&#039;hi&#039;);\n&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bot stats ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/public-summary&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Публичная статистика CDN (вызов внутри бота). Фактически возвращает то же, что &amp;lt;code&amp;gt;GET /stats/public-summary&amp;lt;/code&amp;gt;, но требует &amp;lt;code&amp;gt;X-Bot-Token&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;stats&amp;quot;:{&lt;br /&gt;
    &amp;quot;uploaded_files&amp;quot;:1000,&lt;br /&gt;
    &amp;quot;current_files&amp;quot;:900,&lt;br /&gt;
    &amp;quot;total_size_bytes&amp;quot;:123456789,&lt;br /&gt;
    &amp;quot;total_size_mb&amp;quot;:117.74,&lt;br /&gt;
    &amp;quot;domains&amp;quot;:10,&lt;br /&gt;
    &amp;quot;clients&amp;quot;:3,&lt;br /&gt;
    &amp;quot;registered_api_clients&amp;quot;:5&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/bot/stats/{discord_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Админ‑статистика для бота: доступно только если привязанный к &amp;lt;code&amp;gt;discord_id&amp;lt;/code&amp;gt; ключ имеет &amp;lt;code&amp;gt;is_admin=true&amp;lt;/code&amp;gt;. Возвращает ту же структуру, что &amp;lt;code&amp;gt;/bot/public-summary&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 403 — только администраторы могут просматривать статистику&lt;br /&gt;
* 401 — Discord аккаунт не привязан к API ключу&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=357</id>
		<title>CDN:API Docs</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=357"/>
		<updated>2026-06-17T00:42:47Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= CDN API (Reference) =&lt;br /&gt;
&lt;br /&gt;
== Общие требования ==&lt;br /&gt;
&#039;&#039;&#039;Base URL:&#039;&#039;&#039; https://cdnapi.denchikp.com&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;CDN URL файлов:&#039;&#039;&#039; https://cdn.denchikp.com/&amp;amp;lt;domain&amp;amp;gt;/&amp;amp;lt;folder&amp;amp;gt;/&amp;amp;lt;filename&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Большинство CDN‑эндпоинтов требуют:&lt;br /&gt;
* заголовок &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;  &lt;br /&gt;
или&lt;br /&gt;
* активную cookie‑сессию, где ключ может резолвиться автоматически (OAuth/CDN login + bind).&lt;br /&gt;
&lt;br /&gt;
Во многих операциях, где передаётся &amp;lt;code&amp;gt;url&amp;lt;/code&amp;gt;, принимаются &#039;&#039;&#039;только&#039;&#039;&#039; ссылки вида:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
https://cdn.denchikp.com/&amp;amp;lt;domain&amp;amp;gt;/&amp;amp;lt;folder&amp;amp;gt;/&amp;amp;lt;filename&amp;amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ключ / домены / квоты ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/api-key/me&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Информация о текущем API‑ключе (по &amp;lt;code&amp;gt;X-Api-Key&amp;lt;/code&amp;gt; или по сессии).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt; (рекомендуется)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;key&amp;quot;:{&lt;br /&gt;
    &amp;quot;name&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
    &amp;quot;is_admin&amp;quot;:false,&lt;br /&gt;
    &amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;],&lt;br /&gt;
    &amp;quot;ips&amp;quot;:[&amp;quot;1.2.3.4&amp;quot;]&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 401 — нет ключа и нет валидной авторизации&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/domains&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список доменов, доступных для ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (примеры):&#039;&#039;&#039;&lt;br /&gt;
* admin‑ключ:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;any&amp;quot;,&amp;quot;domains&amp;quot;:[]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* allowlist‑ключ:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;allowlist&amp;quot;,&amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;,&amp;quot;example.com&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* ключ без доменов (разрешён как минимум public):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;any&amp;quot;,&amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/usage&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Текущее использование (без лимитов квоты).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;usage&amp;quot;:{&lt;br /&gt;
    &amp;quot;total_files&amp;quot;:120,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;:123456789,&lt;br /&gt;
    &amp;quot;month&amp;quot;:&amp;quot;2026-06&amp;quot;,&lt;br /&gt;
    &amp;quot;monthly_uploaded_files&amp;quot;:10,&lt;br /&gt;
    &amp;quot;monthly_uploaded_bytes&amp;quot;:12300000&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/quota&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Квоты + использование + остатки (remaining).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;api_key_name&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;is_admin&amp;quot;:false,&lt;br /&gt;
  &amp;quot;quota&amp;quot;:{&lt;br /&gt;
    &amp;quot;max_file_bytes&amp;quot;:524288000,&lt;br /&gt;
    &amp;quot;max_total_bytes&amp;quot;:10737418240,&lt;br /&gt;
    &amp;quot;max_total_files&amp;quot;:50000,&lt;br /&gt;
    &amp;quot;max_monthly_upload_bytes&amp;quot;:5368709120,&lt;br /&gt;
    &amp;quot;max_monthly_upload_files&amp;quot;:null&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;usage&amp;quot;:{&lt;br /&gt;
    &amp;quot;total_files&amp;quot;:120,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;:123456789,&lt;br /&gt;
    &amp;quot;month&amp;quot;:&amp;quot;2026-06&amp;quot;,&lt;br /&gt;
    &amp;quot;monthly_uploaded_files&amp;quot;:10,&lt;br /&gt;
    &amp;quot;monthly_uploaded_bytes&amp;quot;:12300000&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;remaining&amp;quot;:{&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;:10000000000,&lt;br /&gt;
    &amp;quot;total_files&amp;quot;:49880,&lt;br /&gt;
    &amp;quot;monthly_upload_bytes&amp;quot;:5300000000,&lt;br /&gt;
    &amp;quot;monthly_upload_files&amp;quot;:null&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 403 — если ключ невалиден/запрещён по IP и т.п.&lt;br /&gt;
&lt;br /&gt;
== Файлы (БД / meta / exists) ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список «моих» файлов из БД.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Query parameters (все опциональны):&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Name !! Type !! Default !! Description&lt;br /&gt;
|-&lt;br /&gt;
| q || string || — || поиск по &amp;lt;code&amp;gt;filename&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;original_filename&amp;lt;/code&amp;gt; (LIKE)&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || — || фильтр домена (нормализуется)&lt;br /&gt;
|-&lt;br /&gt;
| folder || string || — || фильтр папки&lt;br /&gt;
|-&lt;br /&gt;
| ext || string || — || фильтр расширения&lt;br /&gt;
|-&lt;br /&gt;
| exists_on_disk || bool || true || фильтр по наличию на диске&lt;br /&gt;
|-&lt;br /&gt;
| limit || int || 50 || максимум 200&lt;br /&gt;
|-&lt;br /&gt;
| offset || int || 0 || смещение&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;total&amp;quot;:123,&lt;br /&gt;
  &amp;quot;limit&amp;quot;:50,&lt;br /&gt;
  &amp;quot;offset&amp;quot;:0,&lt;br /&gt;
  &amp;quot;files&amp;quot;:[&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;id&amp;quot;:1,&lt;br /&gt;
      &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
      &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
      &amp;quot;filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;original_filename&amp;quot;:&amp;quot;cat.png&amp;quot;,&lt;br /&gt;
      &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
      &amp;quot;created_at&amp;quot;:&amp;quot;2026-06-16T10:00:00&amp;quot;,&lt;br /&gt;
      &amp;quot;exists_on_disk&amp;quot;:true&lt;br /&gt;
    }&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/meta&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Метаданные файла: сведения из БД + проверка на диске.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (схема):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;db&amp;quot;:{&lt;br /&gt;
    &amp;quot;id&amp;quot;:1,&lt;br /&gt;
    &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
    &amp;quot;api_key_id&amp;quot;:10,&lt;br /&gt;
    &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
    &amp;quot;exists_on_disk&amp;quot;:true,&lt;br /&gt;
    &amp;quot;created_at&amp;quot;:&amp;quot;...&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;disk&amp;quot;:{&lt;br /&gt;
    &amp;quot;exists&amp;quot;:true,&lt;br /&gt;
    &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
    &amp;quot;mime_type&amp;quot;:&amp;quot;image/png&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — URL не CDN формата/не парсится&lt;br /&gt;
* 403 — нет доступа к домену&lt;br /&gt;
* 401 — нет ключа&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/exists&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Проверка существования файла (в БД и на диске).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;exists_in_db&amp;quot;:true,&amp;quot;exists_on_disk&amp;quot;:true}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/redirect&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Публичный редирект на CDN URL.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Query:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;?url=https://cdn.denchikp.com/...&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — если url не начинается с &amp;lt;code&amp;gt;https://cdn.denchikp.com/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Загрузка ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Загрузка файла (multipart/form-data).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Content-Type:&#039;&#039;&#039; &amp;lt;code&amp;gt;multipart/form-data&amp;lt;/code&amp;gt;  &lt;br /&gt;
&#039;&#039;&#039;Max size:&#039;&#039;&#039; 500 MB&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Form fields:&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Required !! Default !! Description&lt;br /&gt;
|-&lt;br /&gt;
| file || file || да || — || загружаемый файл&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || нет || &amp;quot;&amp;quot; || &amp;quot;&amp;quot; → public&lt;br /&gt;
|-&lt;br /&gt;
| name_mode || string || нет || uuid || uuid | original | custom&lt;br /&gt;
|-&lt;br /&gt;
| custom_filename || string || нет || &amp;quot;&amp;quot; || используется при name_mode=custom&lt;br /&gt;
|-&lt;br /&gt;
| conflict_action || string || нет || &amp;quot;&amp;quot; || overwrite → перезаписать (с проверками прав)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/...&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;:12345,&lt;br /&gt;
  &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;ip&amp;quot;:&amp;quot;1.2.3.4&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;...&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 409 (конфликт имени, если не overwrite):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;conflict&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;quot;FILE_EXISTS&amp;quot;,&lt;br /&gt;
  &amp;quot;requested_filename&amp;quot;:&amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;existing_url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки (частые):&#039;&#039;&#039;&lt;br /&gt;
* 403 — квота превышена / домен не разрешён / IP не разрешён / overwrite запрещён&lt;br /&gt;
* 413 — файл слишком большой&lt;br /&gt;
* 500 — внутренняя ошибка&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Пример (curl):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -X POST &amp;quot;https://cdnapi.denchikp.com/upload&amp;quot; \&lt;br /&gt;
  -H &amp;quot;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot; \&lt;br /&gt;
  -F &amp;quot;domain=public&amp;quot; \&lt;br /&gt;
  -F &amp;quot;name_mode=uuid&amp;quot; \&lt;br /&gt;
  -F &amp;quot;file=@./cat.png&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/by-url&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Сервер скачивает файл по ссылке и сохраняет в CDN.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;source_url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ограничения:&#039;&#039;&#039;&lt;br /&gt;
* только http/https&lt;br /&gt;
* SSRF‑защита: запрещено скачивать с private/loopback/link-local/reserved/multicast адресов&lt;br /&gt;
* max 500 MB&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/...&amp;quot;,&amp;quot;size&amp;quot;:12345,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;by_url&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Multipart Upload ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/start&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Создать multipart‑сессию.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;ext&amp;quot;:&amp;quot;mp4&amp;quot;,&lt;br /&gt;
  &amp;quot;mime_type&amp;quot;:&amp;quot;video/mp4&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;upload_id&amp;quot;:&amp;quot;&amp;lt;uuid&amp;gt;&amp;quot;,&amp;quot;chunk_size&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,191,36,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fbbf24;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;PUT&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/part/{part_no}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Загрузить часть файла (chunk).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Content-Type:&#039;&#039;&#039; &amp;lt;code&amp;gt;multipart/form-data&amp;lt;/code&amp;gt;  &lt;br /&gt;
Form-data:&lt;br /&gt;
* &amp;lt;code&amp;gt;file&amp;lt;/code&amp;gt; — chunk&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;part_no&amp;quot;:1,&amp;quot;bytes&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 404 — upload_id не найден&lt;br /&gt;
* 403 — upload_id принадлежит другому ключу (для не‑админов)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/complete&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Склеить части и создать итоговый файл.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — нет частей&lt;br /&gt;
* 413 — итоговый файл &amp;gt; 500MB&lt;br /&gt;
* 403 — квота/права&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;multipart&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/abort&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Отменить multipart‑сессию и удалить временные части.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Операции с файлами ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files/bulk-delete&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удалить много файлов за один запрос (до 500 URL).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;urls&amp;quot;:[&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&amp;quot;...&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;results&amp;quot;:[&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;},&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;error&amp;quot;,&amp;quot;error&amp;quot;:&amp;quot;...&amp;quot;}&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;BULK_DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Перемещение/переименование файла (можно менять домен/папку/имя).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;new_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;new_folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;new_filename&amp;quot;:&amp;quot;b.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Правила:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;new_folder&amp;lt;/code&amp;gt; должен быть одним из: img/css/js/fonts/files&lt;br /&gt;
* &amp;lt;code&amp;gt;new_filename&amp;lt;/code&amp;gt; не должен содержать &amp;lt;code&amp;gt;..&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;from&amp;quot;:&amp;quot;https://.../a.png&amp;quot;,&amp;quot;to&amp;quot;:&amp;quot;https://.../b.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_MOVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/rename&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Переименовать файл (alias для &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt;, но меняется только имя).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;new_filename&amp;quot;:&amp;quot;b.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — &amp;lt;code&amp;gt;new_filename&amp;lt;/code&amp;gt; обязателен&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/copy&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Копирование файла (квоты учитываются как новая загрузка).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;target_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;target_folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;target_filename&amp;quot;:&amp;quot;copy.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/copy.png&amp;quot;,&amp;quot;size&amp;quot;:12345}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_COPY&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/hash&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Посчитать хэш файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.bin&amp;quot;,&amp;quot;algo&amp;quot;:&amp;quot;sha256&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;algo&amp;lt;/code&amp;gt;: sha256 | sha1 | md5&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;algo&amp;quot;:&amp;quot;sha256&amp;quot;,&amp;quot;hash&amp;quot;:&amp;quot;&amp;lt;hex&amp;gt;&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://...&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Browse / Folders / Download ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/browse&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Просмотр файлов на диске в домене.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&amp;quot;filter&amp;quot;:&amp;quot;cat&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Поля:&lt;br /&gt;
* &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt; — обязательно&lt;br /&gt;
* &amp;lt;code&amp;gt;folder&amp;lt;/code&amp;gt; — опционально&lt;br /&gt;
* &amp;lt;code&amp;gt;filter&amp;lt;/code&amp;gt; — подстрока в имени файла (опционально)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (схема):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;total_files&amp;quot;:2,&amp;quot;files&amp;quot;:[{&amp;quot;name&amp;quot;:&amp;quot;a.png&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;img/a.png&amp;quot;,&amp;quot;size&amp;quot;:12345,&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;}]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/folders/{domain}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список папок домена + агрегаты.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;total_files&amp;quot;:10,&lt;br /&gt;
  &amp;quot;total_size&amp;quot;:1234567,&lt;br /&gt;
  &amp;quot;folders&amp;quot;:[{&amp;quot;name&amp;quot;:&amp;quot;img&amp;quot;,&amp;quot;file_count&amp;quot;:5,&amp;quot;size&amp;quot;:1000000,&amp;quot;path&amp;quot;:&amp;quot;public/img&amp;quot;}]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/download/{domain}/{folder}/{filename:path}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Скачивание файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Важно:&#039;&#039;&#039;&lt;br /&gt;
хотя параметр &amp;lt;code&amp;gt;{filename:path}&amp;lt;/code&amp;gt; технически может содержать “/”, сервер отклонит имя, если в нём есть &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt; или &amp;lt;code&amp;gt;..&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
* бинарный поток (FileResponse), &amp;lt;code&amp;gt;application/octet-stream&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 404 — файл не найден&lt;br /&gt;
* 403 — нет доступа к домену&lt;br /&gt;
&lt;br /&gt;
== Validate URL ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/validate&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Валидация ссылки (http/https). Делает HEAD, при необходимости GET range 0-0, возвращает HTTP статус и заголовки.  &lt;br /&gt;
Если URL — CDN URL, дополнительно парсит &amp;lt;code&amp;gt;domain/folder/filename&amp;lt;/code&amp;gt; и проверяет наличие на диске.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (схема, укорочено):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;checked_by&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;,&lt;br /&gt;
  &amp;quot;is_valid_url&amp;quot;:true,&lt;br /&gt;
  &amp;quot;is_cdn_url&amp;quot;:false,&lt;br /&gt;
  &amp;quot;available&amp;quot;:true,&lt;br /&gt;
  &amp;quot;http_status&amp;quot;:200,&lt;br /&gt;
  &amp;quot;headers&amp;quot;:{&amp;quot;content_type&amp;quot;:&amp;quot;image/png&amp;quot;,&amp;quot;content_length&amp;quot;:&amp;quot;12345&amp;quot;,&amp;quot;last_modified&amp;quot;:null,&amp;quot;etag&amp;quot;:null,&amp;quot;server&amp;quot;:&amp;quot;nginx&amp;quot;},&lt;br /&gt;
  &amp;quot;file_info&amp;quot;:{&amp;quot;filename&amp;quot;:&amp;quot;file.png&amp;quot;,&amp;quot;extension&amp;quot;:&amp;quot;png&amp;quot;,&amp;quot;host&amp;quot;:&amp;quot;example.com&amp;quot;,&amp;quot;path&amp;quot;:&amp;quot;/file.png&amp;quot;},&lt;br /&gt;
  &amp;quot;cdn_info&amp;quot;:null,&lt;br /&gt;
  &amp;quot;error&amp;quot;:null&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Delete file ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/delete&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удаление файла по CDN URL.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;quot;Файл успешно удален&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;a.txt&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&lt;br /&gt;
  &amp;quot;owner&amp;quot;:&amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;ip&amp;quot;:&amp;quot;1.2.3.4&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== Text Editor (Read/Save) ==&lt;br /&gt;
&lt;br /&gt;
Только для “текстовых” файлов и ограничение по размеру: ≤ 2 MB.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/content&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Получить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;:&amp;quot;app.js&amp;quot;,&lt;br /&gt;
  &amp;quot;mime_type&amp;quot;:&amp;quot;application/javascript&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;:1200,&lt;br /&gt;
  &amp;quot;content&amp;quot;:&amp;quot;console.log(&#039;hi&#039;);\n&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 400 — файл не текстовый / &amp;gt;2MB / неподдерживаемая кодировка&lt;br /&gt;
* 404 — файл не найден&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/save&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Сохранить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;console.log(&#039;hi&#039;);\n&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;message&amp;quot;:&amp;quot;Файл успешно сохранен&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;,&amp;quot;filename&amp;quot;:&amp;quot;app.js&amp;quot;,&amp;quot;size&amp;quot;:1200}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_SAVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Webhooks (Reference) =&lt;br /&gt;
&lt;br /&gt;
Webhooks позволяют получать события от сервиса (UPLOAD/DELETE и т.д.) на ваш URL.&lt;br /&gt;
&lt;br /&gt;
== Создание / управление ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Создать webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Headers:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Body (JSON):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://example.com/hook&amp;quot;,&lt;br /&gt;
  &amp;quot;events&amp;quot;:[&amp;quot;UPLOAD&amp;quot;,&amp;quot;DELETE&amp;quot;],&lt;br /&gt;
  &amp;quot;secret&amp;quot;:&amp;quot;optional&amp;quot;,&lt;br /&gt;
  &amp;quot;enabled&amp;quot;:true&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;id&amp;quot;:123}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 401/403 — нет доступа&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Список webhooks текущего ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример):&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;webhooks&amp;quot;:[&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;id&amp;quot;:123,&lt;br /&gt;
      &amp;quot;url&amp;quot;:&amp;quot;https://example.com/hook&amp;quot;,&lt;br /&gt;
      &amp;quot;events&amp;quot;:[&amp;quot;UPLOAD&amp;quot;,&amp;quot;DELETE&amp;quot;],&lt;br /&gt;
      &amp;quot;enabled&amp;quot;:true,&lt;br /&gt;
      &amp;quot;created_at&amp;quot;:&amp;quot;2026-06-16T12:00:00&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks/{webhook_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удалить webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Path params:&#039;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;webhook_id&amp;lt;/code&amp;gt; — integer&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ошибки:&#039;&#039;&#039;&lt;br /&gt;
* 404 — webhook не найден (или не принадлежит ключу)&lt;br /&gt;
&lt;br /&gt;
== Delivery format ==&lt;br /&gt;
&lt;br /&gt;
Сервер отправляет на URL webhook’а запрос:&lt;br /&gt;
* Method: POST&lt;br /&gt;
* Content-Type: application/json&lt;br /&gt;
* Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;event&amp;quot;:&amp;quot;UPLOAD&amp;quot;,&amp;quot;payload&amp;quot;:{...}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== События ==&lt;br /&gt;
События, которые реально используются в текущем коде:&lt;br /&gt;
* &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;BULK_DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;FILE_MOVE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;FILE_COPY&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;FILE_SAVE&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;SCAN_FINISHED&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Подпись (HMAC) ==&lt;br /&gt;
Если у webhook задан &amp;lt;code&amp;gt;secret&amp;lt;/code&amp;gt; и на сервере включена подпись, рекомендуется добавлять:&lt;br /&gt;
&lt;br /&gt;
Headers:&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Event: &amp;amp;lt;EVENT&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Timestamp: &amp;amp;lt;unix_seconds&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Signature: sha256=&amp;amp;lt;hex&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Алгоритм:&lt;br /&gt;
* base = &amp;lt;code&amp;gt;{timestamp}.{raw_body}&amp;lt;/code&amp;gt;&lt;br /&gt;
* signature = &amp;lt;code&amp;gt;HMAC_SHA256(secret, base)&amp;lt;/code&amp;gt; (hex)&lt;br /&gt;
* получатель проверяет подпись и свежесть timestamp (например ±300 секунд)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; в текущем коде поле &amp;lt;code&amp;gt;secret&amp;lt;/code&amp;gt; хранится, но подпись нужно добавить отдельным патчем (если ещё не добавлено).&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=356</id>
		<title>CDN:API Docs</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=356"/>
		<updated>2026-06-17T00:21:09Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DP‑CDN‑API (v4.4.1) =&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Обзор ==&lt;br /&gt;
&#039;&#039;&#039;Base URL:&#039;&#039;&#039; https://cdnapi.denchikp.com&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;CDN URL файлов:&#039;&#039;&#039; https://cdn.denchikp.com/&amp;amp;lt;domain&amp;amp;gt;/&amp;amp;lt;folder&amp;amp;gt;/&amp;amp;lt;filename&amp;amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Rate limits:&#039;&#039;&#039; не применяются (не реализованы)&lt;br /&gt;
&lt;br /&gt;
DP‑CDN‑API — API для загрузки/удаления/просмотра файлов в CDN, управления квотами, вебхуками, статистикой и админ‑операциями. Также есть внутренние эндпоинты для Discord‑бота.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Важно:&#039;&#039; не публикуйте реальные API‑ключи. Если ключ попал в публичный доступ — выполните ротацию ключа (см. Admin → Rotate).&lt;br /&gt;
&lt;br /&gt;
== Термины и ограничения ==&lt;br /&gt;
&lt;br /&gt;
=== Домен (domain) ===&lt;br /&gt;
* Если &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt; пустой или не передан — используется &amp;lt;code&amp;gt;public&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Разрешён только основной домен: ровно одна точка (пример: &amp;lt;code&amp;gt;example.com&amp;lt;/code&amp;gt;). Поддомены запрещены.&lt;br /&gt;
* Запрещены символы/паттерны: &amp;lt;code&amp;gt;..&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Значение &amp;lt;code&amp;gt;public&amp;lt;/code&amp;gt; разрешено.&lt;br /&gt;
&lt;br /&gt;
=== Папка (folder) ===&lt;br /&gt;
Допустимые папки (строго):&lt;br /&gt;
* &amp;lt;code&amp;gt;img&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;css&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;js&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;fonts&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;files&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Лимиты ===&lt;br /&gt;
* Максимальный размер одного файла: 500 MB&lt;br /&gt;
* Предпросмотр/редактор текста: максимум 2 MB&lt;br /&gt;
* Bulk delete: максимум 500 URL за запрос&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /files&amp;lt;/code&amp;gt;: &amp;lt;code&amp;gt;limit&amp;lt;/code&amp;gt; максимум 200&lt;br /&gt;
&lt;br /&gt;
== Аутентификация (Security) ==&lt;br /&gt;
&lt;br /&gt;
=== API Key (основной способ) ===&lt;br /&gt;
Передавайте ключ в заголовке:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header !! Тип !! Обязательно !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| X-Api-Key || string || да* || API‑ключ клиента&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; часть эндпоинтов может работать через cookie‑сессию (OAuth/CDN login), но для API‑интеграций рекомендуется всегда использовать &amp;lt;code&amp;gt;X-Api-Key&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Ограничения ключа ===&lt;br /&gt;
* &amp;lt;code&amp;gt;enabled=false&amp;lt;/code&amp;gt; → 403&lt;br /&gt;
* IP allowlist: если у ключа задан список IP, запросы разрешены только с этих IP (используется &amp;lt;code&amp;gt;request.client.host&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Domain allowlist: если задан список доменов — доступ только к ним (и/или &amp;lt;code&amp;gt;public&amp;lt;/code&amp;gt;, если он в списке)&lt;br /&gt;
* &amp;lt;code&amp;gt;is_admin=true&amp;lt;/code&amp;gt;: доступ к админ‑эндпоинтам, SSE и админ‑статистике&lt;br /&gt;
&lt;br /&gt;
=== Cookie‑сессии (для браузера) ===&lt;br /&gt;
Cookie‑сессия создаётся после:&lt;br /&gt;
* OAuth: &amp;lt;code&amp;gt;/auth/google&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/discord&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/github&amp;lt;/code&amp;gt; (+ callback)&lt;br /&gt;
* CDN login по ключу: &amp;lt;code&amp;gt;/auth/cdn/login&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если OAuth‑аккаунт привязан к API‑ключу (&amp;lt;code&amp;gt;/auth/bind-api-key&amp;lt;/code&amp;gt;), ключ может резолвиться из сессии без заголовка.&lt;br /&gt;
&lt;br /&gt;
=== Bot token (внутреннее API для Discord‑бота) ===&lt;br /&gt;
Все эндпоинты &amp;lt;code&amp;gt;/bot/*&amp;lt;/code&amp;gt; требуют заголовок:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header !! Обязательно !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| X-Bot-Token || да || должен совпадать с DISCORD_BOT_INTERNAL_TOKEN на сервере&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Права и квоты ==&lt;br /&gt;
&lt;br /&gt;
=== Админ‑доступ (is_admin) ===&lt;br /&gt;
Только админам:&lt;br /&gt;
* &amp;lt;code&amp;gt;/admin/*&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;/events&amp;lt;/code&amp;gt; (SSE)&lt;br /&gt;
* большинство &amp;lt;code&amp;gt;/stats/*&amp;lt;/code&amp;gt; (кроме публичной сводки)&lt;br /&gt;
&lt;br /&gt;
=== Квоты (для не‑админов) ===&lt;br /&gt;
Квоты применяются к операциям загрузки/копирования:&lt;br /&gt;
* &amp;lt;code&amp;gt;max_file_bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_total_bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_total_files&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_monthly_upload_bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_monthly_upload_files&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Эндпоинты квот/использования:&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /quota&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /usage&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Админ меняет квоты:&lt;br /&gt;
* &amp;lt;code&amp;gt;PUT /admin/api-keys/{api_key_id}/quota&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ошибки (Errors) ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Код !! Значение&lt;br /&gt;
|-&lt;br /&gt;
| 400 || Некорректные параметры / URL / имя файла / папка&lt;br /&gt;
|-&lt;br /&gt;
| 401 || Нет ключа (и нет валидной сессии)&lt;br /&gt;
|-&lt;br /&gt;
| 403 || Запрещено: ключ отключен / IP не разрешён / домен не разрешён / не админ / квоты&lt;br /&gt;
|-&lt;br /&gt;
| 404 || Не найдено (файл, upload_id, webhook, ключ, запись)&lt;br /&gt;
|-&lt;br /&gt;
| 409 || Конфликт имени файла (если не overwrite)&lt;br /&gt;
|-&lt;br /&gt;
| 413 || Слишком большой файл&lt;br /&gt;
|-&lt;br /&gt;
| 500 || Внутренняя ошибка&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
FastAPI обычно возвращает:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;detail&amp;quot;:&amp;quot;...&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Пример конфликта при загрузке (409):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;conflict&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;: &amp;quot;FILE_EXISTS&amp;quot;,&lt;br /&gt;
  &amp;quot;requested_filename&amp;quot;: &amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;existing_url&amp;quot;: &amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;: &amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;: &amp;quot;img&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Monitoring =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/healthz&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверка «жив».&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/readyz&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверка готовности: MySQL + BASE_PATH + свободное место.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ready&amp;quot;,&lt;br /&gt;
  &amp;quot;mysql&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;storage&amp;quot;: {&lt;br /&gt;
    &amp;quot;free_bytes&amp;quot;: 123,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;: 456&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/version&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Версия сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;service&amp;quot;: &amp;quot;DP-CDN-API&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;4.4.0&amp;quot;,&lt;br /&gt;
  &amp;quot;time&amp;quot;: &amp;quot;2026-06-16T12:00:00&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/status&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Сводка состояния API+CDN (файлы/размер/домены, версия API).&lt;br /&gt;
&lt;br /&gt;
= CDN Core =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/api-key/me&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Информация о текущем ключе.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; &amp;lt;code&amp;gt;X-Api-Key&amp;lt;/code&amp;gt; или cookie‑сессия&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;key&amp;quot;: {&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;ClientName&amp;quot;,&lt;br /&gt;
    &amp;quot;is_admin&amp;quot;: false,&lt;br /&gt;
    &amp;quot;domains&amp;quot;: [&amp;quot;public&amp;quot;],&lt;br /&gt;
    &amp;quot;ips&amp;quot;: [&amp;quot;1.2.3.4&amp;quot;]&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/domains&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Доступные домены для ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;allowlist&amp;quot;,&amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;,&amp;quot;example.com&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/usage&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Текущее использование (без лимитов).&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/quota&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Квота и текущее использование (usage + remaining).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;api_key_name&amp;quot;: &amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;is_admin&amp;quot;: false,&lt;br /&gt;
  &amp;quot;quota&amp;quot;: {&lt;br /&gt;
    &amp;quot;max_file_bytes&amp;quot;: 524288000,&lt;br /&gt;
    &amp;quot;max_total_bytes&amp;quot;: 10737418240,&lt;br /&gt;
    &amp;quot;max_total_files&amp;quot;: 50000,&lt;br /&gt;
    &amp;quot;max_monthly_upload_bytes&amp;quot;: 5368709120,&lt;br /&gt;
    &amp;quot;max_monthly_upload_files&amp;quot;: null&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;usage&amp;quot;: {&lt;br /&gt;
    &amp;quot;total_files&amp;quot;: 120,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;: 123456789,&lt;br /&gt;
    &amp;quot;month&amp;quot;: &amp;quot;2026-06&amp;quot;,&lt;br /&gt;
    &amp;quot;monthly_uploaded_files&amp;quot;: 10,&lt;br /&gt;
    &amp;quot;monthly_uploaded_bytes&amp;quot;: 12300000&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;remaining&amp;quot;: {&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;: 10000000000,&lt;br /&gt;
    &amp;quot;total_files&amp;quot;: 49880,&lt;br /&gt;
    &amp;quot;monthly_upload_bytes&amp;quot;: 5300000000,&lt;br /&gt;
    &amp;quot;monthly_upload_files&amp;quot;: null&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Files (DB / Meta) =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Список «моих» файлов из БД (с пагинацией).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
Query parameters:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Name !! Type !! Default !! Description&lt;br /&gt;
|-&lt;br /&gt;
| q || string || || поиск по filename/original_filename (LIKE)&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || || фильтр домена (нормализуется)&lt;br /&gt;
|-&lt;br /&gt;
| folder || string || || фильтр папки&lt;br /&gt;
|-&lt;br /&gt;
| ext || string || || расширение&lt;br /&gt;
|-&lt;br /&gt;
| exists_on_disk || bool || true || фильтр по наличию на диске&lt;br /&gt;
|-&lt;br /&gt;
| limit || int || 50 || max 200&lt;br /&gt;
|-&lt;br /&gt;
| offset || int || 0 || смещение&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;total&amp;quot;: 123,&lt;br /&gt;
  &amp;quot;limit&amp;quot;: 50,&lt;br /&gt;
  &amp;quot;offset&amp;quot;: 0,&lt;br /&gt;
  &amp;quot;files&amp;quot;: [&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;id&amp;quot;: 1,&lt;br /&gt;
      &amp;quot;domain&amp;quot;: &amp;quot;public&amp;quot;,&lt;br /&gt;
      &amp;quot;folder&amp;quot;: &amp;quot;img&amp;quot;,&lt;br /&gt;
      &amp;quot;filename&amp;quot;: &amp;quot;a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;original_filename&amp;quot;: &amp;quot;cat.png&amp;quot;,&lt;br /&gt;
      &amp;quot;url&amp;quot;: &amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;size&amp;quot;: 12345,&lt;br /&gt;
      &amp;quot;created_at&amp;quot;: &amp;quot;2026-06-16T10:00:00&amp;quot;,&lt;br /&gt;
      &amp;quot;exists_on_disk&amp;quot;: true&lt;br /&gt;
    }&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/meta&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Метаданные файла (диск + БД).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/exists&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверка существования файла (в БД и на диске).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;exists_in_db&amp;quot;:true,&amp;quot;exists_on_disk&amp;quot;:true}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/redirect&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Публичный редирект на CDN URL.&lt;br /&gt;
&lt;br /&gt;
Query:&lt;br /&gt;
* &amp;lt;code&amp;gt;?url=https://cdn.denchikp.com/...&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Upload =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Загрузка файла (multipart/form-data).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
&#039;&#039;&#039;Max size:&#039;&#039;&#039; 500 MB&lt;br /&gt;
&lt;br /&gt;
Form fields:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Required !! Description&lt;br /&gt;
|-&lt;br /&gt;
| file || file || да || загружаемый файл&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || нет || &amp;quot;&amp;quot; → public&lt;br /&gt;
|-&lt;br /&gt;
| name_mode || string || нет || uuid | original | custom&lt;br /&gt;
|-&lt;br /&gt;
| custom_filename || string || нет || используется при name_mode=custom&lt;br /&gt;
|-&lt;br /&gt;
| conflict_action || string || нет || overwrite → перезаписать (с проверками прав)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -X POST &amp;quot;https://cdnapi.denchikp.com/upload&amp;quot; \&lt;br /&gt;
  -H &amp;quot;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot; \&lt;br /&gt;
  -F &amp;quot;domain=public&amp;quot; \&lt;br /&gt;
  -F &amp;quot;name_mode=uuid&amp;quot; \&lt;br /&gt;
  -F &amp;quot;file=@./cat.png&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;: &amp;quot;https://cdn.denchikp.com/public/img/...&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;: 12345,&lt;br /&gt;
  &amp;quot;owner&amp;quot;: &amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;ip&amp;quot;: &amp;quot;1.2.3.4&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;: &amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;: &amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;: &amp;quot;...&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 409 (конфликт)&#039;&#039;&#039; — см. раздел Ошибки.&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/by-url&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Сервер скачивает файл по URL и кладёт в CDN.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;source_url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ограничения:&lt;br /&gt;
* только http/https&lt;br /&gt;
* SSRF защита: запрещены private/loopback/link-local/reserved адреса&lt;br /&gt;
* max 500 MB&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;by_url&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
= Multipart Upload =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/start&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Создать multipart‑сессию.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;ext&amp;quot;:&amp;quot;mp4&amp;quot;,&amp;quot;mime_type&amp;quot;:&amp;quot;video/mp4&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;upload_id&amp;quot;:&amp;quot;&amp;amp;lt;uuid&amp;amp;gt;&amp;quot;,&amp;quot;chunk_size&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,191,36,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fbbf24;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;PUT&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/part/{part_no}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Загрузка части (multipart/form-data).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Form-data:&lt;br /&gt;
* &amp;lt;code&amp;gt;file&amp;lt;/code&amp;gt; — chunk&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;part_no&amp;quot;:1,&amp;quot;bytes&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/complete&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Склеивает части, создаёт итоговый файл, проверяет квоты и max size.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;multipart&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/abort&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Отмена/очистка multipart‑сессии.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
= File Operations =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files/bulk-delete&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Удалить множество файлов (до 500 URL).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;urls&amp;quot;:[&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&amp;quot;...&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;results&amp;quot;: [&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;},&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/b.txt&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;error&amp;quot;,&amp;quot;error&amp;quot;:&amp;quot;...&amp;quot;}&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;BULK_DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Перемещение файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;new_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;new_folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;new_filename&amp;quot;:&amp;quot;b.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_MOVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/rename&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Alias для &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt;. Требует &amp;lt;code&amp;gt;new_filename&amp;lt;/code&amp;gt;, домен/папка не меняются.&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/copy&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Копирование файла (учитывает квоты как новая загрузка).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;target_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;target_folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;target_filename&amp;quot;:&amp;quot;copy.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_COPY&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/hash&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Хэш файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.bin&amp;quot;,&amp;quot;algo&amp;quot;:&amp;quot;sha256&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Поддерживаемые алгоритмы: &amp;lt;code&amp;gt;sha256&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sha1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;md5&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Browse / Folders / Download =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/browse&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Просмотр файлов на диске в домене.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&amp;quot;filter&amp;quot;:&amp;quot;cat&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/folders/{domain}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Возвращает папки домена и агрегаты (кол-во файлов/размер).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/download/{domain}/{folder}/{filename:path}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Скачать файл (FileResponse).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Response: бинарный поток (application/octet-stream)&lt;br /&gt;
&lt;br /&gt;
= Validate URL =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/validate&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверяет URL (http/https), выполняет HEAD/GET и возвращает заголовки.  &lt;br /&gt;
Если URL — CDN URL, дополнительно парсит &amp;lt;code&amp;gt;domain/folder/filename&amp;lt;/code&amp;gt; и проверяет наличие на диске.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Delete file =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/delete&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Удалить файл по CDN URL.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
= Text Editor (Read/Save) =&lt;br /&gt;
&lt;br /&gt;
Условия:&lt;br /&gt;
* только «текстовые» расширения/MIME&lt;br /&gt;
* размер файла ≤ 2 MB&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/content&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Получить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/save&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Сохранить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;console.log(&#039;hi&#039;);\n&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_SAVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Webhooks =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Создать webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://example.com/hook&amp;quot;,&lt;br /&gt;
  &amp;quot;events&amp;quot;:[&amp;quot;UPLOAD&amp;quot;,&amp;quot;DELETE&amp;quot;],&lt;br /&gt;
  &amp;quot;secret&amp;quot;:&amp;quot;optional&amp;quot;,&lt;br /&gt;
  &amp;quot;enabled&amp;quot;:true&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Список webhooks текущего ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks/{webhook_id}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Удалить webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
== Формат доставки ==&lt;br /&gt;
На URL вебхука отправляется POST JSON:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;event&amp;quot;:&amp;quot;UPLOAD&amp;quot;,&amp;quot;payload&amp;quot;:{...}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== События ==&lt;br /&gt;
* UPLOAD&lt;br /&gt;
* DELETE&lt;br /&gt;
* BULK_DELETE&lt;br /&gt;
* FILE_MOVE&lt;br /&gt;
* FILE_COPY&lt;br /&gt;
* FILE_SAVE&lt;br /&gt;
* SCAN_FINISHED&lt;br /&gt;
&lt;br /&gt;
== Подпись (HMAC) ==&lt;br /&gt;
Если на сервере включена подпись и у webhook задан &amp;lt;code&amp;gt;secret&amp;lt;/code&amp;gt;, рекомендуется отправлять:&lt;br /&gt;
&lt;br /&gt;
Headers:&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Event: UPLOAD&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Timestamp: 1718550000&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Signature: sha256=&amp;amp;lt;hex&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Алгоритм:&lt;br /&gt;
* base = &amp;lt;code&amp;gt;{timestamp}.{raw_body}&amp;lt;/code&amp;gt;&lt;br /&gt;
* signature = &amp;lt;code&amp;gt;HMAC_SHA256(secret, base)&amp;lt;/code&amp;gt; (hex)&lt;br /&gt;
* получатель проверяет подпись и свежесть timestamp (например ±300 секунд)&lt;br /&gt;
&lt;br /&gt;
= Admin =&lt;br /&gt;
&lt;br /&gt;
Все admin endpoints требуют &amp;lt;code&amp;gt;is_admin=true&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Scan ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /admin/scan/start&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /admin/scan/status&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;SCAN_FINISHED&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== API Keys ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Query: &amp;lt;code&amp;gt;show_full=false&amp;lt;/code&amp;gt; (если true — вернёт ключи полностью)&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;:&amp;quot;Client&amp;quot;,&lt;br /&gt;
  &amp;quot;enabled&amp;quot;:true,&lt;br /&gt;
  &amp;quot;is_admin&amp;quot;:false,&lt;br /&gt;
  &amp;quot;ips&amp;quot;:[&amp;quot;1.2.3.4&amp;quot;],&lt;br /&gt;
  &amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(196,181,253,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#c4b5fd;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;PATCH&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys/{api_key_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;name&amp;quot;:&amp;quot;NewName&amp;quot;,&amp;quot;enabled&amp;quot;:true,&amp;quot;is_admin&amp;quot;:false}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys/{api_key_id}/rotate&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Ротация ключа.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys/{api_key_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удаление ключа.&lt;br /&gt;
&lt;br /&gt;
=== IP allowlist ===&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /admin/api-keys/{api_key_id}/ips&amp;lt;/code&amp;gt; body: &amp;lt;code&amp;gt;{&amp;quot;value&amp;quot;:&amp;quot;1.2.3.4&amp;quot;}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE /admin/api-keys/{api_key_id}/ips/{ip}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Domain allowlist ===&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /admin/api-keys/{api_key_id}/domains&amp;lt;/code&amp;gt; body: &amp;lt;code&amp;gt;{&amp;quot;value&amp;quot;:&amp;quot;example.com&amp;quot;}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE /admin/api-keys/{api_key_id}/domains/{domain}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Quota ===&lt;br /&gt;
&amp;lt;code&amp;gt;PUT /admin/api-keys/{api_key_id}/quota&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;max_file_bytes&amp;quot;: 524288000,&lt;br /&gt;
  &amp;quot;max_total_bytes&amp;quot;: 10737418240,&lt;br /&gt;
  &amp;quot;max_total_files&amp;quot;: 50000,&lt;br /&gt;
  &amp;quot;max_monthly_upload_bytes&amp;quot;: 5368709120,&lt;br /&gt;
  &amp;quot;max_monthly_upload_files&amp;quot;: null&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Admin: Files / Logs / SSE ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/files&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Query: &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;owner&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;exists_on_disk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/logs&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Query: &amp;lt;code&amp;gt;action&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;level&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;owner&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;limit&amp;lt;/code&amp;gt; (≤1000)&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/events&amp;lt;/code&amp;gt; (SSE) ===&lt;br /&gt;
Поток &amp;lt;code&amp;gt;text/event-stream&amp;lt;/code&amp;gt;, event: &amp;lt;code&amp;gt;cdn_log&amp;lt;/code&amp;gt;.  &lt;br /&gt;
Query: &amp;lt;code&amp;gt;last_id=0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Stats =&lt;br /&gt;
&lt;br /&gt;
== Public ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/stats/public-summary&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Публичная краткая статистика (без ключа).&lt;br /&gt;
&lt;br /&gt;
== Admin (is_admin) ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /stats&amp;lt;/code&amp;gt; — детальная статистика + графики (base64 PNG data URL)&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/summary&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/domains&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/realtime&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/top-files?period=month&amp;amp;amp;by=downloads|size&amp;amp;amp;limit=50&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/export?period=month&amp;amp;amp;kind=uploads|downloads|deletions|browses&amp;amp;amp;format=csv&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание по реализации:&#039;&#039; часть статистики берётся из MySQL таблиц (uploads/downloads/deletions/browses + files), часть — из SQLite файла &amp;lt;code&amp;gt;cdn_stats.db&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Auth (sessions) =&lt;br /&gt;
&lt;br /&gt;
== OAuth redirects/callbacks ==&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /auth/google&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/google/callback&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /auth/discord&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/discord/callback&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /auth/github&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/github/callback&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CDN session login ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/cdn/login&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;api_key&amp;quot;:&amp;quot;&amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/cdn/logout&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Выход из CDN‑сессии.&lt;br /&gt;
&lt;br /&gt;
== Current session ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/me&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Возвращает текущую активную сессию (cdn/google/discord/github) и информацию о привязанном ключе (если есть).&lt;br /&gt;
&lt;br /&gt;
== Bind/unbind API key ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/bind-api-key&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;api_key&amp;quot;:&amp;quot;&amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Требуется активная OAuth‑сессия (google/discord/github).&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/unbind-api-key&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Отвязка ключа от текущей OAuth‑сессии.&lt;br /&gt;
&lt;br /&gt;
== Logout ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/logout&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Выход из любой активной сессии (очистка cookie‑состояния).&lt;br /&gt;
&lt;br /&gt;
= Bot (internal) =&lt;br /&gt;
&lt;br /&gt;
Все &amp;lt;code&amp;gt;/bot/*&amp;lt;/code&amp;gt; требуют &amp;lt;code&amp;gt;X-Bot-Token&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Discord binding ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/discord/bind&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/discord/unbind&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/discord/me/{discord_id}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bot files ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/upload&amp;lt;/code&amp;gt; (multipart/form-data: discord_id, file, domain, name_mode, custom_filename, conflict_action)&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE /bot/delete&amp;lt;/code&amp;gt; body: &amp;lt;code&amp;gt;{&amp;quot;discord_id&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/...&amp;quot;}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/download/{discord_id}/{domain}/{folder}/{filename:path}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/browse&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/folders/{discord_id}/{domain}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/validate&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/file/content&amp;lt;/code&amp;gt; (только текст, ≤2MB)&lt;br /&gt;
&lt;br /&gt;
== Bot stats ==&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/public-summary&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/stats/{discord_id}&amp;lt;/code&amp;gt; (только если привязанный ключ is_admin=true)&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=355</id>
		<title>CDN:API Docs</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:API_Docs&amp;diff=355"/>
		<updated>2026-06-17T00:20:54Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= DP‑CDN‑API (v4.4.0) = __TOC__  == Обзор == &amp;#039;&amp;#039;&amp;#039;Base URL:&amp;#039;&amp;#039;&amp;#039; https://cdnapi.denchikp.com&amp;lt;br&amp;gt; &amp;#039;&amp;#039;&amp;#039;CDN URL файлов:&amp;#039;&amp;#039;&amp;#039; https://cdn.denchikp.com/&amp;amp;lt;domain&amp;amp;gt;/&amp;amp;lt;folder&amp;amp;gt;/&amp;amp;lt;filename&amp;amp;gt;&amp;lt;br&amp;gt; &amp;#039;&amp;#039;&amp;#039;Rate limits:&amp;#039;&amp;#039;&amp;#039; не применяются (не реализованы)  DP‑CDN‑API — API для загрузки/удаления/просмотра файлов в CDN, управления квотами, вебхуками, статисти...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DP‑CDN‑API (v4.4.0) =&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Обзор ==&lt;br /&gt;
&#039;&#039;&#039;Base URL:&#039;&#039;&#039; https://cdnapi.denchikp.com&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;CDN URL файлов:&#039;&#039;&#039; https://cdn.denchikp.com/&amp;amp;lt;domain&amp;amp;gt;/&amp;amp;lt;folder&amp;amp;gt;/&amp;amp;lt;filename&amp;amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Rate limits:&#039;&#039;&#039; не применяются (не реализованы)&lt;br /&gt;
&lt;br /&gt;
DP‑CDN‑API — API для загрузки/удаления/просмотра файлов в CDN, управления квотами, вебхуками, статистикой и админ‑операциями. Также есть внутренние эндпоинты для Discord‑бота.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Важно:&#039;&#039; не публикуйте реальные API‑ключи. Если ключ попал в публичный доступ — выполните ротацию ключа (см. Admin → Rotate).&lt;br /&gt;
&lt;br /&gt;
== Термины и ограничения ==&lt;br /&gt;
&lt;br /&gt;
=== Домен (domain) ===&lt;br /&gt;
* Если &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt; пустой или не передан — используется &amp;lt;code&amp;gt;public&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Разрешён только основной домен: ровно одна точка (пример: &amp;lt;code&amp;gt;example.com&amp;lt;/code&amp;gt;). Поддомены запрещены.&lt;br /&gt;
* Запрещены символы/паттерны: &amp;lt;code&amp;gt;..&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Значение &amp;lt;code&amp;gt;public&amp;lt;/code&amp;gt; разрешено.&lt;br /&gt;
&lt;br /&gt;
=== Папка (folder) ===&lt;br /&gt;
Допустимые папки (строго):&lt;br /&gt;
* &amp;lt;code&amp;gt;img&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;css&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;js&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;fonts&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;files&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Лимиты ===&lt;br /&gt;
* Максимальный размер одного файла: 500 MB&lt;br /&gt;
* Предпросмотр/редактор текста: максимум 2 MB&lt;br /&gt;
* Bulk delete: максимум 500 URL за запрос&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /files&amp;lt;/code&amp;gt;: &amp;lt;code&amp;gt;limit&amp;lt;/code&amp;gt; максимум 200&lt;br /&gt;
&lt;br /&gt;
== Аутентификация (Security) ==&lt;br /&gt;
&lt;br /&gt;
=== API Key (основной способ) ===&lt;br /&gt;
Передавайте ключ в заголовке:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header !! Тип !! Обязательно !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| X-Api-Key || string || да* || API‑ключ клиента&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; часть эндпоинтов может работать через cookie‑сессию (OAuth/CDN login), но для API‑интеграций рекомендуется всегда использовать &amp;lt;code&amp;gt;X-Api-Key&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Ограничения ключа ===&lt;br /&gt;
* &amp;lt;code&amp;gt;enabled=false&amp;lt;/code&amp;gt; → 403&lt;br /&gt;
* IP allowlist: если у ключа задан список IP, запросы разрешены только с этих IP (используется &amp;lt;code&amp;gt;request.client.host&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Domain allowlist: если задан список доменов — доступ только к ним (и/или &amp;lt;code&amp;gt;public&amp;lt;/code&amp;gt;, если он в списке)&lt;br /&gt;
* &amp;lt;code&amp;gt;is_admin=true&amp;lt;/code&amp;gt;: доступ к админ‑эндпоинтам, SSE и админ‑статистике&lt;br /&gt;
&lt;br /&gt;
=== Cookie‑сессии (для браузера) ===&lt;br /&gt;
Cookie‑сессия создаётся после:&lt;br /&gt;
* OAuth: &amp;lt;code&amp;gt;/auth/google&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/discord&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/github&amp;lt;/code&amp;gt; (+ callback)&lt;br /&gt;
* CDN login по ключу: &amp;lt;code&amp;gt;/auth/cdn/login&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если OAuth‑аккаунт привязан к API‑ключу (&amp;lt;code&amp;gt;/auth/bind-api-key&amp;lt;/code&amp;gt;), ключ может резолвиться из сессии без заголовка.&lt;br /&gt;
&lt;br /&gt;
=== Bot token (внутреннее API для Discord‑бота) ===&lt;br /&gt;
Все эндпоинты &amp;lt;code&amp;gt;/bot/*&amp;lt;/code&amp;gt; требуют заголовок:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header !! Обязательно !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| X-Bot-Token || да || должен совпадать с DISCORD_BOT_INTERNAL_TOKEN на сервере&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Права и квоты ==&lt;br /&gt;
&lt;br /&gt;
=== Админ‑доступ (is_admin) ===&lt;br /&gt;
Только админам:&lt;br /&gt;
* &amp;lt;code&amp;gt;/admin/*&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;/events&amp;lt;/code&amp;gt; (SSE)&lt;br /&gt;
* большинство &amp;lt;code&amp;gt;/stats/*&amp;lt;/code&amp;gt; (кроме публичной сводки)&lt;br /&gt;
&lt;br /&gt;
=== Квоты (для не‑админов) ===&lt;br /&gt;
Квоты применяются к операциям загрузки/копирования:&lt;br /&gt;
* &amp;lt;code&amp;gt;max_file_bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_total_bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_total_files&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_monthly_upload_bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;max_monthly_upload_files&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Эндпоинты квот/использования:&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /quota&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /usage&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Админ меняет квоты:&lt;br /&gt;
* &amp;lt;code&amp;gt;PUT /admin/api-keys/{api_key_id}/quota&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ошибки (Errors) ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Код !! Значение&lt;br /&gt;
|-&lt;br /&gt;
| 400 || Некорректные параметры / URL / имя файла / папка&lt;br /&gt;
|-&lt;br /&gt;
| 401 || Нет ключа (и нет валидной сессии)&lt;br /&gt;
|-&lt;br /&gt;
| 403 || Запрещено: ключ отключен / IP не разрешён / домен не разрешён / не админ / квоты&lt;br /&gt;
|-&lt;br /&gt;
| 404 || Не найдено (файл, upload_id, webhook, ключ, запись)&lt;br /&gt;
|-&lt;br /&gt;
| 409 || Конфликт имени файла (если не overwrite)&lt;br /&gt;
|-&lt;br /&gt;
| 413 || Слишком большой файл&lt;br /&gt;
|-&lt;br /&gt;
| 500 || Внутренняя ошибка&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
FastAPI обычно возвращает:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;detail&amp;quot;:&amp;quot;...&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Пример конфликта при загрузке (409):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;conflict&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;: &amp;quot;FILE_EXISTS&amp;quot;,&lt;br /&gt;
  &amp;quot;requested_filename&amp;quot;: &amp;quot;a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;existing_url&amp;quot;: &amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;: &amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;: &amp;quot;img&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Monitoring =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/healthz&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверка «жив».&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/readyz&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверка готовности: MySQL + BASE_PATH + свободное место.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ready&amp;quot;,&lt;br /&gt;
  &amp;quot;mysql&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;storage&amp;quot;: {&lt;br /&gt;
    &amp;quot;free_bytes&amp;quot;: 123,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;: 456&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/version&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Версия сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;service&amp;quot;: &amp;quot;DP-CDN-API&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;4.4.0&amp;quot;,&lt;br /&gt;
  &amp;quot;time&amp;quot;: &amp;quot;2026-06-16T12:00:00&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/status&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Сводка состояния API+CDN (файлы/размер/домены, версия API).&lt;br /&gt;
&lt;br /&gt;
= CDN Core =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/api-key/me&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Информация о текущем ключе.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; &amp;lt;code&amp;gt;X-Api-Key&amp;lt;/code&amp;gt; или cookie‑сессия&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;key&amp;quot;: {&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;ClientName&amp;quot;,&lt;br /&gt;
    &amp;quot;is_admin&amp;quot;: false,&lt;br /&gt;
    &amp;quot;domains&amp;quot;: [&amp;quot;public&amp;quot;],&lt;br /&gt;
    &amp;quot;ips&amp;quot;: [&amp;quot;1.2.3.4&amp;quot;]&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/domains&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Доступные домены для ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;mode&amp;quot;:&amp;quot;allowlist&amp;quot;,&amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;,&amp;quot;example.com&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/usage&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Текущее использование (без лимитов).&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/quota&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Квота и текущее использование (usage + remaining).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;api_key_name&amp;quot;: &amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;is_admin&amp;quot;: false,&lt;br /&gt;
  &amp;quot;quota&amp;quot;: {&lt;br /&gt;
    &amp;quot;max_file_bytes&amp;quot;: 524288000,&lt;br /&gt;
    &amp;quot;max_total_bytes&amp;quot;: 10737418240,&lt;br /&gt;
    &amp;quot;max_total_files&amp;quot;: 50000,&lt;br /&gt;
    &amp;quot;max_monthly_upload_bytes&amp;quot;: 5368709120,&lt;br /&gt;
    &amp;quot;max_monthly_upload_files&amp;quot;: null&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;usage&amp;quot;: {&lt;br /&gt;
    &amp;quot;total_files&amp;quot;: 120,&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;: 123456789,&lt;br /&gt;
    &amp;quot;month&amp;quot;: &amp;quot;2026-06&amp;quot;,&lt;br /&gt;
    &amp;quot;monthly_uploaded_files&amp;quot;: 10,&lt;br /&gt;
    &amp;quot;monthly_uploaded_bytes&amp;quot;: 12300000&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;remaining&amp;quot;: {&lt;br /&gt;
    &amp;quot;total_bytes&amp;quot;: 10000000000,&lt;br /&gt;
    &amp;quot;total_files&amp;quot;: 49880,&lt;br /&gt;
    &amp;quot;monthly_upload_bytes&amp;quot;: 5300000000,&lt;br /&gt;
    &amp;quot;monthly_upload_files&amp;quot;: null&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Files (DB / Meta) =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Список «моих» файлов из БД (с пагинацией).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
Query parameters:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Name !! Type !! Default !! Description&lt;br /&gt;
|-&lt;br /&gt;
| q || string || || поиск по filename/original_filename (LIKE)&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || || фильтр домена (нормализуется)&lt;br /&gt;
|-&lt;br /&gt;
| folder || string || || фильтр папки&lt;br /&gt;
|-&lt;br /&gt;
| ext || string || || расширение&lt;br /&gt;
|-&lt;br /&gt;
| exists_on_disk || bool || true || фильтр по наличию на диске&lt;br /&gt;
|-&lt;br /&gt;
| limit || int || 50 || max 200&lt;br /&gt;
|-&lt;br /&gt;
| offset || int || 0 || смещение&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;total&amp;quot;: 123,&lt;br /&gt;
  &amp;quot;limit&amp;quot;: 50,&lt;br /&gt;
  &amp;quot;offset&amp;quot;: 0,&lt;br /&gt;
  &amp;quot;files&amp;quot;: [&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;id&amp;quot;: 1,&lt;br /&gt;
      &amp;quot;domain&amp;quot;: &amp;quot;public&amp;quot;,&lt;br /&gt;
      &amp;quot;folder&amp;quot;: &amp;quot;img&amp;quot;,&lt;br /&gt;
      &amp;quot;filename&amp;quot;: &amp;quot;a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;original_filename&amp;quot;: &amp;quot;cat.png&amp;quot;,&lt;br /&gt;
      &amp;quot;url&amp;quot;: &amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
      &amp;quot;size&amp;quot;: 12345,&lt;br /&gt;
      &amp;quot;created_at&amp;quot;: &amp;quot;2026-06-16T10:00:00&amp;quot;,&lt;br /&gt;
      &amp;quot;exists_on_disk&amp;quot;: true&lt;br /&gt;
    }&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/meta&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Метаданные файла (диск + БД).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/exists&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверка существования файла (в БД и на диске).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;exists_in_db&amp;quot;:true,&amp;quot;exists_on_disk&amp;quot;:true}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/redirect&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Публичный редирект на CDN URL.&lt;br /&gt;
&lt;br /&gt;
Query:&lt;br /&gt;
* &amp;lt;code&amp;gt;?url=https://cdn.denchikp.com/...&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Upload =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Загрузка файла (multipart/form-data).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
&#039;&#039;&#039;Max size:&#039;&#039;&#039; 500 MB&lt;br /&gt;
&lt;br /&gt;
Form fields:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! Type !! Required !! Description&lt;br /&gt;
|-&lt;br /&gt;
| file || file || да || загружаемый файл&lt;br /&gt;
|-&lt;br /&gt;
| domain || string || нет || &amp;quot;&amp;quot; → public&lt;br /&gt;
|-&lt;br /&gt;
| name_mode || string || нет || uuid | original | custom&lt;br /&gt;
|-&lt;br /&gt;
| custom_filename || string || нет || используется при name_mode=custom&lt;br /&gt;
|-&lt;br /&gt;
| conflict_action || string || нет || overwrite → перезаписать (с проверками прав)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
curl -X POST &amp;quot;https://cdnapi.denchikp.com/upload&amp;quot; \&lt;br /&gt;
  -H &amp;quot;X-Api-Key: &amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot; \&lt;br /&gt;
  -F &amp;quot;domain=public&amp;quot; \&lt;br /&gt;
  -F &amp;quot;name_mode=uuid&amp;quot; \&lt;br /&gt;
  -F &amp;quot;file=@./cat.png&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;url&amp;quot;: &amp;quot;https://cdn.denchikp.com/public/img/...&amp;quot;,&lt;br /&gt;
  &amp;quot;size&amp;quot;: 12345,&lt;br /&gt;
  &amp;quot;owner&amp;quot;: &amp;quot;ClientName&amp;quot;,&lt;br /&gt;
  &amp;quot;ip&amp;quot;: &amp;quot;1.2.3.4&amp;quot;,&lt;br /&gt;
  &amp;quot;domain&amp;quot;: &amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;folder&amp;quot;: &amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;filename&amp;quot;: &amp;quot;...&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 409 (конфликт)&#039;&#039;&#039; — см. раздел Ошибки.&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/by-url&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Сервер скачивает файл по URL и кладёт в CDN.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;source_url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;,&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ограничения:&lt;br /&gt;
* только http/https&lt;br /&gt;
* SSRF защита: запрещены private/loopback/link-local/reserved адреса&lt;br /&gt;
* max 500 MB&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;by_url&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
= Multipart Upload =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/start&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Создать multipart‑сессию.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;ext&amp;quot;:&amp;quot;mp4&amp;quot;,&amp;quot;mime_type&amp;quot;:&amp;quot;video/mp4&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;files&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;upload_id&amp;quot;:&amp;quot;&amp;amp;lt;uuid&amp;amp;gt;&amp;quot;,&amp;quot;chunk_size&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,191,36,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fbbf24;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;PUT&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/part/{part_no}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Загрузка части (multipart/form-data).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Form-data:&lt;br /&gt;
* &amp;lt;code&amp;gt;file&amp;lt;/code&amp;gt; — chunk&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;part_no&amp;quot;:1,&amp;quot;bytes&amp;quot;:8388608}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/complete&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Склеивает части, создаёт итоговый файл, проверяет квоты и max size.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;UPLOAD&amp;lt;/code&amp;gt; (payload.source=&amp;quot;multipart&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/upload/session/{upload_id}/abort&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Отмена/очистка multipart‑сессии.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
= File Operations =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/files/bulk-delete&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Удалить множество файлов (до 500 URL).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;urls&amp;quot;:[&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&amp;quot;...&amp;quot;]}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Response 200 (пример)&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;status&amp;quot;: &amp;quot;ok&amp;quot;,&lt;br /&gt;
  &amp;quot;results&amp;quot;: [&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;},&lt;br /&gt;
    {&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/b.txt&amp;quot;,&amp;quot;status&amp;quot;:&amp;quot;error&amp;quot;,&amp;quot;error&amp;quot;:&amp;quot;...&amp;quot;}&lt;br /&gt;
  ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;BULK_DELETE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Перемещение файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;new_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;new_folder&amp;quot;:&amp;quot;files&amp;quot;,&lt;br /&gt;
  &amp;quot;new_filename&amp;quot;:&amp;quot;b.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_MOVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/rename&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Alias для &amp;lt;code&amp;gt;/file/move&amp;lt;/code&amp;gt;. Требует &amp;lt;code&amp;gt;new_filename&amp;lt;/code&amp;gt;, домен/папка не меняются.&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/copy&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Копирование файла (учитывает квоты как новая загрузка).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/img/a.png&amp;quot;,&lt;br /&gt;
  &amp;quot;target_domain&amp;quot;:&amp;quot;public&amp;quot;,&lt;br /&gt;
  &amp;quot;target_folder&amp;quot;:&amp;quot;img&amp;quot;,&lt;br /&gt;
  &amp;quot;target_filename&amp;quot;:&amp;quot;copy.png&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_COPY&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/hash&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Хэш файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.bin&amp;quot;,&amp;quot;algo&amp;quot;:&amp;quot;sha256&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Поддерживаемые алгоритмы: &amp;lt;code&amp;gt;sha256&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;sha1&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;md5&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Browse / Folders / Download =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/browse&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Просмотр файлов на диске в домене.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;domain&amp;quot;:&amp;quot;public&amp;quot;,&amp;quot;folder&amp;quot;:&amp;quot;img&amp;quot;,&amp;quot;filter&amp;quot;:&amp;quot;cat&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/folders/{domain}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Возвращает папки домена и агрегаты (кол-во файлов/размер).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/download/{domain}/{folder}/{filename:path}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Скачать файл (FileResponse).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Response: бинарный поток (application/octet-stream)&lt;br /&gt;
&lt;br /&gt;
= Validate URL =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/validate&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Проверяет URL (http/https), выполняет HEAD/GET и возвращает заголовки.  &lt;br /&gt;
Если URL — CDN URL, дополнительно парсит &amp;lt;code&amp;gt;domain/folder/filename&amp;lt;/code&amp;gt; и проверяет наличие на диске.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://example.com/file.png&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Delete file =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/delete&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Удалить файл по CDN URL.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/a.txt&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;DELETE&amp;lt;/code&amp;gt; (payload.source=&amp;quot;api&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
= Text Editor (Read/Save) =&lt;br /&gt;
&lt;br /&gt;
Условия:&lt;br /&gt;
* только «текстовые» расширения/MIME&lt;br /&gt;
* размер файла ≤ 2 MB&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/content&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Получить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/file/save&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Сохранить содержимое текстового файла.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/public/files/app.js&amp;quot;,&amp;quot;content&amp;quot;:&amp;quot;console.log(&#039;hi&#039;);\n&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;FILE_SAVE&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Webhooks =&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Создать webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется  &lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;url&amp;quot;:&amp;quot;https://example.com/hook&amp;quot;,&lt;br /&gt;
  &amp;quot;events&amp;quot;:[&amp;quot;UPLOAD&amp;quot;,&amp;quot;DELETE&amp;quot;],&lt;br /&gt;
  &amp;quot;secret&amp;quot;:&amp;quot;optional&amp;quot;,&lt;br /&gt;
  &amp;quot;enabled&amp;quot;:true&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Список webhooks текущего ключа.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/webhooks/{webhook_id}&amp;lt;/code&amp;gt; ==&lt;br /&gt;
Удалить webhook.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Auth:&#039;&#039;&#039; требуется&lt;br /&gt;
&lt;br /&gt;
== Формат доставки ==&lt;br /&gt;
На URL вебхука отправляется POST JSON:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;event&amp;quot;:&amp;quot;UPLOAD&amp;quot;,&amp;quot;payload&amp;quot;:{...}}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== События ==&lt;br /&gt;
* UPLOAD&lt;br /&gt;
* DELETE&lt;br /&gt;
* BULK_DELETE&lt;br /&gt;
* FILE_MOVE&lt;br /&gt;
* FILE_COPY&lt;br /&gt;
* FILE_SAVE&lt;br /&gt;
* SCAN_FINISHED&lt;br /&gt;
&lt;br /&gt;
== Подпись (HMAC) ==&lt;br /&gt;
Если на сервере включена подпись и у webhook задан &amp;lt;code&amp;gt;secret&amp;lt;/code&amp;gt;, рекомендуется отправлять:&lt;br /&gt;
&lt;br /&gt;
Headers:&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Event: UPLOAD&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Timestamp: 1718550000&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;X-Webhook-Signature: sha256=&amp;amp;lt;hex&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Алгоритм:&lt;br /&gt;
* base = &amp;lt;code&amp;gt;{timestamp}.{raw_body}&amp;lt;/code&amp;gt;&lt;br /&gt;
* signature = &amp;lt;code&amp;gt;HMAC_SHA256(secret, base)&amp;lt;/code&amp;gt; (hex)&lt;br /&gt;
* получатель проверяет подпись и свежесть timestamp (например ±300 секунд)&lt;br /&gt;
&lt;br /&gt;
= Admin =&lt;br /&gt;
&lt;br /&gt;
Все admin endpoints требуют &amp;lt;code&amp;gt;is_admin=true&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Scan ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /admin/scan/start&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /admin/scan/status&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Webhook event: &amp;lt;code&amp;gt;SCAN_FINISHED&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== API Keys ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Query: &amp;lt;code&amp;gt;show_full=false&amp;lt;/code&amp;gt; (если true — вернёт ключи полностью)&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;:&amp;quot;Client&amp;quot;,&lt;br /&gt;
  &amp;quot;enabled&amp;quot;:true,&lt;br /&gt;
  &amp;quot;is_admin&amp;quot;:false,&lt;br /&gt;
  &amp;quot;ips&amp;quot;:[&amp;quot;1.2.3.4&amp;quot;],&lt;br /&gt;
  &amp;quot;domains&amp;quot;:[&amp;quot;public&amp;quot;]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(196,181,253,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#c4b5fd;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;PATCH&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys/{api_key_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;name&amp;quot;:&amp;quot;NewName&amp;quot;,&amp;quot;enabled&amp;quot;:true,&amp;quot;is_admin&amp;quot;:false}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys/{api_key_id}/rotate&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Ротация ключа.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(251,113,133,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#fb7185;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;DELETE&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/api-keys/{api_key_id}&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Удаление ключа.&lt;br /&gt;
&lt;br /&gt;
=== IP allowlist ===&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /admin/api-keys/{api_key_id}/ips&amp;lt;/code&amp;gt; body: &amp;lt;code&amp;gt;{&amp;quot;value&amp;quot;:&amp;quot;1.2.3.4&amp;quot;}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE /admin/api-keys/{api_key_id}/ips/{ip}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Domain allowlist ===&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /admin/api-keys/{api_key_id}/domains&amp;lt;/code&amp;gt; body: &amp;lt;code&amp;gt;{&amp;quot;value&amp;quot;:&amp;quot;example.com&amp;quot;}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE /admin/api-keys/{api_key_id}/domains/{domain}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Quota ===&lt;br /&gt;
&amp;lt;code&amp;gt;PUT /admin/api-keys/{api_key_id}/quota&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;max_file_bytes&amp;quot;: 524288000,&lt;br /&gt;
  &amp;quot;max_total_bytes&amp;quot;: 10737418240,&lt;br /&gt;
  &amp;quot;max_total_files&amp;quot;: 50000,&lt;br /&gt;
  &amp;quot;max_monthly_upload_bytes&amp;quot;: 5368709120,&lt;br /&gt;
  &amp;quot;max_monthly_upload_files&amp;quot;: null&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Admin: Files / Logs / SSE ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/files&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Query: &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;owner&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;exists_on_disk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/admin/logs&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Query: &amp;lt;code&amp;gt;action&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;level&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;domain&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;owner&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;limit&amp;lt;/code&amp;gt; (≤1000)&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/events&amp;lt;/code&amp;gt; (SSE) ===&lt;br /&gt;
Поток &amp;lt;code&amp;gt;text/event-stream&amp;lt;/code&amp;gt;, event: &amp;lt;code&amp;gt;cdn_log&amp;lt;/code&amp;gt;.  &lt;br /&gt;
Query: &amp;lt;code&amp;gt;last_id=0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Stats =&lt;br /&gt;
&lt;br /&gt;
== Public ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/stats/public-summary&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Публичная краткая статистика (без ключа).&lt;br /&gt;
&lt;br /&gt;
== Admin (is_admin) ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /stats&amp;lt;/code&amp;gt; — детальная статистика + графики (base64 PNG data URL)&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/summary&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/domains&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/realtime&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/top-files?period=month&amp;amp;amp;by=downloads|size&amp;amp;amp;limit=50&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /stats/export?period=month&amp;amp;amp;kind=uploads|downloads|deletions|browses&amp;amp;amp;format=csv&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание по реализации:&#039;&#039; часть статистики берётся из MySQL таблиц (uploads/downloads/deletions/browses + files), часть — из SQLite файла &amp;lt;code&amp;gt;cdn_stats.db&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Auth (sessions) =&lt;br /&gt;
&lt;br /&gt;
== OAuth redirects/callbacks ==&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /auth/google&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/google/callback&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /auth/discord&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/discord/callback&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /auth/github&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/auth/github/callback&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CDN session login ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/cdn/login&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;api_key&amp;quot;:&amp;quot;&amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/cdn/logout&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Выход из CDN‑сессии.&lt;br /&gt;
&lt;br /&gt;
== Current session ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/me&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Возвращает текущую активную сессию (cdn/google/discord/github) и информацию о привязанном ключе (если есть).&lt;br /&gt;
&lt;br /&gt;
== Bind/unbind API key ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/bind-api-key&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Body:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;api_key&amp;quot;:&amp;quot;&amp;amp;lt;API_KEY&amp;amp;gt;&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Требуется активная OAuth‑сессия (google/discord/github).&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(52,211,153,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#34d399;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;POST&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/unbind-api-key&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Отвязка ключа от текущей OAuth‑сессии.&lt;br /&gt;
&lt;br /&gt;
== Logout ==&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(96,165,250,.55);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 6px 18px rgba(0,0,0,.18);color:#60a5fa;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78em;letter-spacing:.10em;text-transform:uppercase;line-height:1.1;vertical-align:middle;&amp;quot;&amp;gt;GET&amp;lt;/span&amp;gt; &amp;lt;code&amp;gt;/auth/logout&amp;lt;/code&amp;gt; ===&lt;br /&gt;
Выход из любой активной сессии (очистка cookie‑состояния).&lt;br /&gt;
&lt;br /&gt;
= Bot (internal) =&lt;br /&gt;
&lt;br /&gt;
Все &amp;lt;code&amp;gt;/bot/*&amp;lt;/code&amp;gt; требуют &amp;lt;code&amp;gt;X-Bot-Token&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Discord binding ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/discord/bind&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/discord/unbind&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/discord/me/{discord_id}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bot files ==&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/upload&amp;lt;/code&amp;gt; (multipart/form-data: discord_id, file, domain, name_mode, custom_filename, conflict_action)&lt;br /&gt;
* &amp;lt;code&amp;gt;DELETE /bot/delete&amp;lt;/code&amp;gt; body: &amp;lt;code&amp;gt;{&amp;quot;discord_id&amp;quot;:&amp;quot;...&amp;quot;,&amp;quot;url&amp;quot;:&amp;quot;https://cdn.denchikp.com/...&amp;quot;}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/download/{discord_id}/{domain}/{folder}/{filename:path}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/browse&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/folders/{discord_id}/{domain}&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/validate&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;POST /bot/file/content&amp;lt;/code&amp;gt; (только текст, ≤2MB)&lt;br /&gt;
&lt;br /&gt;
== Bot stats ==&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/public-summary&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;GET /bot/stats/{discord_id}&amp;lt;/code&amp;gt; (только если привязанный ключ is_admin=true)&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=TwitchHelper:%D0%9A%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B&amp;diff=354</id>
		<title>TwitchHelper:Команды</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=TwitchHelper:%D0%9A%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B&amp;diff=354"/>
		<updated>2026-04-26T00:48:11Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «== DP_Helper — команды Twitch ==  &amp;#039;&amp;#039;Примечание по условиям:&amp;#039;&amp;#039; * Почти все команды работают только когда стрим &amp;#039;&amp;#039;онлайн&amp;#039;&amp;#039; и команды &amp;#039;&amp;#039;включены&amp;#039;&amp;#039; (внутренние флаги бота). * Команды модерации доступны только модераторам/стримеру (бейдж &amp;#039;&amp;#039;moderator&amp;#039;&amp;#039; или &amp;#039;&amp;#039;broadcaster&amp;#039;&amp;#039;). * Стример (&amp;#039;&amp;#039;denchik...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== DP_Helper — команды Twitch ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание по условиям:&#039;&#039;&lt;br /&gt;
* Почти все команды работают только когда стрим &#039;&#039;онлайн&#039;&#039; и команды &#039;&#039;включены&#039;&#039; (внутренние флаги бота).&lt;br /&gt;
* Команды модерации доступны только модераторам/стримеру (бейдж &#039;&#039;moderator&#039;&#039; или &#039;&#039;broadcaster&#039;&#039;).&lt;br /&gt;
* Стример (&#039;&#039;denchikp_&#039;&#039;) имеет расширенный доступ (обход проверок онлайн/вкл), а часть команд дополнительно ограничена только им.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+ Общие команды (для зрителей)&lt;br /&gt;
! Команда !! Алиасы / варианты !! Параметры !! Доступ !! Описание / ответ бота&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!commands&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!cmds&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!help&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!команды&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!кмд&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!хелп&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Список основных команд&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!commands fun&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!cmds fun&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!help fun&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!команды фан&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!кмд фан&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!хелп фан&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Список фан-команд&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!commands mod&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!cmds mod&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!help mod&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!команды мод&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!кмд мод&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!хелп мод&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Только мод/стример&lt;br /&gt;
| Список модераторских команд&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!rules&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!правила&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Печатает правила чата&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!goal&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!цель&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Показывает активные цели канала (Twitch Goals)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!uptime&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!аптайм&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Показывает, сколько идёт стрим&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!game&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!игра&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Показывает текущую игру (категорию) канала&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!website&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!сайт&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Ссылка на сайт: &amp;lt;code&amp;gt;https://denchikp.com&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!youtube&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!ютуб&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Ссылка на YouTube: &amp;lt;code&amp;gt;https://www.youtube.com/@denchikp&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!donate&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!донат&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Ссылка на донат: &amp;lt;code&amp;gt;https://denchikp.com/donate&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!schedule&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!расписание&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Печатает расписание стримов&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!afk&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!афк&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!lurk&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Сообщает, что пользователь ушёл в AFK&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!back&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!вернулся&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Сообщает, что пользователь вернулся&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!song&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!песня&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!музыка&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Показывает текущий трек Spotify (если доступен)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+ Фан-команды (для зрителей)&lt;br /&gt;
! Команда !! Алиасы / варианты !! Параметры !! Доступ !! Описание / ответ бота&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!roll&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!число&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Случайное число 1–100&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!coin&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!монетка&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Подбрасывает монетку (орёл/решка)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!hug&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!обнять&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;ник&amp;amp;gt;&amp;lt;/code&amp;gt; (необязательно)&lt;br /&gt;
| Все&lt;br /&gt;
| Обнимает указанного пользователя или «всех в чате»&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!8ball&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!шар8&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;вопрос&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Все&lt;br /&gt;
| «Шар судьбы» — случайный ответ&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!quote&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!цитата&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Печатает «цитату дня»&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+ Модерация и управление (Twitch-чат)&lt;br /&gt;
! Команда !! Алиасы / варианты !! Параметры !! Доступ !! Описание / поведение&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!commandsstatus&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!cs&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Стример / (для остальных — информативно)&lt;br /&gt;
| Статус: включены ли команды и онлайн ли стрим&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!togglecommands&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!tc&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;enable&amp;lt;/code&amp;gt; / &amp;lt;code&amp;gt;disable&amp;lt;/code&amp;gt;&lt;br /&gt;
| Только стример (denchikp_)&lt;br /&gt;
| Включить/выключить ответы на команды (глобальный переключатель)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!shield&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!режимщита&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; / &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Включает/выключает Shield Mode (режим щита)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!ac&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!оповещение&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;color&amp;amp;gt; &amp;amp;lt;text&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Делает Announcement в чат. Цвет: &amp;lt;code&amp;gt;blue&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;green&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;orange&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;purple&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;primary&amp;lt;/code&amp;gt;. Текст до 400 символов&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!clearchat&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!cc&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!clear&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!очиститьчат&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!очистить&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Полная очистка чата&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!timeout&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!таймаут&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;ник&amp;amp;gt; &amp;amp;lt;причина&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Таймаут на 600 секунд (10 минут). &#039;&#039;Важно:&#039;&#039; причина берётся одним словом (первое после ника)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!warn&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!варн&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!пред&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;ник&amp;amp;gt; &amp;amp;lt;причина&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Warning пользователю. &#039;&#039;Важно:&#039;&#039; причина берётся одним словом (первое после ника)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!ban&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!бан&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;ник&amp;amp;gt; &amp;amp;lt;причина&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Бан пользователя. &#039;&#039;Важно:&#039;&#039; причина берётся одним словом&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!unban&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!разбан&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;ник&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Разбан пользователя&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!banned&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!баны&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Мод/стример&lt;br /&gt;
| Показывает до 5 забаненных пользователей (с причинами, если есть)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!addmod&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!добавитьмод&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;ник&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Только стример (denchikp_)&lt;br /&gt;
| Добавляет модератора на канал&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!removemod&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!удалитьмод&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;amp;lt;ник&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Только стример (denchikp_)&lt;br /&gt;
| Удаляет модератора с канала&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!mods&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!моды&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Только стример (denchikp_)&lt;br /&gt;
| Выводит список модераторов&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!vips&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!випы&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Только стример (denchikp_)&lt;br /&gt;
| Выводит список VIP&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Игровые команды ==&lt;br /&gt;
&#039;&#039;Эти команды активируются автоматически по текущей игре (категории) на Twitch.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Honkai: Star Rail ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+ Активно, когда категория содержит: &#039;&#039;Honkai: Star Rail&#039;&#039;&lt;br /&gt;
! Команда !! Алиасы / варианты !! Параметры !! Доступ !! Описание / ответ бота&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!hsrhelp&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!хсрхелп&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Список команд HSR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!team&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!отряд&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Печатает текущий отряд (HSR)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!trailblazer&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!главный&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!gg&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Информация о главном герое (Trailblazer)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!build&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!билд&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Печатает билд персонажа (текущий текст про Castorice)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Arknights: Endfield ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+ Активно, когда категория содержит: &#039;&#039;Arknights: Endfield&#039;&#039;&lt;br /&gt;
! Команда !! Алиасы / варианты !! Параметры !! Доступ !! Описание / ответ бота&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!endfieldhelp&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!efhelp&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!ендфилдхелп&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Список команд Endfield&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!about&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!endfield&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!игра&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Коротко об игре/стриме Endfield (&#039;&#039;в этой категории &amp;lt;code&amp;gt;!игра&amp;lt;/code&amp;gt; занята под about&#039;&#039;)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!first&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!firstplay&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!первый&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Информация о «первом/втором запуске» и формате без спойлеров&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!progress&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!прогресс&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Текущий прогресс прохождения&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!team&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!отряд&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Текущий отряд (Endfield)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!build&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!билд&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Про билды (в текущей версии: «экспериментируем»)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!lore&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!лор&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Про лор/обсуждение без спойлеров&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!choice&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!выбор&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Сообщение про участие чата в решениях&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Genshin Impact ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|+ Активно, когда категория содержит: &#039;&#039;Genshin&#039;&#039;&lt;br /&gt;
! Команда !! Алиасы / варианты !! Параметры !! Доступ !! Описание / ответ бота&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!gi&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!genshin&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;!геншин&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Общая инфа об аккаунте (AR/сервер/отряд/UID)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!ar&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!ранг&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Ранг приключений и прогресс ОП&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!uid&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| UID&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!world&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!мир&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Уровень мира&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!server&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!сервер&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Сервер&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!team&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!отряд&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Основной отряд (Genshin)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!quests&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!задания&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Активные задания (как прописано в боте)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!region&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!регионы&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Прогресс по регионам&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!events&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;!ивенты&amp;lt;/code&amp;gt;&lt;br /&gt;
| —&lt;br /&gt;
| Все&lt;br /&gt;
| Текущие ивенты (как прописано в боте)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Shop:Privacy_Policy&amp;diff=353</id>
		<title>Shop:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Shop:Privacy_Policy&amp;diff=353"/>
		<updated>2026-03-31T20:00:12Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= Политика конфиденциальности =  == 1. Общие положения == Настоящая Политика конфиденциальности описывает, какие данные собирает Discord-бот «DP-Shop» (далее — «Бот»), как они используются, хранятся и защищаются.  Используя Бота, пользователь соглашается с насто...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
Настоящая Политика конфиденциальности описывает, какие данные собирает Discord-бот «DP-Shop» (далее — «Бот»), как они используются, хранятся и защищаются.&lt;br /&gt;
&lt;br /&gt;
Используя Бота, пользователь соглашается с настоящей Политикой конфиденциальности.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы можем собирать ==&lt;br /&gt;
В зависимости от используемого функционала Бот может обрабатывать следующие данные:&lt;br /&gt;
&lt;br /&gt;
=== 2.1. Данные Discord ===&lt;br /&gt;
* ID пользователя Discord&lt;br /&gt;
* username, global name, discriminator&lt;br /&gt;
* ID сервера&lt;br /&gt;
* ID канала&lt;br /&gt;
* ID ролей&lt;br /&gt;
* ID сообщений и взаимодействий&lt;br /&gt;
* данные о правах доступа и entitlements&lt;br /&gt;
* данные, связанные со SKU и приобретёнными цифровыми товарами&lt;br /&gt;
&lt;br /&gt;
=== 2.2. Технические данные ===&lt;br /&gt;
* дата и время запросов&lt;br /&gt;
* журналы ошибок&lt;br /&gt;
* технические логи команд и взаимодействий&lt;br /&gt;
* IP-адреса могут обрабатываться сторонними сервисами хостинга, CDN, anti-DDoS или платёжными системами&lt;br /&gt;
&lt;br /&gt;
=== 2.3. Платёжные данные ===&lt;br /&gt;
Если используются сторонние платёжные системы, Бот или связанный сервис может получать ограниченную информацию о платеже, например:&lt;br /&gt;
* идентификатор транзакции&lt;br /&gt;
* статус оплаты&lt;br /&gt;
* SKU или идентификатор товара&lt;br /&gt;
* валюту и сумму&lt;br /&gt;
&lt;br /&gt;
Полные платёжные реквизиты банковских карт, как правило, обрабатываются платёжным провайдером, а не Ботом, если иное не указано отдельно.&lt;br /&gt;
&lt;br /&gt;
== 3. Цели обработки данных ==&lt;br /&gt;
Данные могут использоваться для:&lt;br /&gt;
* работы команд Бота;&lt;br /&gt;
* предоставления доступа к купленным цифровым товарам;&lt;br /&gt;
* проверки entitlements и прав на SKU;&lt;br /&gt;
* выдачи ролей, статусов и иных привилегий;&lt;br /&gt;
* технической поддержки;&lt;br /&gt;
* предотвращения мошенничества и злоупотреблений;&lt;br /&gt;
* улучшения качества Сервиса;&lt;br /&gt;
* соблюдения требований закона.&lt;br /&gt;
&lt;br /&gt;
== 4. Правовые основания обработки ==&lt;br /&gt;
Обработка данных осуществляется на следующих основаниях:&lt;br /&gt;
* исполнение пользовательского соглашения;&lt;br /&gt;
* законный интерес владельца Сервиса;&lt;br /&gt;
* согласие пользователя в случаях, когда оно требуется;&lt;br /&gt;
* исполнение требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Передача данных третьим лицам ==&lt;br /&gt;
Данные могут передаваться третьим лицам только в объёме, необходимом для работы Сервиса, в том числе:&lt;br /&gt;
* Discord;&lt;br /&gt;
* хостинг-провайдерам;&lt;br /&gt;
* аналитическим сервисам;&lt;br /&gt;
* платёжным провайдерам;&lt;br /&gt;
* сервисам мониторинга и безопасности;&lt;br /&gt;
* государственным органам при наличии законных оснований.&lt;br /&gt;
&lt;br /&gt;
== 6. Хранение данных ==&lt;br /&gt;
Данные хранятся только в течение срока, необходимого для достижения целей обработки, если более длительный срок не требуется по закону, для урегулирования споров, предотвращения мошенничества или исполнения обязательств.&lt;br /&gt;
&lt;br /&gt;
== 7. Защита данных ==&lt;br /&gt;
Администрация принимает разумные организационные и технические меры для защиты данных от утраты, несанкционированного доступа, изменения, раскрытия или уничтожения. Однако абсолютная безопасность передачи и хранения данных не может быть гарантирована.&lt;br /&gt;
&lt;br /&gt;
== 8. Права пользователя ==&lt;br /&gt;
Пользователь может, если это применимо по закону:&lt;br /&gt;
* запросить информацию о своих данных;&lt;br /&gt;
* потребовать исправления неточных данных;&lt;br /&gt;
* потребовать удаления данных;&lt;br /&gt;
* ограничить обработку данных;&lt;br /&gt;
* отозвать согласие на обработку там, где обработка основана на согласии;&lt;br /&gt;
* подать жалобу в уполномоченный орган.&lt;br /&gt;
&lt;br /&gt;
== 9. Данные несовершеннолетних ==&lt;br /&gt;
Бот не предназначен для использования лицами, не достигшими возраста, разрешённого правилами Discord или применимым законодательством. Если станет известно, что данные несовершеннолетнего были собраны с нарушением применимых правил, такие данные будут удалены в разумный срок.&lt;br /&gt;
&lt;br /&gt;
== 10. Международная передача данных ==&lt;br /&gt;
Поскольку Discord, хостинг-провайдеры и иные сервисы могут работать в разных странах, данные могут обрабатываться и храниться за пределами страны проживания пользователя.&lt;br /&gt;
&lt;br /&gt;
== 11. Изменение политики ==&lt;br /&gt;
Администрация вправе изменять настоящую Политику конфиденциальности в любое время. Обновлённая версия вступает в силу с момента публикации, если не указано иное.&lt;br /&gt;
&lt;br /&gt;
== 12. Контакты ==&lt;br /&gt;
По вопросам, связанным с персональными данными и конфиденциальностью, можно связаться:&lt;br /&gt;
* Email: support@denchikp.com&lt;br /&gt;
* Discord: danya_denchik&lt;br /&gt;
* Сайт: denchikp.com&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Shop:Terms_of_Service&amp;diff=352</id>
		<title>Shop:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Shop:Terms_of_Service&amp;diff=352"/>
		<updated>2026-03-31T19:59:22Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= Условия использования =  == 1. Общие положения == Настоящие Условия использования регулируют порядок использования Discord-бота «DP-Shop» (далее — «Бот»), сайта, связанных сервисов и цифровых товаров, включая товары, функции и подписки, связанные с SKU приложени...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Условия использования =&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
Настоящие Условия использования регулируют порядок использования Discord-бота «DP-Shop» (далее — «Бот»), сайта, связанных сервисов и цифровых товаров, включая товары, функции и подписки, связанные с SKU приложения.&lt;br /&gt;
&lt;br /&gt;
Используя Бота, пользователь подтверждает, что ознакомился с настоящими Условиями использования, понимает их и соглашается соблюдать.&lt;br /&gt;
&lt;br /&gt;
== 2. Термины ==&lt;br /&gt;
* &#039;&#039;&#039;Бот&#039;&#039;&#039; — программное обеспечение Discord, предоставляющее пользователям функции магазина, покупки цифровых товаров, проверки прав доступа и иные возможности.&lt;br /&gt;
* &#039;&#039;&#039;Пользователь&#039;&#039;&#039; — физическое или юридическое лицо, использующее Бота.&lt;br /&gt;
* &#039;&#039;&#039;SKU&#039;&#039;&#039; — уникальный идентификатор цифрового товара, подписки, функции или иного элемента, связанного с приложением.&lt;br /&gt;
* &#039;&#039;&#039;Цифровой товар&#039;&#039;&#039; — виртуальная функция, право доступа, роль, подписка, улучшение или иной нематериальный объект, предоставляемый через Бота.&lt;br /&gt;
* &#039;&#039;&#039;Сервис&#039;&#039;&#039; — Бот, связанные с ним базы данных, команды, интеграции, сайты и API.&lt;br /&gt;
&lt;br /&gt;
== 3. Предмет соглашения ==&lt;br /&gt;
Бот предоставляет пользователю доступ к функционалу магазина, просмотру доступных товаров, приобретению цифровых товаров, активации прав доступа и использованию других функций в соответствии с настоящими Условиями.&lt;br /&gt;
&lt;br /&gt;
== 4. Регистрация и доступ ==&lt;br /&gt;
Для использования Бота пользователь должен иметь действующую учетную запись Discord и соблюдать правила Discord, включая Terms of Service и Community Guidelines Discord.&lt;br /&gt;
&lt;br /&gt;
Администрация Бота вправе ограничить или прекратить доступ к Сервису в случае:&lt;br /&gt;
* нарушения настоящих Условий;&lt;br /&gt;
* злоупотребления функционалом;&lt;br /&gt;
* попыток обхода ограничений;&lt;br /&gt;
* нарушения правил Discord;&lt;br /&gt;
* требований закона или запросов уполномоченных органов.&lt;br /&gt;
&lt;br /&gt;
== 5. Товары и покупки ==&lt;br /&gt;
Цифровые товары, подписки и функции могут быть связаны с определёнными SKU приложения.&lt;br /&gt;
&lt;br /&gt;
Покупка товара может предоставлять пользователю:&lt;br /&gt;
* доступ к дополнительным командам;&lt;br /&gt;
* виртуальные роли;&lt;br /&gt;
* визуальные значки;&lt;br /&gt;
* расширенные функции;&lt;br /&gt;
* подписочный доступ;&lt;br /&gt;
* иные цифровые преимущества.&lt;br /&gt;
&lt;br /&gt;
Все товары являются цифровыми и предоставляются «как есть», если иное прямо не указано.&lt;br /&gt;
&lt;br /&gt;
== 6. Оплата и возвраты ==&lt;br /&gt;
Если иное не предусмотрено обязательным законодательством или правилами платформы оплаты:&lt;br /&gt;
* цифровые товары после предоставления считаются использованными;&lt;br /&gt;
* возврат средств за цифровые товары может быть ограничен;&lt;br /&gt;
* стоимость товаров может изменяться без предварительного уведомления;&lt;br /&gt;
* скидки, акции и специальные предложения действуют в течение указанного срока.&lt;br /&gt;
&lt;br /&gt;
Если покупка осуществляется через Discord, обработка платежа может регулироваться правилами Discord и/или соответствующего платёжного провайдера.&lt;br /&gt;
&lt;br /&gt;
== 7. Права на использование ==&lt;br /&gt;
Пользователю предоставляется ограниченное, неисключительное, непередаваемое и отзывное право использовать Бота и приобретённые цифровые товары только в рамках их функционального назначения.&lt;br /&gt;
&lt;br /&gt;
Пользователь не вправе:&lt;br /&gt;
* продавать, передавать или переуступать доступ к цифровым товарам, если это прямо не разрешено;&lt;br /&gt;
* декомпилировать, модифицировать или пытаться нарушить работу Бота;&lt;br /&gt;
* использовать Бота в мошеннических целях;&lt;br /&gt;
* вмешиваться в работу API, платежных или учётных механизмов.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на Бота, исходный код, дизайн, текст, графику, базы данных, товарные знаки, структуру магазина и цифровые товары принадлежат правообладателю либо используются на законных основаниях.&lt;br /&gt;
&lt;br /&gt;
== 9. Ограничение ответственности ==&lt;br /&gt;
Бот предоставляется по принципу «как есть» и «по мере доступности».&lt;br /&gt;
&lt;br /&gt;
Администрация не гарантирует:&lt;br /&gt;
* бесперебойную работу Сервиса;&lt;br /&gt;
* отсутствие ошибок;&lt;br /&gt;
* постоянную доступность всех товаров и функций;&lt;br /&gt;
* совместимость со всеми серверами, устройствами и клиентами Discord.&lt;br /&gt;
&lt;br /&gt;
Администрация не несёт ответственности за:&lt;br /&gt;
* сбои Discord или сторонних сервисов;&lt;br /&gt;
* потерю данных вследствие технических неисправностей;&lt;br /&gt;
* невозможность использования товара из-за блокировки аккаунта Discord пользователя;&lt;br /&gt;
* убытки, возникшие в результате неправомерного использования Бота.&lt;br /&gt;
&lt;br /&gt;
== 10. Блокировка и прекращение обслуживания ==&lt;br /&gt;
Администрация вправе приостановить или прекратить предоставление доступа к Боту полностью или частично в любое время без предварительного уведомления, если это требуется для безопасности, технического обслуживания, соблюдения закона или предотвращения злоупотреблений.&lt;br /&gt;
&lt;br /&gt;
== 11. Изменение условий ==&lt;br /&gt;
Администрация вправе изменять настоящие Условия использования в любое время. Новая редакция вступает в силу с момента публикации, если не указано иное.&lt;br /&gt;
&lt;br /&gt;
Продолжение использования Бота после публикации изменений означает согласие пользователя с обновлённой редакцией Условий.&lt;br /&gt;
&lt;br /&gt;
== 12. Применимое право ==&lt;br /&gt;
К настоящим Условиям применяется право юрисдикции, указанной владельцем Сервиса, если иное не предусмотрено обязательными нормами законодательства.&lt;br /&gt;
&lt;br /&gt;
== 13. Контакты ==&lt;br /&gt;
По вопросам использования Бота, покупки товаров, возвратов и претензий пользователь может связаться с администрацией:&lt;br /&gt;
* Email: support@denchikp.com&lt;br /&gt;
* Discord: danya_denchik&lt;br /&gt;
* Сайт: denchikp.com&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=DP-Guard:Privacy_Policy&amp;diff=351</id>
		<title>DP-Guard:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=DP-Guard:Privacy_Policy&amp;diff=351"/>
		<updated>2026-03-31T12:51:42Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= Политика конфиденциальности DP-Guard =  Последнее обновление: &amp;#039;&amp;#039;01.04.2026&amp;#039;&amp;#039;  Настоящая Политика конфиденциальности описывает, какие данные может обрабатывать бот &amp;#039;&amp;#039;&amp;#039;DP-Guard&amp;#039;&amp;#039;&amp;#039;, как они используются и в каких случаях могут храниться.  == 1. Общие положения == DP-Guard обраб...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Политика конфиденциальности DP-Guard =&lt;br /&gt;
&lt;br /&gt;
Последнее обновление: &#039;&#039;01.04.2026&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Настоящая Политика конфиденциальности описывает, какие данные может обрабатывать бот &#039;&#039;&#039;DP-Guard&#039;&#039;&#039;, как они используются и в каких случаях могут храниться.&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DP-Guard обрабатывает только те данные, которые необходимы для выполнения его функций, обеспечения безопасности, модерации и корректной работы команд.&lt;br /&gt;
&lt;br /&gt;
Используя бота, вы соглашаетесь с обработкой данных в объёме, необходимом для работы его функционала.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные могут обрабатываться ==&lt;br /&gt;
В зависимости от используемых функций бот может обрабатывать:&lt;br /&gt;
* ID пользователя;&lt;br /&gt;
* ID сервера;&lt;br /&gt;
* ID каналов и ролей;&lt;br /&gt;
* имена пользователей, никнеймы, теги и отображаемые имена;&lt;br /&gt;
* содержимое сообщений, если это требуется для автоматической модерации;&lt;br /&gt;
* данные о предупреждениях, наказаниях и действиях модерации;&lt;br /&gt;
* технические данные, необходимые для работы команд и журналов;&lt;br /&gt;
* настройки сервера, заданные администрацией.&lt;br /&gt;
&lt;br /&gt;
== 3. Для чего используются данные ==&lt;br /&gt;
Данные могут использоваться для:&lt;br /&gt;
* выполнения команд бота;&lt;br /&gt;
* работы автоматической модерации;&lt;br /&gt;
* выявления спама, флуда, рейдов и нарушений;&lt;br /&gt;
* хранения предупреждений, логов и серверных настроек;&lt;br /&gt;
* обеспечения стабильности, безопасности и улучшения функциональности бота;&lt;br /&gt;
* предотвращения злоупотреблений.&lt;br /&gt;
&lt;br /&gt;
== 4. Хранение данных ==&lt;br /&gt;
Некоторые данные могут храниться в базе данных или иных системах хранения, если это необходимо для функционирования бота.&lt;br /&gt;
&lt;br /&gt;
Срок хранения данных может зависеть от:&lt;br /&gt;
* назначения данных;&lt;br /&gt;
* настроек сервера;&lt;br /&gt;
* технической необходимости;&lt;br /&gt;
* требований безопасности.&lt;br /&gt;
&lt;br /&gt;
Разработчик стремится не хранить данные дольше, чем это необходимо для работы бота.&lt;br /&gt;
&lt;br /&gt;
== 5. Передача данных третьим лицам ==&lt;br /&gt;
DP-Guard не продаёт персональные данные пользователей.&lt;br /&gt;
&lt;br /&gt;
Данные могут быть переданы третьим сторонам только в следующих случаях:&lt;br /&gt;
* если это требуется применимым законодательством;&lt;br /&gt;
* если это необходимо для работы инфраструктуры бота;&lt;br /&gt;
* если это связано с защитой бота, разработчика или пользователей от злоупотреблений;&lt;br /&gt;
* если данные уже доступны через платформу Discord в рамках обычного функционирования сервера.&lt;br /&gt;
&lt;br /&gt;
== 6. Безопасность ==&lt;br /&gt;
Разработчик принимает разумные меры для защиты обрабатываемых данных, однако не может гарантировать абсолютную безопасность хранения и передачи информации.&lt;br /&gt;
&lt;br /&gt;
== 7. Права пользователей и администраций серверов ==&lt;br /&gt;
Пользователи и владельцы серверов могут обратиться к разработчику с запросом относительно:&lt;br /&gt;
* уточнения того, какие данные используются;&lt;br /&gt;
* удаления определённых данных, если это технически возможно;&lt;br /&gt;
* прекращения использования бота на сервере.&lt;br /&gt;
&lt;br /&gt;
Некоторые данные могут не подлежать немедленному удалению, если они необходимы для:&lt;br /&gt;
* безопасности;&lt;br /&gt;
* предотвращения злоупотреблений;&lt;br /&gt;
* соблюдения технических ограничений;&lt;br /&gt;
* выполнения обязательств, предусмотренных законом.&lt;br /&gt;
&lt;br /&gt;
== 8. Данные несовершеннолетних ==&lt;br /&gt;
DP-Guard не предназначен для самостоятельного использования лицами, нарушающими возрастные требования Discord. Использование бота должно соответствовать правилам платформы Discord.&lt;br /&gt;
&lt;br /&gt;
== 9. Изменения политики ==&lt;br /&gt;
Настоящая Политика конфиденциальности может изменяться в любое время. Продолжение использования бота после обновления политики означает согласие с её актуальной редакцией.&lt;br /&gt;
&lt;br /&gt;
== 10. Контакты ==&lt;br /&gt;
Если у вас есть вопросы по поводу обработки данных, обратитесь к разработчику или через официальный сервер поддержки бота.&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=DP-Guard:Terms_of_Service&amp;diff=350</id>
		<title>DP-Guard:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=DP-Guard:Terms_of_Service&amp;diff=350"/>
		<updated>2026-03-31T12:51:15Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= Условия использования DP-Guard =  Последнее обновление: &amp;#039;&amp;#039;01.04.2026&amp;#039;&amp;#039;  Используя бота &amp;#039;&amp;#039;&amp;#039;DP-Guard&amp;#039;&amp;#039;&amp;#039;, вы подтверждаете, что ознакомились с настоящими условиями и соглашаетесь их соблюдать.  == 1. Общие положения == DP-Guard предоставляется &amp;quot;как есть&amp;quot;, без каких-либо гарантий...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Условия использования DP-Guard =&lt;br /&gt;
&lt;br /&gt;
Последнее обновление: &#039;&#039;01.04.2026&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Используя бота &#039;&#039;&#039;DP-Guard&#039;&#039;&#039;, вы подтверждаете, что ознакомились с настоящими условиями и соглашаетесь их соблюдать.&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DP-Guard предоставляется &amp;quot;как есть&amp;quot;, без каких-либо гарантий бесперебойной работы, полной доступности или отсутствия ошибок.&lt;br /&gt;
&lt;br /&gt;
Разработчик оставляет за собой право:&lt;br /&gt;
* изменять функциональность бота;&lt;br /&gt;
* добавлять, удалять или ограничивать команды и возможности;&lt;br /&gt;
* временно или полностью прекращать работу бота без предварительного уведомления;&lt;br /&gt;
* ограничивать доступ к боту отдельным пользователям, серверам или категориям серверов.&lt;br /&gt;
&lt;br /&gt;
== 2. Допустимое использование ==&lt;br /&gt;
Пользователь обязуется использовать DP-Guard только в законных целях и в соответствии с:&lt;br /&gt;
* правилами Discord;&lt;br /&gt;
* правилами конкретного сервера;&lt;br /&gt;
* применимым законодательством.&lt;br /&gt;
&lt;br /&gt;
Запрещается использовать бота для:&lt;br /&gt;
* нарушения правил Discord;&lt;br /&gt;
* спама, флуда, преследования или угроз;&lt;br /&gt;
* обхода модерации;&lt;br /&gt;
* незаконного сбора данных;&lt;br /&gt;
* попыток взлома, перегрузки или нарушения работы бота;&lt;br /&gt;
* эксплуатации ошибок или уязвимостей.&lt;br /&gt;
&lt;br /&gt;
== 3. Ответственность за использование ==&lt;br /&gt;
Администрация сервера и пользователи самостоятельно несут ответственность за то, как именно используется бот на их сервере.&lt;br /&gt;
&lt;br /&gt;
Разработчик не несёт ответственности за:&lt;br /&gt;
* действия администраторов или участников сервера;&lt;br /&gt;
* неверную настройку бота;&lt;br /&gt;
* ущерб, вызванный использованием или невозможностью использования бота;&lt;br /&gt;
* ошибки автоматической модерации, ложные срабатывания или пропущенные нарушения.&lt;br /&gt;
&lt;br /&gt;
== 4. Команды модерации и автоматические действия ==&lt;br /&gt;
DP-Guard может автоматически:&lt;br /&gt;
* удалять сообщения;&lt;br /&gt;
* ограничивать пользователей;&lt;br /&gt;
* выдавать предупреждения;&lt;br /&gt;
* применять тайм-ауты;&lt;br /&gt;
* использовать иные модерационные меры в зависимости от конфигурации сервера.&lt;br /&gt;
&lt;br /&gt;
Используя бота, вы соглашаетесь с тем, что подобные действия могут выполняться автоматически в рамках настроек сервера.&lt;br /&gt;
&lt;br /&gt;
== 5. Доступ и ограничения ==&lt;br /&gt;
Разработчик может ограничить или отозвать доступ к боту, если сервер или пользователь:&lt;br /&gt;
* нарушает настоящие условия;&lt;br /&gt;
* нарушает правила Discord;&lt;br /&gt;
* использует бота во вредоносных целях;&lt;br /&gt;
* пытается мешать стабильной работе сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Сторонние сервисы ==&lt;br /&gt;
Работа бота может зависеть от Discord API, хостинга, баз данных и других сторонних сервисов. Разработчик не несёт ответственности за сбои, вызванные работой таких сервисов.&lt;br /&gt;
&lt;br /&gt;
== 7. Изменение условий ==&lt;br /&gt;
Настоящие условия могут быть изменены в любое время без предварительного уведомления. Продолжение использования бота после обновления условий означает согласие с новой редакцией.&lt;br /&gt;
&lt;br /&gt;
== 8. Прекращение использования ==&lt;br /&gt;
Пользователь или владелец сервера может прекратить использование бота в любое время путём удаления бота с сервера или прекращения взаимодействия с ним.&lt;br /&gt;
&lt;br /&gt;
== 9. Контакты ==&lt;br /&gt;
По вопросам, связанным с использованием DP-Guard, обратитесь к разработчику или через официальный сервер поддержки, если он предусмотрен.&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=349</id>
		<title>CDN:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=349"/>
		<updated>2026-03-31T10:28:47Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, Discord и GitHub, загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 31.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса ==&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google, Discord и GitHub для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий ==&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
* ознакомились с настоящими Условиями использования;&lt;br /&gt;
* согласны соблюдать их полностью;&lt;br /&gt;
* обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
* будете использовать сервис только законным образом.&lt;br /&gt;
&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация ==&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
* Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
* Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
* Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
* Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
&lt;br /&gt;
=== 3.3. Авторизация через Google, Discord и GitHub ===&lt;br /&gt;
Сервис может поддерживать вход через Google, Discord и/или GitHub. Используя такую функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между аккаунтом внешнего сервиса и API ключом.&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google-, Discord- или GitHub-аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
=== 3.5. Авторизация через DenchikP CDN ===&lt;br /&gt;
Сервис также может поддерживать вход непосредственно по API ключу DenchikP CDN. В таком случае вы обязуетесь использовать только тот API ключ, который был выдан вам законно и на использование которого у вас имеется право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование ==&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
* нарушения законодательства;&lt;br /&gt;
* нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
* размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
* распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
* обхода ограничений доступа;&lt;br /&gt;
* сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
* получения несанкционированного доступа к чужим доменам, файлам, статистике, аккаунтам или ключам.&lt;br /&gt;
&lt;br /&gt;
== 5. Контент пользователя ==&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
* Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
* Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
* Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
&lt;br /&gt;
== 6. Публичные и временные каталоги ==&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация ==&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
* удалять файлы и контент;&lt;br /&gt;
* отключать API ключи;&lt;br /&gt;
* блокировать IP-адреса;&lt;br /&gt;
* отзывать доступ к доменам;&lt;br /&gt;
* ограничивать или отключать авторизацию через Google, Discord, GitHub или иные поддерживаемые механизмы входа;&lt;br /&gt;
* вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
* копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
* декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
* использовать фирменные обозначения без разрешения.&lt;br /&gt;
&lt;br /&gt;
== 9. Жалобы правообладателей ==&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю, аккаунту или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса ==&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров, ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности ==&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
* потерю данных;&lt;br /&gt;
* автоматическое или ручное удаление файлов;&lt;br /&gt;
* недоступность сервиса;&lt;br /&gt;
* косвенные убытки и упущенную выгоду;&lt;br /&gt;
* действия третьих лиц;&lt;br /&gt;
* ошибки Google-авторизации, Discord-авторизации, GitHub-авторизации или сторонних сервисов;&lt;br /&gt;
* несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
&lt;br /&gt;
== 12. Возмещение убытков ==&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
* вашим использованием сервиса;&lt;br /&gt;
* вашим контентом;&lt;br /&gt;
* нарушением настоящих Условий;&lt;br /&gt;
* нарушением прав третьих лиц;&lt;br /&gt;
* неправомерным использованием API ключа, Google аккаунта, Discord аккаунта или GitHub аккаунта.&lt;br /&gt;
&lt;br /&gt;
== 13. Безопасность ==&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа ==&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий ==&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право ==&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений ==&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения ==&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты ==&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=348</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=348"/>
		<updated>2026-03-31T10:28:22Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года  &lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 31 марта 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
* API-ключи&lt;br /&gt;
* Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
* Домены и URL-адреса&lt;br /&gt;
&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
* IP-адрес&lt;br /&gt;
* Журналы запросов (загрузка, скачивание, удаление, доступ, просмотр, валидация)&lt;br /&gt;
* Временные метки и данные об активности&lt;br /&gt;
&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
* Имя&lt;br /&gt;
* Адрес электронной почты&lt;br /&gt;
* Фотография профиля&lt;br /&gt;
* Идентификатор пользователя Google&lt;br /&gt;
&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
=== 2.4 Данные Discord-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Discord, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
* Имя пользователя Discord&lt;br /&gt;
* Отображаемое имя (global name), если доступно&lt;br /&gt;
* Адрес электронной почты, если он предоставляется Discord&lt;br /&gt;
* Аватар профиля&lt;br /&gt;
* Идентификатор пользователя Discord&lt;br /&gt;
&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, серверам, спискам друзей, содержимому аккаунта Discord или иным данным, не связанным напрямую с базовой аутентификацией.&lt;br /&gt;
&lt;br /&gt;
=== 2.5 Данные GitHub-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью GitHub, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
* Имя пользователя GitHub&lt;br /&gt;
* Отображаемое имя, если оно указано&lt;br /&gt;
* Адрес электронной почты, если он доступен через GitHub и предоставлен пользователем&lt;br /&gt;
* Аватар профиля&lt;br /&gt;
* Идентификатор пользователя GitHub&lt;br /&gt;
&lt;br /&gt;
Мы не получаем доступ к вашим репозиториям, коду, организациям, приватным данным аккаунта GitHub или иным сведениям, кроме тех, которые необходимы для базовой аутентификации и идентификации пользователя.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
* Аутентификации пользователей&lt;br /&gt;
* Привязки Google-, Discord- и GitHub-аккаунтов к API-ключам&lt;br /&gt;
* Предоставления доступа к функциям CDN&lt;br /&gt;
* Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
* Поддержки работы и улучшения сервиса&lt;br /&gt;
&lt;br /&gt;
== 4. Данные пользователей Google, Discord и GitHub ==&lt;br /&gt;
Данные пользователей Google, Discord и GitHub используются исключительно для целей аутентификации, идентификации пользователя и привязки аккаунта к API-ключу.&lt;br /&gt;
&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google, Discord или GitHub третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies, механизмы сессий и аналогичные технические средства для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
* Для выполнения требований законодательства&lt;br /&gt;
* Для предотвращения мошенничества, нарушений безопасности или злоупотреблений&lt;br /&gt;
* Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
* Данные сессии: до окончания срока действия сессии или выхода пользователя из аккаунта&lt;br /&gt;
* Данные привязки аккаунтов Google, Discord и GitHub: до отвязки пользователем или удаления соответствующей записи&lt;br /&gt;
* Журналы: хранятся для обеспечения безопасности, мониторинга и технического анализа&lt;br /&gt;
* Файлы: до удаления пользователем или системой&lt;br /&gt;
&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные организационные и технические меры безопасности для защиты данных. Однако ни одна система хранения или передачи данных не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление, если это применимо и не противоречит требованиям законодательства или техническим ограничениям сервиса.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис может использовать:&lt;br /&gt;
* Google&lt;br /&gt;
* Discord&lt;br /&gt;
* GitHub&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Google:  &lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Discord:  &lt;br /&gt;
[https://discord.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности GitHub:  &lt;br /&gt;
[https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement]&lt;br /&gt;
&lt;br /&gt;
== 11. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 12. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=347</id>
		<title>CDN:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=347"/>
		<updated>2026-03-31T03:02:33Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google и Discord, загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 31.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса ==&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google и Discord для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий ==&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
* ознакомились с настоящими Условиями использования;&lt;br /&gt;
* согласны соблюдать их полностью;&lt;br /&gt;
* обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
* будете использовать сервис только законным образом.&lt;br /&gt;
&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация ==&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
* Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
* Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
* Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
* Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
&lt;br /&gt;
=== 3.3. Авторизация через Google и Discord ===&lt;br /&gt;
Сервис может поддерживать вход через Google и/или Discord. Используя такую функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между аккаунтом внешнего сервиса и API ключом.&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google- или Discord-аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
=== 3.5. Авторизация через DenchikP CDN ===&lt;br /&gt;
Сервис также может поддерживать вход непосредственно по API ключу DenchikP CDN. В таком случае вы обязуетесь использовать только тот API ключ, который был выдан вам законно и на использование которого у вас имеется право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование ==&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
* нарушения законодательства;&lt;br /&gt;
* нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
* размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
* распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
* обхода ограничений доступа;&lt;br /&gt;
* сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
* получения несанкционированного доступа к чужим доменам, файлам, статистике, аккаунтам или ключам.&lt;br /&gt;
&lt;br /&gt;
== 5. Контент пользователя ==&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
* Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
* Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
* Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
&lt;br /&gt;
== 6. Публичные и временные каталоги ==&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация ==&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
* удалять файлы и контент;&lt;br /&gt;
* отключать API ключи;&lt;br /&gt;
* блокировать IP-адреса;&lt;br /&gt;
* отзывать доступ к доменам;&lt;br /&gt;
* ограничивать или отключать авторизацию через Google, Discord или иные поддерживаемые механизмы входа;&lt;br /&gt;
* вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
* копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
* декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
* использовать фирменные обозначения без разрешения.&lt;br /&gt;
&lt;br /&gt;
== 9. Жалобы правообладателей ==&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю, аккаунту или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса ==&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров, ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности ==&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
* потерю данных;&lt;br /&gt;
* автоматическое или ручное удаление файлов;&lt;br /&gt;
* недоступность сервиса;&lt;br /&gt;
* косвенные убытки и упущенную выгоду;&lt;br /&gt;
* действия третьих лиц;&lt;br /&gt;
* ошибки Google-авторизации, Discord-авторизации или сторонних сервисов;&lt;br /&gt;
* несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
&lt;br /&gt;
== 12. Возмещение убытков ==&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
* вашим использованием сервиса;&lt;br /&gt;
* вашим контентом;&lt;br /&gt;
* нарушением настоящих Условий;&lt;br /&gt;
* нарушением прав третьих лиц;&lt;br /&gt;
* неправомерным использованием API ключа, Google аккаунта или Discord аккаунта.&lt;br /&gt;
&lt;br /&gt;
== 13. Безопасность ==&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа ==&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий ==&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право ==&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений ==&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения ==&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты ==&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=346</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=346"/>
		<updated>2026-03-31T03:00:00Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года  &lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 31 марта 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
* API-ключи&lt;br /&gt;
* Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
* Домены и URL-адреса&lt;br /&gt;
&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
* IP-адрес&lt;br /&gt;
* Журналы запросов (загрузка, скачивание, удаление, доступ, валидация, просмотр)&lt;br /&gt;
* Временные метки и данные об активности&lt;br /&gt;
&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
* Имя&lt;br /&gt;
* Адрес электронной почты&lt;br /&gt;
* Фотография профиля&lt;br /&gt;
* Идентификатор пользователя Google&lt;br /&gt;
&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
=== 2.4 Данные Discord-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Discord, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
* Имя пользователя Discord&lt;br /&gt;
* Отображаемое имя (global name), если доступно&lt;br /&gt;
* Адрес электронной почты, если он предоставляется Discord&lt;br /&gt;
* Аватар профиля&lt;br /&gt;
* Идентификатор пользователя Discord&lt;br /&gt;
&lt;br /&gt;
Мы не получаем доступ к вашим личным сообщениям, серверам, спискам друзей, содержимому аккаунта Discord или иным данным, не связанным напрямую с базовой аутентификацией.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
* Аутентификации пользователей&lt;br /&gt;
* Привязки Google- и Discord-аккаунтов к API-ключам&lt;br /&gt;
* Предоставления доступа к функциям CDN&lt;br /&gt;
* Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
* Поддержки работы и улучшения сервиса&lt;br /&gt;
&lt;br /&gt;
== 4. Данные пользователей Google и Discord ==&lt;br /&gt;
Данные пользователей Google и Discord используются исключительно для целей аутентификации, идентификации пользователя и привязки аккаунта к API-ключу.&lt;br /&gt;
&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google или Discord третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies, механизмы сессий и аналогичные технические средства для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
* Для выполнения требований законодательства&lt;br /&gt;
* Для предотвращения мошенничества, нарушений безопасности или злоупотреблений&lt;br /&gt;
* Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
* Данные сессии: до окончания срока действия сессии или выхода пользователя из аккаунта&lt;br /&gt;
* Данные привязки аккаунтов Google и Discord: до отвязки пользователем или удаления соответствующей записи&lt;br /&gt;
* Журналы: хранятся для обеспечения безопасности, мониторинга и технического анализа&lt;br /&gt;
* Файлы: до удаления пользователем или системой&lt;br /&gt;
&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные организационные и технические меры безопасности для защиты данных. Однако ни одна система хранения или передачи данных не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление, если это применимо и не противоречит требованиям законодательства или техническим ограничениям сервиса.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис может использовать:&lt;br /&gt;
* Google&lt;br /&gt;
* Discord&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Google:  &lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Discord:  &lt;br /&gt;
[https://discord.com/privacy]&lt;br /&gt;
&lt;br /&gt;
== 11. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 12. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=345</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=345"/>
		<updated>2026-03-24T21:16:01Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года  &lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 22 марта 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
* API-ключи&lt;br /&gt;
* Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
* Домены и URL-адреса&lt;br /&gt;
&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
* IP-адрес&lt;br /&gt;
* Журналы запросов (загрузка, скачивание, удаление, доступ)&lt;br /&gt;
* Временные метки и данные об активности&lt;br /&gt;
&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
* Имя&lt;br /&gt;
* Адрес электронной почты&lt;br /&gt;
* Фотография профиля&lt;br /&gt;
* Идентификатор пользователя Google&lt;br /&gt;
&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
* Аутентификации пользователей&lt;br /&gt;
* Привязки Google-аккаунтов к API-ключам&lt;br /&gt;
* Предоставления доступа к функциям CDN&lt;br /&gt;
* Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
* Поддержки работы и улучшения сервиса&lt;br /&gt;
&lt;br /&gt;
== 4. Данные пользователей Google ==&lt;br /&gt;
Данные пользователей Google используются исключительно для целей аутентификации и привязки аккаунта.&lt;br /&gt;
&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies и механизмы сессий для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
* Для выполнения требований законодательства&lt;br /&gt;
* Для предотвращения мошенничества или злоупотреблений&lt;br /&gt;
* Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
* Данные сессии: до окончания срока действия сессии&lt;br /&gt;
* Журналы: хранятся для обеспечения безопасности и мониторинга&lt;br /&gt;
* Файлы: до удаления пользователем или системой&lt;br /&gt;
&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные меры безопасности для защиты данных. Однако ни одна система не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис использует Google.&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Google:  &lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
== 11. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 12. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=344</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=344"/>
		<updated>2026-03-24T21:13:49Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Политика конфиденциальности =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22 марта 2026 года&lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 22 марта 2026 года&lt;br /&gt;
&lt;br /&gt;
== 1. Общие положения ==&lt;br /&gt;
DenchikP CDN — это облачный сервис хостинга файлов и доставки контента, который позволяет пользователям загружать, хранить, управлять и предоставлять публичный доступ к файлам через прямые ссылки и CDN-инфраструктуру.&lt;br /&gt;
&lt;br /&gt;
== 2. Какие данные мы собираем ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Данные, которые вы предоставляете ===&lt;br /&gt;
&lt;br /&gt;
API-ключи&lt;br /&gt;
Загруженные файлы и метаданные файлов (имя, тип, размер)&lt;br /&gt;
Домены и URL-адреса&lt;br /&gt;
=== 2.2 Данные, собираемые автоматически ===&lt;br /&gt;
&lt;br /&gt;
IP-адрес&lt;br /&gt;
Журналы запросов (загрузка, скачивание, удаление, доступ)&lt;br /&gt;
Временные метки и данные об активности&lt;br /&gt;
=== 2.3 Данные Google-аккаунта ===&lt;br /&gt;
Когда вы входите с помощью Google, мы можем получать доступ к следующей базовой информации профиля:&lt;br /&gt;
&lt;br /&gt;
Имя&lt;br /&gt;
Адрес электронной почты&lt;br /&gt;
Фотография профиля&lt;br /&gt;
Идентификатор пользователя Google&lt;br /&gt;
Мы не получаем доступ к вашему Google Drive, Gmail или каким-либо другим личным данным Google.&lt;br /&gt;
&lt;br /&gt;
== 3. Как мы используем информацию ==&lt;br /&gt;
Мы используем собранные данные для:&lt;br /&gt;
&lt;br /&gt;
Аутентификации пользователей&lt;br /&gt;
Привязки Google-аккаунтов к API-ключам&lt;br /&gt;
Предоставления доступа к функциям CDN&lt;br /&gt;
Обеспечения безопасности и предотвращения злоупотреблений&lt;br /&gt;
Поддержки работы и улучшения сервиса&lt;br /&gt;
== 4. Данные пользователей Google ==&lt;br /&gt;
Данные пользователей Google используются исключительно для целей аутентификации и привязки аккаунта.&lt;br /&gt;
&lt;br /&gt;
Мы не продаём, не передаём и не распространяем данные пользователей Google третьим лицам, за исключением случаев, когда это необходимо для работы сервиса или выполнения требований законодательства.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
Мы можем использовать cookies и механизмы сессий для поддержания авторизации и корректной работы сервиса.&lt;br /&gt;
&lt;br /&gt;
== 6. Передача данных ==&lt;br /&gt;
Мы не продаём персональные данные. Ограниченная передача данных возможна только:&lt;br /&gt;
&lt;br /&gt;
Для выполнения требований законодательства&lt;br /&gt;
Для предотвращения мошенничества или злоупотреблений&lt;br /&gt;
Поставщикам инфраструктуры исключительно для обеспечения работы сервиса&lt;br /&gt;
== 7. Срок хранения данных ==&lt;br /&gt;
&lt;br /&gt;
Данные сессии: до окончания срока действия сессии&lt;br /&gt;
Журналы: хранятся для обеспечения безопасности и мониторинга&lt;br /&gt;
Файлы: до удаления пользователем или системой&lt;br /&gt;
== 8. Безопасность ==&lt;br /&gt;
Мы применяем разумные меры безопасности для защиты данных. Однако ни одна система не может гарантировать абсолютную безопасность.&lt;br /&gt;
&lt;br /&gt;
== 9. Ваши права ==&lt;br /&gt;
В зависимости от вашей юрисдикции вы можете запросить доступ к своим данным, их исправление или удаление.&lt;br /&gt;
&lt;br /&gt;
== 10. Сторонние сервисы ==&lt;br /&gt;
Для аутентификации этот сервис использует Google.&lt;br /&gt;
&lt;br /&gt;
Политика конфиденциальности Google:&lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
== 11. Изменения ==&lt;br /&gt;
Мы можем обновлять настоящую Политику конфиденциальности. Продолжение использования сервиса означает согласие с обновлённой редакцией политики.&lt;br /&gt;
&lt;br /&gt;
== 12. Контакты ==&lt;br /&gt;
Если у вас есть вопросы относительно настоящей Политики конфиденциальности или обработки данных, свяжитесь с нами по адресу:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=MediaWiki:Citizen-footer-tagline&amp;diff=343</id>
		<title>MediaWiki:Citizen-footer-tagline</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=MediaWiki:Citizen-footer-tagline&amp;diff=343"/>
		<updated>2026-03-23T21:10:21Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;© 2024-2026 [DenchikP Docs] — Все права защищены.&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=342</id>
		<title>CDN:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=342"/>
		<updated>2026-03-23T20:23:58Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 22.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса ==&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий ==&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
* ознакомились с настоящими Условиями использования;&lt;br /&gt;
* согласны соблюдать их полностью;&lt;br /&gt;
* обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
* будете использовать сервис только законным образом.&lt;br /&gt;
&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация ==&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
* Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
* Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
* Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
* Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
&lt;br /&gt;
=== 3.3. Авторизация через Google ===&lt;br /&gt;
Сервис может поддерживать вход через Google. Используя эту функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между Google аккаунтом и API ключом.&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование ==&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
* нарушения законодательства;&lt;br /&gt;
* нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
* размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
* распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
* обхода ограничений доступа;&lt;br /&gt;
* сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
* получения несанкционированного доступа к чужим доменам, файлам, статистике или ключам.&lt;br /&gt;
&lt;br /&gt;
== 5. Контент пользователя ==&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
* Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
* Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
* Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
&lt;br /&gt;
== 6. Публичные и временные каталоги ==&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация ==&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
* удалять файлы и контент;&lt;br /&gt;
* отключать API ключи;&lt;br /&gt;
* блокировать IP-адреса;&lt;br /&gt;
* отзывать доступ к доменам;&lt;br /&gt;
* ограничивать или отключать Google-авторизацию;&lt;br /&gt;
* вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность ==&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
* копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
* декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
* использовать фирменные обозначения без разрешения.&lt;br /&gt;
&lt;br /&gt;
== 9. Жалобы правообладателей ==&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса ==&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров, ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности ==&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
* потерю данных;&lt;br /&gt;
* автоматическое или ручное удаление файлов;&lt;br /&gt;
* недоступность сервиса;&lt;br /&gt;
* косвенные убытки и упущенную выгоду;&lt;br /&gt;
* действия третьих лиц;&lt;br /&gt;
* ошибки Google-авторизации или сторонних сервисов;&lt;br /&gt;
* несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
&lt;br /&gt;
== 12. Возмещение убытков ==&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
* вашим использованием сервиса;&lt;br /&gt;
* вашим контентом;&lt;br /&gt;
* нарушением настоящих Условий;&lt;br /&gt;
* нарушением прав третьих лиц;&lt;br /&gt;
* неправомерным использованием API ключа или Google аккаунта.&lt;br /&gt;
&lt;br /&gt;
== 13. Безопасность ==&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа ==&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий ==&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право ==&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений ==&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения ==&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты ==&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=341</id>
		<title>CDN:Terms of Service</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Terms_of_Service&amp;diff=341"/>
		<updated>2026-03-23T20:22:33Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «= DenchikP CDN – Terms of Service =  == Условия использования DenchikP CDN == Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, загрузку, удаление, скачивание, просмотр и валидацию файлов и ссыло...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN – Terms of Service =&lt;br /&gt;
&lt;br /&gt;
== Условия использования DenchikP CDN ==&lt;br /&gt;
Настоящие Условия использования регулируют доступ к DenchikP CDN, включая веб-интерфейс, API, систему статистики, авторизацию через Google, загрузку, удаление, скачивание, просмотр и валидацию файлов и ссылок.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Дата вступления в силу:&#039;&#039;&#039; 22.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Последнее обновление:&#039;&#039;&#039; 22.03.2026  &lt;br /&gt;
&#039;&#039;&#039;Сервис:&#039;&#039;&#039; DenchikP CDN&lt;br /&gt;
&lt;br /&gt;
== Содержание ==&lt;br /&gt;
* [[#Описание_сервиса|1. Описание сервиса]]&lt;br /&gt;
* [[#Принятие_условий|2. Принятие условий]]&lt;br /&gt;
* [[#API_ключи_и_авторизация|3. API ключи и авторизация]]&lt;br /&gt;
* [[#Допустимое_использование|4. Допустимое использование]]&lt;br /&gt;
* [[#Контент_пользователя|5. Контент пользователя]]&lt;br /&gt;
* [[#Публичные_и_временные_каталоги|6. Публичные и временные каталоги]]&lt;br /&gt;
* [[#Ограничения_и_модерация|7. Ограничения и модерация]]&lt;br /&gt;
* [[#Интеллектуальная_собственность|8. Интеллектуальная собственность]]&lt;br /&gt;
* [[#Жалобы_правообладателей|9. Жалобы правообладателей]]&lt;br /&gt;
* [[#Доступность_сервиса|10. Доступность сервиса]]&lt;br /&gt;
* [[#Ограничение_ответственности|11. Ограничение ответственности]]&lt;br /&gt;
* [[#Возмещение_убытков|12. Возмещение убытков]]&lt;br /&gt;
* [[#Безопасность|13. Безопасность]]&lt;br /&gt;
* [[#Прекращение_доступа|14. Прекращение доступа]]&lt;br /&gt;
* [[#Изменения_условий|15. Изменения условий]]&lt;br /&gt;
* [[#Применимое_право|16. Применимое право]]&lt;br /&gt;
* [[#Делимость_положений|17. Делимость положений]]&lt;br /&gt;
* [[#Полнота_соглашения|18. Полнота соглашения]]&lt;br /&gt;
* [[#Контакты|19. Контакты]]&lt;br /&gt;
&lt;br /&gt;
== 1. Описание сервиса == &amp;lt;span id=&amp;quot;Описание_сервиса&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
DenchikP CDN — это сервис доставки и управления цифровым контентом, предоставляющий функциональность хранения, загрузки, удаления, скачивания, просмотра структуры каталогов, проверки ссылок, статистики и работы через API.&lt;br /&gt;
&lt;br /&gt;
Отдельные функции могут требовать авторизации с помощью API ключа, а также могут поддерживать интеграцию с Google для входа и привязки пользовательского аккаунта к API ключу.&lt;br /&gt;
&lt;br /&gt;
== 2. Принятие условий == &amp;lt;span id=&amp;quot;Принятие_условий&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Используя DenchikP CDN, вы подтверждаете, что:&lt;br /&gt;
* ознакомились с настоящими Условиями использования;&lt;br /&gt;
* согласны соблюдать их полностью;&lt;br /&gt;
* обладаете достаточной правоспособностью для принятия условий;&lt;br /&gt;
* будете использовать сервис только законным образом.&lt;br /&gt;
&lt;br /&gt;
Если вы не согласны с настоящими условиями, вы должны немедленно прекратить использование сервиса.&lt;br /&gt;
&lt;br /&gt;
== 3. API ключи и авторизация == &amp;lt;span id=&amp;quot;API_ключи_и_авторизация&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 3.1. API ключи ===&lt;br /&gt;
Доступ к функциональности сервиса может предоставляться на основе API ключей. Такой ключ может иметь ограничения по IP-адресам, доменам, типам действий и внутренним правилам платформы.&lt;br /&gt;
&lt;br /&gt;
=== 3.2. Ответственность за ключ ===&lt;br /&gt;
* Вы обязаны хранить API ключ в тайне.&lt;br /&gt;
* Вы несёте ответственность за все действия, совершённые с использованием вашего ключа.&lt;br /&gt;
* Вы не должны передавать ключ третьим лицам без разрешения.&lt;br /&gt;
* Вы не должны публиковать API ключ в открытом доступе.&lt;br /&gt;
&lt;br /&gt;
=== 3.3. Авторизация через Google ===&lt;br /&gt;
Сервис может поддерживать вход через Google. Используя эту функцию, вы подтверждаете, что имеете право использовать соответствующий аккаунт и понимаете, что часть функциональности может зависеть от наличия привязки между Google аккаунтом и API ключом.&lt;br /&gt;
&lt;br /&gt;
=== 3.4. Привязка аккаунта к API ключу ===&lt;br /&gt;
Если в сервисе доступна функция привязки Google аккаунта к API ключу, вы обязуетесь привязывать только тот ключ, на использование которого у вас есть законное право.&lt;br /&gt;
&lt;br /&gt;
== 4. Допустимое использование == &amp;lt;span id=&amp;quot;Допустимое_использование&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Вы соглашаетесь не использовать сервис для:&lt;br /&gt;
* нарушения законодательства;&lt;br /&gt;
* нарушения интеллектуальных прав третьих лиц;&lt;br /&gt;
* размещения вредоносного ПО, вирусов, троянов, эксплойтов и аналогичных материалов;&lt;br /&gt;
* распространения фишинга, спама или мошеннического контента;&lt;br /&gt;
* обхода ограничений доступа;&lt;br /&gt;
* сканирования, атаки или вмешательства в инфраструктуру сервиса;&lt;br /&gt;
* получения несанкционированного доступа к чужим доменам, файлам, статистике или ключам.&lt;br /&gt;
&lt;br /&gt;
== 5. Контент пользователя == &amp;lt;span id=&amp;quot;Контент_пользователя&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Вы сохраняете права на свой контент, однако подтверждаете, что обладаете всеми необходимыми правами, разрешениями и основаниями для его загрузки, хранения, обработки и доставки через DenchikP CDN.&lt;br /&gt;
* Вы несёте полную ответственность за загружаемые материалы.&lt;br /&gt;
* Вы не должны загружать контент, нарушающий закон или права третьих лиц.&lt;br /&gt;
* Вы предоставляете сервису ограниченное техническое право на хранение, копирование, кэширование и доставку такого контента в объёме, необходимом для работы платформы.&lt;br /&gt;
&lt;br /&gt;
== 6. Публичные и временные каталоги == &amp;lt;span id=&amp;quot;Публичные_и_временные_каталоги&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Некоторые каталоги могут являться публичными или временными. Контент, размещённый в таких разделах, может быть доступен по прямой ссылке и/или автоматически удаляться по внутренним правилам сервиса.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Примечание:&#039;&#039; Вы обязаны самостоятельно хранить резервные копии важных файлов. DenchikP CDN не гарантирует бессрочное хранение контента, особенно в публичных и временных директориях.&lt;br /&gt;
&lt;br /&gt;
== 7. Ограничения и модерация == &amp;lt;span id=&amp;quot;Ограничения_и_модерация&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
DenchikP CDN оставляет за собой право без предварительного уведомления:&lt;br /&gt;
* удалять файлы и контент;&lt;br /&gt;
* отключать API ключи;&lt;br /&gt;
* блокировать IP-адреса;&lt;br /&gt;
* отзывать доступ к доменам;&lt;br /&gt;
* ограничивать или отключать Google-авторизацию;&lt;br /&gt;
* вводить лимиты, квоты и иные ограничения.&lt;br /&gt;
&lt;br /&gt;
Такие меры могут применяться при нарушении правил, по жалобе правообладателя, по соображениям безопасности, технической необходимости или в силу требований закона.&lt;br /&gt;
&lt;br /&gt;
== 8. Интеллектуальная собственность == &amp;lt;span id=&amp;quot;Интеллектуальная_собственность&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Все права на программную часть сервиса, API, интерфейсы, дизайн, структуру страниц, логику работы и внутренние материалы, за исключением пользовательского контента и материалов третьих лиц, принадлежат DenchikP или соответствующим правообладателям.&lt;br /&gt;
&lt;br /&gt;
Вы не получаете право:&lt;br /&gt;
* копировать или воспроизводить сервис вне рамок разрешённого использования;&lt;br /&gt;
* декомпилировать, реверс-инжинирить или пытаться обходить внутреннюю логику работы;&lt;br /&gt;
* использовать фирменные обозначения без разрешения.&lt;br /&gt;
&lt;br /&gt;
== 9. Жалобы правообладателей == &amp;lt;span id=&amp;quot;Жалобы_правообладателей&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Если вы считаете, что через DenchikP CDN размещён контент, нарушающий ваши права, вы можете направить жалобу с указанием достаточных сведений для идентификации спорного материала и ваших прав.&lt;br /&gt;
&lt;br /&gt;
Сервис оставляет за собой право удалить, ограничить или заблокировать доступ к спорному контенту, а также применить дополнительные меры к пользователю или ключу, связанному с нарушением.&lt;br /&gt;
&lt;br /&gt;
== 10. Доступность сервиса == &amp;lt;span id=&amp;quot;Доступность_сервиса&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
DenchikP CDN предоставляется по принципу &#039;&#039;&#039;«как есть»&#039;&#039;&#039; и &#039;&#039;&#039;«по мере доступности»&#039;&#039;&#039;. Мы не гарантируем непрерывную, безошибочную и бесперебойную работу сервиса.&lt;br /&gt;
&lt;br /&gt;
Возможны технические работы, обновления, перебои связи, ограничения внешних провайдеров, ошибки, а также временное или постоянное отключение отдельных функций.&lt;br /&gt;
&lt;br /&gt;
== 11. Ограничение ответственности == &amp;lt;span id=&amp;quot;Ограничение_ответственности&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
В максимально допустимой законом степени DenchikP CDN, его владельцы, администраторы и связанные лица не несут ответственности за:&lt;br /&gt;
* потерю данных;&lt;br /&gt;
* автоматическое или ручное удаление файлов;&lt;br /&gt;
* недоступность сервиса;&lt;br /&gt;
* косвенные убытки и упущенную выгоду;&lt;br /&gt;
* действия третьих лиц;&lt;br /&gt;
* ошибки Google-авторизации или сторонних сервисов;&lt;br /&gt;
* несанкционированное использование аккаунта, ключа или ссылок в результате действий пользователя.&lt;br /&gt;
&lt;br /&gt;
== 12. Возмещение убытков == &amp;lt;span id=&amp;quot;Возмещение_убытков&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Вы соглашаетесь защищать и освобождать DenchikP CDN, его владельцев, администраторов и связанных лиц от любых претензий, требований, убытков, расходов и издержек, возникающих в связи с:&lt;br /&gt;
* вашим использованием сервиса;&lt;br /&gt;
* вашим контентом;&lt;br /&gt;
* нарушением настоящих Условий;&lt;br /&gt;
* нарушением прав третьих лиц;&lt;br /&gt;
* неправомерным использованием API ключа или Google аккаунта.&lt;br /&gt;
&lt;br /&gt;
== 13. Безопасность == &amp;lt;span id=&amp;quot;Безопасность&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Вы обязаны не предпринимать попыток обхода систем безопасности, получения несанкционированного доступа, эксплуатации уязвимостей или вмешательства в работу сервиса. Любые подобные действия могут привести к немедленной блокировке доступа и передаче информации уполномоченным органам.&lt;br /&gt;
&lt;br /&gt;
== 14. Прекращение доступа == &amp;lt;span id=&amp;quot;Прекращение_доступа&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Мы вправе ограничить, приостановить или полностью прекратить ваш доступ к DenchikP CDN в любое время, в том числе без предварительного уведомления, если это необходимо для защиты сервиса, соблюдения закона или по иным разумным основаниям.&lt;br /&gt;
&lt;br /&gt;
== 15. Изменения условий == &amp;lt;span id=&amp;quot;Изменения_условий&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Мы можем обновлять настоящие Условия использования. Новая редакция вступает в силу с момента публикации, если не указано иное. Продолжение использования сервиса после публикации изменений означает согласие с обновлённой редакцией условий.&lt;br /&gt;
&lt;br /&gt;
== 16. Применимое право == &amp;lt;span id=&amp;quot;Применимое_право&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Настоящие условия регулируются применимым законодательством, которое действует в отношении владельца или оператора сервиса, если иное не предусмотрено обязательными нормами права.&lt;br /&gt;
&lt;br /&gt;
== 17. Делимость положений == &amp;lt;span id=&amp;quot;Делимость_положений&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Если какое-либо положение настоящих условий будет признано недействительным, незаконным или неисполнимым, остальные положения сохраняют силу в максимально возможной степени.&lt;br /&gt;
&lt;br /&gt;
== 18. Полнота соглашения == &amp;lt;span id=&amp;quot;Полнота_соглашения&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Настоящие Условия использования вместе с Политикой конфиденциальности составляют полное соглашение между пользователем и DenchikP CDN в части использования сервиса.&lt;br /&gt;
&lt;br /&gt;
== 19. Контакты == &amp;lt;span id=&amp;quot;Контакты&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
Если у вас возникли вопросы по настоящим условиям, используйте официальные каналы связи проекта, если они опубликованы на страницах DenchikP CDN или связанных сервисов.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;© 2024 – 2026 DenchikP CDN. Все права защищены.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=340</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=340"/>
		<updated>2026-03-23T18:45:20Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DenchikP CDN — Privacy Policy =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Effective date:&#039;&#039;&#039; March 22, 2026  &lt;br /&gt;
&#039;&#039;&#039;Last updated:&#039;&#039;&#039; March 22, 2026&lt;br /&gt;
&lt;br /&gt;
== 1. Overview ==&lt;br /&gt;
DenchikP CDN is a cloud-based file hosting and content delivery service that allows users to upload, store, manage, and publicly access files via direct links and CDN infrastructure.&lt;br /&gt;
&lt;br /&gt;
== 2. Information We Collect ==&lt;br /&gt;
&lt;br /&gt;
=== 2.1 Information You Provide ===&lt;br /&gt;
* API keys&lt;br /&gt;
* Uploaded files and file metadata (name, type, size)&lt;br /&gt;
* Domains and URLs&lt;br /&gt;
&lt;br /&gt;
=== 2.2 Automatically Collected Data ===&lt;br /&gt;
* IP address&lt;br /&gt;
* Request logs (upload, download, delete, access)&lt;br /&gt;
* Timestamps and activity data&lt;br /&gt;
&lt;br /&gt;
=== 2.3 Google Account Data ===&lt;br /&gt;
When you sign in using Google, we may access the following basic profile information:&lt;br /&gt;
* Name&lt;br /&gt;
* Email address&lt;br /&gt;
* Profile picture&lt;br /&gt;
* Google user ID&lt;br /&gt;
&lt;br /&gt;
We do not access your Google Drive, Gmail, or any other private Google data.&lt;br /&gt;
&lt;br /&gt;
== 3. How We Use Information ==&lt;br /&gt;
We use collected data to:&lt;br /&gt;
* Authenticate users&lt;br /&gt;
* Link Google accounts to API keys&lt;br /&gt;
* Provide access to CDN functionality&lt;br /&gt;
* Maintain security and prevent abuse&lt;br /&gt;
* Operate and improve the service&lt;br /&gt;
&lt;br /&gt;
== 4. Google User Data ==&lt;br /&gt;
Google user data is used strictly for authentication and account linking purposes.&lt;br /&gt;
&lt;br /&gt;
We do not sell, share, or transfer your Google user data to third parties, except as necessary to operate the service or comply with legal obligations.&lt;br /&gt;
&lt;br /&gt;
== 5. Cookies ==&lt;br /&gt;
We may use cookies and session mechanisms to maintain authentication and ensure proper operation of the service.&lt;br /&gt;
&lt;br /&gt;
== 6. Data Sharing ==&lt;br /&gt;
We do not sell personal data. We may share limited data only:&lt;br /&gt;
* To comply with legal obligations&lt;br /&gt;
* To prevent fraud or abuse&lt;br /&gt;
* With infrastructure providers strictly for service operation&lt;br /&gt;
&lt;br /&gt;
== 7. Data Retention ==&lt;br /&gt;
* Session data: until session expires&lt;br /&gt;
* Logs: retained for security and monitoring&lt;br /&gt;
* Files: until deleted by user or system&lt;br /&gt;
&lt;br /&gt;
== 8. Security ==&lt;br /&gt;
We implement reasonable security measures to protect data. However, no system is completely secure.&lt;br /&gt;
&lt;br /&gt;
== 9. Your Rights ==&lt;br /&gt;
Depending on your jurisdiction, you may request access, correction, or deletion of your data.&lt;br /&gt;
&lt;br /&gt;
== 10. Third-Party Services ==&lt;br /&gt;
This service uses Google for authentication.&lt;br /&gt;
&lt;br /&gt;
Google Privacy Policy:  &lt;br /&gt;
[https://policies.google.com/privacy]&lt;br /&gt;
&lt;br /&gt;
== 11. Changes ==&lt;br /&gt;
We may update this Privacy Policy. Continued use of the service means acceptance of the updated policy.&lt;br /&gt;
&lt;br /&gt;
== 12. Contact ==&lt;br /&gt;
If you have any questions regarding this Privacy Policy or data processing, contact us at:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;support@denchikp.com&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=339</id>
		<title>CDN:Privacy Policy</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=CDN:Privacy_Policy&amp;diff=339"/>
		<updated>2026-03-23T18:43:40Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: Новая страница: «# DenchikP CDN — Privacy Policy  **Effective date:** March 22, 2026   **Last updated:** March 22, 2026    ---  ## 1. Overview  DenchikP CDN is a cloud-based file hosting and content delivery service that allows users to upload, store, manage, and share files via direct links and CDN infrastructure.  ---  ## 2. Information We Collect  ### 2.1 Information You Provide - API keys   - Uploaded files and file metadata (name, type, size)   - Domains and URLs    #...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;# DenchikP CDN — Privacy Policy&lt;br /&gt;
&lt;br /&gt;
**Effective date:** March 22, 2026  &lt;br /&gt;
**Last updated:** March 22, 2026  &lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 1. Overview&lt;br /&gt;
&lt;br /&gt;
DenchikP CDN is a cloud-based file hosting and content delivery service that allows users to upload, store, manage, and share files via direct links and CDN infrastructure.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 2. Information We Collect&lt;br /&gt;
&lt;br /&gt;
### 2.1 Information You Provide&lt;br /&gt;
- API keys  &lt;br /&gt;
- Uploaded files and file metadata (name, type, size)  &lt;br /&gt;
- Domains and URLs  &lt;br /&gt;
&lt;br /&gt;
### 2.2 Automatically Collected Data&lt;br /&gt;
- IP address  &lt;br /&gt;
- Request logs (upload, download, delete, etc.)  &lt;br /&gt;
- Timestamps and activity data  &lt;br /&gt;
&lt;br /&gt;
### 2.3 Google Account Data&lt;br /&gt;
When you sign in using Google, we may access the following basic profile information:&lt;br /&gt;
- Name  &lt;br /&gt;
- Email address  &lt;br /&gt;
- Profile picture  &lt;br /&gt;
- Google user ID  &lt;br /&gt;
&lt;br /&gt;
We do **not** access your Google Drive, Gmail, or any other private Google data.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 3. How We Use Information&lt;br /&gt;
&lt;br /&gt;
We use collected data to:&lt;br /&gt;
- Authenticate users  &lt;br /&gt;
- Link Google accounts to API keys  &lt;br /&gt;
- Provide access to CDN functionality  &lt;br /&gt;
- Maintain security and prevent abuse  &lt;br /&gt;
- Operate and improve the service  &lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 4. Google User Data&lt;br /&gt;
&lt;br /&gt;
Google user data is used strictly for authentication and account linking purposes.&lt;br /&gt;
&lt;br /&gt;
We do **not sell, share, or transfer** your Google user data to third parties, except:&lt;br /&gt;
- when required to operate the service  &lt;br /&gt;
- when required by law  &lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 5. Cookies&lt;br /&gt;
&lt;br /&gt;
We may use cookies and session mechanisms to:&lt;br /&gt;
- maintain authentication  &lt;br /&gt;
- ensure proper functionality of the service  &lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 6. Data Sharing&lt;br /&gt;
&lt;br /&gt;
We do not sell personal data.&lt;br /&gt;
&lt;br /&gt;
We may share limited data only:&lt;br /&gt;
- to comply with legal obligations  &lt;br /&gt;
- to prevent fraud or abuse  &lt;br /&gt;
- with infrastructure providers (hosting, servers) strictly for service operation  &lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 7. Data Retention&lt;br /&gt;
&lt;br /&gt;
- Session data: until session expires  &lt;br /&gt;
- Logs: retained for security and monitoring  &lt;br /&gt;
- Files: until deleted by user or system  &lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 8. Security&lt;br /&gt;
&lt;br /&gt;
We implement reasonable technical and organizational measures to protect data.  &lt;br /&gt;
However, no system can guarantee absolute security.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 9. Your Rights&lt;br /&gt;
&lt;br /&gt;
Depending on your location, you may have the right to:&lt;br /&gt;
- request access to your data  &lt;br /&gt;
- request correction  &lt;br /&gt;
- request deletion  &lt;br /&gt;
- withdraw consent  &lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 10. Third-Party Services&lt;br /&gt;
&lt;br /&gt;
This service uses Google for authentication.&lt;br /&gt;
&lt;br /&gt;
Google Privacy Policy:  &lt;br /&gt;
https://policies.google.com/privacy&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 11. Changes&lt;br /&gt;
&lt;br /&gt;
We may update this Privacy Policy. Continued use of the service means acceptance of the updated version.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## 12. Contact&lt;br /&gt;
&lt;br /&gt;
If you have any questions regarding this Privacy Policy or data processing, contact us at:&lt;br /&gt;
&lt;br /&gt;
**support@denchikp.com**&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=338</id>
		<title>Заглавная страница</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=338"/>
		<updated>2026-03-23T18:40:24Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: /* Добро пожаловать на DenchikP Docs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Добро пожаловать на DenchikP Docs =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DenchikP Docs&#039;&#039;&#039; — это официальная документация, посвящённая проектам, разработкам и сообществу [https://denchikp.com DenchikP].&lt;br /&gt;
&lt;br /&gt;
== 🔧 Что здесь можно найти? ==&lt;br /&gt;
* Документация по проектам&lt;br /&gt;
* Инструкции для администраторов и игроков&lt;br /&gt;
* Часто задаваемые вопросы&lt;br /&gt;
* История обновлений и новостей&lt;br /&gt;
&lt;br /&gt;
== 📌 Полезные ссылки ==&lt;br /&gt;
* [[Служебная:Вход|Вход / Регистрация]]&lt;br /&gt;
* [[Справка:Содержание|Руководства и помощь]]&lt;br /&gt;
* [[DenchikP Docs:Авторские права|Авторские права]]&lt;br /&gt;
* [https://denchikp.com Главный сайт]&lt;br /&gt;
&lt;br /&gt;
== 🛠 Статус в разработке ==&lt;br /&gt;
Если вы видите эту страницу — вики всё ещё активно развивается. Вы можете внести вклад или предложить улучшения!&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;DenchikP Docs — с заботой о знании и порядке.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=337</id>
		<title>Заглавная страница</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=337"/>
		<updated>2026-03-23T18:40:09Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: /* Добро пожаловать на DenchikP Wiki */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Добро пожаловать на DenchikP Docs =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;DenchikP Wiki&#039;&#039;&#039; — это официальная документация, посвящённая проектам, разработкам и сообществу [https://denchikp.com DenchikP].&lt;br /&gt;
&lt;br /&gt;
== 🔧 Что здесь можно найти? ==&lt;br /&gt;
* Документация по проектам&lt;br /&gt;
* Инструкции для администраторов и игроков&lt;br /&gt;
* Часто задаваемые вопросы&lt;br /&gt;
* История обновлений и новостей&lt;br /&gt;
&lt;br /&gt;
== 📌 Полезные ссылки ==&lt;br /&gt;
* [[Служебная:Вход|Вход / Регистрация]]&lt;br /&gt;
* [[Справка:Содержание|Руководства и помощь]]&lt;br /&gt;
* [[DenchikP Docs:Авторские права|Авторские права]]&lt;br /&gt;
* [https://denchikp.com Главный сайт]&lt;br /&gt;
&lt;br /&gt;
== 🛠 Статус в разработке ==&lt;br /&gt;
Если вы видите эту страницу — вики всё ещё активно развивается. Вы можете внести вклад или предложить улучшения!&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&#039;&#039;DenchikP Docs — с заботой о знании и порядке.&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Denchikp&amp;diff=335</id>
		<title>Участник:Denchikp</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:Denchikp&amp;diff=335"/>
		<updated>2025-11-13T21:37:23Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: /* 👋 Привет! */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;float:right; clear:right; width:280px; margin:1em 0 1em 1em; background-color:#404040; border:1px solid #ccc; border-radius:8px; padding:10px; font-size:90%; line-height:1.4;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table style=&amp;quot;width:100%; text-align:center;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td style=&amp;quot;padding: 0.5em;&amp;quot;&amp;gt;&lt;br /&gt;
    [[File:DenchikP Logo.png|100px|center|DenchikP]]&lt;br /&gt;
  &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td style=&amp;quot;font-size:110%; font-weight:bold;&amp;quot;&amp;gt;DenchikP&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td style=&amp;quot;color:#fff;&amp;quot;&amp;gt;Создатель и администратор&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr style=&amp;quot;margin:10px 0;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table style=&amp;quot;width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td style=&amp;quot;width:30px;&amp;quot;&amp;gt;🌐&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;[https://denchikp.com denchikp.com]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;📺&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;[https://www.twitch.tv/denchikp_ Twitch: denchikp_]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;📧&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;[mailto:denchikp@denchikp.com denchikp@denchikp.com]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;💬&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;Discord: &amp;lt;code&amp;gt;danya_denchik&amp;lt;/code&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr style=&amp;quot;margin:10px 0;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Быстрые ссылки&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;ul style=&amp;quot;list-style-type:none; padding-left:0;&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;🏠 [[Заглавная страница|Главная Wiki]]&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;📘 [[Справка:Содержание|Справка и руководство]]&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;📜 [[Project:Правила|Правила проекта]]&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;🕒 [[Special:RecentChanges|Последние изменения]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= 👋 Привет! =&lt;br /&gt;
&lt;br /&gt;
Добро пожаловать на мою пользовательскую страницу.  &lt;br /&gt;
Я — &#039;&#039;&#039;DenchikP&#039;&#039;&#039;, создатель и администратор DenchikP Wiki и связанных проектов.&lt;br /&gt;
&lt;br /&gt;
Я занимаюсь разработкой, дизайном, настройкой серверов и созданием Wiki-документации. Моя цель — сделать информацию доступной, понятной и красивой ✨&lt;br /&gt;
&lt;br /&gt;
= 💼 Что я делаю =&lt;br /&gt;
&lt;br /&gt;
* Поддерживаю и развиваю [[Заглавная страница|этот вики-проект]]&lt;br /&gt;
* Обеспечиваю стабильную работу SCP:SL серверов&lt;br /&gt;
* Пишу собственные плагины и ботов для Discord, Minecraft, SCP:SL&lt;br /&gt;
* Поддерживаю [https://denchikp.com официальный сайт denchikp.com]&lt;br /&gt;
&lt;br /&gt;
= 📚 Полезные ссылки =&lt;br /&gt;
&lt;br /&gt;
* [[Справка:Содержание|Руководства и справка]]&lt;br /&gt;
* [[Project:Правила|Правила вики]]&lt;br /&gt;
* [[Project:Авторские права|Авторские права и DMCA]]&lt;br /&gt;
* [[Special:RecentChanges|Последние изменения]]&lt;br /&gt;
* [[Denchikp:Проекты|Мои проекты]]&lt;br /&gt;
* [[Denchikp:Календарь|Мой календарь дел]]&lt;br /&gt;
&lt;br /&gt;
= 📩 Связь =&lt;br /&gt;
&lt;br /&gt;
Если у вас есть предложения, вопросы или вы заметили ошибку — напишите на [mailto:support@denchikp.com support@denchikp.com].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Спасибо, что используете DenchikP Wiki!&#039;&#039; 🙌&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=334</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=334"/>
		<updated>2025-09-23T21:10:03Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;1&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;2&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;3&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;4&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;5&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;6&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;7&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;8&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;9&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;10&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;11&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;12&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;13&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;14&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;15&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;16&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;17&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;18&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;19&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;20&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;21&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;22&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=24|статус=Выходной|цвет=#ffa500}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=4|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=5|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=333</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=333"/>
		<updated>2025-09-23T21:09:47Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;1&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;2&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;3&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;4&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;5&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;6&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;7&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;8&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;9&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;10&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;11&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;12&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;13&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;14&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;15&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;16&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;17&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;18&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;19&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;20&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;21&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=&amp;lt;s&amp;gt;22&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=24|статус=Выходной|цвет=#ffa500}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=4|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=5|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=332</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=332"/>
		<updated>2025-09-21T01:02:33Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;1&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;2&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;3&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;4&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;5&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;6&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;7&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;8&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;9&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;10&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;11&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;12&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;13&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;14&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;15&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;16&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;17&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;18&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;19&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;20&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=4|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=5|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=331</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=331"/>
		<updated>2025-09-21T01:02:17Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;1&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;2&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;3&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;4&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;5&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;6&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;7&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;8&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;9&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;10&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;11&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;12&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;13&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;14&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;15&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;16&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;17&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;18&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;19&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;20&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=330</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=330"/>
		<updated>2025-09-21T01:01:48Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;1&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;2&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;3&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;4&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;5&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;6&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;7&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;8&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;9&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;10&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;11&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;12&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;13&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;14&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;15&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;16&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;17&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;18&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;19&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;20&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=329</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=329"/>
		<updated>2025-09-21T00:59:51Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;1&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;2&amp;lt;/s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=328</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=328"/>
		<updated>2025-09-21T00:59:11Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=&amp;lt;s&amp;gt;1&amp;lt;s&amp;gt;|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~2~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=327</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=327"/>
		<updated>2025-09-21T00:57:48Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~1~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~2~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=326</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=326"/>
		<updated>2025-09-21T00:57:29Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~1~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~2~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=29|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=325</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=325"/>
		<updated>2025-09-21T00:55:19Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~1~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~2~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=29|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=30|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до 16:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Выходной|цвет=#ffa500}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до 15:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=324</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=324"/>
		<updated>2025-09-21T00:54:48Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~1~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~2~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=22|статус=Занят до &#039;&#039;&#039;15:45&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=23|статус=Занят до &#039;&#039;&#039;16:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=24|статус=Занят до &#039;&#039;&#039;15:00&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=25|статус=Занят до &#039;&#039;&#039;15:25&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=26|статус=Занят до &#039;&#039;&#039;14:40&#039;&#039;&#039;|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=29|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=30|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до 16:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Выходной|цвет=#ffa500}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до 15:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=323</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=323"/>
		<updated>2025-09-21T00:52:40Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~1~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~2~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=22|статус=Занят до **15:45**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=23|статус=Занят до **16:00**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=24|статус=Занят до **15:00**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=25|статус=Занят до **15:25**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=26|статус=Занят до **14:40**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=29|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=30|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до 16:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Выходной|цвет=#ffa500}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до 15:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=322</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=322"/>
		<updated>2025-09-21T00:52:03Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~1~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~2~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~3~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~4~~|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~5~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~6~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~7~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~8~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~9~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~10~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~11~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~12~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~13~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~14~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~15~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~16~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~17~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~18~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~19~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=~~20~~|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=(Сегодня) 21|статус=Отдыхаю|цвет=#00ffff}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=22|статус=Занят до **15:45**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=23|статус=Занят до **16:00**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=24|статус=Занят до **15:00**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=25|статус=Занят до **15:25**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=26|статус=Занят до **14:40**|цвет=#e88a8a}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=Неизвестно|цвет=#404040}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=29|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=30|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до 16:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Выходной|цвет=#ffa500}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до 15:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=321</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=321"/>
		<updated>2025-09-21T00:42:01Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=1|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=2|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=3|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=4|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=5|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=6|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=7|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=8|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=9|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=10|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=11|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=12|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=13|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=14|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=15|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=16|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=17|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=18|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=19|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=20|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=21|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=22|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=23|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=24|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=25|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=26|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=29|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=30|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=1|статус=Занят до 16:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Выходной|цвет=#ffa500}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Занят до 15:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=5|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=320</id>
		<title>Denchikp:Календарь</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=Denchikp:%D0%9A%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C&amp;diff=320"/>
		<updated>2025-09-21T00:40:45Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div id=&amp;quot;utc-clock-panel&amp;quot; style=&amp;quot;&lt;br /&gt;
    background-color: #404040;&lt;br /&gt;
    padding: 15px;&lt;br /&gt;
    margin: 10px 0;&lt;br /&gt;
    border: 2px solid #ccc;&lt;br /&gt;
    border-radius: 8px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
    font-family: &#039;Segoe UI&#039;, sans-serif;&lt;br /&gt;
&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div style=&amp;quot;font-size: 1.2em; font-weight: bold; margin-bottom: 8px;&amp;quot;&amp;gt;&lt;br /&gt;
        Текущее время и дата у участника [[Участник:Denchikp|Denchikp]]&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-time&amp;quot; style=&amp;quot;font-size: 2.5em; font-weight: bold;&amp;quot;&amp;gt;Загрузка времени...&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;utc-clock-date&amp;quot; style=&amp;quot;font-size: 1.2em; color: #fff;&amp;quot;&amp;gt;Загрузка даты...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;calendar-table&amp;quot;&lt;br /&gt;
|+ &#039;&#039;&#039;Сентябрь 2025&#039;&#039;&#039;&lt;br /&gt;
! Пн !! Вт !! Ср !! Чт !! Пт !! Сб !! Вс&lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=31|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=1|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=2|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=3|статус=День окончен|цвет=#d9092c}}&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=4|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=5|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=6|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=7|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=8|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=9|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=10|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=11|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=12|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=13|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=14|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=15|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=16|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=17|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=18|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=19|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=20|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=21|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=22|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=23|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=24|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=25|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=26|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=27|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
|-&lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=28|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|текст=#ffffff|дата=29|статус=День окончен|цвет=#d9092c}} &lt;br /&gt;
| {{Календарный_день|дата=30|статус=Занят до 16:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=1|статус=Выходной|цвет=#ffa500}}&lt;br /&gt;
| {{Календарный_день|дата=2|статус=Занят до 15:00|цвет=#e88a8a}}&lt;br /&gt;
| {{Календарный_день|дата=3|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
| {{Календарный_день|дата=4|статус=Свободен|цвет=#88d888}} &lt;br /&gt;
|}&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;div style=&amp;quot;border:1px solid #fff; background:#404040; padding:15px; border-radius:6px; font-size:110%; margin-bottom:1em;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;span style=&amp;quot;color:#ffffff;&amp;quot;&amp;gt;ℹ️ Статусы:&amp;lt;/span&amp;gt;&#039;&#039;&#039;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#88d888;&amp;quot;&amp;gt;Свободен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Никаких дел, свободное время. Можно спокойно заниматься чем хочется.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#e88a8a;&amp;quot;&amp;gt;Занят&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Есть дела, работа или запланировано что-то важное. Может быть занят весь день или до определённого времени.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#00ffff;&amp;quot;&amp;gt;Отдыхаю&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Просто отдыхаю. Никаких планов, дел или спешки. Наслаждаюсь временем для себя. Иногда отдыхаю в конце дня — после дел, ближе к вечеру.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#A57CF0;&amp;quot;&amp;gt;Сплю...&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Сейчас я отдыхаю и набираюсь сил. Не доступен до пробуждения.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#d9092c;&amp;quot;&amp;gt;День окончен&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Все дела завершены, ничего больше не запланировано. Можно расслабиться, день подошёл к концу.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;span style=&amp;quot;color:#ffa500;&amp;quot;&amp;gt;Выходной&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt; - Праздничный или официальный выходной. День для отдыха, без обычных дел и забот.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
	<entry>
		<id>https://docs.denchikp.com/index.php?title=ShadowLabs:Classic&amp;diff=319</id>
		<title>ShadowLabs:Classic</title>
		<link rel="alternate" type="text/html" href="https://docs.denchikp.com/index.php?title=ShadowLabs:Classic&amp;diff=319"/>
		<updated>2025-06-23T20:55:48Z</updated>

		<summary type="html">&lt;p&gt;Denchikp: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;&amp;lt;b&amp;gt;&amp;lt;span style=&#039;font-family:&amp;quot;Comic Sans MS&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#ffa500;&#039;&amp;gt;&amp;lt;span style=&#039;color:#4776E6;&#039;&amp;gt;П&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4B73E6;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5071E6;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#556FE6;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#596CE6;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5E6AE6;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#6368E7;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#6C63E7;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7161E7;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#765FE7;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7B5DE8;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7F5AE8;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8458E8;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8956E8;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FFFFFF;&#039;&amp;gt;|&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FFFFFF;&#039;&amp;gt;[R&amp;lt;span style=&#039;color:#0091FF;&#039;&amp;gt;U&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;S&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#8E24AA;&#039;&amp;gt;S&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8524A1;&#039;&amp;gt;h&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7D2499;&#039;&amp;gt;a&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#752591;&#039;&amp;gt;d&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#6D2588;&#039;&amp;gt;o&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#652680;&#039;&amp;gt;w&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5C2678;&#039;&amp;gt;L&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#542770;&#039;&amp;gt;a&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4C2767;&#039;&amp;gt;b&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#44285F;&#039;&amp;gt;s&amp;lt;/span&amp;gt; // &amp;lt;span style=&#039;color:#1BA1E2;&#039;&amp;gt;C&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#18ACC6;&#039;&amp;gt;l&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#15B7AB;&#039;&amp;gt;a&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#13C28F;&#039;&amp;gt;s&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#10CD74;&#039;&amp;gt;s&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0ED858;&#039;&amp;gt;i&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0BE33D;&#039;&amp;gt;c&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/h2&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Impact&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;П&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F00F0F;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E11E1E;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D22D2D;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C33C3C;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B44B4B;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A55A5A;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#877878;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#788787;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#699696;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5AA5A5;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4BB4B4;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#3CC3C3;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#2DD2D2;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#1EE1E1;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0FF0F0;&#039;&amp;gt;:&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Comic Sans MS&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF0F0;&#039;&amp;gt;1&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Явные (&amp;lt;span style=&#039;color:#00ffff;&#039;&amp;gt;не шуточные&amp;lt;/span&amp;gt;) оскорбления запрещены (&amp;lt;span style=&#039;color:#00ffff;&#039;&amp;gt;шутка или нет, решает оскорбленный&amp;lt;/span&amp;gt;).&amp;lt;br&amp;gt; &lt;br /&gt;
[ &amp;lt;span style=&#039;color:#ffa500;&#039;&amp;gt;Мьют на 15 минут&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;Если продолжится наказание&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#C0FF42;&#039;&amp;gt;x2&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;если после этого продолжается бан на 30 минут.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF0F0;&#039;&amp;gt;2&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Запрещено издавать неприятные звуки, орать во всю глотку. &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;S&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF1F1F;&#039;&amp;gt;o&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF3F3F;&#039;&amp;gt;u&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF5F5F;&#039;&amp;gt;n&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF7F7F;&#039;&amp;gt;d&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF9F9F;&#039;&amp;gt;P&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFBFBF;&#039;&amp;gt;a&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFDFDF;&#039;&amp;gt;d&amp;lt;/span&amp;gt; разрешен только в подходящих для него ситуациях (&amp;lt;span style=&#039;color:#00ffff;&#039;&amp;gt;Пример: прилетел &amp;lt;span style=&#039;color:#0091FF;&#039;&amp;gt;МОГ&amp;lt;/span&amp;gt;, командир кричит: &amp;quot;За республику!&amp;quot;, в ответ через &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;S&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF1F1F;&#039;&amp;gt;o&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF3F3F;&#039;&amp;gt;u&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF5F5F;&#039;&amp;gt;n&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF7F7F;&#039;&amp;gt;d&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF9F9F;&#039;&amp;gt;P&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFBFBF;&#039;&amp;gt;a&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFDFDF;&#039;&amp;gt;d&amp;lt;/span&amp;gt;: &amp;quot;Ah yes sir&amp;quot;. Если вас просят выключить - лучше выключить.&amp;lt;/span&amp;gt;)&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#ffa500;&#039;&amp;gt;Мьют на 15 минут&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;Если продолжится наказание&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#C0FF42;&#039;&amp;gt;x2&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;если после этого продолжается бан на 30 минут.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF0F0;&#039;&amp;gt;3&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Пиар сторонних проектов запрещён.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#00ffaa&#039;&amp;gt;Решает администрация.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF0F0;&#039;&amp;gt;4&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Разжигание межнациональной и религиозной розни на сервере запрещено.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#00ffaa&#039;&amp;gt;Решает администрация.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF0F0;&#039;&amp;gt;5&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Репорты/жалобы, не касающиеся нарушения правил сервера, будут приняты как шуточные.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;Бан на 30 минут&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ffff00;&#039;&amp;gt;Исключение: Если вы не можете говорить вы можете отправить сообщение через репорт на админа и написать то что вам надо но не злоупотреблять.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Impact&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;П&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F00F00;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E11E00;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D22D00;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C33C00;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B44B00;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A55A00;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#877800;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#788700;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#699600;&#039;&amp;gt;й&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5AA500;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4BB400;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#3CC300;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#2DD200;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#1EE100;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;:&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;1&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Тимминг с враждебными классами полностью запрещен.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;Бан на 15 минут.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;2&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Кемпинг за &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;SCP&amp;lt;/span&amp;gt; объекты (&amp;lt;span style=&#039;color:#00ffff;&#039;&amp;gt;&amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;SCP-079&amp;lt;/span&amp;gt; не считается&amp;lt;/span&amp;gt;), &amp;lt;span style=&#039;color:#32CD32;&#039;&amp;gt;Повстанцев Хаоса&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#0091FF;&#039;&amp;gt;МОГ&amp;lt;/span&amp;gt; - запрещён (&amp;lt;span style=&#039;color:#00ffff;&#039;&amp;gt;кроме &amp;lt;span style=&#039;color:#ff0000;&#039;&amp;gt;SCP-106&amp;lt;/span&amp;gt; на его спавне&amp;lt;/span&amp;gt;). Время кемпинга не должно превышать 1 мин.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F80604;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F20C08;&#039;&amp;gt;н&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E61810;&#039;&amp;gt;в&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DA2418;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D42A1C;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CE3020;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C83624;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C23C28;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BC422C;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B64830;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B04E34;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A95438;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A35B3C;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9D6140;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#916D48;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8B734C;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#7F7F55;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#798559;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#738B5D;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#6D9161;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#679765;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#619D69;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5BA36D;&#039;&amp;gt;ь&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#54AA71;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4EB075;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#48B679;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#42BC7D;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#3CC281;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#30CE89;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#2AD48D;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#24DA91;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#1EE095;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#18E699;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#12EC9D;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0CF2A1;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#06F8A5;&#039;&amp;gt;а.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;3&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Нельзя убивать &amp;lt;span style=&#039;color:#ffa500;&#039;&amp;gt;Класс Д&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#f5f564;&#039;&amp;gt;Научных Сотрудников&amp;lt;/span&amp;gt; если они связаны, будут связаны, или они уже под опекой кого либо.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан на 30 минут.&amp;lt;/span&amp;gt; ]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;4&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Нельзя подставлять союзные классы. (&amp;lt;span style=&#039;color:#00ffff;&#039;&amp;gt;Подставой является закрытие дверей, вызов лифтов перед союзниками в случаи угрозы жизни&amp;lt;/span&amp;gt;)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Comic Sans MS&amp;quot;;&#039;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[4.1] &amp;lt;span style=&#039;color:#ffa500;&#039;&amp;gt;Класс Д&amp;lt;/span&amp;gt; нейтрален ко всем, даже к самим себе, кроме &amp;lt;span style=&#039;color:#32CD32&#039;&amp;gt;Повстанцев Хаоса&amp;lt;/span&amp;gt;. Они могут подставлять свой же класс.&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан на 15 минут&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ffff00;&#039;&amp;gt;Исключение: Пункт 4.1 и критическая ситуация в которой могут погибнуть все/большая часть.&amp;lt;/span&amp;gt; ]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;5&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Читы и багоюз запрещен.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#00ffff&#039;&amp;gt;Сначала: Репорт на ваш аккаунт за читы&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#f5f564&#039;&amp;gt;+&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#ff0000&#039;&amp;gt;Потом: Бан навсегда.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;6&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Запрещено за &amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;SCP-343&amp;lt;/span&amp;gt; (&amp;lt;span style=&#039;color:#00ffff&#039;&amp;gt;Бог&amp;lt;/span&amp;gt;) мешать игрокам. (&amp;lt;span style=&#039;color:#00ffff&#039;&amp;gt;Мешать &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;SCP&amp;lt;/span&amp;gt; также нельзя&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ffff00;&#039;&amp;gt;Исключение: Не открывать дверь которую просит открыть &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;SCP&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;)&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан на 15 минут.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#0FF000;&#039;&amp;gt;7&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Запрещено за &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;SCP-035&amp;lt;/span&amp;gt; мешать другим &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;SCP&amp;lt;/span&amp;gt; если те не мешали вам.&lt;br /&gt;
&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан на 15 минут.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Impact&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;П&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF0900;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF1200;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF1B00;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF2400;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF2D00;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF3600;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FF4800;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF5100;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF5B00;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF6400;&#039;&amp;gt;ж&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF6D00;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF7600;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF7F00;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF8800;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF9100;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FF9A00;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFA300;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFAD00;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFB600;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFBF00;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FFD100;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFDA00;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFE300;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFEC00;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FFF500;&#039;&amp;gt;:&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#FFFF00;&#039;&amp;gt;1&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Запрещено стрелять по союзникам, просто не за что.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан на 30 минут, &amp;lt;span style=&#039;color:#ffff00;&#039;&amp;gt;Исключение: Если вы попали случайно, не заметили что это ваш союзник или в опасной ситуации и человек не собирается кидать репорт на игрока.&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Comic Sans MS&amp;quot;;&#039;&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;[&amp;lt;span style=&#039;color:#FFFF00;&#039;&amp;gt;2&amp;lt;/span&amp;gt;]&amp;lt;/span&amp;gt; Запрещено бросать гранату в лифте полный вашими союзниками.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан на 1 час, &amp;lt;span style=&#039;color:#ffff00;&#039;&amp;gt;Исключение: Если в лифте был &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;SCP&amp;lt;/span&amp;gt; или другой враждебный класс&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Impact&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;Д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#06F0FF;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0DE1FF;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#13D2FF;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#1AC3FF;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#20B4FF;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#27A5FF;&#039;&amp;gt;:&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[1]&amp;lt;/span&amp;gt; Игнорирование, Оскорбление Администрации&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан на 1 день, Если что-то серьезное и вы игнорировали то наказание &amp;lt;span style=&#039;color:#C0FF42;&#039;&amp;gt;x2&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[2]&amp;lt;/span&amp;gt; Попытки &amp;lt;span style=&#039;color:orange;&#039;&amp;gt;DDoS/DoS&amp;lt;/span&amp;gt; или другие типы атаки запрещены.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Бан навсегда&amp;lt;/span&amp;gt;, &amp;lt;span style=&#039;color:#ffff00;&#039;&amp;gt;Дополнение: Если у вас есть свой проект мы имеем право отправить на ваш сервер/проект жалобу за &amp;lt;span style=&#039;color:orange;&#039;&amp;gt;DDoS/DoS&amp;lt;/span&amp;gt; нашего сервера.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[3]&amp;lt;/span&amp;gt; Нагрузка спамом предметов запрещена.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;color:#FF0000;&#039;&amp;gt;Р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC0201;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F90503;&#039;&amp;gt;ш&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F60805;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F30B07;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F00E09;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EA140D;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E7170F;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E41A11;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E11D13;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DE2015;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DB2317;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D82619;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D5291B;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D22C1D;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CF2F1F;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CC3221;&#039;&amp;gt;ц&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C93523;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C63825;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C33B27;&#039;&amp;gt;,&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#BD402B;&#039;&amp;gt;Д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BA432D;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B7462F;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B44931;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B14C33;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#AE4F35;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#AB5237;&#039;&amp;gt;ь&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A95538;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A6583A;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A35B3C;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A05E3E;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9D6140;&#039;&amp;gt;ь&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#976744;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#946A46;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#916D48;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8E704A;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8B734C;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#88764E;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#857950;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#827B52;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7F7E54;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#798458;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#76875A;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#738A5C;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#708D5E;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#6A9362;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#679664;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#619C68;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5E9F6A;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#5BA26C;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#58A56D;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#56A86F;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#53AB71;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#50AE73;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4DB175;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4AB477;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#47B779;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#41BC7D;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#3BC281;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#38C583;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#35C885;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#32CB87;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#2FCE89;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#2CD18B;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#29D48D;&#039;&amp;gt;ь&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#26D78F;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#23DA91;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#20DD93;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#1DE095;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#1AE397;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#14E99B;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#11EC9D;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0EEF9F;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#0BF2A1;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#08F5A3;&#039;&amp;gt;а.&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[4]&amp;lt;/span&amp;gt; Попытки обхода наказания запрещены.&amp;lt;br&amp;gt; [ &amp;lt;span style=&#039;font-family:&amp;quot;Comic Sans MS&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#ffff00;&#039;&amp;gt;Новый аккаунт или другие типы к примеру: Новый IP, Новое устройство или VPN будут забанены по той причине по который вас забанили.&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt; ]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Impact&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;Д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FFE7;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FFD0;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FFB9;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FFA2;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FF8B;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FF73;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FF5C;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FF45;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FF2E;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#00FF17;&#039;&amp;gt;:&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[1]&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E81416;&#039;&amp;gt;П&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E81515;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E81615;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E81915;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E91B14;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E91C14;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E91E14;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E91F14;&#039;&amp;gt;ш&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EA2114;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EA2213;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EA2313;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EA2513;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EB2812;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB2912;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB2B12;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB2C12;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EC2E12;&#039;&amp;gt;ы&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EC2F11;&#039;&amp;gt;х&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EC3211;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED3311;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED3510;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED3610;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED3810;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED3910;&#039;&amp;gt;л&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EE3C0F;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EE3E0F;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EE3F0F;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF400F;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF420E;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF430E;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF450E;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F0460E;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F0480E;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F0490D;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F04B0D;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F04C0D;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F14E0D;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F1500C;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F1520C;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2530C;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2550C;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2560B;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2580B;&#039;&amp;gt;щ&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F3590B;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F35B0B;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F35C0B;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F35F0A;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F4600A;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F4620A;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F46309;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F46509;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F56609;&#039;&amp;gt;ь&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F56809;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F56909;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F56B08;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F66C08;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F66D08;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F66F08;&#039;&amp;gt;ь&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F67207;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F77307;&#039;&amp;gt;ю&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F77507;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F77607;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F77806;&#039;&amp;gt;й&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F87A06;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F87C06;&#039;&amp;gt;з&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F97F05;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F98005;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F98205;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F98504;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA8604;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA8804;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA8904;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA8A03;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FB8C03;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FB8D03;&#039;&amp;gt;в&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FB9003;&#039;&amp;gt;в&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FC9302;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC9502;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC9602;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC9701;&#039;&amp;gt;ю&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FD9A01;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD9C01;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD9D01;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE9F00;&#039;&amp;gt;ь&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FEA000;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FEA200;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FEA300;&#039;&amp;gt;.&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[2]&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FF6E7F;&#039;&amp;gt;Л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE6F80;&#039;&amp;gt;ю&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD7081;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD7182;&#039;&amp;gt;ы&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC7384;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FB7586;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA7688;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F97889;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F9798A;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F87A8C;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F77B8D;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F77D8E;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F67E90;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F58192;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F48294;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F38395;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F38496;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F28698;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F18799;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F1889A;&#039;&amp;gt;ы&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F0899C;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EF8C9E;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EE8D9F;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#ED90A2;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EC91A3;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB92A5;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB94A6;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EA95A7;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E996A9;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E997AA;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E899AB;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E79AAD;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E79BAE;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E69CAF;&#039;&amp;gt;/&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E59EB1;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E59FB2;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E4A0B3;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E3A1B5;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E3A3B6;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E2A4B7;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E1A5B9;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E1A7BA;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DFA9BD;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DFAABE;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DEACBF;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DEADC0;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DDAEC2;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DCAFC3;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DCB1C4;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DAB3C7;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DAB5C8;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D8B7CB;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D8B8CC;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D7BACE;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D6BBCF;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D6BCD0;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D4BFD3;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D4C0D4;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D3C1D6;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D2C2D7;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D2C4D8;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D1C5DA;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D0C6DB;&#039;&amp;gt;щ&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D0C8DC;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CFC9DE;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CECADF;&#039;&amp;gt;ы&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#CDCDE1;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CCCEE3;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#CBD0E5;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CAD2E7;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CAD3E8;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#C8D5EB;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C8D7EC;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C7D8ED;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C6D9EF;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C6DBF0;&#039;&amp;gt;х&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#C4DDF3;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C4DEF4;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C3E0F5;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C2E1F7;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C2E2F8;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C1E3F9;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C0E5FB;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C0E6FC;&#039;&amp;gt;х&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BFE7FD;&#039;&amp;gt;.&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[3]&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#77A1D3;&#039;&amp;gt;Н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A1D2;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A1D2;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A2D2;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A2D2;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A3D2;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A3D2;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A4D2;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#77A5D2;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A5D2;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A6D1;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A6D1;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A6D1;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A7D1;&#039;&amp;gt;л&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#77A8D1;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77A8D1;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#77A9D1;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77AAD1;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77AAD0;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77ABD0;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77ABD0;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77ACD0;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77ACD0;&#039;&amp;gt;ж&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77ACD0;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77ADD0;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77ADD0;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77AED0;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#77AFCF;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77AFCF;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B0CF;&#039;&amp;gt;с&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#77B1CF;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B1CF;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#77B2CF;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B2CF;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B3CF;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B3CE;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B4CE;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B4CE;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B5CE;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#77B5CE;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B6CE;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B6CE;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B7CE;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B7CE;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B8CE;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B8CD;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B8CD;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78B9CD;&#039;&amp;gt;.&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#78BACD;&#039;&amp;gt;Н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BACD;&#039;&amp;gt;ы&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BBCD;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BBCD;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BCCD;&#039;&amp;gt;ш&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BCCD;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BDCC;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BDCC;&#039;&amp;gt;м&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#78BECC;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#78BFCC;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78BFCC;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C0CC;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C0CC;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C1CC;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C1CB;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C2CB;&#039;&amp;gt;щ&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C2CB;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C3CB;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C3CB;&#039;&amp;gt;,&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#78C4CB;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C4CB;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C5CB;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#78C6CA;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C6CA;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C7CA;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C7CA;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C8CA;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C8CA;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C9CA;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78C9CA;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#78CACA;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#79CAC9;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7ACAC9;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7BC9C9;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7CC8C9;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7DC7C8;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7EC7C8;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#80C6C8;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#82C4C7;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#83C3C7;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#84C3C6;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#86C2C6;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#87C1C6;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#88C0C5;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#89C0C5;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8ABFC5;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8CBEC5;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8DBDC4;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8EBCC4;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8FBCC4;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#90BBC3;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#93B9C3;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#94B9C2;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#95B8C2;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#96B7C2;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#98B6C1;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#99B5C1;&#039;&amp;gt;ш&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9AB5C1;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9BB4C1;&#039;&amp;gt;ю&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9CB3C0;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9EB2C0;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9FB2C0;&#039;&amp;gt;я&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#A1B0BF;&#039;&amp;gt;с&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#A4AEBE;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A5AEBE;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A6ADBE;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A7ACBD;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A8ABBD;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#AAABBD;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ABAABD;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ACA9BC;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ADA8BC;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#B0A7BB;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B1A6BB;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B2A5BB;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B3A4BA;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B4A3BA;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B6A3BA;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B7A2B9;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#B9A0B9;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BAA0B9;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BC9FB8;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BD9EB8;&#039;&amp;gt;,&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#BF9CB7;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C09CB7;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C29BB7;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#C499B6;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C599B6;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C698B5;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C897B5;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C996B5;&#039;&amp;gt;ю&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CA95B5;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CB95B4;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CC94B4;&#039;&amp;gt;я&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#CF92B3;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D092B3;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D191B3;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D290B2;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D48FB2;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D58EB2;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D68EB1;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D78DB1;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D88CB1;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DA8BB1;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DB8BB0;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DD89B0;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DE88AF;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E087AF;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E187AF;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E286AE;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E385AE;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E484AE;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E684AD;&#039;&amp;gt;.&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[4]&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E65C00;&#039;&amp;gt;А&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E65D00;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E65E00;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E65F00;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E66001;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E66101;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E76201;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E76302;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E76402;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E76502;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E76603;&#039;&amp;gt;ц&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E76703;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E86803;&#039;&amp;gt;я&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E86A04;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E86B04;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E86C04;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E86E05;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E96F05;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E97005;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E97206;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E97306;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E97407;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EA7507;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EA7607;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EA7808;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EA7A08;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB7B09;&#039;&amp;gt;ё&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EB7D09;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB7F0A;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB800A;&#039;&amp;gt;й&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EB810A;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EC820B;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EC830B;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EC840B;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EC850C;&#039;&amp;gt;я&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EC870C;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED880D;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#ED8A0D;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED8B0D;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED8C0E;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#ED8D0E;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EE8E0E;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EE900F;&#039;&amp;gt;ж&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EE910F;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EE920F;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#EE9410;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF9510;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF9611;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF9711;&#039;&amp;gt;у&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF9811;&#039;&amp;gt;ж&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF9911;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EF9A12;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F09B12;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F09C12;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F09D13;&#039;&amp;gt;ю&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F09E13;&#039;&amp;gt;.&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F0A114;&#039;&amp;gt;Е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F1A214;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F1A314;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F1A415;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F1A615;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F1A715;&#039;&amp;gt;ы&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F2A916;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2AA16;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2AB17;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2AC17;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F2AD17;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F3AE18;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F3AF18;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F3B018;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F3B219;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F3B319;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F3B419;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F4B51A;&#039;&amp;gt;ь&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F4B61A;&#039;&amp;gt;,&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F4B81A;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F4B91B;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F5BB1B;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F5BC1C;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F5BD1C;&#039;&amp;gt;м&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F5BF1D;&#039;&amp;gt;в&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F6C11D;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F6C31E;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F6C41E;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F6C51E;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F6C61E;&#039;&amp;gt;л&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F7C81F;&#039;&amp;gt;с&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F7CA20;&#039;&amp;gt;ж&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F7CB20;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F7CC20;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F7CD21;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F8CE21;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F8CF21;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F8D022;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F8D122;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F8D222;&#039;&amp;gt;.&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[5]&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D31027;&#039;&amp;gt;Е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D31027;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D31027;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D31128;&#039;&amp;gt;и&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D41128;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D41229;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D41229;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D4132A;&#039;&amp;gt;-&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D5132A;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D5132A;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D5142B;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D5152B;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D6152C;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D6162D;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D6162D;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D7172D;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D7172E;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D7172E;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D7182E;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D8182F;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D81930;&#039;&amp;gt;в&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D81A30;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D91A31;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D91B31;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D91B32;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D91B32;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DA1C32;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DA1C33;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DA1D33;&#039;&amp;gt;х&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DB1D34;&#039;&amp;gt;э&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DB1E34;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DB1E35;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DB1F35;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DC1F36;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DC2036;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DC2137;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DD2137;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DD2138;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DD2238;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DD2238;&#039;&amp;gt;т&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DE2339;&#039;&amp;gt;ч&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DE233A;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DE243A;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#DF253B;&#039;&amp;gt;э&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DF253B;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DF253B;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E0263C;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E0273D;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E0273D;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E0273D;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E1283E;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E1283E;&#039;&amp;gt;ш&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E1293E;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E1293F;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E1293F;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E22A40;&#039;&amp;gt;.&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E22B40;&#039;&amp;gt;В&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E22B41;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E32B41;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E32C41;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E32C42;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E32D42;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E42D43;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E42E43;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E42E44;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E42F44;&#039;&amp;gt;я&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E52F45;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E53045;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E53046;&#039;&amp;gt;к&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E63146;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E63147;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E63247;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E73248;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E73348;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E73348;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E73349;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E73449;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E83449;&#039;&amp;gt;ы&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E8354A;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E8354B;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E9364B;&#039;&amp;gt;ю&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E9364B;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E9374C;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E9374C;&#039;&amp;gt;.&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;color:#00FFFF;&#039;&amp;gt;[6]&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#16A085;&#039;&amp;gt;Н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#19A084;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#1FA282;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#22A281;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#25A380;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#29A47F;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#2FA57D;&#039;&amp;gt;&amp;quot;&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#32A67C;&#039;&amp;gt;Т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#35A67B;&#039;&amp;gt;ы&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#38A77A;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#3CA879;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#3FA878;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#42A977;&#039;&amp;gt;ь&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#45AA76;&#039;&amp;gt;&amp;quot;&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#4BAB74;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#4FAC73;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#52AD72;&#039;&amp;gt;с&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#58AE70;&#039;&amp;gt;в&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#5EAF6E;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#62B06D;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#65B16C;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#68B16B;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#6BB26A;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#6EB369;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#71B368;&#039;&amp;gt;а&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#78B566;&#039;&amp;gt;А&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7BB565;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#7EB664;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#81B763;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#85B762;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#88B861;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8BB960;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#8EBA5F;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#91BA5E;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#94BB5D;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#98BC5C;&#039;&amp;gt;т&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9BBC5B;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#9EBD5A;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A1BE59;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#A4BE58;&#039;&amp;gt;в&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#ABC056;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#AEC055;&#039;&amp;gt;ы&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#B4C253;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#B7C252;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BAC351;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#BEC450;&#039;&amp;gt;к&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C1C54F;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C4C54E;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#C7C64D;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CAC74C;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#CDC74B;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#D4C949;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#D7C948;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#DACA47;&#039;&amp;gt;ё&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#E0CB45;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E4CC44;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#E7CD43;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EACD42;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#EDCE41;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F0CF40;&#039;&amp;gt;!&amp;lt;/span&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;span style=&#039;font-family:&amp;quot;Impact&amp;quot;;&#039;&amp;gt;&amp;lt;span style=&#039;color:#FFA500;&#039;&amp;gt;П&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FEA100;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE9E00;&#039;&amp;gt;с&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE9B00;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE9800;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE9400;&#039;&amp;gt;д&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE9100;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FE8E00;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD8B00;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FD8400;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD8100;&#039;&amp;gt;з&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD7E00;&#039;&amp;gt;м&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD7A00;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FD7700;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC7400;&#039;&amp;gt;е&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC7100;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC6D00;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC6A00;&#039;&amp;gt;е&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FC6400;&#039;&amp;gt;п&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FC6000;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FB5D00;&#039;&amp;gt;а&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FB5A00;&#039;&amp;gt;в&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FB5700;&#039;&amp;gt;и&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FB5300;&#039;&amp;gt;л&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FB4D00;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FB4A00;&#039;&amp;gt;ы&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA4600;&#039;&amp;gt;л&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA4300;&#039;&amp;gt;о&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FA3D00;&#039;&amp;gt;2&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#FA3900;&#039;&amp;gt;1&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#FA3300;&#039;&amp;gt;н&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F93000;&#039;&amp;gt;о&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F92C00;&#039;&amp;gt;я&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F92900;&#039;&amp;gt;б&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F92600;&#039;&amp;gt;р&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F92300;&#039;&amp;gt;я&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F91C00;&#039;&amp;gt;2&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F81900;&#039;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F81600;&#039;&amp;gt;2&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F81200;&#039;&amp;gt;4&amp;lt;/span&amp;gt; &amp;lt;span style=&#039;color:#F80C00;&#039;&amp;gt;г&amp;lt;/span&amp;gt;&amp;lt;span style=&#039;color:#F80900;&#039;&amp;gt;.&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;/div&gt;</summary>
		<author><name>Denchikp</name></author>
	</entry>
</feed>