{"id":52020,"date":"2021-03-22T00:00:00","date_gmt":"2021-03-22T07:00:00","guid":{"rendered":"https:\/\/griddb-linux-hte8hndjf8cka8ht.westus-01.azurewebsites.net\/blog\/griddb-webapi\/"},"modified":"2026-03-31T15:34:35","modified_gmt":"2026-03-31T22:34:35","slug":"griddb-webapi","status":"publish","type":"post","link":"https:\/\/www.griddb.net\/en\/blog\/griddb-webapi\/","title":{"rendered":"GridDB WebAPI"},"content":{"rendered":"<p>The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not exist or isn&#8217;t feasible to use. In this blog post, we&#8217;re going to showcase installation, some brief API examples with CURL, Postman, and R as well as how to setup the WebAPI behind a reverse proxy to enable SSL or other HTTP security features not directly supported by the WebAPI server.<\/p>\n<h2>Install<\/h2>\n<p>We&#8217;ll assume that you have already installed and setup GridDB. To download and untar the binary tarball from GitHub: <a href=\"https:\/\/github.com\/griddb\/webapi\/releases\/download\/2.2.0\/griddb_webapi-2.2.0-bin.tar.gz\">https:\/\/github.com\/griddb\/webapi\/releases\/download\/2.2.0\/griddb_webapi-2.2.0-bin.tar.gz<\/a><\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ sudo su - gsadm\n$ cd \/var\/lib\/gridstore\n$ curl -o https:\/\/github.com\/griddb\/webapi\/releases\/download\/2.2.0\/griddb_webapi-2.2.0-bin.tar.gz\n$ tar zxvf griddb_webapi-2.2.0-bin.tar.gz<\/code><\/pre>\n<\/div>\n<p>Now edit webapi\/conf\/repository.json, changing the name parameter to your cluster name, usually &#8220;defaultCluster&#8221;, and making any other changes as required.<\/p>\n<p>Now you can start the WebAPI:<\/p>\n<div class=\"clipboard\">\n<pre><code>$ nohup java -jar lib\/griddb-webapi-ce-2.2.0.jar &<\/code><\/pre>\n<\/div>\n<p>By using nohup, the WebAPI processs won&#8217;t die when your terminal exits for any reason.<\/p>\n<h2>Inserting Data<\/h2>\n<p>First, we create the container schema:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ curl -X POST --basic -u admin:admin -H \"Content-type:application\/json\"  http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/containers -d \n'{\n    \"columns\": [\n        {\n            \"name\": \"timestamp\",\n            \"type\": \"TIMESTAMP\"\n        },\n        {\n            \"name\": \"name\",\n            \"type\": \"STRING\"\n        },\n        {\n            \"name\": \"value\",\n            \"type\": \"FLOAT\"\n        }\n    ],\n    \"container_name\": \"test\",\n    \"container_type\": \"TIME_SERIES\",\n    \"rowkey\": true\n}'<\/code><\/pre>\n<\/div>\n<p>Now we can PUT our data rows:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ curl -X PUT --basic -u admin:admin -H \"Content-type:application\/json\"  http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/containers\/test\/rows -d \n'[\n    [\"2021-01-16T10:25:00.253Z\", \"foo\", 100.5 ],\n    [\"2021-01-16T10:35:00.691Z\", \"foo\", 173.9 ],\n    [\"2021-01-16T10:45:00.032Z\", \"bar\", 123.9 ]\n]'\n{\"count\":3}<\/code><\/pre>\n<\/div>\n<h2>Fetching Data<\/h2>\n<p>We can now directly fetch or query data; direct fetches are the fastest method to retrieve data:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ curl -X POST --basic -u admin:admin -H \"Content-type:application\/json\" http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/containers\/test\/rows -d  '{\"limit\":1000}'  \n{\"columns\":[{\"name\":\"timestamp\",\"type\":\"TIMESTAMP\"},{\"name\":\"name\",\"type\":\"STRING\"},{\"name\":\"value\",\"type\":\"FLOAT\"}],\"rows\":[[\"2021-01-16T10:25:00.253Z\",\"foo\",100.5],[\"2021-01-16T10:35:00.691Z\",\"foo\",173.9],[\"2021-01-16T10:45:00.032Z\",\"bar\",123.9]],\"offset\":0,\"limit\":1000,\"total\":3}[owen@hpelnxdev webapi_blog]$ <\/code><\/pre>\n<\/div>\n<p>Using TQL allows you to use all of GridDB&#8217;s time series or aggregation functions:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ curl -X POST --basic -u admin:admin -H \"Content-type:application\/json\" http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/tql -d \n '[{\"name\":\"test\", \"stmt\":\"select max(value)\", \"columns\":[]}]' \n\n[{\"columns\":[{\"name\":\"aggregationResult\",\"type\":\"DOUBLE\"}],\"results\":[[173.89999389648438]]}]<\/code><\/pre>\n<\/div>\n<p>The WebAPI also supports querying with more familiar SQL statements:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ curl -X POST --basic -u admin:admin -H \"Content-type:application\/json\" http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/sql -d \n'[{\"type\":\"sql-select\",\"stmt\":\"select * from test\"}]' \n[{\"columns\":[{\"name\":\"timestamp\",\"type\":\"TIMESTAMP\"},{\"name\":\"name\",\"type\":\"STRING\"},{\"name\":\"value\",\"type\":\"FLOAT\"}],\"results\":[[\"2021-01-16T10:25:00.253Z\",\"foo\",100.5],[\"2021-01-16T10:35:00.691Z\",\"foo\",173.9],[\"2021-01-16T10:45:00.032Z\",\"bar\",123.9]]}]<\/code><\/pre>\n<\/div>\n<h2>Deleting Data<\/h2>\n<p>You can delete both entire containers or individual rows. To delete individual or multiple rows:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ curl -X DELETE --basic -u admin:admin -H \"Content-type:application\/json\" http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/containers\/test\/rows -d \n'[\n    \"2021-01-16T10:25:00.253Z\",\n    \"2021-01-16T10:35:00.691Z\"\n]' <\/code><\/pre>\n<\/div>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">$ curl -X DELETE --basic -u admin:admin -H \"Content-type:application\/json\"  http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/containers -d \n'[\n    \"test\"\n]'<\/code><\/pre>\n<\/div>\n<h2>R<\/h2>\n<p>R is a popular programming language for data analysis and the WebAPI makes it easy use data stored in GridDB into your R program. Using the HTTR library, we can use the same endpoints we used with curl and then we can convert the returned JSON into a R data frame for calculation:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-py\">library('httr')\n\nr <- POST(\n    url = \"http:\/\/127.0.0.1:8080\/griddb\/v2\/defaultCluster\/dbs\/public\/containers\/test\/rows\",\n    config = authenticate(\"admin\", \"admin\"),\n    encode = \"json\",\n    body = '{\"limit\" : 1000 }',\n    add_headers(\"Content-Type\" = \"application\/json\")\n\n)\ndf <- as.data.frame(do.call(rbind, content(r)$rows))\ncolnames(df) <- c(\"timestamp\", \"name\", \"value\")\ndf$value <- as.numeric(as.character(df$value))\n\nprint(df)\nprint(mean(df$value))<\/code><\/pre>\n<\/div>\n<p>The above R script outputs:<\/p>\n<div class=\"clipboard\">\n<pre><code class=\"language-shell\">timestamp name value\n1 2021-01-16T10:25:00.253Z  foo 100.5\n2 2021-01-16T10:35:00.691Z  foo 173.9\n3 2021-01-16T10:45:00.032Z  bar 123.9\n[1] 132.7667<\/code><\/pre>\n<\/div>\n<h2>Conclusion<\/h2>\n<p>The GridDB WebAPI makes it simple to access data stored in GridDB from remote networks without complicated VPNs or from environments where it is not possible to use one of the many programming language specific GridDB clients.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not exist or isn&#8217;t feasible to use. In this blog post, we&#8217;re going to showcase installation, some brief API examples with CURL, Postman, and R as well as how to setup the [&hellip;]<\/p>\n","protected":false},"author":71,"featured_media":52021,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[121],"tags":[],"class_list":["post-52020","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>GridDB WebAPI | GridDB: Open Source Time Series Database for IoT<\/title>\n<meta name=\"description\" content=\"The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GridDB WebAPI | GridDB: Open Source Time Series Database for IoT\" \/>\n<meta property=\"og:description\" content=\"The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not\" \/>\n<meta property=\"og:url\" content=\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/\" \/>\n<meta property=\"og:site_name\" content=\"GridDB: Open Source Time Series Database for IoT\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/griddbcommunity\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-03-22T07:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-31T22:34:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.griddb.net\/wp-content\/uploads\/2025\/12\/blog_title_05.png\" \/>\n\t<meta property=\"og:image:width\" content=\"870\" \/>\n\t<meta property=\"og:image:height\" content=\"490\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Owen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@GridDBCommunity\" \/>\n<meta name=\"twitter:site\" content=\"@GridDBCommunity\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Owen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/\"},\"author\":{\"name\":\"Owen\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/person\/0f2f6d4b593adde8c43cf3ea5c794c66\"},\"headline\":\"GridDB WebAPI\",\"datePublished\":\"2021-03-22T07:00:00+00:00\",\"dateModified\":\"2026-03-31T22:34:35+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/\"},\"wordCount\":331,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/griddb.net\/en\/#organization\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage\"},\"thumbnailUrl\":\"\/wp-content\/uploads\/2025\/12\/blog_title_05.png\",\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/\",\"url\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/\",\"name\":\"GridDB WebAPI | GridDB: Open Source Time Series Database for IoT\",\"isPartOf\":{\"@id\":\"https:\/\/griddb.net\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage\"},\"thumbnailUrl\":\"\/wp-content\/uploads\/2025\/12\/blog_title_05.png\",\"datePublished\":\"2021-03-22T07:00:00+00:00\",\"dateModified\":\"2026-03-31T22:34:35+00:00\",\"description\":\"The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage\",\"url\":\"\/wp-content\/uploads\/2025\/12\/blog_title_05.png\",\"contentUrl\":\"\/wp-content\/uploads\/2025\/12\/blog_title_05.png\",\"width\":870,\"height\":490},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/griddb.net\/en\/#website\",\"url\":\"https:\/\/griddb.net\/en\/\",\"name\":\"GridDB: Open Source Time Series Database for IoT\",\"description\":\"GridDB is an open source time-series database with the performance of NoSQL and convenience of SQL\",\"publisher\":{\"@id\":\"https:\/\/griddb.net\/en\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/griddb.net\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/griddb.net\/en\/#organization\",\"name\":\"Fixstars\",\"url\":\"https:\/\/griddb.net\/en\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png\",\"contentUrl\":\"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png\",\"width\":200,\"height\":83,\"caption\":\"Fixstars\"},\"image\":{\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/griddbcommunity\/\",\"https:\/\/x.com\/GridDBCommunity\",\"https:\/\/www.linkedin.com\/company\/griddb-by-toshiba\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/person\/0f2f6d4b593adde8c43cf3ea5c794c66\",\"name\":\"Owen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/griddb.net\/en\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/47438a5c81215c7a9043be1b427e0bbd8dc0f77bd536f147f8495575149e4325?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/47438a5c81215c7a9043be1b427e0bbd8dc0f77bd536f147f8495575149e4325?s=96&d=mm&r=g\",\"caption\":\"Owen\"},\"url\":\"https:\/\/www.griddb.net\/en\/author\/owen\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GridDB WebAPI | GridDB: Open Source Time Series Database for IoT","description":"The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not","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:\/\/griddb.net\/en\/blog\/griddb-webapi\/","og_locale":"en_US","og_type":"article","og_title":"GridDB WebAPI | GridDB: Open Source Time Series Database for IoT","og_description":"The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not","og_url":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/","og_site_name":"GridDB: Open Source Time Series Database for IoT","article_publisher":"https:\/\/www.facebook.com\/griddbcommunity\/","article_published_time":"2021-03-22T07:00:00+00:00","article_modified_time":"2026-03-31T22:34:35+00:00","og_image":[{"width":870,"height":490,"url":"https:\/\/www.griddb.net\/wp-content\/uploads\/2025\/12\/blog_title_05.png","type":"image\/png"}],"author":"Owen","twitter_card":"summary_large_image","twitter_creator":"@GridDBCommunity","twitter_site":"@GridDBCommunity","twitter_misc":{"Written by":"Owen","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#article","isPartOf":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/"},"author":{"name":"Owen","@id":"https:\/\/griddb.net\/en\/#\/schema\/person\/0f2f6d4b593adde8c43cf3ea5c794c66"},"headline":"GridDB WebAPI","datePublished":"2021-03-22T07:00:00+00:00","dateModified":"2026-03-31T22:34:35+00:00","mainEntityOfPage":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/"},"wordCount":331,"commentCount":0,"publisher":{"@id":"https:\/\/griddb.net\/en\/#organization"},"image":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage"},"thumbnailUrl":"\/wp-content\/uploads\/2025\/12\/blog_title_05.png","articleSection":["Blog"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/","url":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/","name":"GridDB WebAPI | GridDB: Open Source Time Series Database for IoT","isPartOf":{"@id":"https:\/\/griddb.net\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage"},"image":{"@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage"},"thumbnailUrl":"\/wp-content\/uploads\/2025\/12\/blog_title_05.png","datePublished":"2021-03-22T07:00:00+00:00","dateModified":"2026-03-31T22:34:35+00:00","description":"The GridDB WebAPI makes it simple to access GridDB data across the internet or from a programming language\/envrionment where a GridDB connection does not","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/griddb.net\/en\/blog\/griddb-webapi\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/griddb.net\/en\/blog\/griddb-webapi\/#primaryimage","url":"\/wp-content\/uploads\/2025\/12\/blog_title_05.png","contentUrl":"\/wp-content\/uploads\/2025\/12\/blog_title_05.png","width":870,"height":490},{"@type":"WebSite","@id":"https:\/\/griddb.net\/en\/#website","url":"https:\/\/griddb.net\/en\/","name":"GridDB: Open Source Time Series Database for IoT","description":"GridDB is an open source time-series database with the performance of NoSQL and convenience of SQL","publisher":{"@id":"https:\/\/griddb.net\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/griddb.net\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/griddb.net\/en\/#organization","name":"Fixstars","url":"https:\/\/griddb.net\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/","url":"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png","contentUrl":"https:\/\/griddb.net\/wp-content\/uploads\/2019\/04\/fixstars_logo_web_tagline.png","width":200,"height":83,"caption":"Fixstars"},"image":{"@id":"https:\/\/griddb.net\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/griddbcommunity\/","https:\/\/x.com\/GridDBCommunity","https:\/\/www.linkedin.com\/company\/griddb-by-toshiba"]},{"@type":"Person","@id":"https:\/\/griddb.net\/en\/#\/schema\/person\/0f2f6d4b593adde8c43cf3ea5c794c66","name":"Owen","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/griddb.net\/en\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/47438a5c81215c7a9043be1b427e0bbd8dc0f77bd536f147f8495575149e4325?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/47438a5c81215c7a9043be1b427e0bbd8dc0f77bd536f147f8495575149e4325?s=96&d=mm&r=g","caption":"Owen"},"url":"https:\/\/www.griddb.net\/en\/author\/owen\/"}]}},"_links":{"self":[{"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/posts\/52020","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/comments?post=52020"}],"version-history":[{"count":1,"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/posts\/52020\/revisions"}],"predecessor-version":[{"id":55168,"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/posts\/52020\/revisions\/55168"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/media\/52021"}],"wp:attachment":[{"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/media?parent=52020"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/categories?post=52020"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.griddb.net\/en\/wp-json\/wp\/v2\/tags?post=52020"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}