<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Kintone Developer Program</title>
    <description>The latest articles on Forem by Kintone Developer Program (@kintonedevprogram).</description>
    <link>https://forem.com/kintonedevprogram</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F1650%2Fdbf62511-37e0-44dd-a08a-75b35bea8a1e.png</url>
      <title>Forem: Kintone Developer Program</title>
      <link>https://forem.com/kintonedevprogram</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/kintonedevprogram"/>
    <language>en</language>
    <item>
      <title>MCP Integration Tutorial: Create a News Monitoring App with Claude</title>
      <dc:creator>Jiae</dc:creator>
      <pubDate>Thu, 29 May 2025 04:55:39 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/mcp-integration-tutorial-create-a-news-monitoring-app-with-claude-1op3</link>
      <guid>https://forem.com/kintonedevprogram/mcp-integration-tutorial-create-a-news-monitoring-app-with-claude-1op3</guid>
      <description>&lt;h2&gt;
  
  
  Table of Contents
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Introduction&lt;/li&gt;
&lt;li&gt;Prerequisites&lt;/li&gt;
&lt;li&gt;Prepare the Kintone Environment&lt;/li&gt;
&lt;li&gt;
Prepare the Claude Desktop Mode &lt;/li&gt;
&lt;li&gt;
Prepare the Firecrawl MCP Server &lt;/li&gt;
&lt;li&gt;
Prepare the Kintone MCP Server &lt;/li&gt;
&lt;li&gt;
Send the Prompts &lt;/li&gt;
&lt;li&gt;
Make an Announcement &lt;/li&gt;
&lt;li&gt;
Conclusion &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a id="intro"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;In the rapidly changing world of technology, it’s crucial to stay informed about the latest relevant news. Sharing this information with your team and learning from one another will enhance teamwork across the company. &lt;/p&gt;

&lt;p&gt;Using automation for news monitoring and documentation can significantly reduce manual work, particularly with tools like Model Context Protocol (MCP) and Kintone. This article will walk you through &lt;strong&gt;how to utilize a content scraping MCP server to extract a recent related article from a news site, summarize it, and automatically create a record in Kintone&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a id="prerequisites"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://code.visualstudio.com/Download" rel="noopener noreferrer"&gt;VSCode&lt;/a&gt;　as the file editor&lt;/li&gt;
&lt;li&gt;&lt;a href="https://nodejs.org/en" rel="noopener noreferrer"&gt;Node.js (LTS)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a id="prepare-kintone"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Prepare the Kintone Environment
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What is Kintone?
&lt;/h3&gt;

&lt;p&gt;Kintone is a no-code platform for business applications that improves data management and collaboration. &lt;/p&gt;

&lt;p&gt;There is another great blog about the basics of Kintone if you are interested:&lt;br&gt;
👉 &lt;a href="https://dev.to/kintonedevprogram/quick-start-on-using-kintone-web-database-in-a-hackathon-project-3fh7"&gt;Quick Start on Using Kintone Web Database in a Hackathon Project&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Get your Kintone Environment
&lt;/h3&gt;

&lt;p&gt;Developers are entitled to use the Kintone Developer License - an environment that can be used for free🤘&lt;/p&gt;

&lt;p&gt;Get your Kintone Developer License by filling out the form.&lt;br&gt;
&lt;a href="https://kintone.dev/en/developer-license-registration-form/" rel="noopener noreferrer"&gt;https://kintone.dev/en/developer-license-registration-form/&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Create a News Summary App
&lt;/h3&gt;

&lt;p&gt;Refer to the page &lt;a href="https://get.kintone.help/k/en/id/040638.html" rel="noopener noreferrer"&gt;Creating an App from Scratch&lt;/a&gt; and follow the table below to create a simple News summary App.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field Type&lt;/th&gt;
&lt;th&gt;Field Name&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;td&gt;Title&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Date&lt;/td&gt;
&lt;td&gt;Date&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Link&lt;/td&gt;
&lt;td&gt;Link&lt;/td&gt;
&lt;td&gt;URL&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Rich text&lt;/td&gt;
&lt;td&gt;Summary&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Once the App is ready, it will look like this👇&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk0e5pwpv2e39p8avar6e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk0e5pwpv2e39p8avar6e.png" alt="News summary App" width="800" height="674"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To generate the App’s API token, aka API key, follow the steps on the &lt;a href="https://get.kintone.help/k/en/id/040471.html" rel="noopener noreferrer"&gt;Generating API Tokens&lt;/a&gt; page.&lt;/p&gt;

&lt;p&gt;⚠️ Make sure to select the checkboxes under Permissions for View records, Add records, and Edit records.&lt;/p&gt;

&lt;p&gt;Also, remember your App ID. The number following &lt;code&gt;https://&amp;lt;your domain&amp;gt;.kintone.com/k/&lt;/code&gt; is the App ID.&lt;/p&gt;

&lt;p&gt;&lt;a id="prepare-claude"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Prepare the Claude Desktop Mode
&lt;/h2&gt;

&lt;p&gt;To access developer mode, you need the Claude desktop app. Visit &lt;a href="https://claude.ai/download" rel="noopener noreferrer"&gt;here&lt;/a&gt; to download the appropriate OS version　and install it. &lt;/p&gt;

&lt;p&gt;Next, open your Claude desktop and log in to your claude.ai account. If you don't have an account, sign up with your email.&lt;/p&gt;

&lt;p&gt;On your Claude desktop, first go to &lt;strong&gt;settings&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmt9tewowuhuuknjjk48j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmt9tewowuhuuknjjk48j.png" alt="Claude desktop settings" width="710" height="572"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the settings, click the &lt;strong&gt;Developer&lt;/strong&gt; button, and then click the &lt;strong&gt;Edit Config&lt;/strong&gt; button.&lt;br&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw4cwx677iexp18c7ra6m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw4cwx677iexp18c7ra6m.png" alt="Claude desktop edit config button" width="800" height="566"&gt;&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;This will display the &lt;code&gt;claude_desktop_config.json&lt;/code&gt; file.&lt;br&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fizbdotzn1qwek7jvdamv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fizbdotzn1qwek7jvdamv.png" alt="claude_desktop_config.json file" width="800" height="432"&gt;&lt;/a&gt;&lt;br&gt;&lt;br&gt;
When you open the file, it is currently empty, but this will serve as our main stage for the development. &lt;/p&gt;

&lt;p&gt;&lt;a id="prepare-firecrawl-mcp"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Prepare the Firecrawl MCP Server
&lt;/h2&gt;

&lt;p&gt;Your Firecrawl API key is required for content scraping. If you don't have one, create an account at the &lt;a href="https://www.firecrawl.dev/" rel="noopener noreferrer"&gt;Firecrawl Site&lt;/a&gt;. Once logged in, you will see an API key on your page.&lt;/p&gt;

&lt;p&gt;We utilize &lt;a href="https://github.com/mendableai/firecrawl-mcp-server" rel="noopener noreferrer"&gt;firecrawl-mcp-server&lt;/a&gt; as the server. &lt;br&gt;
Copy the provided &lt;a href="https://github.com/mendableai/firecrawl-mcp-server?tab=readme-ov-file#usage-with-claude-desktop" rel="noopener noreferrer"&gt;Usage with Claude Desktop&lt;/a&gt; code into your &lt;code&gt;claude_desktop_config.json&lt;/code&gt; file.&lt;/p&gt;

&lt;p&gt;⚠️ Ensure that you add your Firecrawl API key. &lt;/p&gt;

&lt;p&gt;Now your &lt;code&gt;claude_desktop_config.json&lt;/code&gt; file should look like this👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "mcpServers": {
    "mcp-server-firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE",

        "FIRECRAWL_RETRY_MAX_ATTEMPTS": "5",
        "FIRECRAWL_RETRY_INITIAL_DELAY": "2000",
        "FIRECRAWL_RETRY_MAX_DELAY": "30000",
        "FIRECRAWL_RETRY_BACKOFF_FACTOR": "3",

        "FIRECRAWL_CREDIT_WARNING_THRESHOLD": "2000",
        "FIRECRAWL_CREDIT_CRITICAL_THRESHOLD": "500"
      }
    }
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;⚠️ After saving the file, it is important to fully exit Claude Desktop mode and restart it to apply the changes.&lt;/p&gt;

&lt;p&gt;Reopen your Claude Desktop app. &lt;br&gt;
The &lt;strong&gt;Search and tools&lt;/strong&gt; section of the Claude prompt chat window should indicate that several mcp-server-firecrawl mcp tools have been downloaded and are now ready for use.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fykmi970j5xii1bpq3ser.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fykmi970j5xii1bpq3ser.png" alt="Firecrawl mcp server on your Claude desktop" width="800" height="438"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a id="prepare-kintone-mcp"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Prepare the Kintone MCP Server
&lt;/h2&gt;

&lt;p&gt;Now we perform the same procedure for the Kintone MCP server. &lt;/p&gt;

&lt;p&gt;We will use &lt;a href="https://github.com/macrat/mcp-server-kintone" rel="noopener noreferrer"&gt;mcp-server-kintone&lt;/a&gt; as the server. &lt;br&gt;
Follow the steps in the README and install the latest release.&lt;/p&gt;

&lt;p&gt;Next, copy the code from &lt;a href="https://github.com/macrat/mcp-server-kintone?tab=readme-ov-file#2-configure-mcp-client-like-claude-desktop" rel="noopener noreferrer"&gt;2. Configure MCP client like Claude Desktop&lt;/a&gt; and place it in your &lt;code&gt;claude_desktop_config.json&lt;/code&gt; file.&lt;/p&gt;

&lt;p&gt;⚠️ Make sure to change all the environment variables to your own values.&lt;/p&gt;

&lt;p&gt;Now your &lt;code&gt;claude_desktop_config.json&lt;/code&gt; file should look like this👇&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "mcpServers": {
    "mcp-server-firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE",

        "FIRECRAWL_RETRY_MAX_ATTEMPTS": "5",
        "FIRECRAWL_RETRY_INITIAL_DELAY": "2000",
        "FIRECRAWL_RETRY_MAX_DELAY": "30000",
        "FIRECRAWL_RETRY_BACKOFF_FACTOR": "3",

        "FIRECRAWL_CREDIT_WARNING_THRESHOLD": "2000",
        "FIRECRAWL_CREDIT_CRITICAL_THRESHOLD": "500"
      }
    },
    "kintone": {
      "command": "&amp;lt;your/path/to/mcp-server-kintone.exe&amp;gt;",
      "env": {
        "KINTONE_BASE_URL": "https://&amp;lt;your domain&amp;gt;.kintone.com",
        "KINTONE_USERNAME": "&amp;lt;your username&amp;gt;",
        "KINTONE_PASSWORD": "&amp;lt;your password&amp;gt;",
        "KINTONE_API_TOKEN": "&amp;lt;your api token&amp;gt;",
        "KINTONE_ALLOW_APPS": "&amp;lt;your App number&amp;gt;",
        "KINTONE_DENY_APPS": ""
      }
    }
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;⚠️ Again, completely exit Claude Desktop mode and restart it to apply the changes.&lt;/p&gt;

&lt;p&gt;When you reopen, your &lt;strong&gt;Search and tools&lt;/strong&gt; section will look like this and will be ready for use👇&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F29plkcklci5m0b33ihfm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F29plkcklci5m0b33ihfm.png" alt="Claude desktop with Kintone and Firecrawl MCP servers" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a id="send-promts"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Send the Prompts
&lt;/h2&gt;

&lt;p&gt;This is the main part. Ask Claude to handle the process. &lt;br&gt;
Go back to your Claude desktop and start sending the prompts.&lt;/p&gt;

&lt;p&gt;Send the first prompt like this.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Use firecrawl to find a recent major news article about “Kintone” on techcrunch.com and provide a summary in an easy-to-read format. Be sure to include the link to the article summary. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;After sending the prompt, a pop-up window will appear👇&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4nam4zh0s1x8olt2qbkk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4nam4zh0s1x8olt2qbkk.png" alt="Claude is asking permission to use the mcp server" width="800" height="609"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Claude determines which of the installed MCP servers should be used and requests permissions for that server. You can then simply grant those permissions by pressing the allow button. The process will begin using the MCP server.&lt;/p&gt;

&lt;p&gt;🤫 MCP typically employs various methods for web searching, which can quickly reach your daily free account limit. As a result, a paid account is necessary for improved performance, although it is still possible to perform some searches with a free account. &lt;br&gt;
If you’re feeling budget-conscious, you can forcibly stop the searching process by pressing the stop button after attempting a few searches.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftsnyjjshcskha6qm5ysp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftsnyjjshcskha6qm5ysp.png" alt="Forced stopped during the 1st prompt" width="800" height="783"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, instruct Claude to register the search result in Kintone using the following prompt.&lt;/p&gt;

&lt;p&gt;So the second prompt is like this. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Add the summary report in a format that can be viewed within the "News summary" App on "&lt;a href="https://your-domain.kintone.com" rel="noopener noreferrer"&gt;https://your-domain.kintone.com&lt;/a&gt;".&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;After this prompt, Claude will ask you again if it can access the Kintone MCP server in the same way it did when inquiring about Firecrawl's server. Grant the permissions once more to proceed.&lt;/p&gt;

&lt;p&gt;Once the permissions are approved, Claude will locate the Kintone App and check the fields where the data needs to be entered.&lt;/p&gt;

&lt;p&gt;Claude will create a record based on the prompt. If it succeeds, Claude will return the following.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The record has been successfully created with ID #1 in the News Summary App.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If you check your Kintone App, you will see a new record of a news summary like this🎉&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4w4id8vh7xwy0twouqwp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4w4id8vh7xwy0twouqwp.png" alt="A news summary record is made by mcp prompts" width="800" height="667"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a id="announcement"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Make an Announcement
&lt;/h2&gt;

&lt;p&gt;Here’s a further implementation of a simple trick for announcing the news summary and updating everyone on your Kintone Portal. &lt;br&gt;
&lt;a href="https://get.kintone.help/k/en/id/040702.html" rel="noopener noreferrer"&gt;Attaching Apps to the Announcement Section or Threads of a Space&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhxrlhug9g0k4tr7bexxt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhxrlhug9g0k4tr7bexxt.png" alt="A Kintone portal announcement of news summary" width="800" height="551"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Not gonna lie. This is really easy, too! &lt;/p&gt;

&lt;p&gt;&lt;a id='“conclusion"'&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;This applies in many ways to sharing your essential information within your CRM, ensuring everyone stays up-to-date. &lt;br&gt;
Sharing is caring🤝&lt;/p&gt;

&lt;p&gt;If you have questions or want to share your thoughts, we’re here for you! &lt;br&gt;
Visit &lt;a href="https://forum.kintone.dev/" rel="noopener noreferrer"&gt;Kintone Developer Forum&lt;/a&gt;&lt;br&gt;
Your input is always welcome.&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>kintone</category>
      <category>claude</category>
      <category>firecrawl</category>
    </item>
    <item>
      <title>Tips for using Kintone in Hackathons</title>
      <dc:creator>William Sayama</dc:creator>
      <pubDate>Sun, 06 Oct 2024 03:13:51 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/tips-for-using-kintone-in-hackathons-3j90</link>
      <guid>https://forem.com/kintonedevprogram/tips-for-using-kintone-in-hackathons-3j90</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;When you're participating in a hackathon, efficiency and quick iteration are key to success. One tool that can help you manage data efficiently is Kintone, a powerful no-code/low-code platform that allows you to create web-based databases with ease. &lt;/p&gt;

&lt;p&gt;In this guide, we'll walk you through how to create a simple Kintone App to store scores for games, and demonstrate how to interact with the Kintone API using some local Python code.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get your Kintone Environment
&lt;/h2&gt;

&lt;p&gt;First we need to get our hands on a Kintone Environment!&lt;br&gt;
Developers are entitled to use the Kintone Developer License - an environment that can be used for free for 1 year ❤&lt;/p&gt;

