{"id":17700,"date":"2013-08-09T13:31:04","date_gmt":"2013-08-09T20:31:04","guid":{"rendered":"http:\/\/\/?page_id=17700"},"modified":"2021-08-18T13:25:11","modified_gmt":"2021-08-18T20:25:11","slug":"script-editor","status":"publish","type":"page","link":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/","title":{"rendered":"Script Editor"},"content":{"rendered":"<p class=\"lead\">The Script Editor is a platform that allows the user to program their own routines into FlowJo using JavaScript without having to worry about compiling a program.<\/p>\n<p>The script editor allows low-level access to FlowJo, and uses JavaScript to execute some powerful operations. \u00a0 The editor can be found by default in the Cytometry band on the Workspace Tab.<\/p>\n<img loading=\"lazy\" decoding=\"async\" width=\"632\" height=\"171\" class=\"alignnone size-full wp-image-28805\" src=\"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd.png\" alt=\"\" srcset=\"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd.png 632w, https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd-300x81.png 300w, https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd-554x150.png 554w\" sizes=\"auto, (max-width: 632px) 100vw, 632px\" \/>\n<p>Scripts can be saved, copied, and shared.<\/p>\n<p>Below is a simple tutorial to guide you through the key features of the scripting interface.<\/p>\n<h3>The Script Editor Interface<\/h3>\n<a href=\"https:\/\/docs.flowjo.com\/wp-content\/uploads\/sites\/6\/2013\/08\/FlowJo_Script_Editor-5.jpg\"><img decoding=\"async\" class=\"alignnone size-large wp-image-19669\" src=\"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2013\/08\/FlowJo_Script_Editor-5-1024x542.jpg\" alt=\"FlowJo_Script_Editor-5\" \/><\/a>\n<h3><b>Console Input<\/b><\/h3>\n<p>The Script Editor&#8217;s console input provides a quick way to test code snippets, perform calculations, and view doc pages for FlowJo objects.<\/p>\n<p>To perform simple calculations, simply type them into the console input and press enter.\u00a0 To navigate previously typed commands, use the up and down arrows.\u00a0 Mac OSX provides basic Emacs bindings to text fields, so shortcuts Ctrl-A and Ctrl-E move the cursor to the beginning and end respectively of the input line.<\/p>\n<p><i>From here, example javascript commands which can be entered into the console input will be in <span style=\"color: #0000ff;\">blue<\/span><\/i><\/p>\n<p>Examples:<\/p>\n<pre><span style=\"color: #0000ff;\">500\/499<\/span><\/pre>\n<pre>= 1.002004008016032<\/pre>\n<pre><span style=\"color: #0000ff;\">math.sin(math.PI\/3)<\/span><\/pre>\n<pre>= 0.8660254037844386<\/pre>\n<h3><b>Defining Variables<\/b><\/h3>\n<p>Variables are defined just as in standard javascript.<\/p>\n<pre><span style=\"color: #0000ff;\">var a = 2 + 2;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var name = \"NK Cells\";<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var population = name + a;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">console.log(\"Population name is \" + population);<\/span><\/pre>\n<h3><b>Navigating the workspace<\/b><\/h3>\n<p>Every script starts with a workspace object defined at the global scope.\u00a0 From this you have access to the workspace&#8217;s samples and groups.<\/p>\n<pre><span style=\"color: #0000ff;\">var samples = workspace.samples;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">samples.length<\/span><\/pre>\n<pre>= number of samples in the workspace<\/pre>\n<pre><span style=\"color: #0000ff;\">samples.names<\/span><\/pre>\n<pre>= names of all samples in workspace<\/pre>\n<pre><span style=\"color: #0000ff;\">workspace.groups.names<\/span><\/pre>\n<pre>= names of all sample groups in workspace<\/pre>\n<pre><span style=\"color: #0000ff;\">var exp1Group = workspace.groups['Exp. 1']<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">exp1Group.samples.names<\/span><\/pre>\n<pre>= names of all samples in the group Exp. 1<\/pre>\n<pre><span style=\"color: #0000ff;\">var myGroup = workspace.groups.create(\"My Group\");<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">myGroup.add(workspace.samples.slice(0, 10, 2));<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var sample1 = exp1Group.samples[0];<\/span><\/pre>\n<pre>= first sample in the Exp. 1 group<\/pre>\n<pre><span style=\"color: #0000ff;\">var sampleA1 = exp1Group.samples['A1.fcs'];<\/span><\/pre>\n<pre>= the sample named A1.fcs in the Exp. 1 group<\/pre>\n<h3><b>Inline Help &amp; Object Documentation<\/b><\/h3>\n<p>To view functions and properties for FlowJo objects within the scripting console, simply access their &#8216;help&#8217; property<\/p>\n<p>Examples:<\/p>\n<pre><span style=\"color: #0000ff;\">workspace.help<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var samples = workspace.samples;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">samples.help<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var firstSample = samples[0];<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">firstSample.help<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">math.help<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">stats.help<\/span><\/pre>\n<h3><b>Sample Keywords<\/b><\/h3>\n<p>The script editor has the ability to read and write keywords within the sample.<\/p>\n<p><i>Note that FlowJo never modifies the original sample.\u00a0 Any keyword modifications will only be remembered within the context of the current workspace.<\/i><\/p>\n<pre><span style=\"color: #0000ff;\">var fil = sampleA1.keywords['$FIL'];<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var withoutExt = fil.substring(0, fil.lastIndexOf('.'));<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">sampleA1.keywords['Custom Keyword'] = withoutExt;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">sample.keywords[\u2018PATIENT_ID\u2019] = filename.substring(4, 8);<\/span><\/pre>\n<h3>Sample Parameters<\/h3>\n<p>A sample&#8217;s parameter info is stored under its parameter property.<\/p>\n<pre><span style=\"color: #0000ff;\">var sample = workspace.samples[0];<\/span><\/pre>\n<pre><span style=\"color: #000000;\">\u00a0= select first sample in workspace<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">sample.parameters.names<\/span><\/pre>\n<pre><span style=\"color: #000000;\">= names of all parameter within the sample<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var fscParam = sample.parameters[1];<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">\u00a0<span style=\"color: #000000;\">= the sample's first parameter (here we are presuming it to be FSC). \u00a0Note\nthat parameter indices are one-based, in order to correspond with the FCS parameter keywords.<\/span><\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">fscParam.name<\/span><\/pre>\n<pre><span style=\"color: #000000;\">= \"FSC\"<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">fscParam.help<\/span><\/pre>\n<pre><span style=\"color: #000000;\">\u00a0= available properties for the parameter<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">fscParam.stain<\/span><\/pre>\n<pre><span style=\"color: #000000;\">\u00a0= The parameter's secondary or 'stain' name. \u00a0For FSC on most cytometers, this will be empty.<\/span><\/pre>\n<h3>Traversing The Gating Tree<\/h3>\n<p>The Script Editor&#8217;s syntax is optimized to select corresponding populations across many samples simultaneously. \u00a0Previously we have used the workspace.samples property to access samples loaded into the current workspace. \u00a0To the Script Editor, this is a special type of list which supports searching and filtering of the entire gating tree. \u00a0Populations are referenced as paths, much like files on a computer&#8217;s hard drive.<\/p>\n<p>Examples:<\/p>\n<pre><span style=\"color: #0000ff;\">var samples = workspace.samples;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var live = samples.populations(\"Live\");<\/span><\/pre>\n<pre>\u00a0= all first level Live cell gates in the workspace<\/pre>\n<pre><span style=\"color: #0000ff;\">var tcells = samples.populations(\"Live\/Singlets\/Lymphocytes\/T Cells\");<\/span><\/pre>\n<pre>\u00a0= all T Cells gates in the workspace, assuming a gating tree like that in the FlowJo Advanced Tutorial<\/pre>\n<p>Wild cards may be used to avoid specifying sections of the search path. \u00a0For example to find all T Cells gates childed to Lymphocytes gates, you could use the deep-wildcard operator &#8220;**&#8221;<\/p>\n<pre><span style=\"color: #0000ff;\">var tcells = samples.populations(\"**\/Lymphocytes\/T Cells\");<\/span><\/pre>\n<p>While the &#8220;**&#8221; (double-star) operator may search any number of levels deep to find populations, the &#8220;*&#8221; (single-star) operator is used as a wild for a single gating level. \u00a0It is useful to select all direct children of a population:<\/p>\n<pre><span style=\"color: #0000ff;\">var tcellsSubgates = tcells.populations(\"*\");<\/span><\/pre>\n<pre>\u00a0= All direct child gates of the previously selected T Cells populations.<\/pre>\n<p>Note that all the previous search techniques are available for individual samples or sample groups within the workspace.<\/p>\n<pre><span style=\"color: #0000ff;\">var sample1 = workspace.samples[0];<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var tcells = sample1.populations(\"**\/Lymphocytes\/T Cells\");<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">var exp1Samples = workspace.groups['Exp. 1'].samples;<\/span><\/pre>\n<pre>\u00a0= All samples within the Exp. 1 group<\/pre>\n<pre><span style=\"color: #0000ff;\">var exp1Lymphs = exp1Samples.populations(\"**\/Lymphocytes\");<\/span><\/pre>\n<h4><b>Annotate based on statistical characteristics:<\/b><\/h4>\n<pre><span style=\"color: #0000ff;\">var important = median_CD4 &gt; threshold &amp;&amp; cd4_pos.count &gt; 200;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">sample.keywords[\u2018IMPORTANT\u2019] = important;<\/span><\/pre>\n<h3><\/h3>\n<h3><b>Creating Gates<\/b><\/h3>\n<p>Statistic-Tethered Gating: Allows you to bind a gate to statistics\u00a0from another population,\u00a0from another sample, or\u00a0from an aggregate across many samples.<\/p>\n<pre><span style=\"color: #0000ff;\">var rectangle_gate = population.gating.rectangle(\u201cTethered\u201d, \u201cPE-A\u201d, \u201cFITC-A\u201d);<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">rectangle_gate.minX = mean_median_PE * 1.5;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">rectangle_gate.maxX = percentile_80_PE + 100;<\/span><\/pre>\n<p><span style=\"color: #0000ff;\">\u00a0<\/span><\/p>\n<pre><span style=\"color: #0000ff;\">rectangle_gate.minY = control_FITC_neg_thresh;<\/span><\/pre>\n<pre><span style=\"color: #0000ff;\">rectangle_gate.maxY = median_PECy55 * 2;\n\n<\/span><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>The Script Editor is a platform that allows the user to program their own routines into FlowJo using JavaScript without having to worry about compiling a program. The script editor allows low-level access to FlowJo, and uses JavaScript to execute some powerful operations. \u00a0 The editor can be found by default in the Cytometry band&#8230;  <a href=\"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/\" class=\"more-link\" title=\"Read Script Editor\">Read more &raquo;<\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"parent":13313,"menu_order":44,"comment_status":"closed","ping_status":"closed","template":"home-flowjo.php","meta":{"footnotes":""},"tags":[20],"class_list":["post-17700","page","type-page","status-publish","hentry","tag-flowjo"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Script Editor - FlowJo Documentation<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Script Editor - FlowJo Documentation\" \/>\n<meta property=\"og:description\" content=\"The Script Editor is a platform that allows the user to program their own routines into FlowJo using JavaScript without having to worry about compiling a program. The script editor allows low-level access to FlowJo, and uses JavaScript to execute some powerful operations. \u00a0 The editor can be found by default in the Cytometry band... Read more &raquo;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/\" \/>\n<meta property=\"og:site_name\" content=\"FlowJo Documentation\" \/>\n<meta property=\"article:modified_time\" content=\"2021-08-18T20:25:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/\",\"url\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/\",\"name\":\"Script Editor - FlowJo Documentation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/docs.flowjo.com\\\/wp-content\\\/uploads\\\/2021\\\/08\\\/ScriptEd.png\",\"datePublished\":\"2013-08-09T20:31:04+00:00\",\"dateModified\":\"2021-08-18T20:25:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/#primaryimage\",\"url\":\"https:\\\/\\\/docs.flowjo.com\\\/wp-content\\\/uploads\\\/2021\\\/08\\\/ScriptEd.png\",\"contentUrl\":\"https:\\\/\\\/docs.flowjo.com\\\/wp-content\\\/uploads\\\/2021\\\/08\\\/ScriptEd.png\",\"width\":632,\"height\":171},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/script-editor\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/docs.flowjo.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"FlowJo v10 Documentation\",\"item\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Advanced Features\",\"item\":\"https:\\\/\\\/docs.flowjo.com\\\/flowjo\\\/advanced-features\\\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Script Editor\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/docs.flowjo.com\\\/#website\",\"url\":\"https:\\\/\\\/docs.flowjo.com\\\/\",\"name\":\"FlowJo Documentation\",\"description\":\"Documentation for FlowJo, SeqGeq, and FlowJo Portal\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/docs.flowjo.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Script Editor - FlowJo Documentation","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/","og_locale":"en_US","og_type":"article","og_title":"Script Editor - FlowJo Documentation","og_description":"The Script Editor is a platform that allows the user to program their own routines into FlowJo using JavaScript without having to worry about compiling a program. The script editor allows low-level access to FlowJo, and uses JavaScript to execute some powerful operations. \u00a0 The editor can be found by default in the Cytometry band... Read more &raquo;","og_url":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/","og_site_name":"FlowJo Documentation","article_modified_time":"2021-08-18T20:25:11+00:00","og_image":[{"url":"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/","url":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/","name":"Script Editor - FlowJo Documentation","isPartOf":{"@id":"https:\/\/docs.flowjo.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/#primaryimage"},"image":{"@id":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/#primaryimage"},"thumbnailUrl":"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd.png","datePublished":"2013-08-09T20:31:04+00:00","dateModified":"2021-08-18T20:25:11+00:00","breadcrumb":{"@id":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/#primaryimage","url":"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd.png","contentUrl":"https:\/\/docs.flowjo.com\/wp-content\/uploads\/2021\/08\/ScriptEd.png","width":632,"height":171},{"@type":"BreadcrumbList","@id":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/script-editor\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/docs.flowjo.com\/"},{"@type":"ListItem","position":2,"name":"FlowJo v10 Documentation","item":"https:\/\/docs.flowjo.com\/flowjo\/"},{"@type":"ListItem","position":3,"name":"Advanced Features","item":"https:\/\/docs.flowjo.com\/flowjo\/advanced-features\/"},{"@type":"ListItem","position":4,"name":"Script Editor"}]},{"@type":"WebSite","@id":"https:\/\/docs.flowjo.com\/#website","url":"https:\/\/docs.flowjo.com\/","name":"FlowJo Documentation","description":"Documentation for FlowJo, SeqGeq, and FlowJo Portal","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/docs.flowjo.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/pages\/17700","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/comments?post=17700"}],"version-history":[{"count":2,"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/pages\/17700\/revisions"}],"predecessor-version":[{"id":28808,"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/pages\/17700\/revisions\/28808"}],"up":[{"embeddable":true,"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/pages\/13313"}],"wp:attachment":[{"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/media?parent=17700"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/docs.flowjo.com\/wp-json\/wp\/v2\/tags?post=17700"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}