{"id":820,"date":"2021-02-09T10:14:19","date_gmt":"2021-02-09T10:14:19","guid":{"rendered":"https:\/\/uptimerobot.com\/blog\/?p=820"},"modified":"2025-11-11T09:39:11","modified_gmt":"2025-11-11T09:39:11","slug":"latest-apiv2-changes-cors-headers","status":"publish","type":"post","link":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/","title":{"rendered":"Latest APIv2 Updates (CORS headers, etc.)"},"content":{"rendered":"<p>Dear UptimeRobot API users,<\/p>\n<p><span style=\"font-weight: 400\">we have recently published several changes and updates to the <\/span><a href=\"https:\/\/uptimerobot.com\/api\"><span style=\"font-weight: 400\">APIv2<\/span><\/a><span style=\"font-weight: 400\">. <\/span><b>These changes might affect you<\/b><span style=\"font-weight: 400\">, so please take a look at them.<br \/>\n<\/span><\/p>\n<p><b>Changelog:<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Your <code>read-only<\/code> API key is now able to access all entities using the <code>get*<\/code> methods (previously not all entities were supported).<br \/>\n<\/span><\/li>\n<li style=\"font-weight: 400\">Response <code>CORS headers<\/code> are provided only for <code>get*<\/code> methods using <code>monitor-specific<\/code> or <code>read-only<\/code> API keys for <a href=\"https:\/\/www.freecodecamp.org\/news\/private-api-keys\/\">security reasons<\/a>.<span style=\"font-weight: 400\"><br \/>\n<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">You can also provide <code>API key<\/code> in a <code>query string<\/code>. This was added to maintain the backwards compatibility with APIv1 and to not break existing 3rd party applications, <strong>however we strongly discourage using this approach, as per <a href=\"https:\/\/owasp.org\/www-community\/vulnerabilities\/Information_exposure_through_query_strings_in_url\">the security implications<\/a>, and recommend using the <code>request's body<\/code> for authentication<\/strong>.<br \/>\n<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400\">That&#8217;s all, we\u2019ll be happy to answer your questions via our <\/span><a href=\"mailto:support@uptimerobot.com\"><span style=\"font-weight: 400\">support<\/span><\/a><span style=\"font-weight: 400\"> or in the comments below.<\/span><\/p>\n<p><i><span style=\"font-weight: 400\">TIP: If you wish to receive similar technical updates via email, please subscribe from your account &gt; log in at UptimeRobot.com &gt; My Settings &gt; Account Profile and check the option.<\/span><\/i><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dear UptimeRobot API users, we have recently published several changes and updates to the APIv2. These changes might affect you, so please take a look at them. Changelog: Your read-only API key is now able to access all entities using the get* methods (previously not all entities were supported). Response CORS headers are provided only [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"_is_featured_guide":false,"_post_views":15,"_reading_completions":33,"footnotes":""},"categories":[2],"tags":[],"class_list":["post-820","post","type-post","status-publish","format-standard","hentry","category-announcements"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Latest APIv2 Updates (CORS headers, etc.) | UptimeRobot Blog<\/title>\n<meta name=\"description\" content=\"Check out our latest APIv2 updates and breaking changes. CORS headers, read only api keys and more.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Latest APIv2 Updates (CORS headers, etc.) | UptimeRobot Blog\" \/>\n<meta property=\"og:description\" content=\"Check out our latest APIv2 updates and breaking changes. CORS headers, read only api keys and more.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/\" \/>\n<meta property=\"og:site_name\" content=\"UptimeRobot Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-09T10:14:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-11T09:39:11+00:00\" \/>\n<meta name=\"author\" content=\"Kristian Kusenda\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kristian Kusenda\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/\"},\"author\":{\"name\":\"Kristian Kusenda\",\"@id\":\"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/0d6765a1932ee190d86da4fa6b90e090\"},\"headline\":\"Latest APIv2 Updates (CORS headers, etc.)\",\"datePublished\":\"2021-02-09T10:14:19+00:00\",\"dateModified\":\"2025-11-11T09:39:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/\"},\"wordCount\":159,\"commentCount\":0,\"articleSection\":[\"Announcements\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/\",\"url\":\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/\",\"name\":\"Latest APIv2 Updates (CORS headers, etc.) | UptimeRobot Blog\",\"isPartOf\":{\"@id\":\"https:\/\/uptimerobot.com\/blog\/#website\"},\"datePublished\":\"2021-02-09T10:14:19+00:00\",\"dateModified\":\"2025-11-11T09:39:11+00:00\",\"author\":{\"@id\":\"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/0d6765a1932ee190d86da4fa6b90e090\"},\"description\":\"Check out our latest APIv2 updates and breaking changes. CORS headers, read only api keys and more.\",\"breadcrumb\":{\"@id\":\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/uptimerobot.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Announcements\",\"item\":\"https:\/\/uptimerobot.com\/blog\/category\/announcements\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Latest APIv2 Updates (CORS headers, etc.)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/uptimerobot.com\/blog\/#website\",\"url\":\"https:\/\/uptimerobot.com\/blog\/\",\"name\":\"UptimeRobot Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/uptimerobot.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/0d6765a1932ee190d86da4fa6b90e090\",\"name\":\"Kristian Kusenda\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b399fa5df45a0bdb31cf9e4b33a9cea0a6da7e3f2a529071112838c405bbfda3?s=96&d=retro&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b399fa5df45a0bdb31cf9e4b33a9cea0a6da7e3f2a529071112838c405bbfda3?s=96&d=retro&r=g\",\"caption\":\"Kristian Kusenda\"},\"description\":\"You may have seen his name signed under UptimeRobot emails, where he started as a Customer Support Agent and Community Manager. Currently, he\u2019s part of the marketing team, managing content and other marketing tasks, projects, and collaborations. Thanks to these experiences, Kristian knows UptimeRobot from every angle. He adopts a hands-on approach in providing support to our team and loves to engage with the UptimeRobot community. He also has some basic knowledge of CSS and Adobe tools and likes to help out with design-related tasks or updating and optimizing our landing pages. Outside of work and during weekends, he\u2019s working on his bachelor\u2019s degree in psychology and aspires to become a therapist. He\u2019s passionate about painting and movement, experimenting with physical and mental health hacks, and continually seeking ways to improve and optimize. Kristian also loves hiking, traveling around the world, exploring new meals, drinking good wine, and reading great books.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/kristian-kusenda\/\"],\"url\":\"https:\/\/uptimerobot.com\/blog\/author\/kristian\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Latest APIv2 Updates (CORS headers, etc.) | UptimeRobot Blog","description":"Check out our latest APIv2 updates and breaking changes. CORS headers, read only api keys and more.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/","og_locale":"en_US","og_type":"article","og_title":"Latest APIv2 Updates (CORS headers, etc.) | UptimeRobot Blog","og_description":"Check out our latest APIv2 updates and breaking changes. CORS headers, read only api keys and more.","og_url":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/","og_site_name":"UptimeRobot Blog","article_published_time":"2021-02-09T10:14:19+00:00","article_modified_time":"2025-11-11T09:39:11+00:00","author":"Kristian Kusenda","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kristian Kusenda","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#article","isPartOf":{"@id":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/"},"author":{"name":"Kristian Kusenda","@id":"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/0d6765a1932ee190d86da4fa6b90e090"},"headline":"Latest APIv2 Updates (CORS headers, etc.)","datePublished":"2021-02-09T10:14:19+00:00","dateModified":"2025-11-11T09:39:11+00:00","mainEntityOfPage":{"@id":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/"},"wordCount":159,"commentCount":0,"articleSection":["Announcements"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/","url":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/","name":"Latest APIv2 Updates (CORS headers, etc.) | UptimeRobot Blog","isPartOf":{"@id":"https:\/\/uptimerobot.com\/blog\/#website"},"datePublished":"2021-02-09T10:14:19+00:00","dateModified":"2025-11-11T09:39:11+00:00","author":{"@id":"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/0d6765a1932ee190d86da4fa6b90e090"},"description":"Check out our latest APIv2 updates and breaking changes. CORS headers, read only api keys and more.","breadcrumb":{"@id":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/uptimerobot.com\/blog\/latest-apiv2-changes-cors-headers\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/uptimerobot.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Announcements","item":"https:\/\/uptimerobot.com\/blog\/category\/announcements\/"},{"@type":"ListItem","position":3,"name":"Latest APIv2 Updates (CORS headers, etc.)"}]},{"@type":"WebSite","@id":"https:\/\/uptimerobot.com\/blog\/#website","url":"https:\/\/uptimerobot.com\/blog\/","name":"UptimeRobot Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/uptimerobot.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/0d6765a1932ee190d86da4fa6b90e090","name":"Kristian Kusenda","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/uptimerobot.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/b399fa5df45a0bdb31cf9e4b33a9cea0a6da7e3f2a529071112838c405bbfda3?s=96&d=retro&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b399fa5df45a0bdb31cf9e4b33a9cea0a6da7e3f2a529071112838c405bbfda3?s=96&d=retro&r=g","caption":"Kristian Kusenda"},"description":"You may have seen his name signed under UptimeRobot emails, where he started as a Customer Support Agent and Community Manager. Currently, he\u2019s part of the marketing team, managing content and other marketing tasks, projects, and collaborations. Thanks to these experiences, Kristian knows UptimeRobot from every angle. He adopts a hands-on approach in providing support to our team and loves to engage with the UptimeRobot community. He also has some basic knowledge of CSS and Adobe tools and likes to help out with design-related tasks or updating and optimizing our landing pages. Outside of work and during weekends, he\u2019s working on his bachelor\u2019s degree in psychology and aspires to become a therapist. He\u2019s passionate about painting and movement, experimenting with physical and mental health hacks, and continually seeking ways to improve and optimize. Kristian also loves hiking, traveling around the world, exploring new meals, drinking good wine, and reading great books.","sameAs":["https:\/\/www.linkedin.com\/in\/kristian-kusenda\/"],"url":"https:\/\/uptimerobot.com\/blog\/author\/kristian\/"}]}},"_links":{"self":[{"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/posts\/820","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/comments?post=820"}],"version-history":[{"count":0,"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/posts\/820\/revisions"}],"wp:attachment":[{"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/media?parent=820"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/categories?post=820"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/uptimerobot.com\/blog\/wp-json\/wp\/v2\/tags?post=820"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}