{"id":18968,"date":"2024-07-08T23:27:46","date_gmt":"2024-07-08T23:27:46","guid":{"rendered":"https:\/\/liquidinstruments.com\/?p=18968"},"modified":"2025-12-18T00:25:17","modified_gmt":"2025-12-18T00:25:17","slug":"getting-started-with-the-moku-python-api","status":"publish","type":"post","link":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/","title":{"rendered":"Getting started with the Moku Python API","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Experiments in the physical sciences have grown more complex over time, often requiring precise synchronization and automation across a range of measurement devices. The specialized nature of modern research has, in turn, led to the rise of custom, user-created software to propel it forward. Read on to learn more about how the reconfigurable Moku instrumentation platform and the <\/span><a href=\"https:\/\/liquidinstruments.com\/products\/apis\/python-api\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Moku Python API<\/span><\/a><span style=\"font-weight: 400;\"> work together to help users quickly customize their control stacks.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Why use the Moku Python API?&nbsp;<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Owing to its ease of use, diverse array of user-created packages, and abundant supporting resources, Python is the programming language of choice for experimental physics, bioinformatics, machine learning, and more.&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The philosophy behind the Moku hardware platform is similarly inspired, giving users a versatile toolbox of instruments on one FPGA-based device. However, easy-to-use software is also critical. As part of this design ethos, Moku gives users the choice of <\/span><a href=\"https:\/\/liquidinstruments.com\/resources\/software\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">several interfaces<\/span><\/a><span style=\"font-weight: 400;\">, including Windows, macOS, iPadOS, and visionOS, plus multiple APIs, including the Moku Python API. By combining the flexibility of Moku with Python, users can easily integrate their Moku devices into existing setups while meeting their toughest research challenges. The next section describes how to install the Python API on your desktop system.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Recommended prerequisites for the Moku Python API<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Before installing the Moku package, ensure that you have a Python environment of at least version 3.5 installed on your computer. If you are new to Python, check out distributions such as <\/span><a href=\"https:\/\/www.anaconda.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Anaconda<\/span><\/a><span style=\"font-weight: 400;\">, which can help keep track of your installed packages and libraries, while supporting popular IDEs such as Spyder and Jupyter Notebooks.&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Even if you don\u2019t plan on using it as part of your experiments, we recommend having the <\/span><a href=\"https:\/\/liquidinstruments.com\/resources\/software\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Moku software<\/span><\/a><span style=\"font-weight: 400;\"> installed on your computer. This will make it easier to check for things such as the IP address, firmware version, and connection status of your Moku device. Installing this app will not interfere with your Moku device\u2019s communication through Python.&nbsp;&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Finally, if you wish to interact with your Moku via command line, install the <\/span><a href=\"https:\/\/liquidinstruments.com\/software\/utilities\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Moku CLI<\/span><\/a><span style=\"font-weight: 400;\"> utility \u2014&nbsp;simply download and run the installer for your system. After installing, restart your Python environment to load the <\/span><i><span style=\"font-weight: 400;\">moku cli <\/span><\/i><span style=\"font-weight: 400;\">library. This is not strictly necessary to use the Python API, but it does have several handy functions, such as the ability to view your Moku IP address and convert between file types.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Installing the Moku Python API package<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Once you have installed these prerequisites, open a terminal and navigate to your root folder. If you\u2019re using Anaconda on Windows, you can launch this from the main navigation screen (CMD.exe). Otherwise, manually navigate to your Python root folder using the Command Prompt function. If you\u2019re a macOS user, simply run the Terminal program on your device.&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">To test that you\u2019re in the right directory, try typing <\/span><strong>python &#8211;version<\/strong><span style=\"font-weight: 400;\"> into the console. If a Python installation is detected, the console will return the version number, as seen in Figure 1.<\/span><\/p>\n<p><img decoding=\"async\" width=\"741\" height=\"78\" class=\"size-large wp-image-18894 aligncenter\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.52.55\u202fPM.png\" alt=\"python install\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.52.55\u202fPM.png 741w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.52.55\u202fPM-300x32.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.52.55\u202fPM-600x63.png 600w\" sizes=\"(max-width: 741px) 100vw, 741px\" \/><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Figure 1: Finding the Python installation.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Next, install the Moku package using <\/span><i><span style=\"font-weight: 400;\">pip, <\/span><\/i><span style=\"font-weight: 400;\">an automated package manager. If you\u2019ve worked with Python before, this procedure will be familiar. Type<\/span> <strong>pip install moku<\/strong><span style=\"font-weight: 400;\"> and wait for the procedure to complete. After the command line appears again, check if the installation was successful by typing <\/span><strong>python -c \u201cimport moku\u201d<\/strong><span style=\"font-weight: 400;\">, as seen in Figure 2. If no error is returned, proceed to the next step.&nbsp;<\/span><\/p>\n<p><img decoding=\"async\" width=\"842\" height=\"285\" class=\"size-large wp-image-18895 aligncenter\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.54.29\u202fPM.png\" alt=\"python install\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.54.29\u202fPM.png 842w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.54.29\u202fPM-300x102.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.54.29\u202fPM-768x260.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-3.54.29\u202fPM-600x203.png 600w\" sizes=\"(max-width: 842px) 100vw, 842px\" \/><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Figure 2: Installing the API. Note that the API is already installed in this example, so check to make sure it installs successfully.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Downloading the Moku data files<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Now we need to install the actual datafiles that are used by the Moku instrument. It is critical to make sure that the firmware version of the datafiles that you download matches the firmware on your device. If you don\u2019t already know the version, you can check it with the Moku:app.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Type <\/span><strong>moku download &#8211;fw_ver=591<\/strong><span style=\"font-weight: 400;\"> into the console to start the download, as seen in Figure 3. These data files are large (~1 GB) and may take some time to download, depending on your connection speed. Once the data files are downloaded, you are almost finished.&nbsp;<\/span><\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-18896 size-large\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.00.02\u202fPM.png\" alt=\"python install\" width=\"700\" height=\"104\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.00.02\u202fPM.png 818w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.00.02\u202fPM-300x45.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.00.02\u202fPM-768x115.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.00.02\u202fPM-600x89.png 600w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Figure 3: Downloading the Moku datafiles. Note that the firmware is already installed in this example, so check to make sure it installs successfully.&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If your Moku is powered on and connected to the network, and you already installed the Moku CLI, you can see the IP information by typing <\/span><strong>moku list<\/strong><span style=\"font-weight: 400;\">. The console will then show the IP and firmware version information for each detected device, as seen in Figure 4.<\/span><\/p>\n<p><img decoding=\"async\" width=\"837\" height=\"244\" class=\"size-large wp-image-18897 aligncenter\" src=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.11.36\u202fPM.png\" alt=\"python mokucli\" srcset=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.11.36\u202fPM.png 837w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.11.36\u202fPM-300x87.png 300w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.11.36\u202fPM-768x224.png 768w, https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Screenshot-2024-07-01-at-4.11.36\u202fPM-600x175.png 600w\" sizes=\"(max-width: 837px) 100vw, 837px\" \/><\/p>\n<p style=\"text-align: center;\"><span style=\"font-weight: 400;\">Figure 4: Obtaining the serial, hardware, firmware, and IP information for Moku devices via the command line.&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Now that communication with Moku has been established, you can begin using the Moku Python API in your own custom scripts.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Taking the next steps with the Moku Python API<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">If you are looking to take the next step with your Python code, there are many resources available. Please see our <\/span><a href=\"https:\/\/apis.liquidinstruments.com\/reference\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">API reference guide<\/span><\/a><span style=\"font-weight: 400;\"> for a full list of commands available. All 14 instruments, as well as Multi-instrument Mode, can have any of their settings configured through the API. There are also several <\/span><a href=\"https:\/\/apis.liquidinstruments.com\/examples\/python\/#arbitrary-waveform-generator\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">example scripts<\/span><\/a><span style=\"font-weight: 400;\"> available.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">You can also watch our on-demand webinar, <a href=\"https:\/\/liquidinstruments.com\/webinar-registration-streamlining-experimental-control-stacks-with-flexible-fpga-based-instrumentation-and-python\/\" target=\"_blank\" rel=\"noopener\">Streamlining experimental control stacks with flexible FPGA-based instrumentation and Python<\/a>, to learn new ways to maximize efficiency and speed in your lab. From getting started to implementing advanced scripts for waveform generation, data logging, and more, discover how to accelerate your experiments with the power and flexibility of the FPGA-based Moku platform and Python. <\/span><span style=\"font-weight: 400;\">In this webinar, we cover several example scripts, which you can download <\/span><a href=\"https:\/\/hubs.ly\/Q02DBzDy0\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">here<\/span><\/a><span style=\"font-weight: 400;\">. If you need help with the installation, check out our <\/span><a href=\"https:\/\/apis.liquidinstruments.com\/starting-python.html#troubleshooting\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Troubleshooting<\/span><\/a><span style=\"font-weight: 400;\"> guide.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Get answers to FAQs in our Knowledge Base<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">If you have a question about a device feature or instrument function, check out our extensive <\/span><a href=\"https:\/\/knowledge.liquidinstruments.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Knowledge Base<\/span><\/a><span style=\"font-weight: 400;\"> to find the answers you\u2019re looking for. You can also quickly see popular articles and refine your search by product or topic.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">Join our User Forum to stay connected<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Want to request a new feature? Have a support tip to share? From use case examples to new feature announcements and more, the <\/span><a href=\"https:\/\/forum.liquidinstruments.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">User Forum<\/span><\/a><span style=\"font-weight: 400;\"> is your one-stop shop for product updates, as well as connection to Liquid Instruments and our global user community.<\/span><\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Experiments in the physical sciences have grown more complex over time, often requiring precise synchronization and automation across a range of measurement devices. The specialized nature of modern research has, in turn, led to the rise of custom, user-created software to propel it forward. Read on to learn more about how the reconfigurable Moku instrumentation [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":49,"featured_media":18986,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[3],"tags":[316],"class_list":["post-18968","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-ate","site-category-mokupro","site-category-python"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v27.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Moku Python API | How to get started<\/title>\n<meta name=\"description\" content=\"Leverage the flexibility of Moku and Python together, through the Moku Python API, to run custom scripts for your experimental stack\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting started with the Moku Python API\" \/>\n<meta property=\"og:description\" content=\"Leverage the flexibility of Moku and Python together, through the Moku Python API, to run custom scripts for your experimental stack\" \/>\n<meta property=\"og:url\" content=\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/\" \/>\n<meta property=\"og:site_name\" content=\"Liquid Instruments\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/LiquidInstruments\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-08T23:27:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-18T00:25:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"950\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jason Ball\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@liquidinstrmnts\" \/>\n<meta name=\"twitter:site\" content=\"@liquidinstrmnts\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jason Ball\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/\"},\"author\":{\"name\":\"Jason Ball\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/person\/9e95fcc52e40f7754fd85152937b68fa\"},\"headline\":\"Getting started with the Moku Python API\",\"datePublished\":\"2024-07-08T23:27:46+00:00\",\"dateModified\":\"2025-12-18T00:25:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/\"},\"wordCount\":1060,\"publisher\":{\"@id\":\"https:\/\/liquidinstruments.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png\",\"keywords\":[\"ATE\"],\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/\",\"url\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/\",\"name\":\"Moku Python API | How to get started\",\"isPartOf\":{\"@id\":\"https:\/\/liquidinstruments.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png\",\"datePublished\":\"2024-07-08T23:27:46+00:00\",\"dateModified\":\"2025-12-18T00:25:17+00:00\",\"description\":\"Leverage the flexibility of Moku and Python together, through the Moku Python API, to run custom scripts for your experimental stack\",\"breadcrumb\":{\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage\",\"url\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png\",\"contentUrl\":\"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png\",\"width\":1500,\"height\":950,\"caption\":\"Moku instrument suite with Python in the background\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/liquidinstruments.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Getting started with the Moku Python API\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/liquidinstruments.com\/#website\",\"url\":\"https:\/\/liquidinstruments.com\/\",\"name\":\"Liquid Instruments\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/liquidinstruments.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/liquidinstruments.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/liquidinstruments.com\/#organization\",\"name\":\"Liquid Instruments\",\"url\":\"https:\/\/liquidinstruments.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1\",\"width\":1000,\"height\":924,\"caption\":\"Liquid Instruments\"},\"image\":{\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/LiquidInstruments\/\",\"https:\/\/x.com\/liquidinstrmnts\",\"https:\/\/www.instagram.com\/liquidinstruments\/\",\"https:\/\/www.linkedin.com\/company\/liquidinstruments\/\",\"https:\/\/www.youtube.com\/c\/LiquidInstruments\",\"https:\/\/vimeo.com\/liquidinstruments\"],\"hasMerchantReturnPolicy\":{\"@type\":\"MerchantReturnPolicy\",\"merchantReturnLink\":\"https:\/\/liquidinstruments.com\/support\/warranty-repairs-and-service\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/person\/9e95fcc52e40f7754fd85152937b68fa\",\"name\":\"Jason Ball\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/liquidinstruments.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b0e7502ee45ec194baeba408e7aa6836fee5a4bdef40b7b10bd8788a1b32ad6c?s=96&d=wavatar&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b0e7502ee45ec194baeba408e7aa6836fee5a4bdef40b7b10bd8788a1b32ad6c?s=96&d=wavatar&r=g\",\"caption\":\"Jason Ball\"},\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/jason-ball-quantum\/\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Moku Python API | How to get started","description":"Leverage the flexibility of Moku and Python together, through the Moku Python API, to run custom scripts for your experimental stack","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/","og_locale":"en_US","og_type":"article","og_title":"Getting started with the Moku Python API","og_description":"Leverage the flexibility of Moku and Python together, through the Moku Python API, to run custom scripts for your experimental stack","og_url":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/","og_site_name":"Liquid Instruments","article_publisher":"https:\/\/www.facebook.com\/LiquidInstruments\/","article_published_time":"2024-07-08T23:27:46+00:00","article_modified_time":"2025-12-18T00:25:17+00:00","og_image":[{"width":1500,"height":950,"url":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png","type":"image\/png"}],"author":"Jason Ball","twitter_card":"summary_large_image","twitter_creator":"@liquidinstrmnts","twitter_site":"@liquidinstrmnts","twitter_misc":{"Written by":"Jason Ball","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#article","isPartOf":{"@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/"},"author":{"name":"Jason Ball","@id":"https:\/\/liquidinstruments.com\/#\/schema\/person\/9e95fcc52e40f7754fd85152937b68fa"},"headline":"Getting started with the Moku Python API","datePublished":"2024-07-08T23:27:46+00:00","dateModified":"2025-12-18T00:25:17+00:00","mainEntityOfPage":{"@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/"},"wordCount":1060,"publisher":{"@id":"https:\/\/liquidinstruments.com\/#organization"},"image":{"@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage"},"thumbnailUrl":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png","keywords":["ATE"],"articleSection":["Blog"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/","url":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/","name":"Moku Python API | How to get started","isPartOf":{"@id":"https:\/\/liquidinstruments.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage"},"image":{"@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage"},"thumbnailUrl":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png","datePublished":"2024-07-08T23:27:46+00:00","dateModified":"2025-12-18T00:25:17+00:00","description":"Leverage the flexibility of Moku and Python together, through the Moku Python API, to run custom scripts for your experimental stack","breadcrumb":{"@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#primaryimage","url":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png","contentUrl":"https:\/\/liquidinstruments.com\/wp-content\/uploads\/2024\/07\/Moku-instrument-suite.png","width":1500,"height":950,"caption":"Moku instrument suite with Python in the background"},{"@type":"BreadcrumbList","@id":"https:\/\/liquidinstruments.com\/blog\/getting-started-with-the-moku-python-api\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/liquidinstruments.com\/"},{"@type":"ListItem","position":2,"name":"Getting started with the Moku Python API"}]},{"@type":"WebSite","@id":"https:\/\/liquidinstruments.com\/#website","url":"https:\/\/liquidinstruments.com\/","name":"Liquid Instruments","description":"","publisher":{"@id":"https:\/\/liquidinstruments.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/liquidinstruments.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/liquidinstruments.com\/#organization","name":"Liquid Instruments","url":"https:\/\/liquidinstruments.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1","contentUrl":"https:\/\/i0.wp.com\/liquidinstruments.com\/wp-content\/uploads\/2020\/10\/BrandMark-Preferred-RGB-Color.png?fit=1000%2C924&ssl=1","width":1000,"height":924,"caption":"Liquid Instruments"},"image":{"@id":"https:\/\/liquidinstruments.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/LiquidInstruments\/","https:\/\/x.com\/liquidinstrmnts","https:\/\/www.instagram.com\/liquidinstruments\/","https:\/\/www.linkedin.com\/company\/liquidinstruments\/","https:\/\/www.youtube.com\/c\/LiquidInstruments","https:\/\/vimeo.com\/liquidinstruments"],"hasMerchantReturnPolicy":{"@type":"MerchantReturnPolicy","merchantReturnLink":"https:\/\/liquidinstruments.com\/support\/warranty-repairs-and-service\/"}},{"@type":"Person","@id":"https:\/\/liquidinstruments.com\/#\/schema\/person\/9e95fcc52e40f7754fd85152937b68fa","name":"Jason Ball","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/liquidinstruments.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/b0e7502ee45ec194baeba408e7aa6836fee5a4bdef40b7b10bd8788a1b32ad6c?s=96&d=wavatar&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b0e7502ee45ec194baeba408e7aa6836fee5a4bdef40b7b10bd8788a1b32ad6c?s=96&d=wavatar&r=g","caption":"Jason Ball"},"sameAs":["https:\/\/www.linkedin.com\/in\/jason-ball-quantum\/"]}]}},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts\/18968","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/users\/49"}],"replies":[{"embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/comments?post=18968"}],"version-history":[{"count":6,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts\/18968\/revisions"}],"predecessor-version":[{"id":26973,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/posts\/18968\/revisions\/26973"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/media\/18986"}],"wp:attachment":[{"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/media?parent=18968"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/categories?post=18968"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/liquidinstruments.com\/wp-json\/wp\/v2\/tags?post=18968"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}