
{"id":7164,"date":"2021-12-01T17:54:15","date_gmt":"2021-12-01T17:54:15","guid":{"rendered":"https:\/\/rax-stg-wp-aws.com\/blogs\/how-to-call-and-export-environment-variables-in-aws-elastic-beanstalk\/"},"modified":"2026-11-03T19:28:08","modified_gmt":"2026-11-03T19:28:08","slug":"how-to-call-and-export-environment-variables-in-aws-elastic-beanstalk","status":"publish","type":"blogs","link":"https:\/\/www.rackspace.com\/de\/blogs\/how-to-call-and-export-environment-variables-in-aws-elastic-beanstalk\/","title":{"rendered":"How to call and export environment variables in AWS Elastic Beanstalk"},"content":{"rendered":"<p><em>Originally published in Apr 2017, at the Onica blog <a href=\"https:\/\/onica.com\/blog\/\">here<\/a>.<\/em><\/p>\n<p>The AWS Elastic Beanstalk documentation doesn&#8217;t tell you how to export environment variables or set top-level shell commands. We use variables for all kinds of things, so we decided to create a how-to guide for calling and viewing environment variables in *ebextension* config files.&nbsp;In this post, we dive into several ways to export environment variables, set top-level shell commands, and see how they show up under different circumstances.<\/p>\n<p><strong>Environment variables in ebextension config files: How to call and export in Elastic Beanstalk<\/strong><\/p>\n<p>Let&#8217;s take the following as our <em>.ebextensions\/00-variables.config<\/em>&nbsp;file. This is the basis for all of our tests:<\/p>\n<p><em>&nbsp; &nbsp; option_settings:<br \/>\n&nbsp; &nbsp; &#8220;aws: elasticbeanstalk:application:environent&#8221;:<br \/>\n&nbsp; &nbsp; envvar1: value1<\/em><\/p>\n<p><strong>commands and container_commands<\/strong><\/p>\n<p>`echo`output<\/p>\n<p>The first test is to see how we can use these two in the <strong>commands<\/strong>&nbsp;and <strong>container_commands&nbsp;<\/strong>sections of an ebextensions configuration file:<\/p>\n<p>&nbsp; &nbsp; commands:<br \/>\n<em>&nbsp; &nbsp; a00_command_line_test:<br \/>\n&nbsp; &nbsp; command: &#8220;echo $envvar1&gt; \/tmp\/a00_command_line_test&#8221;<\/em><\/p>\n<p>&nbsp; &nbsp; container commands:<br \/>\n&nbsp; <em>&nbsp; c00_command_line_test:<br \/>\n&nbsp; &nbsp; command: &#8220;echo $envvar1&gt; \/tmp\/c00_command_line_test&#8221;<\/em><\/p>\n<p><em>Here are the results:<\/em><\/p>\n<p><em>&nbsp; &nbsp; $ cat \/tmp\/a00_command_line_test<\/em><\/p>\n<p><em>&nbsp; &nbsp; $ cat \/tmp\/c00_command_line_test<br \/>\n&nbsp; &nbsp; value1<\/em><\/p>\n<p>The <strong>\/tmp\/a00_command_line_test<\/strong>&nbsp;file ends up being empty while the latter <strong>\/tmp\/c00_command_line_test&nbsp;<\/strong>file has the `value1` value in it as expected.<\/p>\n<p>You can&#8217;t see the <strong>envvar1<\/strong> variable when you use it in <strong>commands.<\/strong><\/p>\n<p>To force this you can use the <strong>env:<\/strong> option along with the <strong>command<\/strong>: option:<\/p>\n<p>&nbsp; &nbsp; commands:<br \/>\n&nbsp; &nbsp; &nbsp; <em>&nbsp; a00_command_line_test:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; command: &#8220;echo $envvar1 &gt; \/tmp\/a00_command_line_test&#8221;<\/em><\/p>\n<p>&nbsp; &nbsp; env:<\/p>\n<p>&nbsp; &nbsp; envvar1:&nbsp;<br \/>\n<em>&nbsp; &nbsp; &nbsp; &nbsp; &#8220;Fn::GetOptionSetting&#8221;:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; Namespace: &#8220;aws:elasticbeanstalk:application:environment&#8221;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; OptionName: envvar1<\/em><\/p>\n<p>`get-config` output<\/p>\n<p>The next test we conducted was simply to use the <em>get-config<\/em>&nbsp;command included in &nbsp;all Elastic Beanstalk AMIs:<\/p>\n<p>&nbsp;commands:<br \/>\n&nbsp; &nbsp;<em> &nbsp; a01_command_line_test:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; command: &#8220;\/opt\/elasticbeanstalk\/bin\/get-config environment&nbsp;<br \/>\n&nbsp; &nbsp; -k envvar1 &gt; \/tmp\/a01_command_line_test&#8221;<\/em><\/p>\n<p><em>&nbsp; &nbsp; container_commands:<br \/>\n&nbsp; &nbsp; &nbsp; c01_command_line_test:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; command: &#8220;\/opt\/elasticbeanstalk\/bin\/get-config environment&nbsp;<br \/>\n&nbsp; &nbsp; -k envvar1 &gt; \/tmp\/c01_command_line_test&#8221;<\/em><\/p>\n<p><em>&nbsp; &nbsp; $ cat \/tmp\/a01_command_line_test<br \/>\n&nbsp; &nbsp; value1$<\/em><\/p>\n<p><em>&nbsp; &nbsp; $ cat \/tmp\/c01_command_line_test<br \/>\n&nbsp; &nbsp; value1$<\/em><\/p>\n<p>Both files have the variable in it, but there\u2019s no newline. This is due to the `echo` command above natively adding a newline. We use this command in shell scripts as shown in the following example:<\/p>\n<p>&nbsp;somevar=$(\/opt\/elasticbeanstalk\/bin\/get-config environment -k envvar1)<\/p>\n<p><em>files<\/em><\/p>\n<p>The next tests we did were around the files directive. We created two files&amp;mdash;a bash script and a python script. Each one tests the ability to do the following actions:<\/p>\n<p>1. Simply just call an environment variable when run.<br \/>\n2. Use the `backtick + curly brace + Fn::GetOptionSetting` command embedded in the file.<br \/>\n3. Use the `get-config` command.<\/p>\n<p><strong>files:<\/strong><\/p>\n<p>&nbsp; &#8220;\/tmp\/00_file_test.sh&#8221;:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; content: |<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #!\/bin\/sh<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; env_method_1=$envvar1<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo $env_method_1<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;env_method_2=`{&#8220;Fn::GetOptionSetting&#8221;: {&#8220;Namespace&#8221;:&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;&#8220;aws:elasticbeanstalk:application:environment&#8221;, &#8220;OptionName&#8221;:&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#8220;envvar1&#8221;, &#8220;DefaultValue&#8221;: &#8220;my_default_value&#8221;}}`<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo $env_method_2<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;env_method_3=$(\/opt\/elasticbeanstalk\/bin\/get-config&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;environment -k envvar1)<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo $env_method_3<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;group: root<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;mode: &#8220;000755&#8221;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;owner: root<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;&#8220;\/tmp\/00_file_test.py&#8221;:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; content: |<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #!\/usr\/bin\/env python<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; import os, subprocess<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;try:&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;env_method_1 = os.environ[&#8216;envvar1&#8217;]<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; print(env_method_1)<br \/>\n&nbsp; &nbsp;&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;except:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(&#8220;Failed to get env_method_1&#8221;)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;try:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;env_method_2 = &#8220;`{&#8220;Fn::GetOptionSetting&#8221;: {&#8220;Namespace&#8221;:&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;&#8220;aws:elasticbeanstalk:application:environment&#8221;, &#8220;OptionName&#8221;:&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;&#8220;envvar1&#8221;, &#8220;DefaultValue&#8221;: &#8220;my_default_value&#8221;}}`&#8221;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;print(env_method_2)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;except:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(&#8220;Failed to get env_method_2&#8221;)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;try:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;env_method_3 = subprocess.check_output<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;([&#8216;\/opt\/elasticbeanstalk\/bin\/get-config&#8217;,&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;&#8216;environment&#8217;, &#8216;-k&#8217;, &#8216;envvar1&#8217;])<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; print(env_method_3)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;except:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(&#8220;Failed to get env_method_3&#8221;)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;group: root<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;mode: &#8220;000755&#8221;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;owner: root<\/p>\n<p>&nbsp;The result of the <strong>files <\/strong>directive are these files:<\/p>\n<p>&nbsp;$ cat \/tmp\/00_file_test.sh<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;#!\/bin\/sh<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;env_method_1=$envvar1<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;echo $env_method_1<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;env_method_2=value1<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;echo $env_method_2<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;env_method_3=$<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;(\/opt\/elasticbeanstalk\/bin\/get-config environment&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;-k envvar1)<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;echo $env_method_3<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;$ cat \/tmp\/00_file_test.py<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;#!\/usr\/bin\/env python<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;import os, subprocess<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;try:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;env_method_1 = os.environ[&#8216;envvar1&#8217;]<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(env_method_1)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;except:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(&#8220;Failed to get env_method_1&#8221;)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;try:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;env_method_2 = &#8220;value1&#8221;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(env_method_2)<br \/>\n&nbsp; &nbsp;&nbsp;<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;except:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(&#8220;Failed to get env_method_2&#8221;)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;try:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;env_method_3 = subprocess.check_output<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;([&#8216;\/opt\/elasticbeanstalk\/bin\/get-config&#8217;, &#8216;environment&#8217;,<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &#8216;-k&#8217;, &#8216;envvar1&#8217;])<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;print(env_method_3)<\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp;except:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;print(&#8220;Failed to get env_method_3&#8221;)<\/p>\n<p><strong>It is very important to notice how this affects scripts<\/strong><\/p>\n<p>In the second test on both the shell script and the Python script, the variable is already embedded into the script. You can run either script at any time under any user, and it always has the right variable there. The variable is set when you create the file at deploy time, rather than evaluating the variable when it runs.<\/p>\n<p>If the environment variable changes and this file is not updated&#8212;; say you remove it from the <strong>ebextentions&nbsp;<\/strong>configuration file, but another script or program can call it&#8212;; it will then have the wrong variable in it.<\/p>\n<p>The other two tests: <em>env_method_1<\/em>&nbsp;and <em>env_method_3<\/em>&nbsp;still gather the environment variable when they\u2019re run. Lets run them under <strong>commands<\/strong> and <strong>container_commands<\/strong>&nbsp;and check out the results:<\/p>\n<p>&nbsp; &nbsp; commands:<br \/>\n<em>&nbsp; &nbsp; &nbsp; &nbsp; a20_files_test:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; command: \/tmp\/00_file_test.sh &gt; \/tmp\/a20_files_test<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; a21_files_test:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; command: python \/tmp\/00_file_test.py &gt; \/tmp\/a21_files_test<\/em><\/p>\n<p><em>&nbsp; &nbsp; container_commands:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; c20_files_test:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; command: \/tmp\/00_file_test.sh &gt; \/tmp\/c20_files_test<\/em><\/p>\n<p><em>&nbsp; &nbsp; &nbsp; &nbsp; c21_files_test:<br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; command: python \/tmp\/00_file_test.py &gt; \/tmp\/c21_files_test<\/em><\/p>\n<p><em>&nbsp; &nbsp; $ cat \/tmp\/a20_files_test<\/em><\/p>\n<p><em>&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<\/em><br \/>\n&nbsp;<\/p>\n<p><em>&nbsp; $ cat \/tmp\/a21_files_test<br \/>\n&nbsp; &nbsp; Failed to get env_method_1<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<\/em><\/p>\n<p><em>&nbsp; &nbsp; $ cat \/tmp\/c20_files_test<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<\/em><\/p>\n<p><em>&nbsp; &nbsp; $ cat \/tmp\/c21_files_test<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<\/em><\/p>\n<p>As we can see from these results, the <strong>commands<\/strong>&nbsp;don&#8217;t seem to see the <em>$envvar1<\/em>&nbsp;variable in <em>env_method_1<\/em>&nbsp;of either script. Otherwise, all scripts pick up all other variables.<\/p>\n<p>Next, we run these as the standard <em>ec2-user<\/em>&nbsp;by using SecureShell (ssh):<\/p>\n<p>&nbsp; &nbsp;$ \/tmp\/00_file_test.sh<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; Permission denied @ rb_sysopen &#8211;&nbsp;<br \/>\n&nbsp; &nbsp; \/opt\/elasticbeanstalk\/deploy\/configuration\/containerconfiguration<\/p>\n<p>&nbsp; &nbsp; $ python \/tmp\/00_file_test.py<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; Permission denied @ rb_sysopen &#8211;&nbsp;<br \/>\n&nbsp; &nbsp; \/opt\/elasticbeanstalk\/deploy\/configuration\/containerconfiguration<\/p>\n<p>As you can see, you need to use `sudo` for the `get-config` command. Lets try that:<\/p>\n<p>&nbsp; &nbsp;$ sudo \/tmp\/00_file_test.sh<\/p>\n<p>&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<\/p>\n<p>&nbsp; &nbsp; $ sudo python \/tmp\/00_file_test.py<br \/>\n&nbsp; &nbsp; Failed to get env_method_1<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<br \/>\nRunning them as `root` with `sudo` yields effectively the same results as running under <strong>commands<\/strong>. However, if we run them under the webserver user via the actual webserver, we get the following result:<\/p>\n<p>&nbsp; &nbsp; $ cat \/var\/app\/current\/index.php<br \/>\n&nbsp; &nbsp; &lt;?php<br \/>\n&nbsp; &nbsp; echo `\/tmp\/00_file_test.sh`;<br \/>\n&nbsp; &nbsp; ?&gt;<br \/>\n&nbsp; &nbsp; $ curl localhost<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<\/p>\n<p>&nbsp; &nbsp; $ cat \/var\/app\/current\/index.php<br \/>\n&nbsp; &nbsp; &lt;?php<br \/>\n&nbsp; &nbsp; echo `\/usr\/bin\/python \/tmp\/00_file_test.py`;<br \/>\n&nbsp; &nbsp; ?&gt;<br \/>\n&nbsp; &nbsp; $ curl localhost<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; value1<br \/>\n&nbsp; &nbsp; Failed to get env_method_3<br \/>\n&nbsp; &nbsp; $<br \/>\n&nbsp;<\/p>\n<p>As you can see, the webserver has the environment variables set, but the `get-config` command is still limited to the `root` user. Therefore, it fails.<\/p>\n<p>Hopefully, these experiments shed some light on how Elastic Beanstalk uses environment variables. We see all tools as having their place and believe each of the preceding methods has appropriate use cases. It&#8217;s up to you to determine which method you want to use in which specific situation.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>How to call and export environment variables in AWS Elastic Beanstalk<\/p>\n","protected":false},"author":2,"featured_media":7166,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","format":"standard","meta":{"content-type":"","nid":"26288","content_type":"blog","created_by":"10130","authored_on":"2023-11-23T17:54:15+00:00","field_article_industries":"","tag_category":"Technical","field_blog_author_text":"by Rackspace Technology Staff","seo_description":"Learn various methods for calling and exporting environment variables in AWS Elastic Beanstalk, enabling flexibility in application deployment.\r\n","field_featured_image":"","insights_image":"\/wp-content\/uploads\/2026\/blog_technical_images\/26288-insights_image-aws-technical-blog-1-insights.png","field_partners":"","rxt_platforms":"Amazon Web Services (AWS)","product":"","publisheddate":"2021-12-01T17:54:15","rxt_solutions":"Onica by Rackspace Technology","opengraph_tag":"","x_tag":"","teaser_flag":"Technical Blog","seo_titile":"AWS Elastic Beanstalk Variables | Rackspace Technology","field_topics":"","field_slug":"how-to-call-and-export-environment-variables-in-aws-elastic-beanstalk","footnotes":""},"categories":[178],"tags":[204],"class_list":["post-7164","blogs","type-blogs","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-technical"],"_links":{"self":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs\/7164","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs"}],"about":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/types\/blogs"}],"author":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/comments?post=7164"}],"version-history":[{"count":1,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs\/7164\/revisions"}],"predecessor-version":[{"id":7165,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs\/7164\/revisions\/7165"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/media\/7166"}],"wp:attachment":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/media?parent=7164"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/categories?post=7164"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/tags?post=7164"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}