&lt;p&gt;Get your Kintone Developer License by filling out the form.&lt;br&gt;
&lt;a href="https://kintone.dev/en/developer-license-registration-form/" rel="noopener noreferrer"&gt;https://kintone.dev/en/developer-license-registration-form/&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Create your Kintone Database
&lt;/h2&gt;

&lt;p&gt;Web Databases in Kintone are called "Apps".&lt;br&gt;
Creating these Apps are easy in Kintone - you can drag-and-drop the fields that you need, without needing to code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffzowvyn19obvirkor2ld.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffzowvyn19obvirkor2ld.gif" alt="GIF:A user creates a Kintone App using the drag-and-drop interface" width="1584" height="1070"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Follow the instructions on the following link to create a new App.&lt;br&gt;
&lt;a href="https://get.kintone.help/k/en/id/040133.html" rel="noopener noreferrer"&gt;https://get.kintone.help/k/en/id/040133.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;These are the fields we will include in the Kintone App for this article:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field Type&lt;/th&gt;
&lt;th&gt;Field Name&lt;/th&gt;
&lt;th&gt;Field Code&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;td&gt;Player Name&lt;/td&gt;
&lt;td&gt;playername&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Number&lt;/td&gt;
&lt;td&gt;Score&lt;/td&gt;
&lt;td&gt;score&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Text&lt;/td&gt;
&lt;td&gt;Difficulty&lt;/td&gt;
&lt;td&gt;difficulty&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The field layout should look like the following:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxq9q2h0f5up5r8srcyhy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxq9q2h0f5up5r8srcyhy.png" alt="Image: The fields used in this article are layed out in the Kintone App" width="800" height="558"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After that, proceed to the &lt;strong&gt;Settings&lt;/strong&gt; tab, and generate an API Token that will be used for the authentication. Set the permissions for &lt;strong&gt;View records&lt;/strong&gt; and &lt;strong&gt;Add records&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://get.kintone.help/k/en/id/040471.html" rel="noopener noreferrer"&gt;https://get.kintone.help/k/en/id/040471.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once this is done, save the settings, and click on the blue "Activate App" button.&lt;/p&gt;
&lt;h2&gt;
  
  
  Manually Input Some Data
&lt;/h2&gt;

&lt;p&gt;Since there is no data yet inside the App, manually add in some data so that we have something to work with.&lt;br&gt;
&lt;a href="https://get.kintone.help/k/en/id/040715.html" rel="noopener noreferrer"&gt;https://get.kintone.help/k/en/id/040715.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fih76ula62jjbntmegcmr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fih76ula62jjbntmegcmr.png" alt="Image: A Kintone App with some data inside" width="800" height="469"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now we're ready to interact with the Web Database with some Python code!&lt;/p&gt;
&lt;h2&gt;
  
  
  Sample Python Code to Interact with Kintone
&lt;/h2&gt;

&lt;p&gt;Now that your app is set up, let's look at how you can interact with the Kintone API using Python. We'll cover how to add a record, retrieve all records, and query records based on difficulty.&lt;/p&gt;

&lt;p&gt;Get a Python environment ready on your local machine. Since we will be using the &lt;code&gt;requests&lt;/code&gt; library to make our API calls, install the library with the following command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pip install requests
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  1. Adding a Record to the Kintone App
&lt;/h3&gt;

&lt;p&gt;Below is a sample Python script that adds a new record to the Kintone App.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;add_record&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="n"&gt;API_endpoint&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://{YOUR_SUBDOMAIN}.cybozu.com/k/v1/record.json&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;app_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;{APP_ID}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;

    &lt;span class="n"&gt;kintone_headers&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;X-Cybozu-API-Token&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;{API_TOKEN}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Content-Type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;application/json&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="n"&gt;bodydata&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;app&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;app_id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;record&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;player&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;value&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;John Doe&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
            &lt;span class="p"&gt;},&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;score&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;value&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;1500&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
            &lt;span class="p"&gt;},&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;diff&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
                &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;value&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Medium&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="k"&gt;try&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;API_endpoint&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;kintone_headers&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;dumps&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;bodydata&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
        &lt;span class="n"&gt;jsondata&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;jsondata&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;exceptions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RequestException&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="nf"&gt;add_record&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The App ID is a number that can be found in the URL of the Kintone App.&lt;br&gt;
If the request is successful, a JSON is responded that includes the ID of the newly added record.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="err"&gt;'id':&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;'revision':&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the request is successful, but the record data is empty, it may be because the keys inside the body data were incorrect. Make sure that the keys for the fields are stated as their &lt;strong&gt;field codes&lt;/strong&gt;, and &lt;em&gt;not&lt;/em&gt; their &lt;strong&gt;field names&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Retrieving All Records from the Kintone App
&lt;/h3&gt;

&lt;p&gt;The following Python script will retrieve all records stored in your Kintone App.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;get_all_records&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="n"&gt;API_endpoint&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://{YOUR_SUBDOMAIN}.cybozu.com/k/v1/records.json&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;app_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;{APP_ID}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;API_endpoint&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;API_endpoint&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;?app=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;app_id&lt;/span&gt;

    &lt;span class="n"&gt;kintone_headers&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;X-Cybozu-API-Token&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;{API_TOKEN}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="k"&gt;try&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;API_endpoint&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;kintone_headers&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="n"&gt;jsondata&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;jsondata&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;exceptions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RequestException&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="nf"&gt;get_all_records&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the request is successful, the response will include a JSON of all the records in the App.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"records"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"difficulty"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DROP_DOWN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1500"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Record Number"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"RECORD_NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"7"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Updated By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"MODIFIER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Administrator"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Administrator"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Created By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATOR"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Administrator"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Administrator"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"playername"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"SINGLE_LINE_TEXT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"$revision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__REVISION__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Updated Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"UPDATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T02:33:00Z"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Created Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T02:33:00Z"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"$id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__ID__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"7"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"difficulty"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DROP_DOWN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Hard"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"34000"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Record Number"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"RECORD_NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"6"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Updated By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"MODIFIER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will-yama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Created By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATOR"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will-yama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"playername"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"SINGLE_LINE_TEXT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Kelly Smiles"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"$revision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__REVISION__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Updated Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"UPDATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T01:41:00Z"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Created Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T01:41:00Z"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"$id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__ID__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"6"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="err"&gt;...&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We have cut off the above JSON response half way through for this article, as it is quite long.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Retrieving Records with Query Filtering
&lt;/h3&gt;

&lt;p&gt;In some cases, you may want to retrieve records based on specific conditions, such as fetching records where the difficulty is set to "Hard". Add a query to the GET request to achieve this.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;get_all_records&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
    &lt;span class="n"&gt;API_endpoint&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://{YOUR_SUBDOMAIN}.cybozu.com/k/v1/records.json&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;app_id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;{APP_ID}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;query&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;difficulty in (&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;Hard&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;)&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="n"&gt;API_endpoint&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;API_endpoint&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;?app=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;app_id&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;&amp;amp;query=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;query&lt;/span&gt;

    &lt;span class="n"&gt;kintone_headers&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;X-Cybozu-API-Token&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;{API_TOKEN}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

    &lt;span class="k"&gt;try&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;API_endpoint&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;kintone_headers&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
        &lt;span class="n"&gt;jsondata&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;jsondata&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

    &lt;span class="k"&gt;except&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;exceptions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RequestException&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="nf"&gt;get_all_records&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the request is successful, the response will include a JSON of the filtered records.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"records"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"difficulty"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DROP_DOWN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Hard"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"34000"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Record Number"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"RECORD_NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"6"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Updated By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"MODIFIER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"William Sayama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Created By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATOR"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"William Sayama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"playername"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"SINGLE_LINE_TEXT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Kelly Smiles"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"$revision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__REVISION__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Updated Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"UPDATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T01:41:00Z"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Created Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T01:41:00Z"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"$id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__ID__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"6"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"difficulty"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DROP_DOWN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Hard"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"45000"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Record Number"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"RECORD_NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"5"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Updated By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"MODIFIER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"William Sayama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Created By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATOR"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"William Sayama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"playername"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"SINGLE_LINE_TEXT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Jay Pudding"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"$revision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__REVISION__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Updated Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"UPDATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T01:38:00Z"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Created Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T01:38:00Z"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"$id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__ID__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"5"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"difficulty"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DROP_DOWN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Hard"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"34000"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Record Number"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"RECORD_NUMBER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Updated By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"MODIFIER"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"William Sayama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Created By"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATOR"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"code"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"will"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"William Sayama"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"playername"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"SINGLE_LINE_TEXT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Jam Flipping"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"$revision"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__REVISION__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Updated Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"UPDATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-06T01:38:00Z"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Created Datetime"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CREATED_TIME"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2024-10-05T01:26:00Z"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"$id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"__ID__"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nl"&gt;"totalCount"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;By setting up a Kintone App and interacting with it via API, you can easily manage data for your projects. Whether you're keeping track of player performances or storing other types of data, Kintone’s flexible API makes it easy to integrate into any hackathon project.&lt;/p&gt;

&lt;p&gt;This guide has provided examples for adding records, retrieving all records, and querying records with specific conditions, allowing you to customize your data management according to your needs.&lt;/p&gt;

&lt;p&gt;Good luck at your hackathon, and happy coding with Kintone!&lt;/p&gt;

</description>
      <category>hackathon</category>
      <category>python</category>
      <category>programming</category>
      <category>api</category>
    </item>
    <item>
      <title>🎉 Announcing the Winners of the Kintone Customization Contest 2023! 🎉</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Fri, 08 Sep 2023 09:42:43 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/announcing-the-winners-of-the-kintone-customization-contest-2023-2fdh</link>
      <guid>https://forem.com/kintonedevprogram/announcing-the-winners-of-the-kintone-customization-contest-2023-2fdh</guid>
      <description>&lt;h2&gt;
  
  
  Congratulations to our winners!
&lt;/h2&gt;

&lt;p&gt;A huge congratulations to our outstanding winners of the &lt;a href="https://dev.to/kintonedevprogram/contest-kintone-customization-contest-2023-3bkl"&gt;Kintone Customization Contest 2023&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="mentioned-user" href="https://dev.to/garrettomi"&gt;@garrettomi&lt;/a&gt; for the engaging &lt;a href="https://dev.to/garrettomi/building-the-travel-tracker-my-homage-to-instagrams-lost-map-feature-k5o"&gt;Building the "Travel Tracker": My Homage to Instagram's Lost Map Feature&lt;/a&gt; article.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="mentioned-user" href="https://dev.to/ramsurajcoding"&gt;@ramsurajcoding&lt;/a&gt; for his innovative &lt;a href="https://dev.to/ramsurajcoding/flutter-and-kintone-4166"&gt;Flutter and Kintone&lt;/a&gt; project.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a class="mentioned-user" href="https://dev.to/emilythecat"&gt;@emilythecat&lt;/a&gt; for her valuable &lt;a href="https://dev.to/emilythecat/display-kintone-records-on-google-maps-h8p"&gt;Display Kintone Records on Google Maps&lt;/a&gt; integration.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We truly appreciate the time, effort, and creativity you've poured into your submissions.&lt;br&gt;
&lt;em&gt;We will contact you directly on the Kintone Developer Forum to award you your prizes!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;As we celebrate the winners today, we're eager to see what future projects they'll bring to the table!&lt;/p&gt;

&lt;h2&gt;
  
  
  Hey Kintone Developers, we want to hear from you!
&lt;/h2&gt;

&lt;p&gt;What did you think of the contest?&lt;br&gt;
Did you enjoy it? Did you miss out? Want to see different prizes?&lt;/p&gt;

&lt;p&gt;We'd love to hear your thoughts, and if you'd like to see more contests like this, let us know in the comments below or on the &lt;a href="https://forum.kintone.dev/" rel="noopener noreferrer"&gt;Kintone Developer Forum&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Your feedback is important to us, and we want to ensure we provide you with the best resources and opportunities to grow as a developer.&lt;/p&gt;

&lt;p&gt;We're always looking for ways to improve, and we'd love to hear from you!&lt;/p&gt;

&lt;h2&gt;
  
  
  Upcoming Events
&lt;/h2&gt;

&lt;p&gt;Did you miss out on the contest? Don't worry; we have more events coming up!&lt;/p&gt;

&lt;h3&gt;
  
  
  Next Workshop
&lt;/h3&gt;

&lt;p&gt;We have a &lt;a href="https://www.meetup.com/kintone-developers/events/295819622/" rel="noopener noreferrer"&gt;Hosting Your React App with Web Database&lt;/a&gt; workshop&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🌐 Workshop will be live on Zoom or YouTube Live&lt;/li&gt;
&lt;li&gt;🗓️ Tue, Oct 24, 6:00 PM → 8:00 PM (Pacific)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Next Hackathon
&lt;/h3&gt;

&lt;p&gt;We also will be sponsoring the &lt;a href="https://www.eventbrite.com/e/nasa-international-space-apps-challenge-2023-boston-tickets-674757125727" rel="noopener noreferrer"&gt;NASA International Space Apps Challenge 2023 - Boston - By Binnovative.org&lt;/a&gt;!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🌐 The hackathon will be held online; anyone is welcome to participate!&lt;/li&gt;
&lt;li&gt;🗓️ Sat, Oct 7, 6:00 AM → Sun, Oct 8, 1:00 PM (Pacific)&lt;/li&gt;
&lt;li&gt;🏆 The hackathon will have a &lt;strong&gt;Best Use of Kintone&lt;/strong&gt; prize!&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Cheers to innovation and to all who participated! 🥳
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0o96kca7ved8ubc9vt26.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0o96kca7ved8ubc9vt26.gif" alt="Gif of the Proud of You Meme" width="480" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>kintone</category>
      <category>kintonecontest</category>
      <category>hackathon</category>
      <category>winners</category>
    </item>
    <item>
      <title>Save Data to Kintone with an ESP8266</title>
      <dc:creator>sean-kintone</dc:creator>
      <pubDate>Thu, 31 Aug 2023 06:43:09 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/save-data-to-kintone-with-an-esp8266-2f7a</link>
      <guid>https://forem.com/kintonedevprogram/save-data-to-kintone-with-an-esp8266-2f7a</guid>
      <description>&lt;h3&gt;
  
  
  Overview
&lt;/h3&gt;

&lt;p&gt;This article introduces how to save data to a Kintone App using a &lt;a href="https://www.make-it.ca/nodemcu-details-specifications/" rel="noopener noreferrer"&gt;NodeMCU ESP8266&lt;/a&gt; device.&lt;/p&gt;

&lt;p&gt;While the device used in this tutorial is an ESP8266, the concepts apply to most if not all Arduino devices with Wi-Fi capabilities. And similarly, while the Web Database used in this tutorial is &lt;a href="https://kintone.dev/en/" rel="noopener noreferrer"&gt;Kintone&lt;/a&gt;, changing the contents of the HTTP Request allows for any REST API based web database to be used.&lt;/p&gt;

&lt;p&gt;Video available as well:&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/xtEetrzM_8c"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  General Flow
&lt;/h3&gt;

&lt;p&gt;The general flow of this tutorial is as follows:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Connect and Test the ESP8266&lt;/li&gt;
&lt;li&gt;Create a Kintone App to store data&lt;/li&gt;
&lt;li&gt;Write and upload a program or "sketch" to the device that will access Kintone's &lt;a href="https://dev.to/docs/kintone/rest-api/"&gt;REST API&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Initial Setup
&lt;/h3&gt;

