A monitor is a deployed definition that runs on a schedule. When you run griffin apply, your local monitor files are pushed to the hub as monitors.
Monitor lifecycle
Write monitor files in __griffin__/ directories
Plan to preview what will change on the hub
Apply to create, update, or delete monitors
The hub schedules execution based on each monitor’s frequency
Results are stored and available via the CLI or API
Viewing monitors
After deploying, you can see your monitors through the CLI:
# Preview what's deployed vs what's localgriffin plan# Preview for a specific environmentgriffin plan production
The plan output shows which monitors will be created, updated, or left unchanged.
Updating monitors
Edit your monitor files and re-deploy:
# Make changes to your monitor files, then:griffin plan # Preview the diffgriffin apply # Push changes
The hub tracks monitors by name within a project and environment. If you change a monitor’s name, it’s treated as a new monitor (and the old one remains unless pruned).
Deleting monitors
By default, griffin apply only creates and updates monitors. To also remove monitors that no longer exist locally:
griffin apply --prunegriffin apply production --prune
--prune deletes any monitors on the hub that don’t have a corresponding local monitor file. Make sure your local monitor files are complete before using this flag.
Monitor identity
A monitor is uniquely identified by the combination of:
Project — set during griffin init
Environment — the target environment (e.g., default, production)
Name — the name field in your monitor builder
This means the same monitor file can be deployed to multiple environments independently.
Triggering a manual run
You can trigger a monitor to run immediately without waiting for its schedule:
griffin run --monitor health-checkgriffin run production --monitor health-check --wait
The --wait flag blocks until the run completes and shows the result.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Griffin","colors":{"primary":"#EC407A","light":"#EC407A","dark":"#EC407A"},"logo":{"light":"https://mintcdn.com/griffin/vE9jJsSmbB6yUPj9/logo/logo.svg?fit=max\u0026auto=format\u0026n=vE9jJsSmbB6yUPj9\u0026q=85\u0026s=a6046fb332de88a50acea2c9e1d790a7","dark":"https://mintcdn.com/griffin/vE9jJsSmbB6yUPj9/logo/logo.svg?fit=max\u0026auto=format\u0026n=vE9jJsSmbB6yUPj9\u0026q=85\u0026s=a6046fb332de88a50acea2c9e1d790a7"},"favicon":"/favicon.png","appearance":{"default":"dark","strict":true},"navbar":{"links":[],"primary":{"type":"github","label":"GitHub","href":"https://github.com/griffin-open-source/griffin"}},"footer":{"socials":{"github":"https://github.com/griffin-open-source/griffin"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/griffin-open-source/griffin"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"griffin","hasAudioNarration":false,"actualSubdomain":"griffin","customDomains":["docs.getgriffinapp.com"],"gitSource":{"type":"github","owner":"griffin-open-source","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6ae945d1d69537c8ab6f39df:success","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API Reference","count":44},{"language":"default","tag":"Endpoints","count":41},{"language":"default","tag":"Guides","count":32},{"language":"default","tag":"integrations","count":11},{"language":"default","tag":"notifications","count":8},{"language":"default","tag":"Writing Monitors","count":7},{"language":"default","tag":"Command Line","count":5},{"language":"default","tag":"Platform","count":5},{"language":"default","tag":"monitor","count":5},{"language":"default","tag":"secrets","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"platform/monitors","slug":"/platform/monitors","pageMetadata":{"title":"Monitors","description":"Managing your deployed API monitors","href":"/platform/monitors","hidden":false},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Managing your deployed API monitors\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Mermaid,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Mermaid)_missingMdxReference(`Mermaid`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`A monitor is a deployed definition that runs on a schedule. When you run `,_jsx(_components.code,{children:`griffin apply`}),`, your local monitor files are pushed to the hub as monitors.`]}),`\n`,_jsx(Heading,{level:`2`,id:`monitor-lifecycle`,children:`Monitor lifecycle`}),`\n`,_jsx(Mermaid,{chart:`flowchart LR\n A[\"Write monitor\"] --> B[\"griffin plan\"] --> C[\"griffin apply\"] --> D[\"Scheduled execution\"] --> E[\"Results\"]`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Write`}),` monitor files in `,_jsx(_components.code,{children:`__griffin__/`}),` directories`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Plan`}),` to preview what will change on the hub`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Apply`}),` to create, update, or delete monitors`]}),`\n`,_jsxs(_components.li,{children:[`The hub `,_jsx(_components.strong,{children:`schedules`}),` execution based on each monitor’s frequency`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Results`}),` are stored and available via the CLI or API`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`viewing-monitors`,children:`Viewing monitors`}),`\n`,_jsx(_components.p,{children:`After deploying, you can see your monitors through the CLI:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Preview what's deployed vs what's local`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` plan`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Preview for a specific environment`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` plan`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` production`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`The plan output shows which monitors will be created, updated, or left unchanged.`}),`\n`,_jsx(Heading,{level:`2`,id:`updating-monitors`,children:`Updating monitors`}),`\n`,_jsx(_components.p,{children:`Edit your monitor files and re-deploy:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Make changes to your monitor files, then:`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` plan`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # Preview the diff`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` apply`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # Push changes`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`The hub tracks monitors by name within a project and environment. If you change a monitor’s name, it’s treated as a new monitor (and the old one remains unless pruned).`}),`\n`,_jsx(Heading,{level:`2`,id:`deleting-monitors`,children:`Deleting monitors`}),`\n`,_jsxs(_components.p,{children:[`By default, `,_jsx(_components.code,{children:`griffin apply`}),` only creates and updates monitors. To also remove monitors that no longer exist locally:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` apply`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --prune`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` apply`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` production`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --prune`})]}),`\n`]})})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`--prune`}),` deletes any monitors on the hub that don’t have a corresponding local monitor file. Make sure your local monitor files are complete before using this flag.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`monitor-identity`,children:`Monitor identity`}),`\n`,_jsx(_components.p,{children:`A monitor is uniquely identified by the combination of:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Project`}),` — set during `,_jsx(_components.code,{children:`griffin init`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Environment`}),` — the target environment (e.g., `,_jsx(_components.code,{children:`default`}),`, `,_jsx(_components.code,{children:`production`}),`)`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Name`}),` — the `,_jsx(_components.code,{children:`name`}),` field in your monitor builder`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`This means the same monitor file can be deployed to multiple environments independently.`}),`\n`,_jsx(Heading,{level:`2`,id:`triggering-a-manual-run`,children:`Triggering a manual run`}),`\n`,_jsx(_components.p,{children:`You can trigger a monitor to run immediately without waiting for its schedule:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --monitor`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` health-check`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`griffin`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` production`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --monitor`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` health-check`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --wait`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`--wait`}),` flag blocks until the run completes and shows the result.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Monitors","description":"Managing your deployed API monitors","href":"/platform/monitors","hidden":false}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Monitor lifecycle","slug":"monitor-lifecycle","depth":2,"children":[]},{"title":"Viewing monitors","slug":"viewing-monitors","depth":2,"children":[]},{"title":"Updating monitors","slug":"updating-monitors","depth":2,"children":[]},{"title":"Deleting monitors","slug":"deleting-monitors","depth":2,"children":[]},{"title":"Monitor identity","slug":"monitor-identity","depth":2,"children":[]},{"title":"Triggering a manual run","slug":"triggering-a-manual-run","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"griffin","siteName":"Griffin","title":"Monitors - Griffin","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-02-16T21:07:34.937Z","originalFileLocation":"platform/monitors.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"dark\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Managing your deployed API monitors\">\u003cmeta data-mint-head name=\"application-name\" content=\"Griffin\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Monitors - Griffin\">\u003cmeta data-mint-head property=\"og:description\" content=\"Managing your deployed API monitors\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Griffin\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.getgriffinapp.com/platform/monitors\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://griffin.mintlify.site/_mintlify/api/og/v2?division=Platform\u0026amp;title=Monitors\u0026amp;description=Managing+your+deployed+API+monitors\u0026amp;theme=da691c39263add3ed41ee064\u0026amp;signature=19d39357823da772e1f9e8706469a5509451114631b4c60af2adc5801d4e4ef3\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Monitors - Griffin\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Managing your deployed API monitors\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://griffin.mintlify.site/_mintlify/api/og/v2?division=Platform\u0026amp;title=Monitors\u0026amp;description=Managing+your+deployed+API+monitors\u0026amp;theme=da691c39263add3ed41ee064\u0026amp;signature=19d39357823da772e1f9e8706469a5509451114631b4c60af2adc5801d4e4ef3\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/griffin/CC5CgU28Hj32kDWo/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Griffin\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#EC407A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.getgriffinapp.com/platform/monitors\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/platform/monitors.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.getgriffinapp.com/#organization\",\"name\":\"Griffin\",\"url\":\"https://docs.getgriffinapp.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/griffin/vE9jJsSmbB6yUPj9/logo/logo.svg?fit=max\u0026auto=format\u0026n=vE9jJsSmbB6yUPj9\u0026q=85\u0026s=a6046fb332de88a50acea2c9e1d790a7\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.getgriffinapp.com#website\",\"name\":\"Griffin\",\"url\":\"https://docs.getgriffinapp.com\",\"publisher\":{\"@id\":\"https://docs.getgriffinapp.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.getgriffinapp.com/platform/monitors#webpage\",\"url\":\"https://docs.getgriffinapp.com/platform/monitors\",\"name\":\"Monitors\",\"description\":\"Managing your deployed API monitors\",\"dateModified\":\"2026-02-16T21:07:34.937Z\",\"isPartOf\":{\"@id\":\"https://docs.getgriffinapp.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.getgriffinapp.com/platform/monitors#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.getgriffinapp.com/platform/monitors#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Griffin\",\"item\":\"https://docs.getgriffinapp.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Monitors\",\"item\":\"https://docs.getgriffinapp.com/platform/monitors\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.getgriffinapp.com/platform/monitors#article\",\"headline\":\"Monitors\",\"name\":\"Monitors\",\"description\":\"Managing your deployed API monitors\",\"url\":\"https://docs.getgriffinapp.com/platform/monitors\",\"mainEntityOfPage\":{\"@id\":\"https://docs.getgriffinapp.com/platform/monitors#webpage\"},\"dateModified\":\"2026-02-16T21:07:34.937Z\",\"publisher\":{\"@id\":\"https://docs.getgriffinapp.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.getgriffinapp.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Griffin\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Griffin\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/platform/monitors.md","siteName":"Griffin","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/griffin-open-source/griffin"}]},"tabs":[{"tab":"Guides","groups":[{"group":"Getting Started","pages":[{"title":"Introduction","href":"/getting-started/introduction","hidden":false},{"title":"Comparisons","href":"/getting-started/comparisons","hidden":false},{"title":"Installation","href":"/getting-started/installation","hidden":false},{"title":"Quickstart","href":"/getting-started/quickstart","hidden":false}]},{"group":"Concepts","pages":[{"title":"Cloud vs Self-Host","href":"/concepts/cloud-vs-self-host","hidden":false},{"title":"Architecture","href":"/concepts/architecture","hidden":false},{"title":"Environments","href":"/concepts/environments"},{"title":"Execution Model","href":"/concepts/execution-model","hidden":false}]},{"group":"Writing Monitors","pages":[{"title":"Graph Builder","href":"/writing-tests/graph-builder","hidden":false},{"title":"Sequential Builder","href":"/writing-tests/sequential-builder","hidden":false},{"title":"Browser Monitors","href":"/writing-tests/browser-monitors","hidden":false},{"title":"Assertions","href":"/writing-tests/assertions","hidden":false},{"title":"Secrets","href":"/writing-tests/secrets","hidden":false},{"title":"Variables","href":"/writing-tests/variables","hidden":false},{"title":"Frequencies \u0026 Scheduling","description":"Control how often your monitors run","href":"/writing-tests/frequencies","hidden":false}]},{"group":"Platform","pages":[{"title":"Monitors","href":"/platform/monitors","hidden":false},{"title":"Runs","description":"Viewing test execution history","href":"/platform/runs","hidden":false},{"title":"Metrics","href":"/platform/metrics","hidden":false},{"title":"Notifications","href":"/platform/notifications","hidden":false},{"title":"Integrations","href":"/platform/integrations","hidden":false}]},{"group":"Griffin Hub","pages":[{"title":"Griffin Hub Overview","href":"/griffin-hub/overview","hidden":false},{"title":"Configuration","href":"/griffin-hub/configuration","hidden":false},{"title":"Self-Hosting Guide","href":"/griffin-hub/self-hosting","hidden":false}]},{"group":"Griffin Cloud","pages":[{"title":"Griffin Cloud Overview","href":"/griffin-cloud/overview","hidden":false},{"title":"Organizations","href":"/griffin-cloud/organizations","hidden":false},{"title":"Members \u0026 Roles","href":"/griffin-cloud/members-roles","hidden":false},{"title":"Billing","href":"/griffin-cloud/billing","hidden":false}]},{"group":"Command Line","pages":[{"title":"Core Commands","href":"/cli/core-commands","hidden":false},{"title":"Authentication","href":"/cli/authentication","hidden":false},{"title":"Environments","href":"/cli/environments"},{"title":"Plan \u0026 Apply","href":"/cli/plan-apply","hidden":false},{"title":"Runs \u0026 Metrics","href":"/cli/runs-metrics","hidden":false}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/overview"}]}]},"basePath":"","title":"Monitors - Griffin","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}