Files
langflow/next/api-flows.html
2026-06-25 13:37:38 +00:00

806 lines
184 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-API-Reference/api-flows" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.9.2">
<title data-rh="true">Flow management endpoints | Langflow Documentation</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.langflow.org/next/api-flows"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Flow management endpoints | Langflow Documentation"><meta data-rh="true" name="description" content="Use the /flows endpoint to create, read, update, and delete flows."><meta data-rh="true" property="og:description" content="Use the /flows endpoint to create, read, update, and delete flows."><link data-rh="true" rel="icon" href="/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://docs.langflow.org/next/api-flows"><link data-rh="true" rel="alternate" href="https://docs.langflow.org/next/api-flows" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.langflow.org/next/api-flows" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://UZK6BDPCVY-dsn.algolia.net" crossorigin="anonymous"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Flow management endpoints","item":"https://docs.langflow.org/next/api-flows"}]}</script><link rel="preconnect" href="https://www.google-analytics.com">
<link rel="preconnect" href="https://www.googletagmanager.com">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-SLQFLQ3KPT"></script>
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-SLQFLQ3KPT",{})</script>
<link rel="search" type="application/opensearchdescription+xml" title="Langflow Documentation" href="/opensearch.xml">
<script>window._ibmAnalytics={settings:{name:"DataStax",tealiumProfileName:"ibm-subsidiary"},trustarc:{privacyPolicyLink:"https://ibm.com/privacy"},"digitalData.page.services.google.enabled":!0},window.digitalData={page:{pageInfo:{ibm:{siteId:"IBM_"+_ibmAnalytics.settings.name},segment:{enabled:!0,env:"prod",key:"B04fNhD06DqDPuaRfQl5lZ2iQICdxxuh",coremetrics:!1,carbonComponentEvents:!1}},category:{primaryCategory:"PC230"}},commonProperties:{productTitle:"IBM Elite Support for Langflow",productCode:"5900BUB",productCodeType:"WWPC",UT30:"30AS5",instanceId:"docs-site",subscriptionId:"public-access",productPlanName:"Public",productPlanType:"freemium",userId:"IBMid-ANONYMOUS"}}</script>
<script src="//1.www.s81c.com/common/stats/ibm-common.js" async="true"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&amp;family=Geist+Mono:wght@400;500&amp;family=Sora:wght@550;600&amp;display=swap">
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("consent","default",{ad_storage:"denied",ad_user_data:"denied",ad_personalization:"denied",analytics_storage:"denied"})</script>
<script>!function(){function e(){if(void 0!==window.truste&&window.truste.cma){var e=window.truste.cma.callApi("getConsent",window.location.href)||{},n=1===e[2],t=1===e[3];gtag("consent","update",{ad_storage:n?"granted":"denied",ad_user_data:n?"granted":"denied",ad_personalization:n?"granted":"denied",analytics_storage:t?"granted":"denied"})}}window.addEventListener&&(window.addEventListener("cm_data_subject_consent_changed",e),window.addEventListener("cm_consent_preferences_set",e)),"complete"===document.readyState?e():window.addEventListener("load",e)}()</script><link rel="stylesheet" href="/assets/css/styles.0d9d771d.css">
<script src="/assets/js/runtime~main.c313665b.js" defer="defer"></script>
<script src="/assets/js/main.12b252df.js" defer="defer"></script>
</head>
<body class="navigation-with-keyboard">
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")),document.documentElement.setAttribute("data-theme-choice",t||"system")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="theme-layout-navbar navbar navbar--fixed-top"><div class="navbar__inner"><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><div class="navbar__logo"><img src="/img/lf-docs-light.svg" alt="Langflow" class="themedComponent_mlkZ themedComponent--light_NVdE"><img src="/img/lf-docs-dark.svg" alt="Langflow" class="themedComponent_mlkZ themedComponent--dark_xIcU"></div></a><div class="navbar__item dropdown dropdown--hoverable"><a aria-current="page" class="navbar__link active" aria-haspopup="true" aria-expanded="false" role="button" href="/next/api-flows">1.11.x (Next)</a><ul class="dropdown__menu"><li><a aria-current="page" class="dropdown__link dropdown__link--active" href="/next/api-flows">1.11.x (Next)</a></li><li><a class="dropdown__link" href="/api-flows">1.10.x</a></li><li><a class="dropdown__link" href="/1.9.0/api-flows">1.9.x</a></li><li><a class="dropdown__link" href="/1.8.0/api-flows">1.8.x</a></li></ul></div></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><a href="https://github.com/langflow-ai/langflow" target="_blank" class="navbar__item navbar__link header-github-link" aria-label="GitHub" data-event="UI Interaction" data-action="clicked" data-channel="docs" data-element-id="social-github" data-namespace="header" data-platform-title="Langflow"></a><a href="https://twitter.com/langflow_ai" target="_blank" class="navbar__item navbar__link header-twitter-link" aria-label="Twitter" data-event="UI Interaction" data-action="clicked" data-channel="docs" data-element-id="social-twitter" data-namespace="header" data-platform-title="Langflow"></a><a href="https://discord.gg/EqksyE2EX9" target="_blank" class="navbar__item navbar__link header-discord-link" aria-label="Discord" data-event="UI Interaction" data-action="clicked" data-channel="docs" data-element-id="social-discord" data-namespace="header" data-platform-title="Langflow"></a><div class="toggle_MW0i colorModeToggle_DEke"><button class="clean-btn toggleButton_yw5v toggleButtonDisabled_BJd7" type="button" disabled="" title="system mode" aria-label="Switch between dark and light mode (currently system mode)"><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" focusable="false" role="presentation" class="toggleIcon_oIOL lightToggleIcon_SFTY"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" focusable="false" role="presentation" class="toggleIcon_oIOL darkToggleIcon_ekgs"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" focusable="false" role="presentation" class="toggleIcon_oIOL systemToggleIcon_yi_a"><path fill="currentColor" d="m12 21c4.971 0 9-4.029 9-9s-4.029-9-9-9-9 4.029-9 9 4.029 9 9 9zm4.95-13.95c1.313 1.313 2.05 3.093 2.05 4.95s-0.738 3.637-2.05 4.95c-1.313 1.313-3.093 2.05-4.95 2.05v-14c1.857 0 3.637 0.737 4.95 2.05z"></path></svg></button></div><div class="navbarSearchContainer_Bca1"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search (Meta+k)" aria-keyshortcuts="Meta+k"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="11" cy="11" r="8" stroke="currentColor" fill="none" stroke-width="1.4"></circle><path d="m21 21-4.3-4.3" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="theme-layout-main main-wrapper mainWrapper_z2l0"><div class="docsWrapper_hBAB"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docRoot_UBD9"><aside aria-label="Documentation sidebar" class="theme-doc-sidebar-container docSidebarContainer_RSuS"><div class="sidebarViewport_pYEE"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 sidebar-group-divider"><div class="sidebar-group-label">Build</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-rocket"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next"><span title="Get started" class="categoryLinkLabel_W154">Get started</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-workflow"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/concepts-overview"><span title="Flows" class="categoryLinkLabel_W154">Flows</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-bot"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/agents"><span title="Agents" class="categoryLinkLabel_W154">Agents</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-plug"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/mcp-client"><span title="Model Context Protocol (MCP)" class="categoryLinkLabel_W154">Model Context Protocol (MCP)</span></a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 sidebar-group-divider"><div class="sidebar-group-label">Develop & Deploy</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-code"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/api-keys-and-authentication"><span title="Develop" class="categoryLinkLabel_W154">Develop</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-cloud"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/deployment-overview"><span title="Deploy" class="categoryLinkLabel_W154">Deploy</span></a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 sidebar-group-divider"><div class="sidebar-group-label">Reference</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-blocks"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/concepts-components"><span title="Components reference" class="categoryLinkLabel_W154">Components reference</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item sidebar-category-with-icon sidebar-icon-fileCode"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" role="button" aria-expanded="true" href="/next/api-reference-api-examples"><span title="API reference" class="categoryLinkLabel_W154">API reference</span></a></div><ul class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-reference-api-examples"><span title="Get started with the Langflow API" class="linkLabel_WmDU">Get started with the Langflow API</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/typescript-client"><span title="Use the TypeScript client" class="linkLabel_WmDU">Use the TypeScript client</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/flow-devops-sdk"><span title="Flow DevOps Toolkit SDK" class="linkLabel_WmDU">Flow DevOps Toolkit SDK</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-flows-run"><span title="Flow trigger endpoints" class="linkLabel_WmDU">Flow trigger endpoints</span></a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/next/workflow-api"><span title="Developer API (Beta)" class="categoryLinkLabel_W154">Developer API (Beta)</span></a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-openai-responses"><span title="OpenAI Responses API" class="linkLabel_WmDU">OpenAI Responses API</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/next/api-flows"><span title="Flow management endpoints" class="linkLabel_WmDU">Flow management endpoints</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-files"><span title="Files endpoints" class="linkLabel_WmDU">Files endpoints</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-projects"><span title="Projects endpoints" class="linkLabel_WmDU">Projects endpoints</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-logs"><span title="Logs endpoints" class="linkLabel_WmDU">Logs endpoints</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-monitor"><span title="Monitor endpoints" class="linkLabel_WmDU">Monitor endpoints</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-build"><span title="Build endpoints" class="linkLabel_WmDU">Build endpoints</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/next/api-users"><span title="Users endpoints" class="linkLabel_WmDU">Users endpoints</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/api"><span title="Langflow API specification" class="linkLabel_WmDU">Langflow API specification</span></a></li></ul></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 sidebar-group-divider"><div class="sidebar-group-label">Community</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-gitPR"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/contributing-community"><span title="Contribute" class="categoryLinkLabel_W154">Contribute</span></a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed sidebar-category-with-icon sidebar-icon-helpCircle"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/next/troubleshoot"><span title="Support" class="categoryLinkLabel_W154">Support</span></a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 sidebar-ad">
<a href="https://www.langflow.org/desktop" target="_blank" rel="noopener noreferrer" class="menu__link">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
<g clip-path="url(#clip0_1645_37)">
<path d="M12 17H20C21.1046 17 22 16.1046 22 15V13M12 17H4C2.89543 17 2 16.1046 2 15V5C2 3.89543 2.89543 3 4 3H10M12 17V21M8 21H12M12 21H16M11.75 10.2917H13.2083L16.125 7.375H17.5833L20.5 4.45833H21.9583M16.125 11.75H17.5833L20.5 8.83333H21.9583M11.75 5.91667H13.2083L16.125 3H17.5833" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</g>
<defs>
<clipPath id="clip0_1645_37">
<rect width="24" height="24" fill="white"/>
</clipPath>
</defs>
</svg>
<div class="sidebar-ad-text-container">
<span class="sidebar-ad-text">Get started in minutes</span>
<span class="sidebar-ad-text sidebar-ad-text-gradient">Download Langflow Desktop</span>
</div>
</a>
</li></ul></nav></div></div></aside><main class="docMainContainer_TBSr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_z5aJ"><div class="theme-doc-version-banner alert alert--warning margin-bottom--md" role="alert"><div>This is unreleased documentation for <!-- -->Langflow Documentation<!-- --> <b>1.11.x (Next)</b> version.</div><div class="margin-top--md">For up-to-date documentation, see the <b><a href="/api-flows">latest version</a></b> (<!-- -->1.10.x<!-- -->).</div></div><div class="docItemContainer_c0TR"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/"><svg viewBox="0 0 24 24" aria-hidden="true" focusable="false" role="presentation" class="breadcrumbHomeIcon_xK9p"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">API reference</span></li><li class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link">Flow management endpoints</span></li></ul></nav><div class="docMetaRow_c2hx"><div class="root_Eutc"><button type="button" class="button_gpNY"><span aria-hidden="true" class="icon_Bm9L"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg></span><span class="label_LzDG">Copy page</span></button></div><span class="theme-doc-version-badge badge badge--secondary">Version: 1.11.x (Next)</span></div><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Flow management endpoints</h1></header><style>[data-ch-theme="github-dark"] { --ch-t-colorScheme: dark;--ch-t-foreground: #c9d1d9;--ch-t-background: #0d1117;--ch-t-lighter-inlineBackground: #0d1117e6;--ch-t-editor-background: #0d1117;--ch-t-editor-foreground: #c9d1d9;--ch-t-editor-lineHighlightBackground: #6e76811a;--ch-t-editor-rangeHighlightBackground: #ffffff0b;--ch-t-editor-infoForeground: #3794FF;--ch-t-editor-selectionBackground: #264F78;--ch-t-focusBorder: #1f6feb;--ch-t-tab-activeBackground: #0d1117;--ch-t-tab-activeForeground: #c9d1d9;--ch-t-tab-inactiveBackground: #010409;--ch-t-tab-inactiveForeground: #8b949e;--ch-t-tab-border: #30363d;--ch-t-tab-activeBorder: #0d1117;--ch-t-editorGroup-border: #30363d;--ch-t-editorGroupHeader-tabsBackground: #010409;--ch-t-editorLineNumber-foreground: #6e7681;--ch-t-input-background: #0d1117;--ch-t-input-foreground: #c9d1d9;--ch-t-input-border: #30363d;--ch-t-icon-foreground: #8b949e;--ch-t-sideBar-background: #010409;--ch-t-sideBar-foreground: #c9d1d9;--ch-t-sideBar-border: #30363d;--ch-t-list-activeSelectionBackground: #6e768166;--ch-t-list-activeSelectionForeground: #c9d1d9;--ch-t-list-hoverBackground: #6e76811a;--ch-t-list-hoverForeground: #c9d1d9; }</style>
<!-- -->
<p>Use the <code>/flows</code> endpoint to create, read, update, and delete flows.</p>
<p>If you want to use the Langflow API to run a flow, see <a class="" href="/api-flows-run">Flow trigger endpoints</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="create-flow">Create flow<a href="#create-flow" class="hash-link" aria-label="Direct link to Create flow" title="Direct link to Create flow" translate="no"></a></h2>
<p>Creates a new flow.</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>url = f&quot;{os.getenv(&#x27;LANGFLOW_URL&#x27;, &#x27;&#x27;)}/api/v1/flows/&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>headers = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;accept&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;Content-Type&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> &quot;x-api-key&quot;: f&quot;{os.getenv(&#x27;LANGFLOW_API_KEY&#x27;, &#x27;&#x27;)}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>payload = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;name&quot;: &quot;string2&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> &quot;icon_bg_color&quot;: &quot;#FF0000&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> &quot;is_component&quot;: False,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> &quot;updated_at&quot;: &quot;2024-12-30T15:48:01.519Z&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> &quot;webhook&quot;: False,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span> &quot;tags&quot;: [&quot;string&quot;],<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span>response = requests.request(&quot;POST&quot;, url, headers=headers, json=payload)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">30</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">31</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;POST&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;Content-Type&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> body: JSON.stringify({<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;name&quot;: &quot;string2&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;icon_bg_color&quot;: &quot;#FF0000&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> &quot;updated_at&quot;: &quot;2024-12-30T15:48:01.519Z&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> &quot;tags&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> &quot;string&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> ]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span>}),<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">30</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">31</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">32</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">33</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">34</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">35</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">36</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X POST \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;Content-Type: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> -d &#x27;{<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;name&quot;: &quot;string2&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> &quot;icon_bg_color&quot;: &quot;#FF0000&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;updated_at&quot;: &quot;2024-12-30T15:48:01.519Z&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> &quot;tags&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> &quot;string&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> ]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>}&#x27;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<details class="details_lb9f alert alert--info details_b_Ee" data-collapsed="true"><summary>Result</summary><div><div class="collapsibleContent_i85q"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="json" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>{<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;name&quot;: &quot;string2&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> &quot;icon_bg_color&quot;: &quot;#FF0000&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;updated_at&quot;: &quot;2025-02-04T21:07:36+00:00&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;tags&quot;: [&quot;string&quot;],<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;locked&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;id&quot;: &quot;e8d81c37-714b-49ae-ba82-e61141f020ee&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;user_id&quot;: &quot;f58396d4-a387-4bb8-b749-f40825c3d9f3&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;project_id&quot;: &quot;1415de42-8f01-4f36-bf34-539f23e47466&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></details>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="create-flows">Create flows<a href="#create-flows" class="hash-link" aria-label="Direct link to Create flows" title="Direct link to Create flows" translate="no"></a></h2>
<p>Creates multiple new flows, returning an array of flow objects.</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>import uuid<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>base = os.environ.get(&quot;LANGFLOW_URL&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>api_key = os.environ.get(&quot;LANGFLOW_API_KEY&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span>folder_id = (os.environ.get(&quot;PROJECT_ID&quot;) or os.environ.get(&quot;FOLDER_ID&quot;) or &quot;&quot;).strip()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>headers = {&quot;accept&quot;: &quot;application/json&quot;, &quot;Content-Type&quot;: &quot;application/json&quot;, &quot;x-api-key&quot;: api_key}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>def _flow_doc(suffix: str) -&gt; dict:<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> doc = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;name&quot;: f&quot;batch-flow-{uuid.uuid4().hex[:8]}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;description&quot;: f&quot;Docs batch example {suffix}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> &quot;data&quot;: {&quot;nodes&quot;: [], &quot;edges&quot;: []},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> if folder_id:<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> doc[&quot;folder_id&quot;] = folder_id<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> return doc<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span>payload = {&quot;flows&quot;: [_flow_doc(&quot;A&quot;), _flow_doc(&quot;B&quot;)]}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span>response = requests.post(f&quot;{base}/api/v1/flows/batch/&quot;, headers=headers, json=payload, timeout=30)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/batch/`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;POST&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;Content-Type&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> body: JSON.stringify({<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;flows&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;icon_bg_color&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> &quot;updated_at&quot;: &quot;2024-12-30T18:36:02.737Z&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> &quot;tags&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span> &quot;string&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span> ],<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span> &quot;locked&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span> &quot;user_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span> &quot;project_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">30</span> {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">31</span> &quot;name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">32</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">33</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">34</span> &quot;icon_bg_color&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">35</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">36</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">37</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">38</span> &quot;updated_at&quot;: &quot;2024-12-30T18:36:02.737Z&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">39</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">40</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">41</span> &quot;tags&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">42</span> &quot;string&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">43</span> ],<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">44</span> &quot;locked&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">45</span> &quot;user_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">46</span> &quot;project_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">47</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">48</span> ]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">49</span>}),<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">50</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">51</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">52</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">53</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">54</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">55</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">56</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">57</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">58</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">59</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">60</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">61</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X POST \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/batch/&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;Content-Type: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> -d &#x27;{<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;flows&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;icon_bg_color&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;updated_at&quot;: &quot;2024-12-30T18:36:02.737Z&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> &quot;tags&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> &quot;string&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> ],<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> &quot;locked&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> &quot;user_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span> &quot;project_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span> {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span> &quot;name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span> &quot;icon&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">30</span> &quot;icon_bg_color&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">31</span> &quot;gradient&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">32</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">33</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">34</span> &quot;updated_at&quot;: &quot;2024-12-30T18:36:02.737Z&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">35</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">36</span> &quot;endpoint_name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">37</span> &quot;tags&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">38</span> &quot;string&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">39</span> ],<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">40</span> &quot;locked&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">41</span> &quot;user_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">42</span> &quot;project_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">43</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">44</span> ]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">45</span>}&#x27;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">46</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="read-flow">Read flow<a href="#read-flow" class="hash-link" aria-label="Direct link to Read flow" title="Direct link to Read flow" translate="no"></a></h2>
<p>Retrieves a specific flow by its ID.</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>url = f&quot;{os.getenv(&#x27;LANGFLOW_URL&#x27;, &#x27;&#x27;)}/api/v1/flows/{os.getenv(&#x27;FLOW_ID&#x27;, &#x27;&#x27;)}&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>headers = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;accept&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;x-api-key&quot;: f&quot;{os.getenv(&#x27;LANGFLOW_API_KEY&#x27;, &#x27;&#x27;)}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>response = requests.request(&quot;GET&quot;, url, headers=headers)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/${process.env.FLOW_ID ?? &quot;&quot;}`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;GET&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X GET \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/$FLOW_ID&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot;<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<details class="details_lb9f alert alert--info details_b_Ee" data-collapsed="true"><summary>Result</summary><div><div class="collapsibleContent_i85q"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="json" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>{<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;name&quot;: &quot;Basic Prompting&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> &quot;description&quot;: &quot;Perform basic prompting with an OpenAI model.&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> &quot;icon&quot;: &quot;Braces&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> &quot;icon_bg_color&quot;: null,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;gradient&quot;: &quot;2&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;data&quot;: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;nodes&quot;: [<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> ...<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> ]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></details>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="read-flows">Read flows<a href="#read-flows" class="hash-link" aria-label="Direct link to Read flows" title="Direct link to Read flows" translate="no"></a></h2>
<p>Returns a JSON object containing a list of flows.</p>
<p>Retrieve all flows with pagination:</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>url = f&quot;{os.getenv(&#x27;LANGFLOW_URL&#x27;, &#x27;&#x27;)}/api/v1/flows/?remove_example_flows=false&amp;components_only=false&amp;get_all=true&amp;header_flows=false&amp;page=1&amp;size=50&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>headers = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;accept&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;x-api-key&quot;: f&quot;{os.getenv(&#x27;LANGFLOW_API_KEY&#x27;, &#x27;&#x27;)}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>response = requests.request(&quot;GET&quot;, url, headers=headers)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/?remove_example_flows=false&amp;components_only=false&amp;get_all=true&amp;header_flows=false&amp;page=1&amp;size=50`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;GET&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X GET \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/?remove_example_flows=false&amp;components_only=false&amp;get_all=true&amp;header_flows=false&amp;page=1&amp;size=50&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot;<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<p>To retrieve flows from a specific project, use the <code>project_id</code> query parameter:</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>url = f&quot;{os.getenv(&#x27;LANGFLOW_URL&#x27;, &#x27;&#x27;)}/api/v1/flows/?remove_example_flows=true&amp;components_only=false&amp;get_all=false&amp;project_id={os.getenv(&#x27;PROJECT_ID&#x27;, &#x27;&#x27;)}&amp;header_flows=false&amp;page=1&amp;size=1&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>headers = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;accept&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;x-api-key&quot;: f&quot;{os.getenv(&#x27;LANGFLOW_API_KEY&#x27;, &#x27;&#x27;)}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>response = requests.request(&quot;GET&quot;, url, headers=headers)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/?remove_example_flows=true&amp;components_only=false&amp;get_all=false&amp;project_id=${process.env.PROJECT_ID ?? &quot;&quot;}&amp;header_flows=false&amp;page=1&amp;size=1`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;GET&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X GET \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/?remove_example_flows=true&amp;components_only=false&amp;get_all=false&amp;project_id=$PROJECT_ID&amp;header_flows=false&amp;page=1&amp;size=1&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot;<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="read-sample-flows">Read sample flows<a href="#read-sample-flows" class="hash-link" aria-label="Direct link to Read sample flows" title="Direct link to Read sample flows" translate="no"></a></h2>
<p>Retrieves a list of sample flows:</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>url = f&quot;{os.getenv(&#x27;LANGFLOW_URL&#x27;, &#x27;&#x27;)}/api/v1/flows/basic_examples/&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>headers = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;accept&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;x-api-key&quot;: f&quot;{os.getenv(&#x27;LANGFLOW_API_KEY&#x27;, &#x27;&#x27;)}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>response = requests.request(&quot;GET&quot;, url, headers=headers)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/basic_examples/`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;GET&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X GET \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/basic_examples/&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot;<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="update-flow">Update flow<a href="#update-flow" class="hash-link" aria-label="Direct link to Update flow" title="Direct link to Update flow" translate="no"></a></h2>
<p>Updates an existing flow by its ID.</p>
<p>This example changes the value for <code>endpoint_name</code> from a random UUID to <code>my_new_endpoint_name</code>.</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>import uuid<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>base = os.environ.get(&quot;LANGFLOW_URL&quot;) or os.environ.get(&quot;LANGFLOW_SERVER_URL&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>flow_id = os.environ.get(&quot;FLOW_ID&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span>api_key = os.environ.get(&quot;LANGFLOW_API_KEY&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>headers = {&quot;accept&quot;: &quot;application/json&quot;, &quot;Content-Type&quot;: &quot;application/json&quot;, &quot;x-api-key&quot;: api_key}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>payload = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;name&quot;: f&quot;docs-example-updated-flow-{uuid.uuid4().hex[:8]}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;description&quot;: &quot;Updated via API docs Python example&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;locked&quot;: False,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span>response = requests.patch(f&quot;{base}/api/v1/flows/{flow_id}&quot;, headers=headers, json=payload, timeout=30)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/${process.env.FLOW_ID ?? &quot;&quot;}`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;PATCH&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;Content-Type&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> body: JSON.stringify({<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;project_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;endpoint_name&quot;: &quot;my_new_endpoint_name&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;locked&quot;: true<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span>}),<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X PATCH \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/$FLOW_ID&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;Content-Type: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> -d &#x27;{<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> &quot;project_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;endpoint_name&quot;: &quot;my_new_endpoint_name&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;locked&quot;: true<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>}&#x27;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<details class="details_lb9f alert alert--info details_b_Ee" data-collapsed="true"><summary>Result</summary><div><div class="collapsibleContent_i85q"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="json" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>{<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;name&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> &quot;description&quot;: &quot;string&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> &quot;icon&quot;: &quot;Braces&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> &quot;icon_bg_color&quot;: null,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;gradient&quot;: &quot;2&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;data&quot;: {},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;is_component&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;updated_at&quot;: &quot;2024-12-30T18:30:22+00:00&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> &quot;webhook&quot;: false,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;endpoint_name&quot;: &quot;my_new_endpoint_name&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;tags&quot;: null,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;locked&quot;: true,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;id&quot;: &quot;01ce083d-748b-4b8d-97b6-33adbb6a528a&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;user_id&quot;: &quot;f58396d4-a387-4bb8-b749-f40825c3d9f3&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;project_id&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></details>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="delete-flow">Delete flow<a href="#delete-flow" class="hash-link" aria-label="Direct link to Delete flow" title="Direct link to Delete flow" translate="no"></a></h2>
<p>Deletes a specific flow by its ID.</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>base = os.environ.get(&quot;LANGFLOW_URL&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>api_key = os.environ.get(&quot;LANGFLOW_API_KEY&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span>headers = {&quot;accept&quot;: &quot;application/json&quot;, &quot;Content-Type&quot;: &quot;application/json&quot;, &quot;x-api-key&quot;: api_key}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>create = requests.post(<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> f&quot;{base}/api/v1/flows/&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> headers=headers,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> json={<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> &quot;name&quot;: &quot;docs-example-delete-me&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> &quot;description&quot;: &quot;Temporary flow for delete-flow example&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> &quot;data&quot;: {&quot;nodes&quot;: [], &quot;edges&quot;: []},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> timeout=30,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span>)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>create.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span>flow_id = create.json()[&quot;id&quot;]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span>delete = requests.delete(f&quot;{base}/api/v1/flows/{flow_id}&quot;, headers=headers, timeout=30)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span>delete.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span>print(delete.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/${process.env.FLOW_ID ?? &quot;&quot;}`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;DELETE&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X DELETE \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/$FLOW_ID&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot;<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<details class="details_lb9f alert alert--info details_b_Ee" data-collapsed="true"><summary>Result</summary><div><div class="collapsibleContent_i85q"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="json" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>{<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;message&quot;: &quot;Flow deleted successfully&quot;<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>}<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></details>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="export-flows">Export flows<a href="#export-flows" class="hash-link" aria-label="Direct link to Export flows" title="Direct link to Export flows" translate="no"></a></h2>
<p>Exports specified flows to a ZIP file.</p>
<p>This endpoint downloads a ZIP file containing <a class="" href="/concepts-flows-import#langflow-json-file-contents">Langflow JSON files</a> for each flow ID listed in the request body.</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>base = os.environ.get(&quot;LANGFLOW_URL&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>api_key = os.environ.get(&quot;LANGFLOW_API_KEY&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>flow_id = os.environ.get(&quot;FLOW_ID&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span>folder_id = os.environ.get(&quot;PROJECT_ID&quot;) or os.environ.get(&quot;FOLDER_ID&quot;, &quot;&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>headers = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;accept&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;Content-Type&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;x-api-key&quot;: api_key,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span># Export needs at least two flows to return a ZIP; a single id returns JSON.<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span>extra = requests.post(<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> f&quot;{base}/api/v1/flows/&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> headers=headers,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> json={<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> &quot;name&quot;: &quot;docs-export-temp-flow&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> &quot;description&quot;: &quot;Temporary second flow for export example&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> &quot;data&quot;: {&quot;nodes&quot;: [], &quot;edges&quot;: []},<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span> **({&quot;folder_id&quot;: folder_id} if folder_id else {}),<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span> timeout=30,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span>)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span>extra.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span>extra_id = extra.json()[&quot;id&quot;]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">30</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">31</span>payload = [flow_id, extra_id]<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">32</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">33</span>response = requests.post(f&quot;{base}/api/v1/flows/download/&quot;, headers=headers, json=payload, timeout=60)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">34</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">35</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">36</span>with open(&quot;langflow-flows.zip&quot;, &quot;wb&quot;) as f:<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">37</span> f.write(response.content)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">38</span>print(&quot;Saved response to langflow-flows.zip&quot;)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">39</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">40</span>requests.delete(f&quot;{base}/api/v1/flows/{extra_id}&quot;, headers=headers, timeout=30)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">41</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/download/`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> method: &#x27;POST&#x27;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;accept&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;Content-Type&quot;: `application/json`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> body: JSON.stringify([<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span> &quot;e1e40c77-0541-41a9-88ab-ddb3419398b5&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span> &quot;92f9a4c5-cfc8-4656-ae63-1f0881163c28&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>]),<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> const data = await response.arrayBuffer();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> console.log(&quot;Received binary response for langflow-flows.zip&quot;, data.byteLength);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>curl -X POST \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> &quot;$LANGFLOW_URL/api/v1/flows/download/&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span> -H &quot;Content-Type: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> -d &#x27;[<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> &quot;e1e40c77-0541-41a9-88ab-ddb3419398b5&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;92f9a4c5-cfc8-4656-ae63-1f0881163c28&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>]&#x27; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> --output langflow-flows.zip<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<details class="details_lb9f alert alert--info details_b_Ee" data-collapsed="true"><summary>Result</summary><div><div class="collapsibleContent_i85q"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="text" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span> % Total % Received % Xferd Average Speed Time Time Time Current<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span> Dload Upload Total Spent Left Speed<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>100 76437 0 76353 100 84 4516k 5088 --:--:-- --:--:-- --:--:-- 4665k<!-- -->
<span class="ch-code-line-number" style="width:1ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></details>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="import-flows">Import flows<a href="#import-flows" class="hash-link" aria-label="Direct link to Import flows" title="Direct link to Import flows" translate="no"></a></h2>
<p>Imports flows by uploading a <a class="" href="/concepts-flows-import#langflow-json-file-contents">Langflow-compatible JSON file</a>.</p>
<p>To specify a target project for the flow, include the query parameter <code>folder_id</code>.
The target <code>folder_id</code> must already exist before uploading a flow. Call the <a class="" href="/api-projects#read-projects">/api/v1/projects/</a> endpoint for a list of available folders and projects.</p>
<p>This example uploads a local file named <code>agent-with-astra-db-tool.json</code> to a folder specified by a <code>FOLDER_ID</code> variable:</p>
<div class="theme-tabs-container tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Python</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">JavaScript</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">curl</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="python" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>import os<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>import requests<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>url = f&quot;{os.getenv(&#x27;LANGFLOW_URL&#x27;, &#x27;&#x27;)}/api/v1/flows/upload/?folder_id={os.getenv(&#x27;FOLDER_ID&#x27;, &#x27;&#x27;)}&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>headers = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> &quot;accept&quot;: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> &quot;x-api-key&quot;: f&quot;{os.getenv(&#x27;LANGFLOW_API_KEY&#x27;, &#x27;&#x27;)}&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>files = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span> &quot;file&quot;: open(os.getenv(&quot;FLOW_IMPORT_FILE&quot;, &quot;docs/docs/API-Reference/fixtures/flow-import.json&quot;), &quot;rb&quot;),<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>}<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span>response = requests.request(&quot;POST&quot;, url, headers=headers, files=files)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span>response.raise_for_status()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span>print(response.text)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span>for _f in files.values():<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span> if hasattr(_f, &quot;close&quot;):<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span> _f.close()<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="javascript" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>const fs = require(&quot;fs&quot;);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>const path = require(&quot;path&quot;);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>const fixturesDir = path.join(__dirname, &quot;../../fixtures&quot;);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>const defaultFlowImport = path.join(fixturesDir, &quot;flow-import.json&quot;);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span>const flowImportPath = process.env.FLOW_IMPORT_FILE || defaultFlowImport;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span>const flowBuf = fs.readFileSync(flowImportPath);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span>const flowName = path.basename(flowImportPath);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span>const url = `${process.env.LANGFLOW_URL ?? &quot;&quot;}/api/v1/flows/upload/?folder_id=${process.env.FOLDER_ID ?? &quot;&quot;}`;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">12</span>const formData = new FormData();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">13</span>formData.append(&quot;file&quot;, new Blob([flowBuf], { type: &quot;application/json&quot; }), flowName);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">14</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">15</span>const options = {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">16</span> method: &quot;POST&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">17</span> headers: {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">18</span> accept: &quot;application/json&quot;,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">19</span> &quot;x-api-key&quot;: `${process.env.LANGFLOW_API_KEY ?? &quot;&quot;}`,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">20</span> },<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">21</span> body: formData,<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">22</span>};<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">23</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">24</span>fetch(url, options)<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">25</span> .then(async (response) =&gt; {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">26</span> if (!response.ok) {<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">27</span> throw new Error(`HTTP ${response.status}`);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">28</span> }<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">29</span> const text = await response.text();<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">30</span> console.log(text);<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">31</span> })<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">32</span> .catch((error) =&gt; console.error(error));<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">33</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><div class="ch-codeblock" style="margin-top:1.25em;margin-bottom:1.25em;border-radius:6px;overflow:hidden;box-shadow:0 13px 27px -5px rgba(50,50,93,0.25), 0 8px 16px -8px rgba(0,0,0,0.3);--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><div class="ch-code-wrapper" data-ch-measured="true" style="--ch-t-background:#0d1117;--ch-t-foreground:#c9d1d9;--ch-t-colorScheme:dark;--ch-t-editorLineNumber-foreground:#8b949e;--ch-t-editor-selectionBackground:#264f78"><code class="ch-code-scroll-parent" data-ch-lang="bash" style="display:block;padding:1rem"><span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">1</span>SCRIPT_DIR=&quot;$(cd &quot;$(dirname &quot;${BASH_SOURCE[0]}&quot;)&quot; &amp;&amp; pwd)&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">2</span>DEFAULT_FLOW_IMPORT_FILE=&quot;$SCRIPT_DIR/../../fixtures/flow-import.json&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">3</span>FLOW_IMPORT_FILE=&quot;${FLOW_IMPORT_FILE:-$DEFAULT_FLOW_IMPORT_FILE}&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">4</span>
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">5</span>curl -X POST \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">6</span> &quot;$LANGFLOW_URL/api/v1/flows/upload/?folder_id=$FOLDER_ID&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">7</span> -H &quot;accept: application/json&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">8</span> -H &quot;Content-Type: multipart/form-data&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">9</span> -H &quot;x-api-key: $LANGFLOW_API_KEY&quot; \<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">10</span> -F &quot;file=@${FLOW_IMPORT_FILE};type=application/json&quot;<!-- -->
<span class="ch-code-line-number" style="width:2ch;margin-right:1.5ch;display:inline-block;text-align:right">11</span>
</code><button type="button" title="Copy code" class="ch-code-button"><svg fill="none" stroke="currentColor" viewBox="0 0 24 24" width="1.1em" height="1.1em"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"></path></svg></button></div></div></div></div></div>
<details class="details_lb9f alert alert--info details_b_Ee" data-collapsed="true"><summary>Result</summary><div><div class="collapsibleContent_i85q"><div class="ch-codeblock not-prose" data-ch-theme="github-dark"><div class="ch-code-wrapper ch-code" data-ch-measured="false"><code class="ch-code-scroll-parent"><br><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span>[</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> {</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> &quot;name&quot;: &quot;agent-with-astra-db-tool&quot;,</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> &quot;description&quot;: &quot;&quot;,</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> &quot;icon&quot;: null,</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> &quot;icon_bg_color&quot;: null,</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> &quot;gradient&quot;: null,</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> &quot;data&quot;: {}</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> ...</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span> }</span></div></div><div><span class="ch-code-line-number">_<!-- -->11</span><div style="display:inline-block;margin-left:16px"><span>]</span></div></div><br></code></div></div></div></div></details></div></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/next/api-openai-responses"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">OpenAI Responses API</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/next/api-files"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Files endpoints</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#create-flow" class="table-of-contents__link toc-highlight">Create flow</a></li><li><a href="#create-flows" class="table-of-contents__link toc-highlight">Create flows</a></li><li><a href="#read-flow" class="table-of-contents__link toc-highlight">Read flow</a></li><li><a href="#read-flows" class="table-of-contents__link toc-highlight">Read flows</a></li><li><a href="#read-sample-flows" class="table-of-contents__link toc-highlight">Read sample flows</a></li><li><a href="#update-flow" class="table-of-contents__link toc-highlight">Update flow</a></li><li><a href="#delete-flow" class="table-of-contents__link toc-highlight">Delete flow</a></li><li><a href="#export-flows" class="table-of-contents__link toc-highlight">Export flows</a></li><li><a href="#import-flows" class="table-of-contents__link toc-highlight">Import flows</a></li></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class="footer__title"></div><ul class="footer__items clean-list"><li class="footer__item"><div class="footer-links">
<span>© 2026 Langflow</span>
<span id="preferenceCenterContainer"> ·&nbsp; <a href="#" onclick='return"undefined"!=typeof window&&window.truste&&window.truste.eu&&window.truste.eu.clickListener&&window.truste.eu.clickListener(),!1' style="cursor: pointer;">Manage Privacy Choices</a></span>
</div></li></ul></div></div></div></footer><div style="position:fixed;right:21px;bottom:21px;z-index:100;display:flex;align-items:center;gap:10px;cursor:pointer"><div style="background-color:#f6f6f6;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,0.1)"><img src="/img/langflow-icon-black-transparent.svg" style="width:40px" alt="Search"></div></div></div>
</body>
</html>