&lt;p&gt;First connect the ESP8266 to your computer via USB cable. Note that the quality of cable matters, and a high quality USB cable should be used, or else the cable will only provide power and will fail to transfer data.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm95xqrijilg9pgp0jdfj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm95xqrijilg9pgp0jdfj.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Download and install the &lt;a href="https://www.arduino.cc/en/software" rel="noopener noreferrer"&gt;Arduino IDE&lt;/a&gt;. After installation, open the IDE to the first sketch.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzva13jgw59p04v59u461.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzva13jgw59p04v59u461.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open the settings menu, and in the &lt;code&gt;Additional Boards Manager URLs&lt;/code&gt; option, add the following open source ESP8266 repository URL: &lt;code&gt;https://arduino.esp8266.com/stable/package_esp8266com_index.json&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fop35s71e0w3uta54bs87.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fop35s71e0w3uta54bs87.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This will allow support for various Arduino and other micro-controller devices based on the ESP8266 chip to be downloaded.&lt;/p&gt;

&lt;p&gt;Next, open the library tab on the left side of the IDE, and search for &lt;code&gt;ESP8266&lt;/code&gt;. Install the latest version.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvgc4vkzz22oaessu2e5p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvgc4vkzz22oaessu2e5p.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, ensure that the ESP8266 is connected via USB cable, and in the top menu, select the ESP8266 model to use. If it is not displayed automatically, click on the &lt;code&gt;Select Other Board and Port&lt;/code&gt; menu item.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdlyzm12y0bv99oz03krm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdlyzm12y0bv99oz03krm.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Search for ESP8266, and select the model that is being used. In this example, a LoLin board based on NodeMCU is used. This will vary depending on the development board used. Select the port the ESP8266 is connected to.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9ik9ih68265767qa9hq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9ik9ih68265767qa9hq.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Common port names are &lt;code&gt;usbserial&lt;/code&gt;, &lt;code&gt;usbmodem&lt;/code&gt;, &lt;code&gt;COM3&lt;/code&gt;, or other names that end with &lt;code&gt;(USB)&lt;/code&gt;, but will depend on the operating system, drivers, and firmware of the development environment.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Connecting via a faulty or weak USB cable is the most common reason for failure to connect. Refer to the official &lt;a href="https://support.arduino.cc/hc/en-us/articles/4412955149586-If-your-board-does-not-appear-on-a-port-in-Arduino-IDE" rel="noopener noreferrer"&gt;Arduino Help Article&lt;/a&gt; for more troubleshooting.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;After confirming the board is connected, the ESP8266 is ready for development.&lt;/p&gt;

&lt;h3&gt;
  
  
  Create a Kintone App
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Set up the Fields
&lt;/h4&gt;

&lt;p&gt;For this example, a simple App with a single &lt;strong&gt;Radio button&lt;/strong&gt; field will be used.&lt;br&gt;
Create a new App with the following field settings.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field Type&lt;/th&gt;
&lt;th&gt;Field Name&lt;/th&gt;
&lt;th&gt;Field Code&lt;/th&gt;
&lt;th&gt;Remarks&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Radio button&lt;/td&gt;
&lt;td&gt;Favorite Color&lt;/td&gt;
&lt;td&gt;color&lt;/td&gt;
&lt;td&gt;Options: Red, Blue, Green, Yellow&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Additional fields will not significantly increase the complexity of this tutorial, and only require the JSON object sent via the ESP8266 be modified accordingly (with some exceptions, such as &lt;strong&gt;Attachment&lt;/strong&gt; fields and &lt;strong&gt;Tables&lt;/strong&gt;.)&lt;/p&gt;

&lt;h4&gt;
  
  
  Create an API Token
&lt;/h4&gt;

&lt;p&gt;Create an API Token with &lt;code&gt;View records&lt;/code&gt; and &lt;code&gt;Add records&lt;/code&gt; permissions.&lt;br&gt;
Refer to the &lt;a href="https://get.kintone.help/k/en/id/040471.html" rel="noopener noreferrer"&gt;Generating API Tokens&lt;/a&gt; article on the Kintone Help site for more information on API Tokens.&lt;/p&gt;

&lt;h4&gt;
  
  
  Information For Later
&lt;/h4&gt;

