<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Reference on Tenpm Uptime Docs</title><link>https://docs.tenpmuptime.com/docs/reference/</link><description>Recent content in Reference on Tenpm Uptime Docs</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://docs.tenpmuptime.com/docs/reference/index.xml" rel="self" type="application/rss+xml"/><item><title>API reference</title><link>https://docs.tenpmuptime.com/docs/reference/api/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.tenpmuptime.com/docs/reference/api/</guid><description>&lt;h1 id="api-reference"&gt;API reference&lt;a class="anchor" href="#api-reference"&gt;#&lt;/a&gt;&lt;/h1&gt;&#10;&lt;p&gt;The JSON API a &lt;code&gt;monitor&lt;/code&gt; agent uses to enroll with a &lt;code&gt;tenpm uptime&lt;/code&gt; server, sync&#10;its assigned check set, and report results and status back. Generated from&#10;&lt;code&gt;docs-site/assets/tenpmuptime-monitor.yaml&lt;/code&gt; — see that file&amp;rsquo;s header for how&#10;it&amp;rsquo;s kept in sync with the code.&lt;/p&gt;&#10;&lt;a href="https://docs.tenpmuptime.com/tenpmuptime-monitor.yaml" download class="book-btn"&gt;Download the raw OpenAPI spec (tenpmuptime-monitor.yaml)&lt;/a&gt;&#10;&lt;p&gt;The JSON API a &lt;code&gt;monitor&lt;/code&gt; agent uses to enroll with a &lt;code&gt;tenpm uptime&lt;/code&gt; server, sync its assigned check set, and report results and status back. This is the wire contract described in &lt;code&gt;internal/model&lt;/code&gt; and implemented by &lt;code&gt;internal/server/api_handlers.go&lt;/code&gt;; both binaries build against the same Go structs today, so treat this document as generated-by-hand from that code, not the other way around — if the two disagree, the code is right and this file is stale.&#10;Every route except &lt;code&gt;POST /api/enroll&lt;/code&gt; requires the monitor's own API key, minted at enrollment. &lt;code&gt;POST /api/enroll&lt;/code&gt; requires an &lt;em&gt;enrollment token&lt;/em&gt; instead (an org token or a platform token — see the security scheme below), since no monitor exists yet at that point.&#10;Error responses across every endpoint are a &lt;strong&gt;plain-text body&lt;/strong&gt; (one line) with a non-2xx status, not a JSON envelope — the handlers use Go's &lt;code&gt;http.Error&lt;/code&gt;. The &lt;code&gt;4xx&lt;/code&gt;/&lt;code&gt;5xx&lt;/code&gt; responses below document status code and body meaning; there is no shared error schema.&lt;/p&gt;</description></item></channel></rss>