<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Jun 2, 2017 at 4:09 PM, Juan Hernández <span dir="ltr">&lt;<a href="mailto:jhernand@redhat.com" target="_blank">jhernand@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 06/02/2017 03:56 PM, Bruno Rodriguez wrote:<br>
&gt; Hello everyone,<br>
&gt;<br>
&gt; I have some scripts that create VMs, which are in perl using libcurl and<br>
&gt; oVirt REST API. They work quite fine but I&#39;m experiencing something unusual.<br>
&gt;<br>
&gt; After I create the machine (let&#39;s suppose it&#39;s called <a href="http://server.pic.es" rel="noreferrer" target="_blank">server.pic.es</a><br>
</span>&gt; &lt;<a href="http://server.pic.es" rel="noreferrer" target="_blank">http://server.pic.es</a>&gt;) with UUID 123abc I post the following REST API<br>
<span class="">&gt; call to https://... /vms/123abc/nics<br>
&gt;<br>
&gt;                 &lt;nic&gt;<br>
&gt;                 &lt;name&gt;server.pic.es_nic1&lt;/<wbr>name&gt;<br>
&gt;                 &lt;interface&gt;virtio&lt;/interface&gt;<br>
&gt;                 &lt;network&gt;&lt;name&gt;VLANXXX&lt;/name&gt;&lt;<wbr>/network&gt;<br>
&gt;                 &lt;/nic&gt;<br>
&gt;<br>
&gt; The NIC is created and attached to the VM but it&#39;s network field is<br>
&gt; empty, not in the VLANXXX. I don&#39;t know if I&#39;m missing something but<br>
&gt; this worked flawlessly with 3.6.9 REST API.<br>
&gt;<br>
&gt; Some people could say: &quot;it&#39;s because you&#39;re using Perl&quot;. Yup, that&#39;s<br>
&gt; probably a mental issue of mine and I should visit a doctor about using<br>
&gt; it, but it doesn&#39;t work even using a fancy REST browser extension to<br>
&gt; send requests (ARC for chromium), anyways the REST reply is a &quot;201:<br>
&gt; Created&quot; that looks OK...<br>
&gt;<br>
&gt; Any idea or suggestion will be welcome. Thanks in advance!<br>
&gt;<br>
<br>
</span>It is not because of Perl :-) .<br>
<br>
In version 4 of the API it is mandatory to specify the NIC profile, as<br>
the network may have multiple profiles. So you need to find the<br>
identifier of that NIC profile and then send a request like this:<br>
<span class=""><br>
  &lt;nic&gt;<br>
    &lt;name&gt;server.pic.es_nic1&lt;/<wbr>name&gt;<br>
    &lt;interface&gt;virtio&lt;/interface&gt;<br>
</span>    &lt;vnic_profile id=&quot;the_id_of_the_profile&quot;/&gt;<br>
  &lt;/nic&gt;<br>
<br>
You can find the identifiers of the profiles like this:<br>
<br>
  GET /ovirt-engine/api/networks/<wbr>the_identifier_of_the_network/<wbr>vnicprofildes<br>
<br>
If you want the old behavior, the behavior of version 3 of the API, you<br>
can just add to your request the &#39;Version: 3&#39; HTTP header. But note that<br>
version 3 of the API is deprecated since version 4.0 of the engine, and<br>
it will be removed with version 4.2 of the engine.<br>
</blockquote></div><div><br></div><div>Thank you very much, I&#39;ll probably have to check that and add an &quot;if&quot; because I already was having problems with the APIv4 disks creation...</div><div><br></div><div>Thanks again!</div>
</div></div>