&lt;p&gt;The following information will be used to test the POST request from the ESP8266.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;API Token&lt;/li&gt;
&lt;li&gt;Subdomain (for example.kintone.com, the subdomain is &lt;code&gt;example&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;App ID&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;The App ID can be found in the URL of the App.&lt;br&gt;
For example, if the URL of the App is &lt;code&gt;https://example.kintone.com/k/23/&lt;/code&gt;, the App ID is &lt;strong&gt;23&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Program a POST request in the ESP8266
&lt;/h3&gt;

&lt;p&gt;The ESP8266 is a popular choice for low-cost IOT, as it has Wi-Fi capabilities, and is able to connect to and broadcast Wi-Fi networks. The code in this example has three main goals:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Connect to a Wi-Fi network, and start a server on the local network.&lt;/li&gt;
&lt;li&gt;Create HTML routes and a form&lt;/li&gt;
&lt;li&gt;Pass the information from the form to a REST API request to Kintone.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This tutorial can be downloaded from the &lt;a href="https://github.com/kintone-workshops/esp8266-sketches/blob/c823a31ee1e81ca56def025de43af2584246ae16/1_kintone_web_server/kintone_web_server.ino" rel="noopener noreferrer"&gt;Kintone Workshop&lt;/a&gt; repository.&lt;br&gt;
In this example the user needs only to edit the code regarding Wi-Fi credentials on lines 8 and 9, before compiling and uploading the code to the ESP8266.&lt;/p&gt;

&lt;h4&gt;
  
  
  Complete Code Example
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight dart"&gt;&lt;code&gt;&lt;span class="ss"&gt;#include&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;ESP8266WiFi&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;h&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="ss"&gt;#include&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;ESP8266WebServer&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;h&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="ss"&gt;#include&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;ESP8266HTTPClient&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;h&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="ss"&gt;#include&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;WiFiClientSecure&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;h&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="ss"&gt;#include&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;ArduinoJson&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;h&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;

&lt;span class="c1"&gt;// Your WIFI information. You must be connected to the same WIFI network to connect via localhost.&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="n"&gt;char&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;ssid&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"MY_WIFI_SSID"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="n"&gt;char&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;password&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"MY_WIFI_PASSWORD"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;// A JSON Class to handle JSON data.&lt;/span&gt;
&lt;span class="n"&gt;DynamicJsonDocument&lt;/span&gt; &lt;span class="nf"&gt;doc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1024&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="c1"&gt;// The ESP8266 server class.&lt;/span&gt;
&lt;span class="n"&gt;ESP8266WebServer&lt;/span&gt; &lt;span class="nf"&gt;server&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;80&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="c1"&gt;// A variable for tracking a valid HTTP response or not.&lt;/span&gt;
&lt;span class="kt"&gt;bool&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// The setup function is special, and runs only once.&lt;/span&gt;
&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;setup&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="c1"&gt;// The BAUD rate for the serial monitor.&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;begin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;9600&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;delay&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Connecting to "&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ssid&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="c1"&gt;//connect to your local wi-fi network&lt;/span&gt;
  &lt;span class="n"&gt;WiFi&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;begin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ssid&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;password&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="c1"&gt;//check wi-fi is connected to wi-fi network&lt;/span&gt;
  &lt;span class="k"&gt;while&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;WiFi&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;status&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="n"&gt;WL_CONNECTED&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;delay&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"."&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;""&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"WiFi connected..!"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Got IP: "&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;WiFi&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;localIP&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt;

  &lt;span class="c1"&gt;// The HTTP server class let's developers create routes, that run specific functions on access.&lt;/span&gt;
  &lt;span class="c1"&gt;// Here, we designate the root route, the /post route, and a 404 route.&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"/"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;handle_OnConnect&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"/post"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;handlePost&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;onNotFound&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;handle_NotFound&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;begin&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"HTTP server started"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// The loop function. This will run continuously, and let our server class handle incoming requests.&lt;/span&gt;
&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;loop&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;handleClient&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// This function runs when users access the root route.&lt;/span&gt;
&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;handle_OnConnect&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Welcome. Enter your App ID, API Key, and Subdomain to post some data."&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="c1"&gt;// This function sends a 200 on successful connection, and then runs the SendHTML() function.&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"text/html"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;SendHTML&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// This function runs after clicking the Post to Kintone button, and the users accesses the /post route.&lt;/span&gt;
&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;handlePost&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="c1"&gt;// A new HTTP Client.&lt;/span&gt;
  &lt;span class="n"&gt;WiFiClientSecure&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;HTTPClient&lt;/span&gt; &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;setInsecure&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Attempting to Save to Kintone..."&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="c1"&gt;// The variables passed to this route via Form Action. The user's subdomain, appID, API Token, and favorite color.&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;subdomain&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;arg&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"subdomain"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;appID&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;arg&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"appID"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;token&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;arg&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"API"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;color&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;arg&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"color"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="c1"&gt;// The URL for our HTTP Request.&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"https://"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;subdomain&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="s"&gt;".kintone.com/k/v1/record.json?app="&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;appID&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"info:"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;begin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="c1"&gt;// Formatting the POST Request JSON Object.&lt;/span&gt;
  &lt;span class="n"&gt;doc&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;"app"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;appID&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;JsonObject&lt;/span&gt; &lt;span class="n"&gt;recordObject&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;doc&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;createNestedObject&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"record"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;recordObject&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;"color"&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;color&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;serializeJson&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;doc&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="c1"&gt;// End of JSON formatting. The JSON string is saved to the json variable.&lt;/span&gt;

  &lt;span class="c1"&gt;// Response Code variable for our HTTP request.&lt;/span&gt;
  &lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;responseCode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="c1"&gt;// Adding request headers via the http class.&lt;/span&gt;
  &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;addHeader&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"X-Cybozu-API-Token"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;token&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;addHeader&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Content-type"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"application/json"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="c1"&gt;// Making the POST request, and saving the result to responseCode&lt;/span&gt;
  &lt;span class="n"&gt;responseCode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;POST&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;printf&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"http Response Code = %d &lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;responseCode&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;payload&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getString&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;payload&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="c1"&gt;// Using an IF statement we can choose which HTML to send for each response code. Details are logged to the serial monitor.&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;responseCode&lt;/span&gt; &lt;span class="p"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"HTTP Response code: "&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;responseCode&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;payload&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;getString&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;payload&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;responseCode&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="mi"&gt;400&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Error code: "&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;responseCode&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Error code: "&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;responseCode&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="c1"&gt;// Ending the HTTP request, and passing the result variable to the PostResult function.&lt;/span&gt;
  &lt;span class="n"&gt;http&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;end&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"text/html"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;PostResult&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// A function to handle all 404 routes.&lt;/span&gt;
&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;handle_NotFound&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="n"&gt;server&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;404&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"text/plain"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"Not found"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// A Function which returns an html string. This is the HTML which gets displayed on each route. SendHTML for the root route.&lt;/span&gt;
&lt;span class="c1"&gt;// Note that quotation marks (" ") within HTML must be escaped with a forward slash ( \ ).&lt;/span&gt;
&lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="nf"&gt;SendHTML&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;head&amp;gt;&amp;lt;meta name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;viewport&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; content=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;width=device-width, initial-scale=1.0, user-scalable=no&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;title&amp;gt;Kintone and IOT!&amp;lt;/title&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;style&amp;gt;html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"body{margin-top: 50px;} h1 {color: #444444;margin: 50px auto 30px;} h3 {color: #444444;margin-bottom: 50px;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;".button {display: block;width: 80px;background-color: #1abc9c;border: none;color: white;padding: 13px 30px;text-decoration: none;font-size: 25px;margin: 0px auto 35px;cursor: pointer;border-radius: 4px;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"p {font-size: 14px;color: #888;margin-bottom: 10px;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/style&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;body&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;h1&amp;gt;ESP8266 Web Server&amp;lt;/h1&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;p&amp;gt;Enter your subdomain, appID, and API Token!&amp;lt;/p&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;form action=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;/post&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;subdomain&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;Subdomain:&amp;lt;/label&amp;gt;&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; id=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;subdomain&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;subdomain&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;example&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;appID&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;App ID:&amp;lt;/label&amp;gt;&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; id=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;appID&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;appID&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;1&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;/&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;API&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;API Token:&amp;lt;/label&amp;gt;&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; id=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;API&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;API&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;1J22qNAR54I4eiMcd0JmfDAavJNfNJDVaqt34X9A&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;/&amp;gt;&amp;lt;br&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;color&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;Pick your favorite Color:&amp;lt;/label&amp;gt;&amp;lt;br&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;red&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;Red&amp;lt;/label&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;radio&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; id=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;red&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;color&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;Red&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; checked /&amp;gt;&amp;lt;br&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;blue&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;Blue&amp;lt;/label&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;radio&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; id=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;blue&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;color&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;Blue&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; /&amp;gt;&amp;lt;br&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;green&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;Green&amp;lt;/label&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;radio&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; id=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;green&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;color&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;Green&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; /&amp;gt;&amp;lt;br&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;label for=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;yellow&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;Yellow&amp;lt;/label&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;radio&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; id=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;yellow&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;color&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;Yellow&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; /&amp;gt;&amp;lt;br&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;input type=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;submit&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; value=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;Post to Kintone!&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;ptr&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// This function displays the HTML for the /post route. It takes a boolean variable, which can be used to alter the HTML displayed.&lt;/span&gt;
&lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="nf"&gt;PostResult&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;uint8_t&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kt"&gt;String&lt;/span&gt; &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;head&amp;gt;&amp;lt;meta name=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;viewport&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt; content=&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;width=device-width, initial-scale=1.0, user-scalable=no&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s"&gt;&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;title&amp;gt;Kintone and IOT!&amp;lt;/title&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;style&amp;gt;html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"body{margin-top: 50px;} h1 {color: #444444;margin: 50px auto 30px;} h3 {color: #444444;margin-bottom: 50px;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;".button {display: block;width: 80px;background-color: #1abc9c;border: none;color: white;padding: 13px 30px;text-decoration: none;font-size: 25px;margin: 0px auto 35px;cursor: pointer;border-radius: 4px;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"p {font-size: 14px;color: #888;margin-bottom: 10px;}&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/style&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;body&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;h1&amp;gt;ESP8266 Web Server&amp;lt;/h1&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;p&amp;gt;Post page&amp;lt;/p&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;p&amp;gt;Success!&amp;lt;/p&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;p&amp;gt;Error Posting Check your JSON, API Token, and field codes!&amp;lt;/p&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;a href='/'&amp;gt; Go Back &amp;lt;/a&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;ptr&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Compile and Upload the code
&lt;/h4&gt;

&lt;p&gt;After copying and pasting the code example into the Arduino IDE, the validity of the code can be checked via the &lt;code&gt;Verify&lt;/code&gt; button.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp3eclxj4u5hu5ska446p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp3eclxj4u5hu5ska446p.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Any errors will be output in the &lt;code&gt;output&lt;/code&gt; console in the bottom of the editor.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2sx64z3h3kun5tvaxqyj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2sx64z3h3kun5tvaxqyj.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If the code is technically sound, it can then be uploaded to the ESP8266.&lt;br&gt;
Ensure that the ESP8266 is still connected via USB, and click on the &lt;code&gt;Upload&lt;/code&gt; button in the top menu.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2zwq0zhfxb9ofxbjbehh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2zwq0zhfxb9ofxbjbehh.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Upload progress and any errors can be confirmed in the &lt;code&gt;output&lt;/code&gt; console in the bottom tab of the Arduino IDE.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fddst485bqxpbd26jo6fk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fddst485bqxpbd26jo6fk.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Test the Sample Code
&lt;/h3&gt;

&lt;p&gt;Once the code is uploaded, information on how to connect to the ESP8266 will be displayed in the &lt;code&gt;serial monitor&lt;/code&gt;.&lt;/p&gt;

&lt;h4&gt;
  
  
  Displaying the Serial Monitor
&lt;/h4&gt;

&lt;p&gt;The &lt;code&gt;serial monitor&lt;/code&gt; is a fundamental concept of micro-controller development. For more information, refer to the &lt;a href="https://docs.arduino.cc/software/ide-v2/tutorials/ide-v2-serial-monitor" rel="noopener noreferrer"&gt;Using the Serial Monitor tool&lt;/a&gt; article in the Arduino documentation.&lt;/p&gt;

&lt;p&gt;In this example, the serial monitor is used in the code via &lt;code&gt;Serial.println()&lt;/code&gt; statements. Those familiar with web development will find it similar to the JavaScript &lt;code&gt;console.log()&lt;/code&gt; function. The Serial Monitor can be displayed in the bottom on the Arduino IDE.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fce22xybmph7tomgtmba2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fce22xybmph7tomgtmba2.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Developers may noticed erroneous characters appearing in the Serial Monitor. When starting transmissions, a display of a few garbled characters is common and not a cause for concern. If no characters are displayed in the &lt;code&gt;serial monitor&lt;/code&gt;, ensure that the baud rate matches the baud rate specified in the code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq3fpoi2axlgnrgsz99ti.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq3fpoi2axlgnrgsz99ti.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The IP address on the local network is displayed in the &lt;code&gt;serial monitor&lt;/code&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Ensure that the ESP8266, and the computer that will display the ESP8266 web page are connected to the same Wi-Fi network.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15pn2p4hfpgac2d0j65v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15pn2p4hfpgac2d0j65v.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Accessing the IP Address of the ESP8266 will lead to the root route being executed in code, and displaying the following HTML:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feyxzw25g4q6e3zgkdq7b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feyxzw25g4q6e3zgkdq7b.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enter the data specified in this article's Information For Later section, choose a color, and click on the &lt;code&gt;Post to Kintone!&lt;/code&gt; button.&lt;br&gt;
Check the Kintone App to see if a new record has been successfully posted.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxgish8ladtnox371xgj9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxgish8ladtnox371xgj9.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>arduino</category>
      <category>iot</category>
      <category>restapi</category>
      <category>kintone</category>
    </item>
    <item>
      <title>🏆 Contest - Kintone Customization Contest 2023</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Mon, 03 Jul 2023 03:00:00 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/contest-kintone-customization-contest-2023-3bkl</link>
      <guid>https://forem.com/kintonedevprogram/contest-kintone-customization-contest-2023-3bkl</guid>
      <description>&lt;p&gt;Hey Kintone Developers  👋&lt;/p&gt;

&lt;p&gt;We are excited to announce our latest contest, where you can enter to win awesome prizes 💰 by building and showing your dev skills 💪!&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/un_vMKv_6hM"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Deadline: &lt;strong&gt;Thu, August 31, 23:59 (Pacific)&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Prizes: &lt;strong&gt;$100 gift cards&lt;/strong&gt; to &lt;strong&gt;15 winners&lt;/strong&gt; &amp;amp; Kintone swag to all submitters&lt;/li&gt;
&lt;li&gt;How to Enter:

&lt;ol&gt;
&lt;li&gt;Build a cool Kintone customization or project that uses Kintone APIs&lt;/li&gt;
&lt;li&gt;Write up how you built it &amp;amp; &lt;a href="https://dev.to/new"&gt;post your article on DEV&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Comment on the &lt;a href="https://forum.kintone.dev/t/799" rel="noopener noreferrer"&gt;Contest Submission&lt;/a&gt; topic with a link to your post.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;Criteria: &lt;strong&gt;Creativity&lt;/strong&gt;, &lt;strong&gt;Look &amp;amp; Feel&lt;/strong&gt;, &lt;strong&gt;Article Quality&lt;/strong&gt;, &amp;amp; &lt;strong&gt;Kintone Usage&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Winners Announcement: &lt;strong&gt;Thu, September 7 (Pacific)&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What is Kintone? ⚙️
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://kintone.dev/en/landing-page/hackathon/" rel="noopener noreferrer"&gt;Kintone&lt;/a&gt; is a no-code/low-code cloud platform for teams to quickly &amp;amp; easily share and collaborate on their data.&lt;/p&gt;

&lt;p&gt;You can add JavaScript, CSS, &amp;amp;/or HTML to enhance the front-end UI/UX of a Kintone App. This can include features such as maps, buttons, and color-coding.&lt;/p&gt;

&lt;p&gt;Read how to customize and develop on the Kintone platform at &lt;a href="https://kintone.dev" rel="noopener noreferrer"&gt;kintone.dev&lt;/a&gt;!&lt;/p&gt;

&lt;h2&gt;
  
  
  Prizes 💰
&lt;/h2&gt;

&lt;p&gt;To the &lt;strong&gt;15 best submissions&lt;/strong&gt;, we will be giving away &lt;strong&gt;$100 gift cards&lt;/strong&gt; &amp;amp; special Kintone swag!&lt;/p&gt;

&lt;p&gt;To all submitters, we will be giving away Kintone swag!&lt;/p&gt;

&lt;p&gt;⚡ We will be direct messaging the winners and submitters on the Kintone Developer Forum to get shipping information.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Enter 🗳️
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;em&gt;If you do not have one yet,&lt;/em&gt; &lt;a href="https://forum.kintone.dev/signup" rel="noopener noreferrer"&gt;Create a Kintone Developer Forum account&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Build a Kintone customization or project that uses &lt;a href="https://kintone.dev/en/docs/kintone/rest-api/" rel="noopener noreferrer"&gt;Kintone APIs&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Write up how you built it &amp;amp; &lt;a href="https://dev.to/new"&gt;post your article on DEV&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;code&gt;#kintone&lt;/code&gt; &amp;amp; &lt;code&gt;#kintone_contest&lt;/code&gt; tags to your article&lt;/li&gt;
&lt;li&gt;Add the following footer to your article:
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   This post is part of the Kintone Customization Contest 2023.  
   Submitter: https://forum.kintone.dev/u/INSERT_YOUR_USERNAME_HERE  
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Comment on the &lt;a href="https://forum.kintone.dev/t/799" rel="noopener noreferrer"&gt;Contest Submission&lt;/a&gt; topic with the &lt;strong&gt;Title&lt;/strong&gt; and &lt;strong&gt;link&lt;/strong&gt; to your article&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For more information, refer to the example submission included in the &lt;a href="https://forum.kintone.dev/t/799" rel="noopener noreferrer"&gt;Contest Submission Instructions&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Criteria 📝
&lt;/h2&gt;

&lt;p&gt;We will be judging your submissions based on the following criteria:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Criterion&lt;/th&gt;
&lt;th&gt;Points&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Kintone Usage&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;How well does your project use Kintone and Kintone APIs?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Article Quality&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;25&lt;/td&gt;
&lt;td&gt;How well is your article written?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Look &amp;amp; Feel&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;15&lt;/td&gt;
&lt;td&gt;How well does your project look and actually work?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Creativity&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;How original and interesting is your project?&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Winners Announcement 📢
&lt;/h2&gt;

&lt;p&gt;We will be announcing the winners on the Kintone Developer Forum and DEV on Thu, September 7 (Pacific).&lt;/p&gt;

&lt;p&gt;We will also be direct messaging the winners and submitters on the Kintone Developer Forum to get shipping information.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deadline ⏱️ &amp;amp; Rules 📜
&lt;/h2&gt;

&lt;p&gt;The contest starts on &lt;strong&gt;Mon, July 3, 00:00 (Pacific)&lt;/strong&gt; and ends on &lt;strong&gt;Thu, August 31, 23:59 (Pacific)&lt;/strong&gt; (the "Entry Period").&lt;/p&gt;

&lt;p&gt;You must submit your write up and comment on the &lt;a href="https://forum.kintone.dev/t/799" rel="noopener noreferrer"&gt;Contest Submission&lt;/a&gt; topic by &lt;strong&gt;Thu, August 31, 23:59 (Pacific)&lt;/strong&gt; to be eligible for the contest.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The project must use Kintone itself or Kintone APIs in some way.&lt;/li&gt;
&lt;li&gt;Multiple submissions are allowed; however, each entrant may only win once.&lt;/li&gt;
&lt;li&gt;Collaboration is allowed.

&lt;ul&gt;
&lt;li&gt;Just note that Kintone will not handle prize-splitting. The prize will be sent to the Kintone Developer Forum account listed as the author in the DEV article. You will need to split the prize amongst yourselves.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;All submissions must be new projects created during the contest period.&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;⚠️ IMPORTANT: PLEASE READ THE &lt;a href="https://forum.kintone.dev/t/804" rel="noopener noreferrer"&gt;KINTONE CONTEST OFFICIAL RULES&lt;/a&gt; BEFORE ENTERING THE CONTEST. BY PARTICIPATING IN THE CONTEST, YOU AGREE TO BE BOUND BY THESE OFFICIAL RULES AND REPRESENT THAT YOU SATISFY ALL OF THE ELIGIBILITY REQUIREMENTS BELOW.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;NO PURCHASE NECESSARY. Open only to 18+. The Contest is void where prohibited or restricted by law or regulation. For Official Rules, see &lt;a href="https://forum.kintone.dev/t/804" rel="noopener noreferrer"&gt;Kintone Contest Official Rules&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Inspiration 💡
&lt;/h2&gt;

&lt;p&gt;Here are some ideas to get you started:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Take data stored in a Kintone app and visualize it in a cool way with a charting library like &lt;a href="https://quickchart.io/" rel="noopener noreferrer"&gt;QuickChart&lt;/a&gt; or &lt;a href="https://www.amcharts.com/demos/" rel="noopener noreferrer"&gt;amCharts&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Build a PDF generator using &lt;a href="https://kintone.dev/en/docs/kintone/rest-api/" rel="noopener noreferrer"&gt;Kintone's REST API&lt;/a&gt; and a PDF library like &lt;a href="https://pdfkit.org/" rel="noopener noreferrer"&gt;PDFKit&lt;/a&gt; or &lt;a href="http://pdfmake.org/#/" rel="noopener noreferrer"&gt;PDFMake&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Integrate Kintone with a third-party service like &lt;a href="https://www.twilio.com/" rel="noopener noreferrer"&gt;Twilio&lt;/a&gt; or &lt;a href="https://slack.com/" rel="noopener noreferrer"&gt;Slack&lt;/a&gt; to send notifications or messages&lt;/li&gt;
&lt;li&gt;Inject a game into Kintone using &lt;a href="https://kintone.dev/en/docs/kintone/js-api/" rel="noopener noreferrer"&gt;Kintone's JS API&lt;/a&gt; and a game library like &lt;a href="https://phaser.io/" rel="noopener noreferrer"&gt;Phaser&lt;/a&gt; or &lt;a href="https://www.pixijs.com/" rel="noopener noreferrer"&gt;PixiJS&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Create a Google Maps mashup using &lt;a href="https://kintone.dev/en/docs/kintone/js-api/" rel="noopener noreferrer"&gt;Kintone's JS API&lt;/a&gt; and the &lt;a href="https://developers.google.com/maps/documentation/javascript/overview" rel="noopener noreferrer"&gt;Google Maps API&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Resources 📚
&lt;/h2&gt;

&lt;p&gt;Quick Start Guides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kintone.dev/en/quickstart/" rel="noopener noreferrer"&gt;Retrieve Kintone Data using CURL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/kintonedevprogram/quick-start-on-using-kintone-web-database-in-a-hackathon-project-3fh7"&gt;Using Kintone Web Database in a Hackathon Project - DEV Community&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/kintonedevprogram/quick-start-vs-code-setup-for-kintone-customization-development-1k5b"&gt;VS Code Setup for Kintone Customization Development - DEV Community&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Documentation for Kintone's JS &amp;amp; REST APIs&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kintone.dev/en/docs/kintone/js-api/" rel="noopener noreferrer"&gt;Kintone JavaScript API - Kintone Developer Program&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kintone.dev/en/docs/kintone/rest-api/" rel="noopener noreferrer"&gt;Kintone REST API - Kintone Developer Program&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tutorials &amp;amp; Sample Code:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://kintone.dev/en/tutorials/" rel="noopener noreferrer"&gt;Kintone Customization Tutorials&lt;/a&gt; - Tutorials for building Kintone customizations and integrations&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/orgs/kintone-workshops/repositories" rel="noopener noreferrer"&gt;Kintone-Workshops GitHub Repo&lt;/a&gt; - Sample code from past Kintone Workshops&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/@KintoneDeveloperProgram/featured" rel="noopener noreferrer"&gt;Kintone Developer Program's YouTube channel&lt;/a&gt; - Past workshop recordings and tutorials&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/ahandsel/No-Server-Data-Visualization" rel="noopener noreferrer"&gt;ahandsel/No-Server-Data-Visualization: Compilation repo of No Server Data Visualization x Kintone Web Database workshop content&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Community Support 👥
&lt;/h2&gt;

&lt;p&gt;Post your Kintone-related questions on the &lt;a href="https://forum.kintone.dev/" rel="noopener noreferrer"&gt;Kintone Developer Forum&lt;/a&gt;!&lt;/p&gt;

&lt;p&gt;Our Kintone Developer Program team will do our best to answer your questions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Got Questions? 🤔
&lt;/h2&gt;

&lt;p&gt;Post your contest-related questions on the &lt;a href="https://forum.kintone.dev/c/contest/11" rel="noopener noreferrer"&gt;Contest 🏆&lt;/a&gt; category on the Kintone Developer Forum.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;For sensitive questions, please email us at &lt;a href="mailto:developer@kintone.com"&gt;developer@kintone.com&lt;/a&gt; with the subject line &lt;code&gt;Kintone Customization Contest 2023&lt;/code&gt;.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;We are all looking forward to seeing what you build! 🚀&lt;/p&gt;

&lt;p&gt;Happy coding &amp;amp; best of luck 🍀&lt;/p&gt;

</description>
      <category>kintone</category>
      <category>hackathon</category>
      <category>writing</category>
      <category>contest</category>
    </item>
    <item>
      <title>Quick Start: VS Code Setup for Kintone Customization Development</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Fri, 30 Jun 2023 06:18:58 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/quick-start-vs-code-setup-for-kintone-customization-development-1k5b</link>
      <guid>https://forem.com/kintonedevprogram/quick-start-vs-code-setup-for-kintone-customization-development-1k5b</guid>
      <description>&lt;p&gt;Want to develop Kintone customizations quickly?&lt;/p&gt;

&lt;p&gt;If so, let's set up your &lt;a href="https://code.visualstudio.com/" rel="noopener noreferrer"&gt;Visual Studio Code (VS Code)&lt;/a&gt; so your code is seamlessly synced with your Kintone App.&lt;/p&gt;

&lt;p&gt;No more manually uploading customization files to the Kintone App each time! 🙌&lt;/p&gt;

&lt;h2&gt;
  
  
  Outline
&lt;/h2&gt;



&lt;ul&gt;
&lt;li&gt;Setup Overview&lt;/li&gt;
&lt;li&gt;Prep&lt;/li&gt;
&lt;li&gt;5 Steps to Setup the Development Environment&lt;/li&gt;
&lt;li&gt;Step 1. Generate a Certificate and Private Key Using the mkcert Tool&lt;/li&gt;
&lt;li&gt;Step 2. Enable HTTPS on the Live Server Extension&lt;/li&gt;
&lt;li&gt;Step 3. Launch a Local Development Server Using the Live Server Extension&lt;/li&gt;
&lt;li&gt;Step 4. Set the localhost URLs with HTTPS in the Kintone App's Settings&lt;/li&gt;
&lt;li&gt;Step 5. Refresh the Kintone App to Reflect the Changes&lt;/li&gt;
&lt;li&gt;Conclusion&lt;/li&gt;
&lt;/ul&gt;



&lt;h2&gt;
  
  
  Setup Overview
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tpm65s8mjbclbemlsn6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tpm65s8mjbclbemlsn6.png" alt="Image: Setup Overview, displays the steps below in a graphic" width="800" height="365"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the Kintone customization project in VS Code&lt;/li&gt;
&lt;li&gt;Live Server extension will host the files locally&lt;/li&gt;
&lt;li&gt;mkcert command-line tool enables HTTPS on the local development server&lt;/li&gt;
&lt;li&gt;Set the localhost URLs with HTTPS in the Kintone App's settings&lt;/li&gt;
&lt;li&gt;Kintone actively fetches the JavaScript and CSS files from the localhost&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Prep
&lt;/h2&gt;

&lt;p&gt;Tools we will use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://code.visualstudio.com/" rel="noopener noreferrer"&gt;Visual Studio Code (VS Code)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer" rel="noopener noreferrer"&gt;Live Server&lt;/a&gt; extension&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/FiloSottile/mkcert" rel="noopener noreferrer"&gt;mkcert&lt;/a&gt; command-line tool that generates locally-trusted development certificates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Install VS Code and the Live Server extension on your laptop.&lt;/p&gt;

&lt;h2&gt;
  
  
  5 Steps to Setup the Development Environment
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Generate a certificate and private key using the mkcert tool&lt;/li&gt;
&lt;li&gt;Enable HTTPS on the Live Server extension&lt;/li&gt;
&lt;li&gt;Launch a local development server using the Live Server extension&lt;/li&gt;
&lt;li&gt;Set the localhost URLs with HTTPS in the Kintone App's settings&lt;/li&gt;
&lt;li&gt;Refresh the Kintone App to reflect the changes&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 1. Generate a Certificate and Private Key Using the mkcert Tool
&lt;/h2&gt;

&lt;p&gt;To install &lt;code&gt;mkcert&lt;/code&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For macOS, use &lt;a href="https://brew.sh/" rel="noopener noreferrer"&gt;Homebrew&lt;/a&gt; → &lt;code&gt;brew install mkcert&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;For Windows, use &lt;a href="https://chocolatey.org/" rel="noopener noreferrer"&gt;Chocolatey&lt;/a&gt; → &lt;code&gt;choco install mkcert&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Initialize mkcert to install a local &lt;a href="https://en.wikipedia.org/wiki/Certificate_authority" rel="noopener noreferrer"&gt;certificate authority (CA)&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mkcert -install&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;When prompted for a password, input the device password.
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Yes&lt;/strong&gt; when a security warning appears.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Generate a certificate and private key for localhost.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mkcert localhost 127.0.0.1 ::1&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When you see &lt;code&gt;The certificate is at "./localhost+2.pem" and the key at "./localhost+2-key.pem" ✅&lt;/code&gt;, everything went well!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;localhost+2-key.pem&lt;/code&gt; is the private key&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;localhost+2.pem&lt;/code&gt; is the certificate&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For more information, refer to the &lt;a href="https://github.com/FiloSottile/mkcert#installation" rel="noopener noreferrer"&gt;mkcert's Installation&lt;/a&gt; documentation.&lt;/p&gt;

&lt;p&gt;⚠️ Do not share the certificate and private key with others.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2. Enable HTTPS on the Live Server Extension
&lt;/h2&gt;

&lt;p&gt;Open your Kintone customization project in VS Code as a &lt;a href="https://code.visualstudio.com/docs/editor/workspaces" rel="noopener noreferrer"&gt;VS Code Workspace&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To create a VS Code Workspace: Open the folder in VS Code, then go to &lt;code&gt;File&lt;/code&gt; and click the &lt;code&gt;Save Workspace As&lt;/code&gt; option.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Add a VS Code Workspace Setting file named &lt;code&gt;.vscode/settings.json&lt;/code&gt; to the project folder.&lt;/p&gt;

&lt;p&gt;Finally, add the following code to the &lt;code&gt;.vscode/settings.json&lt;/code&gt; file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"liveServer.settings.https"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"enable"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"cert"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"/INSERT_PATH_TO_CERT/localhost+2.pem"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"key"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"/INSERT_PATH_TO_CERT/localhost+2-key.pem"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"passphrase"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;⚡ Be sure to swap &lt;code&gt;INSERT_PATH_TO_CERT&lt;/code&gt; with the paths to the certificate and private key generated in the previous step.&lt;/p&gt;

&lt;p&gt;⚡ You can also configure the Live Server extension settings via the VS Code Settings UI.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the &lt;a href="https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette" rel="noopener noreferrer"&gt;VS Code Command Palette&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Type and select &lt;code&gt;Preferences: Open Settings (UI)&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;In the settings search bar, type &lt;code&gt;liveServer.settings.https&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Set the &lt;code&gt;enable&lt;/code&gt;, &lt;code&gt;cert&lt;/code&gt;, &lt;code&gt;key&lt;/code&gt;, and &lt;code&gt;passphrase&lt;/code&gt; values as shown below

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftn75z0wpukn2j27dqbtp.png" alt="live-server-extension-settings-updated.png" width="800" height="365"&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 3. Launch a Local Development Server Using the Live Server Extension
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open the &lt;a href="https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette" rel="noopener noreferrer"&gt;VS Code Command Palette&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Type and select &lt;code&gt;Live Server: Open With Live Server&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Navigate to &lt;code&gt;https://localhost:5500&lt;/code&gt; on the web browser to access the server&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Navigate to the JavaScript and CSS files.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4. Set the localhost URLs with HTTPS in the Kintone App's Settings
&lt;/h2&gt;

&lt;p&gt;To get the localhost URL with HTTPS for a file:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Navigate to the file hosted on the local development server via the browser&lt;/li&gt;
&lt;li&gt;Copy the URL from the browser's address bar&lt;/li&gt;
&lt;li&gt;Navigate to the Kintone App's &lt;a href="https://get.kintone.help/k/en/id/040556.html" rel="noopener noreferrer"&gt;JavaScript and CSS Customization settings&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Set the localhost URL with HTTPS to the desired option

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3ljhl7mqflv5bj30pq4f.png" alt="kintone-settings-urls.png" width="800" height="365"&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;Save&lt;/strong&gt; and then the &lt;strong&gt;Update App&lt;/strong&gt; buttons&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The JavaScript and CSS files will be accessed and used by the Kintone App.&lt;/p&gt;

&lt;p&gt;The setup for the optimized Kintone customization development environment is now complete.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 5. Refresh the Kintone App to Reflect the Changes
&lt;/h2&gt;

&lt;p&gt;Modify a Kintone customization file and refresh the Kintone App.&lt;/p&gt;

&lt;p&gt;The changes should be reflected in the Kintone App immediately. 👏&lt;/p&gt;

&lt;p&gt;⚠️ This is only a development environment setup.&lt;br&gt;&lt;br&gt;
⚠️ The changes are only implemented on other devices once the code is uploaded to the Kintone App.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;With this setup, you can verify the changes without manually uploading customization files to the Kintone App each time! 💪&lt;/p&gt;

&lt;p&gt;Got Questions? 🤔&lt;br&gt;&lt;br&gt;
Post them on the &lt;a href="https://forum.kintone.dev/" rel="noopener noreferrer"&gt;Kintone Developer Forum&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>kintone</category>
      <category>vscode</category>
      <category>development</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Guide on Installing Node.js &amp; npm {macOS &amp; Windows}</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Fri, 12 May 2023 08:11:14 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/guide-on-installing-nodejs-npm-macos-windows-16ii</link>
      <guid>https://forem.com/kintonedevprogram/guide-on-installing-nodejs-npm-macos-windows-16ii</guid>
      <description>&lt;h1&gt;
  
  
  Guide on Installing Node.js for a React Project
&lt;/h1&gt;

&lt;p&gt;This is a step-by-step guide that will go over everything you need to do before our React workshop!&lt;/p&gt;

&lt;h2&gt;
  
  
  Outline
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Check if you already have Node.js or npm&lt;/li&gt;
&lt;li&gt;macOS with nodenv&lt;/li&gt;
&lt;li&gt;Windows with nvm-windows&lt;/li&gt;
&lt;li&gt;Installing Node.js - Video&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Check if you already have Node.js or npm
&lt;/h2&gt;

&lt;p&gt;Since we will be using the &lt;a href="https://github.com/facebook/create-react-app" rel="noopener noreferrer"&gt;create-react-app&lt;/a&gt; tool, &lt;strong&gt;Node ≥ 14.0.0&lt;/strong&gt; is required!&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a &lt;code&gt;my_project&lt;/code&gt; folder - Somewhere inside your Document folder will be good.&lt;/li&gt;
&lt;li&gt;From the terminal, go &lt;strong&gt;inside&lt;/strong&gt; the &lt;code&gt;my_project&lt;/code&gt; folder and then run the following commands:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;node &lt;span class="nt"&gt;-v&lt;/span&gt;
npm &lt;span class="nt"&gt;-v&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If Node &amp;amp; npm are missing, let's install them!&lt;/p&gt;




&lt;h2&gt;
  
  
  macOS with nodenv
&lt;/h2&gt;

&lt;p&gt;We recommend installing Node.js using &lt;a href="https://github.com/nodenv/nodenv" rel="noopener noreferrer"&gt;nodenv&lt;/a&gt; to manage node versions. This allows your computer to have a specific Node.js version per project.&lt;/p&gt;

&lt;p&gt;⚠️ Remove any existing installations of Node.js before installing nodenv! ⚠️&lt;br&gt;&lt;br&gt;
Having different Node.js installations can lead to conflict issues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1.&lt;/strong&gt; Install nodenv with &lt;a href="https://brew.sh/" rel="noopener noreferrer"&gt;Homebrew&lt;/a&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Update Homebrew&lt;/td&gt;
&lt;td&gt;&lt;code&gt;brew update &amp;amp;&amp;amp; brew upgrade&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Install nodenv&lt;/td&gt;
&lt;td&gt;&lt;code&gt;brew install nodenv&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Step 2.&lt;/strong&gt; Set up nodenv shell integration&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Run the initialization command&lt;/td&gt;
&lt;td&gt;&lt;code&gt;nodenv init&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Append the following line into the shell's rc/profile&lt;/td&gt;
&lt;td&gt;&lt;code&gt;eval "$(nodenv init -)"&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;For Zsh users&lt;/th&gt;
&lt;th&gt;For Bash users&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;echo 'eval "$(nodenv init -)"' &amp;gt;&amp;gt; ~/.zshrc&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;echo 'eval "$(nodenv init -)"' &amp;gt;&amp;gt; ~/.bash_profile&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;cat &amp;lt; ~/.zshrc&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;cat &amp;lt; ~/.bash_profile&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Step 3.&lt;/strong&gt; Implement the changes&lt;/p&gt;

&lt;p&gt;Close &amp;amp; open a new Terminal window for the changes to take place.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4.&lt;/strong&gt; Verify that nodenv is properly set up using the &lt;a href="https://github.com/nodenv/nodenv-installer/blob/master/bin/nodenv-doctor" rel="noopener noreferrer"&gt;nodenv-doctor&lt;/a&gt; script.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;For those using Z shell (Zsh) shell:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://github.com/nodenv/nodenv-installer/raw/master/bin/nodenv-doctor | bash
&lt;/code&gt;&lt;/pre&gt;




&lt;/li&gt;

&lt;li&gt;

&lt;p&gt;Expected result:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight shell"&gt;&lt;code&gt;Checking &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="sb"&gt;`&lt;/span&gt;nodenv&lt;span class="s1"&gt;' in PATH: /usr/local/bin/nodenv
Checking for nodenv shims in PATH: OK
Checking `nodenv install'&lt;/span&gt; support: /usr/local/bin/nodenv-install &lt;span class="o"&gt;(&lt;/span&gt;node-build 3.0.22-4-g49c4cb9&lt;span class="o"&gt;)&lt;/span&gt;
Counting installed Node versions: none
  There aren&lt;span class="s1"&gt;'t any Node versions installed under `~/.nodenv/versions'&lt;/span&gt;&lt;span class="nb"&gt;.&lt;/span&gt;
  You can &lt;span class="nb"&gt;install &lt;/span&gt;Node versions like so: nodenv &lt;span class="nb"&gt;install &lt;/span&gt;2.2.4
Auditing installed plugins: OK
&lt;/code&gt;&lt;/pre&gt;




&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 5.&lt;/strong&gt; Install Node.js inside the Workshop folder (&lt;code&gt;my_project&lt;/code&gt;)&lt;/p&gt;

&lt;p&gt;Now you're ready to install specific Node.js versions!&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Inside&lt;/strong&gt; &lt;code&gt;my_project&lt;/code&gt; folder, install Node.js version &lt;code&gt;14.5.0&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;  &lt;span class="nb"&gt;cd &lt;/span&gt;my_project/

  nodenv &lt;span class="nb"&gt;install &lt;/span&gt;14.5.0

  nodenv &lt;span class="nb"&gt;local &lt;/span&gt;14.5.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Alright! Your Mac is now armed with Node.js!&lt;/p&gt;

&lt;p&gt;Download the required packages by opening a terminal for both the &lt;code&gt;frontend&lt;/code&gt; &amp;amp; &lt;code&gt;backend&lt;/code&gt; folders and then running the &lt;code&gt;npm install&lt;/code&gt; command!&lt;/p&gt;




&lt;h2&gt;
  
  
  Windows with nvm-windows
&lt;/h2&gt;

&lt;p&gt;The following steps are straight from the Microsoft Docs on &lt;a href="https://docs.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-windows" rel="noopener noreferrer"&gt;Set up NodeJS on native Windows&lt;/a&gt;. We recommend installing and managing Node.js with &lt;a href="https://github.com/coreybutler/nvm-windows#node-version-manager-nvm-for-windows" rel="noopener noreferrer"&gt;nvm-windows&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;⚠️ Remove any existing installations of Node.js before installing nvm-windows! ⚠️&lt;br&gt;&lt;br&gt;
Having different Node.js installations can lead to conflict issues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1.&lt;/strong&gt; Go to &lt;a href="https://github.com/coreybutler/nvm-windows/releases" rel="noopener noreferrer"&gt;windows-nvm's latest release&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2.&lt;/strong&gt; Download the &lt;strong&gt;nvm-setup.zip&lt;/strong&gt; file for the most recent release.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3.&lt;/strong&gt; Once downloaded, open the zip file, then execute the &lt;strong&gt;nvm-setup.exe&lt;/strong&gt; file.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4.&lt;/strong&gt; The Setup-NVM-for-Windows installation wizard will walk you through the setup steps, including choosing the directory where both nvm-windows and Node.js will be installed.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz3o66lx22urcuh7nhm2f.png" alt="NVM for Windows installation wizard - install-nvm-for-windows-wizard.png" width="800" height="597"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 5.&lt;/strong&gt; After the installation is complete, open PowerShell &amp;amp; enter &lt;code&gt;nvm ls&lt;/code&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;nvm ls&lt;/code&gt; lists out installed Node versions (should be none at this point)&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsxjkpnd5c12bgpz16r6m.png" alt="NVM list showing no Node versions - windows-nvm-powershell-no-node.png" width="400" height="127"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 6.&lt;/strong&gt; Install Node.js inside the Workshop folder (&lt;code&gt;my_project&lt;/code&gt;)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Now you're ready to install specific Node.js versions!&lt;/li&gt;
&lt;li&gt;Inside the &lt;code&gt;my_project&lt;/code&gt; folder, install Node.js version &lt;code&gt;14.5.0&lt;/code&gt;:
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="n"&gt;cd&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;\Documents\my_project&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="n"&gt;nvm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;install&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;14.5.0&lt;/span&gt;&lt;span class="w"&gt;

  &lt;/span&gt;&lt;span class="n"&gt;nvm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;use&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;14.5.0&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Alright! Your Windows is now armed with Node.js!&lt;/p&gt;

&lt;p&gt;Download the required packages by opening a terminal for both the &lt;code&gt;frontend&lt;/code&gt; &amp;amp; &lt;code&gt;backend&lt;/code&gt; folders and then running the &lt;code&gt;npm install&lt;/code&gt; command!&lt;/p&gt;
&lt;h2&gt;
  
  
  Installing Node.js - Video
&lt;/h2&gt;

&lt;p&gt;
  &lt;a href="https://youtu.be/4Kw-i_rX3tY" rel="noopener noreferrer"&gt;
    &lt;img alt="Installing Node.js &amp;amp; Create a New React App YouTube Thumbnail" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimg.youtube.com%2Fvi%2F4Kw-i_rX3tY%2Fhqdefault.jpg" width="480" height="360"&gt;
  &lt;/a&gt;
&lt;/p&gt;

</description>
      <category>kintone</category>
      <category>node</category>
      <category>npm</category>
      <category>setup</category>
    </item>
    <item>
      <title>KintoneRestAPIError: [403] [CB_NO02] No privilege to proceed. Error when using the kintone-customize-uploader CLI tool</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Thu, 27 Apr 2023 05:49:49 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/kintonerestapierror-403-cbno02-no-privilege-to-proceed-error-when-using-the-kintone-customize-uploader-cli-tool-217j</link>
      <guid>https://forem.com/kintonedevprogram/kintonerestapierror-403-cbno02-no-privilege-to-proceed-error-when-using-the-kintone-customize-uploader-cli-tool-217j</guid>
      <description>&lt;p&gt;This is an error related to account permissions and kintone-customize-uploader&lt;/p&gt;

&lt;p&gt;If you encounter the &lt;code&gt;KintoneRestAPIError: [403] [CB_NO02] No privilege to proceed.&lt;/code&gt;, it most likely concerns the account used to execute the &lt;code&gt;kintone-customize-uploader&lt;/code&gt; cli tool.&lt;/p&gt;

&lt;h2&gt;
  
  
  Full Error Message
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;An error occurred, retry
Failed to update customize setting
KintoneRestAPIError: &lt;span class="o"&gt;[&lt;/span&gt;403] &lt;span class="o"&gt;[&lt;/span&gt;CB_NO02] No privilege to proceed. &lt;span class="o"&gt;(&lt;/span&gt;SoyMA67jQV6mU3NHzTyH&lt;span class="o"&gt;)&lt;/span&gt;
    at KintoneResponseHandler.handleErrorResponse &lt;span class="o"&gt;(&lt;/span&gt;/Users/username/.nodenv/versions/18.14.2/lib/node_modules/@kintone/customize-uploader/node_modules/@kintone/rest-api-client/lib/KintoneResponseHandler.js:57:15&lt;span class="o"&gt;)&lt;/span&gt;
    at /Users/username/.nodenv/versions/18.14.2/lib/node_modules/@kintone/customize-uploader/node_modules/@kintone/rest-api-client/lib/KintoneResponseHandler.js:35:123
    at process.processTicksAndRejections &lt;span class="o"&gt;(&lt;/span&gt;node:internal/process/task_queues:95:5&lt;span class="o"&gt;)&lt;/span&gt;
Child process exited with code: 1 and signal:. Terminating parent process...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Cause
&lt;/h2&gt;

&lt;p&gt;The cause is that the account used to upload the customization files to the Kintone App is not a Kintone Administrator.&lt;/p&gt;

&lt;p&gt;As specified in the &lt;a href="https://get.kintone.help/k/en/id/040556.html" rel="noopener noreferrer"&gt;Customizing an App Using JavaScript and CSS&lt;/a&gt; help document, only Kintone Administrators are allowed to upload JS &amp;amp; CSS customization files to any Kintone Apps.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Note that JavaScript and CSS files can be uploaded on Kintone only by Kintone Administrators.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Solution
&lt;/h2&gt;

&lt;p&gt;Use an account with &lt;a href="https://get.kintone.help/k/en/id/04058.html#permission_admin_permissions_concept_20" rel="noopener noreferrer"&gt;Kintone Administrator&lt;/a&gt; privilege when executing the &lt;code&gt;kintone-customize-uploader&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;To upgrade a Kintone account to have &lt;strong&gt;Kintone Administrator&lt;/strong&gt; privilege:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Log into your Kintone Subdomain with the Kintone Admin account&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the ⚙️ in the header.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click the &lt;strong&gt;Users &amp;amp; System Administration&lt;/strong&gt; option.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;⚠️ If the link does not appear, you do not have administrative privilege, so you cannot modify a Kintone account.&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foxucyjqmcb7ozpd8cnww.png" alt="Screenshot: Kintone's Users &amp;amp; System Administration setting highlighted" width="800" height="272"&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the &lt;strong&gt;Administrators&lt;/strong&gt; from the left-side menu.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enter the user's display name or login name in the search box to search for the target user. Moreover, you can expand the department tree and find the target user.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select the users you want to add as administrators.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3pmys2itnp1jhr7xfmp7.png" alt="Screenshot: Kintone's Administrator setting where example users are selected" width="671" height="359"&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the &lt;strong&gt;Add&lt;/strong&gt; button.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Confirm that the target users are added to the "Administrators" section.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the &lt;strong&gt;Save&lt;/strong&gt; button.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;GitHub Repo: &lt;a href="https://github.com/kintone/js-sdk/tree/master/packages/customize-uploader#kintone-customize-uploader" rel="noopener noreferrer"&gt;js-sdk/packages/customize-uploader/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Tutorial: &lt;a href="https://kintone.dev/en/tutorials/tool-guides/upload-javascript-and-css-files-with-customize-uploader/" rel="noopener noreferrer"&gt;Upload JavaScript and CSS files with Customize-uploader - Kintone Developer Program&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Kintone Help Documents:

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/general/en/id/0208.html" rel="noopener noreferrer"&gt;Configuring Kintone Users &amp;amp; System Administrators&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/general/en/id/0204.html" rel="noopener noreferrer"&gt;Accessing Kintone Users &amp;amp; System Administration&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;npm: &lt;a href="https://www.npmjs.com/package/@kintone/customize-uploader" rel="noopener noreferrer"&gt;@kintone/customize-uploader - npm&lt;/a&gt;
&lt;/li&gt;

&lt;/ul&gt;

</description>
      <category>kintone</category>
    </item>
    <item>
      <title>JS Customization to Generate QR Codes from Kintone Record Values</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Thu, 23 Mar 2023 05:13:21 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/js-customization-to-generate-qr-code-from-kintone-record-values-27e8</link>
      <guid>https://forem.com/kintonedevprogram/js-customization-to-generate-qr-code-from-kintone-record-values-27e8</guid>
      <description>&lt;h1&gt;
  
  
  JS Customization to Generate QR Code from Kintone Record Values
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Overview
&lt;/h2&gt;

&lt;p&gt;This is a quick guide on setting up a Kintone JavaScript customization that generates a QR code from a record value.&lt;/p&gt;

&lt;p&gt;The QR code can be generated based on a URL or a text value.&lt;/p&gt;

&lt;p&gt;The customization works on both the Kintone desktop and mobile views. (To do this, upload the script under both the &lt;code&gt;JavaScript/CSS Files for PC&lt;/code&gt; and &lt;code&gt;JavaScript/CSS Files for Mobile Devices&lt;/code&gt; sections of the Kintone App's &lt;a href="https://get.kintone.help/k/en/id/040556.html" rel="noopener noreferrer"&gt;Customize page&lt;/a&gt;.)&lt;/p&gt;

&lt;h2&gt;
  
  
  Customization
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://goqr.me/api/" rel="noopener noreferrer"&gt;QR code API&lt;/a&gt; by Foundata GmbH is used to generate the QR code with GET requests.&lt;/p&gt;

&lt;p&gt;The following Kintone fields are required for the customization:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://get.kintone.help/k/en/id/040515.html" rel="noopener noreferrer"&gt;Space field&lt;/a&gt; to display the QR code:&lt;/li&gt;
&lt;li&gt;A field for string input for the QR code content:

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/id/040539.html" rel="noopener noreferrer"&gt;Text field&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/id/040538.html" rel="noopener noreferrer"&gt;Text area field&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/id/040532.html" rel="noopener noreferrer"&gt;Link field&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;a href="https://get.kintone.help/k/en/id/040534.html" rel="noopener noreferrer"&gt;Number field&lt;/a&gt; to specify the QR code size:

&lt;ul&gt;
&lt;li&gt;Set the maximum value to &lt;code&gt;1000&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The value is the number of pixels for the QR code width and height&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h3&gt;
  
  
  QR Code Script
&lt;/h3&gt;

&lt;p&gt;⚠️ &lt;strong&gt;Note&lt;/strong&gt;: The following variables must be specified to match the field codes of your Kintone App:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;inputFieldCode&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sizeFieldCode&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;outputFieldCode&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;use strict&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="c1"&gt;// Field codes&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;inputFieldCode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;input&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;sizeFieldCode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;size&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;outputFieldCode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;output&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="c1"&gt;// Kintone Events when the customization will be triggered&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;QRCodeEvents&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;app.record.detail.show&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;mobile.app.record.detail.show&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;

  &lt;span class="nx"&gt;kintone&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;events&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;QRCodeEvents&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;try&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;inputValue&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;record&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;inputFieldCode&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
      &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;sizeValue&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;record&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;sizeFieldCode&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
      &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;outputSpace&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;kintone&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;record&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getSpaceElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;outputFieldCode&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="nx"&gt;kintone&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;mobile&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;record&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getSpaceElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;outputFieldCode&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

      &lt;span class="c1"&gt;// Generate an img element for the QR Code&lt;/span&gt;
      &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;outputImg&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;img&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

      &lt;span class="c1"&gt;// Set the image source as the GET query for the QR Code API&lt;/span&gt;
      &lt;span class="nx"&gt;outputImg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;src&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;`https://api.qrserver.com/v1/create-qr-code/?size=&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;sizeValue&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;x&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;sizeValue&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;&amp;amp;data=&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;inputValue&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
      &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;outputImg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

      &lt;span class="c1"&gt;// Attach the image to the space element&lt;/span&gt;
      &lt;span class="nx"&gt;outputSpace&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;appendChild&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;outputImg&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;catch &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;warn&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Exception KintoneEventsOn Queue&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;error&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="p"&gt;})();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Reference
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kintone.dev/en/" rel="noopener noreferrer"&gt;Kintone Developer Program&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://qiita.com/spica/items/6f7eed5efa8cf4f74167" rel="noopener noreferrer"&gt;kintoneのフィールド値からQRコードを生成するプラグイン - Qiita&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://goqr.me/api/doc/create-qr-code/" rel="noopener noreferrer"&gt;QR code API: command “create-qr-code” (generate QR code, QR code generator)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ⚙️ What is Kintone?
&lt;/h2&gt;

&lt;p&gt;Kintone is a no-code/low-code cloud platform for teams to quickly &amp;amp; easily share and collaborate on their data.&lt;br&gt;
You can add JavaScript, CSS, &amp;amp;/or HTML to enhance the front-end UI/UX of a Kintone App. This can include features such as maps, buttons, and color-coding.&lt;/p&gt;

&lt;p&gt;Read how to customize and develop on the Kintone platform at &lt;a href="https://kintone.dev/" rel="noopener noreferrer"&gt;kintone.dev&lt;/a&gt;!&lt;/p&gt;




&lt;p&gt;⚡ Example Submission ⚡&lt;br&gt;&lt;br&gt;
This post is part of the Kintone Customization Contest 2023.&lt;br&gt;&lt;br&gt;
Submitter: &lt;a href="https://forum.kintone.dev/u/genji" rel="noopener noreferrer"&gt;https://forum.kintone.dev/u/genji&lt;/a&gt;  &lt;/p&gt;

</description>
      <category>kintone</category>
      <category>qrcode</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Quick Start on Using Kintone Web Database in a Hackathon Project</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Sat, 01 Oct 2022 17:51:17 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/quick-start-on-using-kintone-web-database-in-a-hackathon-project-3fh7</link>
      <guid>https://forem.com/kintonedevprogram/quick-start-on-using-kintone-web-database-in-a-hackathon-project-3fh7</guid>
      <description>&lt;h2&gt;
  
  
  Table of Contents
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;3 Reasons to Use Kintone for your hack&lt;/li&gt;
&lt;li&gt;
🚀 Getting your FREE Kintone Database

&lt;ul&gt;
&lt;li&gt;1. Fill out the Kintone Developer License Registration form&lt;/li&gt;
&lt;li&gt;2. Check your email &amp;amp; click &lt;code&gt;Activate Now&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

💪 Using your Kintone Database

&lt;ul&gt;
&lt;li&gt;3. Let's Log into Kintone&lt;/li&gt;
&lt;li&gt;4. Create a Kintone Database App&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;📺 How to Create a Kintone Database App? - Video&lt;/li&gt;

&lt;li&gt;How to generate a Kintone API Token?&lt;/li&gt;

&lt;li&gt;Where Can I Get Help?&lt;/li&gt;

&lt;li&gt;

What can I build with Kintone?

&lt;ul&gt;
&lt;li&gt;Running an easily configurable Space Invaders game on Kintone&lt;/li&gt;
&lt;li&gt;Connect IoT Obniz Board to Kintone Web Database all in 10 minutes&lt;/li&gt;
&lt;li&gt;Deploy a REST API calling node.js App to Heroku&lt;/li&gt;
&lt;li&gt;React, REST API, &amp;amp; Kintone: GET &amp;amp; POST to a Web Database&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;More Resources&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  3 Reasons to Use Kintone for your hack
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;No servers are needed! - Ridiculously fast to build databases!&lt;/li&gt;
&lt;li&gt;Effortlessly manage database data and schema with GUI!&lt;/li&gt;
&lt;li&gt;Super simple to build JS customizations!&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  🚀 Getting your FREE Kintone Database
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Fill out the Kintone Developer License Registration form
&lt;/h3&gt;

&lt;p&gt;Head over to the &lt;a href="https://kintone.dev/en/developer-license-registration-form/#terms-of-service-for-the-developer-license" rel="noopener noreferrer"&gt;Developer License Registration Form&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ Accept the Cookies first&lt;/li&gt;
&lt;li&gt;✅ Use Chrome &amp;amp; Firefox&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When creating your Kintone Subdomain:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;⚡ Only use lowercase, numbers, &amp;amp; hyphens in your subdomain&lt;/li&gt;
&lt;li&gt;⚠ Do not use uppercase or special characters&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Check your email &amp;amp; click &lt;code&gt;Activate Now&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;After submitting the form, you will get a confirmation email with an &lt;code&gt;Activate Now&lt;/code&gt; button.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Email title: "&lt;code&gt;Welcome to Kintone! One More Step to Developer License&lt;/code&gt;"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then you will be redirected to your Kintone Subdomain to set the initial password.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqy5sgtvxduelx2hbaunp.png" alt="Step 1: Fill out the Kintone Developer license sign-up form" width="800" height="450"&gt;&lt;/td&gt;
&lt;td&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjmeaspw6ai720rq0tc6p.png" alt="Step 2: Email address will be the login name &amp;amp; the subdomain will be your unique link" width="800" height="450"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  💪 Using your Kintone Database
&lt;/h2&gt;

&lt;h3&gt;
  
  
  3. Let's Log into Kintone
&lt;/h3&gt;

&lt;p&gt;Once you create your Kintone Subdomain, it is super simple to access it.&lt;/p&gt;

&lt;p&gt;Simply go to &lt;code&gt;YOUR_SUBDOMAIN.kintone.com&lt;/code&gt; with &lt;code&gt;YOUR_SUBDOMAIN&lt;/code&gt; swapped with your unique Kintone Subdomain.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Create a Kintone Database App
&lt;/h3&gt;

&lt;p&gt;To create a Database App, from the Portal screen, click the [+] button on the right side next to the &lt;strong&gt;Apps&lt;/strong&gt; section.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzai929fl2pe3zsrp9dxb.png" alt="3. Let's Log into Kintone" width="800" height="450"&gt;&lt;/td&gt;
&lt;td&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqvmmrydddwgvj25hoecm.png" alt="4. Create a Kintone Database App" width="800" height="450"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  📺 How to Create a Kintone Database App? - Video
&lt;/h2&gt;

&lt;p&gt;Check out this guide that goes over creating an example Manga Database App.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://youtu.be/pRtfn-8cf_I" rel="noopener noreferrer"&gt;&lt;br&gt;
    &lt;img alt="How to Create a Kintone Database App YouTube Thumbnail" src="https://res.cloudinary.com/practicaldev/image/fetch/s--A3sUqCmy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://img.youtube.com/vi/pRtfn-8cf_I/hqdefault.jpg" width="480" height="360"&gt;&lt;br&gt;
  &lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How to generate a Kintone API Token?
&lt;/h2&gt;

&lt;p&gt;To generate an API Token for a Kintone App:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to the Kintone App&lt;/li&gt;
&lt;li&gt;Go to the Gear icon ⚙️ (top right corner) &amp;gt; Open the App Settings page&lt;/li&gt;
&lt;li&gt;Click on the &lt;strong&gt;App Settings&lt;/strong&gt; Tab &amp;gt; Click on &lt;strong&gt;API Token&lt;/strong&gt; settings&lt;/li&gt;
&lt;li&gt;Click the &lt;code&gt;Generate&lt;/code&gt; button to generate a token&lt;/li&gt;
&lt;li&gt;Click the &lt;code&gt;Save&lt;/code&gt; button (top left corner) to save the token setting&lt;/li&gt;
&lt;li&gt;Finally, click the &lt;code&gt;Update App&lt;/code&gt; button (top right corner) to implement the token setting change.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Confused? 🤔 → Check out the &lt;a href="https://youtu.be/pRtfn-8cf_I?t=117" rel="noopener noreferrer"&gt;Get the API Token&lt;/a&gt; video clip 📺  &lt;/p&gt;




&lt;h2&gt;
  
  
  Where Can I Get Help?
&lt;/h2&gt;

&lt;p&gt;If you are stuck, post your question &amp;amp; code on the &lt;a href="https://forum.kintone.dev/" rel="noopener noreferrer"&gt;Kintone Developer forum&lt;/a&gt;!&lt;/p&gt;

&lt;p&gt;If a Kintone mentor is available, post on the Slack workspace!&lt;/p&gt;

&lt;p&gt;We are more than happy to answer any questions or help fix any problems regarding Kintone.&lt;/p&gt;




&lt;h2&gt;
  
  
  What can I build with Kintone?
&lt;/h2&gt;

&lt;p&gt;Here are a few projects that use Kintone as the web database!  &lt;/p&gt;

&lt;h3&gt;
  
  
  Running an easily configurable Space Invaders game on Kintone
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PUK1S6XA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://res.cloudinary.com/practicaldev/image/fetch/s--vxR2YT4p--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_66%252Cw_880/https://thepracticaldev.s3.amazonaws.com/i/lvkj9nqfkancgioqo4re.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PUK1S6XA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://res.cloudinary.com/practicaldev/image/fetch/s--vxR2YT4p--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_66%252Cw_880/https://thepracticaldev.s3.amazonaws.com/i/lvkj9nqfkancgioqo4re.gif" alt="Gif of Space Invaders on Kintone Custom View" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is a phaser.io game running on Kintone. It is super easy to get started! No need to set up a node.js environment or AWS serverless environment! You just need a code editor &amp;amp; Kintone account.&lt;/p&gt;

&lt;p&gt;Check out the tutorial on &lt;a href="https://dev.to/will_yama/having-fun-with-phaser-io-games-web-databases-4f08"&gt;Having Fun with Browser Games &amp;amp; Web databases - DEV Community 👩‍💻👨‍💻&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Connect IoT Obniz Board to Kintone Web Database all in 10 minutes
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://youtu.be/sbGRnKAYzDs" rel="noopener noreferrer"&gt;&lt;br&gt;
    &lt;img alt="Obniz Board x Kintone YouTube Thumbnail" src="https://res.cloudinary.com/practicaldev/image/fetch/s--_VMxbZYt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://img.youtube.com/vi/sbGRnKAYzDs/hqdefault.jpg" width="480" height="360"&gt;&lt;br&gt;
  &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://store.obniz.com/products/obniz" rel="noopener noreferrer"&gt;Obniz Board&lt;/a&gt; is an IoT Microprocessor that is easily programable with JavaScript! Since Kintone supports &lt;a href="https://get.kintone.help/k/en/user/app_settings/js_customize.html" rel="noopener noreferrer"&gt;JavaScript customizations&lt;/a&gt;, it is the best web database to integrate with Obniz Board!&lt;/p&gt;

&lt;p&gt;Here is a step-by-step tutorial explaining everything you need to get an Obniz Board exporting data to the Kintone web database!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://dev.to/ahandsel/setup-obniz-board-as-a-counter-store-data-in-kintone-web-database-all-in-10-minutes-23e"&gt;Setup Obniz Board as a counter &amp;amp; store data in Kintone Web Database all in 10 minutes! - DEV Community 👩‍💻👨‍💻&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Deploy a REST API calling node.js App to Heroku
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Bs0q0QJ_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://res.cloudinary.com/practicaldev/image/fetch/s--P5qzxkHQ--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_auto%252Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zsq260svhd13oj0km172.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Bs0q0QJ_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://res.cloudinary.com/practicaldev/image/fetch/s--P5qzxkHQ--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_auto%252Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zsq260svhd13oj0km172.png" alt="Node JS on Heroku displays a result to a browser while requesting data to Kintone which responses with the data" width="800" height="649"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this particular example, the node.js app retrieves record data from a Kintone web database via REST API and displays it on the page of the node.js app.&lt;/p&gt;

&lt;p&gt;Check out the tutorial on &lt;a href="https://dev.to/will_yama/deploy-a-rest-api-calling-node-js-app-to-heroku-2mia"&gt;Deploy a REST API calling node.js App to Heroku - DEV Community 👩‍💻👨‍💻&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  React, REST API, &amp;amp; Kintone: GET &amp;amp; POST to a Web Database
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://youtu.be/mCEsEXO85Oc" rel="noopener noreferrer"&gt;&lt;br&gt;
    &lt;img alt="React &amp;amp; REST API: GET &amp;amp; POST to a Web Database! - September Workshop YouTube Thumbnail" src="https://res.cloudinary.com/practicaldev/image/fetch/s--fzMlDjjT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://img.youtube.com/vi/mCEsEXO85Oc/hqdefault.jpg" width="480" height="360"&gt;&lt;br&gt;
  &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is a recording from Kintone's React workshop series! We go over how to set up a React project and Express server to access data stored in Kintone!&lt;/p&gt;

&lt;p&gt;Code &amp;amp; Slides are available at this GitHub Repo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ahandsel/React_Workshop_by_Kintone" rel="noopener noreferrer"&gt;ahandsel/React_Workshop_by_Kintone&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Clone the codebase &amp;amp; follow along with the video to build out the POST functionality!&lt;br&gt;
If you are stuck, check the &lt;a href="https://github.com/ahandsel/React_Workshop_by_Kintone/tree/main/docs" rel="noopener noreferrer"&gt;docs&lt;/a&gt; with the completed version!&lt;/p&gt;




&lt;h2&gt;
  
  
  More Resources
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Resource&lt;/th&gt;
&lt;th&gt;Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Get Started Guide&lt;/td&gt;
&lt;td&gt;&lt;a href="https://kintone.dev/en/quickstart/" rel="noopener noreferrer"&gt;kintone.dev/en/quickstart&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;YouTube Channel&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.youtube.com/c/KintoneDeveloperProgram" rel="noopener noreferrer"&gt;youtube.com/c/KintoneDeveloperProgram&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kintone Dev Forum&lt;/td&gt;
&lt;td&gt;&lt;a href="https://forum.kintone.dev/" rel="noopener noreferrer"&gt;forum.kintone.dev&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Intro to Kintone Slides&lt;/td&gt;
&lt;td&gt;&lt;a href="https://ahandsel.github.io/kintone-for-hackathon/" rel="noopener noreferrer"&gt;ahandsel.github.io/kintone-for-hackathon/&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kintone API Docs&lt;/td&gt;
&lt;td&gt;&lt;a href="https://kintone.dev/en/docs/" rel="noopener noreferrer"&gt;kintone.dev/en/docs/&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kintone Tutorials&lt;/td&gt;
&lt;td&gt;&lt;a href="https://kintone.dev/en/tutorials/" rel="noopener noreferrer"&gt;kintone.dev/en/tutorials/&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>javascript</category>
      <category>database</category>
      <category>kintone</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Add a button to show &amp; hide the Kintone App's header</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Fri, 30 Sep 2022 14:30:01 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/add-a-button-to-show-hide-the-kintone-apps-header-h23</link>
      <guid>https://forem.com/kintonedevprogram/add-a-button-to-show-hide-the-kintone-apps-header-h23</guid>
      <description>&lt;p&gt;Here is a script to add a &lt;code&gt;Hide Header&lt;/code&gt; button in the space element below the header. The button is a toggle to show and hide the Kintone App's header.&lt;/p&gt;

&lt;h3&gt;
  
  
  Demo
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frlnjlg2g9klcshs1rr22.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frlnjlg2g9klcshs1rr22.gif" alt="Image description" width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Code
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Add a button to show &amp;amp; hide the Kintone header&lt;/span&gt;
&lt;span class="c1"&gt;// If this code breaks, verify if `gaia-argoui-app-index-toolbar` is still the correct class name for the header&lt;/span&gt;
&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;use strict&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="c1"&gt;// Run a function when the record list page appears&lt;/span&gt;
  &lt;span class="nx"&gt;kintone&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;events&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;app.record.index.show&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// Prevent duplication of the button&lt;/span&gt;
    &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;toggle_button&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;!=&lt;/span&gt; &lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="c1"&gt;// Set a button&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;toggleButton&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;button&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;toggle_button&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hide Header&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;margin&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;10px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;padding&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;10px 10px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;ariaLabel&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Header Display Toggle&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;height&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;48px&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;border&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;1px solid #e3e7e8&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;backgroundColor&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;#f7f9fa&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

    &lt;span class="c1"&gt;// Button onclick function&lt;/span&gt;
    &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;onclick&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nf"&gt;headerToggle&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;};&lt;/span&gt;

    &lt;span class="c1"&gt;// Retrieve the header menu space element and set the button there&lt;/span&gt;
    &lt;span class="nx"&gt;kintone&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getHeaderSpaceElement&lt;/span&gt;&lt;span class="p"&gt;().&lt;/span&gt;&lt;span class="nf"&gt;appendChild&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="c1"&gt;// const record = event.record;&lt;/span&gt;
    &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;headerToggle&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;header&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementsByClassName&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;gaia-argoui-app-index-toolbar&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
      &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;header&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;display&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;none&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;header&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;display&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;block&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Showing the header&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hide Header&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;header&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;display&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;none&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hiding the header&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="nx"&gt;toggleButton&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Show Header&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="p"&gt;})();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Debugging
&lt;/h3&gt;

&lt;p&gt;If this code breaks, verify if &lt;code&gt;gaia-argoui-app-index-toolbar&lt;/code&gt; is still the correct class name for the Kintone App's header.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>kintone</category>
    </item>
    <item>
      <title>How to Duplicate Kintone Apps?</title>
      <dc:creator>ahandsel</dc:creator>
      <pubDate>Tue, 14 Dec 2021 23:39:41 +0000</pubDate>
      <link>https://forem.com/kintonedevprogram/how-to-duplicate-kintone-apps-26g9</link>
      <guid>https://forem.com/kintonedevprogram/how-to-duplicate-kintone-apps-26g9</guid>
      <description>&lt;p&gt;This article will explore the different ways to duplicate Kintone Apps (copying an App) with and without the data stored inside.&lt;/p&gt;

&lt;h2&gt;
  
  
  Outline
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Prerequisite&lt;/li&gt;
&lt;li&gt;
Method 1: Creating a New App by Duplicating an Existing App

&lt;ul&gt;
&lt;li&gt;Steps to Duplicate an Existing App&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

Method 2: App Template

&lt;ul&gt;
&lt;li&gt;What Is an App Template?&lt;/li&gt;
&lt;li&gt;Multiple Apps in one App Template?&lt;/li&gt;
&lt;li&gt;Steps to Create an App Template&lt;/li&gt;
&lt;li&gt;Creating an App from an App Template&lt;/li&gt;
&lt;li&gt;Which Settings Cannot Be Included in an App Template?&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

Migrating Records from the Original App to the New App

&lt;ul&gt;
&lt;li&gt;Exporting App Data (Records) as a CSV file&lt;/li&gt;
&lt;li&gt;Importing App Data (Records) from a CSV file&lt;/li&gt;
&lt;li&gt;How to bulk download all the Attachments from a Kintone App?&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Guest Space&lt;/li&gt;

&lt;li&gt;What Is Kintone?&lt;/li&gt;

&lt;/ul&gt;




&lt;h2&gt;
  
  
  Prerequisite
&lt;/h2&gt;

&lt;p&gt;Management permission is required to duplicate the App.&lt;/p&gt;

&lt;p&gt;For details, refer to &lt;a href="https://get.kintone.help/k/en/user/App_settings/rights/App_rights.html" rel="noopener noreferrer"&gt;Setting App Permissions&lt;/a&gt; help doc.&lt;/p&gt;




&lt;h2&gt;
  
  
  Method 1: Creating a New App by Duplicating an Existing App
&lt;/h2&gt;

&lt;p&gt;This is the easiest way to get the job as it only uses Kintone's standard functions (no customization).&lt;br&gt;&lt;br&gt;
Only the App's Fields settings and Process Management settings will be copied over.&lt;/p&gt;

&lt;p&gt;The following are not copied to the new App:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/user/App_settings/App_othersettings/Appcode.html" rel="noopener noreferrer"&gt;App Code&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/glossary/api_token.html" rel="noopener noreferrer"&gt;API Token&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://developer.kintone.io/hc/en-us/articles/212495268" rel="noopener noreferrer"&gt;Plug-ins&lt;/a&gt; and corresponding App settings&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://get.kintone.help/k/en/glossary/records.html" rel="noopener noreferrer"&gt;App's Records&lt;/a&gt; (i.e., App's data)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Steps to Duplicate an Existing App
&lt;/h3&gt;

&lt;p&gt;(1) Click on the ➕ Button to the right of Apps Create App.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Direct URL: &lt;code&gt;https://_YourSubdomain_.kintone.com/k/#/market&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Filxabkuj7bz1e5u6hhn0.png" alt="+ Button on the bottom right corner" width="800" height="475"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(2) From the Kintone Marketplace screen, click on the &lt;code&gt;Create from Existing App&lt;/code&gt; option.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzltaobchq3q61k99cf4f.png" alt="Kintone Marketplace &amp;gt; Create New App Section" width="670" height="416"&gt;&lt;/li&gt;
&lt;li&gt;If the &lt;code&gt;Create from Existing App&lt;/code&gt; option does not appear, the user does not have management permissions for any App or has not been created on Kintone.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(3) From the Create from an Existing App screen, click on the &lt;code&gt;Duplicate This App&lt;/code&gt; Button next to the desired App to duplicate.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi5lmqb2ds9tw70h1yoqc.png" alt="Create from an Existing App" width="800" height="329"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(4) The App is duplicated &amp;amp; the settings screen of the new App will open&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fza9mi0mt1sqz1mkz5gnw.png" alt="Customer Database- Copy" width="800" height="424"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(5) Click on the &lt;code&gt;Activate App&lt;/code&gt; Button to complete the process.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The new App will contain no Records.&lt;/li&gt;
&lt;li&gt;Only the App's fields and Process Management settings will be duplicated.&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxfzhmpk8ovejrowzg2tf.png" alt="New Customer Database" width="800" height="311"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For more information, refer to &lt;a href="https://get.kintone.help/k/en/user/create_App/App_recycle.html" rel="noopener noreferrer"&gt;Creating a New App by Duplicating an Existing App (Copying an App)&lt;/a&gt; help doc.&lt;/p&gt;




&lt;h2&gt;
  
  
  Method 2: App Template
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What Is an App Template?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;An App Template is a model that users can use to create Apps with the defined settings preemptively applied to the new App.&lt;/li&gt;
&lt;li&gt;App templates can be created from existing Apps.&lt;/li&gt;
&lt;li&gt;Creating or deleting App templates requires Kintone Administrative permission.&lt;/li&gt;
&lt;li&gt;For more information, refer to &lt;a href="https://get.kintone.help/k/en/admin/app_admin/template/whats_template.html" rel="noopener noreferrer"&gt;What Is an App Template?&lt;/a&gt; help doc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;⚠️ Caution&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Templates can be created only from activated Apps.&lt;/li&gt;
&lt;li&gt;The App Template will not include some settings. For more information, refer to the &lt;a href="https://get.kintone.help/k/en/admin/app_admin/template/template_settings.html" rel="noopener noreferrer"&gt;Settings That Are Not Included in App Templates&lt;/a&gt; help doc.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Multiple Apps in one App Template?
&lt;/h3&gt;

&lt;p&gt;Multiple Apps can be included in one App Template.&lt;br&gt;&lt;br&gt;
Also, when an App references other Apps (e.g., Lookup field), the referenced Apps are automatically included in the App Template.&lt;/p&gt;

&lt;p&gt;Following Settings are able to be included in the App Template:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/user/app_settings/form/form_parts/field_lookup.html" rel="noopener noreferrer"&gt;Lookup fields&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/user/app_settings/form/form_parts/field_related_records.html" rel="noopener noreferrer"&gt;Related Records fields&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://get.kintone.help/k/en/user/app_settings/appaction.html" rel="noopener noreferrer"&gt;App actions&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Steps to Create an App Template
&lt;/h3&gt;

&lt;p&gt;(1) From the Kintone Portal Top screen, click on the Kintone Menu Bar's Gear Icon ⚙ &amp;gt; &lt;code&gt;Kintone Administration&lt;/code&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9dxgtqfvb0b16ha9a3ke.png" alt="Gear Dropdown Options" width="800" height="649"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(2) From the Kintone Administration screen, click on the &lt;code&gt;App Templates&lt;/code&gt; link.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Apps&lt;/code&gt; &amp;gt; &lt;code&gt;App Templates&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;App Template Setting's URL: &lt;code&gt;https://_YourSubdomain_.kintone.com/k/admin/system/template/&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(3) Click the &lt;code&gt;New&lt;/code&gt; Button from the top-left corner&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw3dl3nzmmfuy0zmv13cz.png" alt="App Templates screen &amp;gt; New Button" width="800" height="291"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(4) Select the Apps to be included in the App Template.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If an App includes a field referencing another App, both Apps will be included.&lt;/li&gt;
&lt;li&gt;Multiple Apps can be included together in one App Template pack.&lt;/li&gt;
&lt;li&gt;Click &lt;code&gt;Next&lt;/code&gt; once the Apps are selected.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(5) Fill in the details for the App Template, including Name, Icon, and Description.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The included Apps' description can be configured as well.&lt;/li&gt;
&lt;li&gt;Click &lt;code&gt;Save&lt;/code&gt; once completed.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Completion: The App Template that generates the selected App(s) is created!&lt;/p&gt;

&lt;p&gt;An App Template can be exported as a ZIP file to transfer the App outside a Kintone Subdomain.&lt;/p&gt;

&lt;p&gt;For more information, refer to &lt;a href="https://get.kintone.help/k/en/admin/App_admin/template/add_template.html" rel="noopener noreferrer"&gt;Creating a Template from an App&lt;/a&gt; help doc.&lt;/p&gt;

&lt;h3&gt;
  
  
  Creating an App from an App Template
&lt;/h3&gt;

&lt;p&gt;(1) Click on the ➕ Plus Button right of Apps.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdl3hd9yu02k7abhxteg5.png" alt="From the Kintone Portal, Apps section's plus Button" width="800" height="475"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(2) Click the &lt;code&gt;Create from Template&lt;/code&gt; option under the &lt;code&gt;Create New App&lt;/code&gt; section.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8596wgjc1btp3aqolljq.png" alt="From the Kintone Marketplace, Create from Template Button" width="800" height="553"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(3) Click &lt;code&gt;Use This Template&lt;/code&gt; for the desired App Template.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pack&lt;/strong&gt; label is placed on App Templates that creates multiple Apps.&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5x9eco38ucmz2f7bj6vv.png" alt="Create App from Template" width="800" height="367"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Completion: The App(s) are created from the selected App Template!&lt;/p&gt;

&lt;p&gt;For more information, refer to &lt;a href="https://get.kintone.help/k/en/user/create_app/app_template.html" rel="noopener noreferrer"&gt;Creating an App from a Template&lt;/a&gt; help doc.&lt;/p&gt;

&lt;h3&gt;
  
  
  Which Settings Cannot Be Included in an App Template?
&lt;/h3&gt;

&lt;p&gt;Following settings are not included in App Template:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App Code&lt;/li&gt;
&lt;li&gt;Access permissions&lt;/li&gt;
&lt;li&gt;Periodic Reports&lt;/li&gt;
&lt;li&gt;Options of the Department Selection field&lt;/li&gt;
&lt;li&gt;API Token&lt;/li&gt;
&lt;li&gt;Settings applied to plug-ins&lt;/li&gt;
&lt;li&gt;Available To setting of an Action
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Following settings are not included in App Template unless configured as specified:&lt;/p&gt;

&lt;p&gt;Notification settings&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless the notifications are set to the following recipients:

&lt;ul&gt;
&lt;li&gt;Administrator user&lt;/li&gt;
&lt;li&gt;Administrators group&lt;/li&gt;
&lt;li&gt;Everyone group&lt;/li&gt;
&lt;li&gt;"Created by" field&lt;/li&gt;
&lt;li&gt;"Updated by" field&lt;/li&gt;
&lt;li&gt;Assignee (when the process management function is enabled)&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Options of the User Selection field&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless configured to Administrator user, Everyone group, and/or Administrators group&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Default value of the User Selection field&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless configured to Administrator user, Everyone group, and/or Administrators group&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Default value of the Department Selection field&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless configured to Priority Department&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Options of the Group Selection field&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless configured to Everyone group and/or Administrators group&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Default value of the Group Selection field&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless configured to Everyone group and/or Administrators group&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Conditions set in the &lt;strong&gt;Initial filter setting&lt;/strong&gt; of the &lt;strong&gt;Lookup&lt;/strong&gt; field&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless configured to Administrator user and/or login user&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Filter conditions of views or reports that use the User Selection, Created by, or Updated by field&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless the condition uses the User Selection field and an Administrator user and/or login user is set&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Process management&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless the Branch Criteria uses a User Selection field that is set to the Administrator user&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Assignee&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Unless the assignee is set to the following:

&lt;ul&gt;
&lt;li&gt;Administrator user&lt;/li&gt;
&lt;li&gt;Administrators group&lt;/li&gt;
&lt;li&gt;"Created by" field&lt;/li&gt;
&lt;li&gt;"Updated by" field&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;




&lt;h2&gt;
  
  
  Migrating Records from the Original App to the New App
&lt;/h2&gt;

&lt;p&gt;The is no one function to copy a Kintone App that includes the original Records. Ultimately, the App must be duplicated, and the Records from the Original App be exported as a CSV file and imported into the New App.&lt;/p&gt;

&lt;p&gt;⚠️ Caution  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The App's &lt;strong&gt;Export to file&lt;/strong&gt; and &lt;strong&gt;Import from file&lt;/strong&gt; permissions are required.

&lt;ul&gt;
&lt;li&gt;By default, the &lt;strong&gt;Import from file&lt;/strong&gt; permission is granted only to App Creators.&lt;/li&gt;
&lt;li&gt;It is set using the &lt;a href="https://get.kintone.help/k/en/user/app_settings/rights/app_rights.html" rel="noopener noreferrer"&gt;Permissions for App&lt;/a&gt; in the App settings page.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Some fields cannot be exported or imported.

&lt;ul&gt;
&lt;li&gt;For the full list, refer to the &lt;a href="https://get.kintone.help/k/en/admin/other/import_export.html" rel="noopener noreferrer"&gt;Data Types That Can Be Imported or Exported&lt;/a&gt; help doc.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h3&gt;
  
  
  Exporting App Data (Records) as a CSV file
&lt;/h3&gt;

&lt;p&gt;(1) Configure the View to list the desired records to be exported.&lt;/p&gt;

&lt;p&gt;(2) Click the Options Button &lt;code&gt;...&lt;/code&gt; on the upper right of the screen, and then click &lt;strong&gt;Export to File&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If the &lt;strong&gt;Export to File&lt;/strong&gt; Button is not shown, the user does not have permission to export data to a file.&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd1qmr9bxgw2i96lsikaw.png" alt="App List View &amp;gt; Option Drop-down List &amp;gt; Export to File Button" width="300" height="225"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(3) Leave the &lt;strong&gt;Include header row&lt;/strong&gt; option enabled.&lt;/p&gt;

&lt;p&gt;(4) Select a character encoding and a delimiter to use, if necessary.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F887j1xtonncw6i2p4l88.png" alt="Character Encoding and Delimiter are selected as English and Comma respectively" width="609" height="285"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(5) Drag and drop items to be exported.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on &lt;strong&gt;Add All&lt;/strong&gt; Button to include all fields in the data export.&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvd46ia91xlo05s5sngr9.gif" alt="Gif showing Record number being dragged &amp;amp; dropped" width="800" height="380"&gt;&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F87wwkpbko8eqij58ipy4.gif" alt="Gif showing Add All Button" width="800" height="391"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(6) Click &lt;strong&gt;Export&lt;/strong&gt; on the upper left of the screen.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;When a data exporting process begins, you are moved to the &lt;strong&gt;Exported Files&lt;/strong&gt; screen.&lt;/li&gt;
&lt;li&gt;It may take a few seconds to a few minutes to export a file.&lt;/li&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbdbdtp7kocxf5w4tdzba.png" alt="Export button" width="609" height="285"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(7) Click &lt;strong&gt;Refresh&lt;/strong&gt; on the upper left side of the &lt;strong&gt;Exported Files&lt;/strong&gt; screen.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxudg7xodgbq96mck69d8.png" alt="Refresh Button" width="800" height="214"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(8) Click the name of the CSV file you want to download.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa7xgad5fo7j02b3fr2e0.png" alt="CSV file click" width="800" height="216"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Completion: The CSV file has all the App's data (Records)!&lt;/p&gt;

&lt;p&gt;For more information, refer to &lt;a href="https://get.kintone.help/k/en/user/app_collectdata/export/data_export.html" rel="noopener noreferrer"&gt;Exporting Data to a File&lt;/a&gt; help doc.&lt;/p&gt;

&lt;h3&gt;
  
  
  Importing App Data (Records) from a CSV file
&lt;/h3&gt;

&lt;p&gt;(1) Click the Options Button &lt;code&gt;...&lt;/code&gt; on the upper right of the screen, and then click the &lt;strong&gt;Import from File&lt;/strong&gt; button.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbeqv0ir2oact8oflv1xr.png" alt="Import from file button" width="800" height="560"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(2) Click &lt;strong&gt;Browse&lt;/strong&gt; and specify an Excel file or CSV file to import.&lt;/p&gt;

&lt;p&gt;(3) When prompted with &lt;strong&gt;Select Data Scope&lt;/strong&gt;, select the &lt;strong&gt;First row is header&lt;/strong&gt; option.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk3v9ijdktcqx0k1t2yv7.png" alt="First row is header Option" width="423" height="77"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(4) For each field in the App, associate it with the column in the file to import.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Make sure to specify &lt;strong&gt;Column in File&lt;/strong&gt; for each of the following fields:

&lt;ul&gt;
&lt;li&gt;Fields where values are to be added&lt;/li&gt;
&lt;li&gt;Fields where entry is required (marked with an asterisk &lt;code&gt;*&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;If a field is not associated with any column under the &lt;strong&gt;Column in File&lt;/strong&gt;, it is created as an empty field or with a default value.&lt;/li&gt;

&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkx3chlx66oona33jn0ym.png" alt="Match Columns in Imported File to Fields in Kintone App" width="540" height="239"&gt;&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;(5) Click &lt;strong&gt;Import&lt;/strong&gt; on the upper left side of the screen.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj8bbw5v7229063nq82f4.png" alt="Import button" width="695" height="227"&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Completion: The App now has the imported data!&lt;/p&gt;

&lt;p&gt;For more information, refer to the &lt;a href="https://get.kintone.help/k/en/user/using_app/import_records/import_csv.html" rel="noopener noreferrer"&gt;Create/Update Records in Bulk: Importing a File&lt;/a&gt; help doc.&lt;/p&gt;

&lt;h3&gt;
  
  
  How to bulk download all the Attachments from a Kintone App?
&lt;/h3&gt;

&lt;p&gt;There is no standard function to bulk download all the Attachments (files uploaded to a Kintone Record via Attachment field) at once.  &lt;/p&gt;

&lt;p&gt;Here is an overview of building a JavaScript customization to bulk download attachments.&lt;/p&gt;

&lt;p&gt;Required files:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/Stuk/jszip-utils" rel="noopener noreferrer"&gt;JSZipUtils(v0.0.2)&lt;/a&gt; --- used when downloading the files.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/eligrey/FileSaver.js" rel="noopener noreferrer"&gt;js(v1.0.0)&lt;/a&gt; --- used when saving the files.&lt;/li&gt;
&lt;li&gt;
&lt;a href="//ZipAllFiles.js"&gt;ZipAllFiles.js&lt;/a&gt; --- JS Customization by Kintone Developer Program

&lt;ul&gt;
&lt;li&gt;Change the &lt;code&gt;fieldCode&lt;/code&gt; value to the Attachment field's field code&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Upload or state the URL of the files in the &lt;strong&gt;JavaScript and CSS Customization settings&lt;/strong&gt; of the App as below, and be sure to list them in the same order.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;FileSaver.min.js&lt;/li&gt;
&lt;li&gt;jszip-utils.mini.js&lt;/li&gt;
&lt;li&gt;&lt;a href="https://js.kintone.com/jszip/v3.1.4/jszip.min.js" rel="noopener noreferrer"&gt;https://js.kintone.com/jszip/v3.1.4/jszip.min.js&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;ZipAllFiles.js&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--m0n7wW3X--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://developer.kintone.io/hc/article_attachments/115004804954/US_02.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--m0n7wW3X--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://developer.kintone.io/hc/article_attachments/115004804954/US_02.png" alt="JavaScript and CSS Customization Screenshot" width="646" height="371"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A button should appear on the Record List.&lt;/p&gt;

&lt;p&gt;Click the Button to start running the process to download Attachment files as a Zip file.&lt;/p&gt;

&lt;p&gt;For more information, refer to the &lt;a href="https://developer.kintone.io/hc/en-us/articles/115004137213" rel="noopener noreferrer"&gt;Bulk download attachments using JSZip&lt;/a&gt; tutorial.&lt;/p&gt;




&lt;h2&gt;
  
  
  Guest Space
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;In a Guest Space, only Apps within the same Guest Space can be duplicated with Method 1.&lt;/li&gt;
&lt;li&gt;To duplicate Apps not inside a Guest Space, refer to Method 2.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What Is Kintone?
&lt;/h2&gt;

&lt;p&gt;Kintone is a no-code/low-code cloud platform for teams to easily &amp;amp; effectively share and collaborate on their data.&lt;/p&gt;

&lt;p&gt;You can add JavaScript, CSS, &amp;amp;/or HTML to enhance the frontend UI/UX of a Kintone App. This can include features such as maps, buttons, and color-coding.&lt;/p&gt;

&lt;p&gt;Read up on how to customize and develop on the Kintone platform at &lt;a href="https://developer.kintone.io/" rel="noopener noreferrer"&gt;developer.kintone.io&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>kintone</category>
      <category>javascript</category>
      <category>lowcode</category>
      <category>database</category>
    </item>
  </channel>
</rss>
