<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.open-xchange.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Diego.giron</id>
	<title>Open-Xchange - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.open-xchange.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Diego.giron"/>
	<link rel="alternate" type="text/html" href="https://wiki.open-xchange.com/wiki/index.php?title=Special:Contributions/Diego.giron"/>
	<updated>2026-09-25T00:28:09Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://wiki.open-xchange.com/wiki/index.php?title=Import_contacts&amp;diff=20852</id>
		<title>Import contacts</title>
		<link rel="alternate" type="text/html" href="https://wiki.open-xchange.com/wiki/index.php?title=Import_contacts&amp;diff=20852"/>
		<updated>2015-10-30T08:13:06Z</updated>

		<summary type="html">&lt;p&gt;Diego.giron: Because of security reasons each login variation will reject requests containing the parameter &amp;quot;password&amp;quot; within the URL query (starting with 7.8.0). &amp;quot;SESSION&amp;quot; has been modify to remove &amp;quot;password&amp;quot; from the HTTP call&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an example shell script which allows importing contacts from a local file into a certain Open-Xchange contacts folder.&lt;br /&gt;
&lt;br /&gt;
The folderid is a bit tricky to find out. One way is to discover the HTTP API requests from the UI for example by using Firebug.&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 &lt;br /&gt;
 SERVER=http://your.ox.server&lt;br /&gt;
 USER=user@context&lt;br /&gt;
 PASSWORD=userspw&lt;br /&gt;
 &lt;br /&gt;
 USAGE () {&lt;br /&gt;
         echo &amp;quot;usage $0 filename folderid&amp;quot;&lt;br /&gt;
         exit 1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 test &amp;quot;$1&amp;quot; = &amp;quot;--help&amp;quot; &amp;amp;&amp;amp; USAGE&lt;br /&gt;
 test &amp;quot;$#&amp;quot; = &amp;quot;2&amp;quot; || USAGE&lt;br /&gt;
 &lt;br /&gt;
 IMP_FILE=&amp;quot;$1&amp;quot;&lt;br /&gt;
 FOLDER=&amp;quot;$2&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 CURL=&#039;curl -b cookies -c cookies -H Expect: -s -L --location-trusted -k&#039;&lt;br /&gt;
 &lt;br /&gt;
 SESSION=`$CURL --data &amp;quot;name=$USER&amp;amp;password=$PASSWORD&amp;quot; &amp;quot;$SERVER/ajax/login?action=login&amp;quot; \&lt;br /&gt;
         |sed &#039;s/^.*session\&amp;quot;:\&amp;quot;\([0-9A-Fa-f]*\)\&amp;quot;.*$/\1/&#039;`&lt;br /&gt;
 echo $SESSION | grep &amp;quot;error&amp;quot; &amp;amp;&amp;amp; echo &amp;quot;got no session, login failed&amp;quot; &amp;amp;&amp;amp; exit 1&lt;br /&gt;
 &lt;br /&gt;
 echo&lt;br /&gt;
 FOLDER_NAME=`$CURL &amp;quot;$SERVER/ajax/folders?action=get&amp;amp;session=$SESSION&amp;amp;id=$FOLDER&amp;quot; | sed &#039; s/^.*title&amp;quot;:&amp;quot;//&#039; | sed &#039;s/&amp;quot;.*$//&#039;`&lt;br /&gt;
 echo &amp;quot;going to clear Folder $FOLDER name: $FOLDER_NAME. Proceed (y/n)?&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 read a&lt;br /&gt;
 if [ &amp;quot;$a&amp;quot; = y -o &amp;quot;$a&amp;quot; = Y ]&lt;br /&gt;
 then&lt;br /&gt;
         echo clearing Folder: $FOLDER&lt;br /&gt;
         DELETEREQ=$($CURL -X PUT  --data-binary &amp;quot;[\&amp;quot;$FOLDER\&amp;quot;]&amp;quot; --header &amp;quot;Content-Type: text/javascript&amp;quot; &amp;quot;$SERVER/ajax/folders?action=clear&amp;amp;session=$SESSION&amp;quot;)&lt;br /&gt;
         if [ ! &amp;quot;$DELETEREQ&amp;quot; = &#039;{&amp;quot;data&amp;quot;:[]}&#039; ]&lt;br /&gt;
         then&lt;br /&gt;
                 echo &amp;quot;could not clear folder, error:&amp;quot;&lt;br /&gt;
                 echo $DELETEREQ&lt;br /&gt;
                 echo aborted&lt;br /&gt;
                 exit 1&lt;br /&gt;
         else&lt;br /&gt;
                 echo&lt;br /&gt;
                 echo importing file $IMP_FILE to Folder $FOLDER&lt;br /&gt;
                 $CURL -X POST --form cs_import_type=CSV -F &amp;quot;file=@$IMP_FILE;type=text/csv;name=file&amp;quot; &amp;quot;$SERVER/ajax/import?action=CSV&amp;amp;session=$SESSION&amp;amp;folder=$FOLDER&amp;quot;&lt;br /&gt;
                 echo&lt;br /&gt;
                 echo done&lt;br /&gt;
         fi&lt;br /&gt;
 else&lt;br /&gt;
         echo &amp;quot;aborted&amp;quot;&lt;br /&gt;
         exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: OX6]]&lt;br /&gt;
[[Category: Command line]]&lt;/div&gt;</summary>
		<author><name>Diego.giron</name></author>
	</entry>
	<entry>
		<id>https://wiki.open-xchange.com/wiki/index.php?title=Import_contacts&amp;diff=20851</id>
		<title>Import contacts</title>
		<link rel="alternate" type="text/html" href="https://wiki.open-xchange.com/wiki/index.php?title=Import_contacts&amp;diff=20851"/>
		<updated>2015-10-30T08:11:06Z</updated>

		<summary type="html">&lt;p&gt;Diego.giron: Undo revision 20850 by Diego.giron (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an example shell script which allows importing contacts from a local file into a certain Open-Xchange contacts folder.&lt;br /&gt;
&lt;br /&gt;
The folderid is a bit tricky to find out. One way is to discover the HTTP API requests from the UI for example by using Firebug.&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 &lt;br /&gt;
 SERVER=http://your.ox.server&lt;br /&gt;
 USER=user@context&lt;br /&gt;
 PASSWORD=userspw&lt;br /&gt;
 &lt;br /&gt;
 USAGE () {&lt;br /&gt;
         echo &amp;quot;usage $0 filename folderid&amp;quot;&lt;br /&gt;
         exit 1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 test &amp;quot;$1&amp;quot; = &amp;quot;--help&amp;quot; &amp;amp;&amp;amp; USAGE&lt;br /&gt;
 test &amp;quot;$#&amp;quot; = &amp;quot;2&amp;quot; || USAGE&lt;br /&gt;
 &lt;br /&gt;
 IMP_FILE=&amp;quot;$1&amp;quot;&lt;br /&gt;
 FOLDER=&amp;quot;$2&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 CURL=&#039;curl -b cookies -c cookies -H Expect: -s -L --location-trusted -k&#039;&lt;br /&gt;
 &lt;br /&gt;
 SESSION=`$CURL &amp;quot;$SERVER/ajax/login?action=login&amp;amp;name=$USER&amp;amp;password=$PASSWORD&amp;quot; \&lt;br /&gt;
         |sed &#039;s/^.*session\&amp;quot;:\&amp;quot;\([0-9A-Fa-f]*\)\&amp;quot;.*$/\1/&#039;`&lt;br /&gt;
 echo $SESSION | grep &amp;quot;error&amp;quot; &amp;amp;&amp;amp; echo &amp;quot;got no session, login failed&amp;quot; &amp;amp;&amp;amp; exit 1&lt;br /&gt;
 &lt;br /&gt;
 echo&lt;br /&gt;
 FOLDER_NAME=`$CURL &amp;quot;$SERVER/ajax/folders?action=get&amp;amp;session=$SESSION&amp;amp;id=$FOLDER&amp;quot; | sed &#039; s/^.*title&amp;quot;:&amp;quot;//&#039; | sed &#039;s/&amp;quot;.*$//&#039;`&lt;br /&gt;
 echo &amp;quot;going to clear Folder $FOLDER name: $FOLDER_NAME. Proceed (y/n)?&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 read a&lt;br /&gt;
 if [ &amp;quot;$a&amp;quot; = y -o &amp;quot;$a&amp;quot; = Y ]&lt;br /&gt;
 then&lt;br /&gt;
         echo clearing Folder: $FOLDER&lt;br /&gt;
         DELETEREQ=$($CURL -X PUT  --data-binary &amp;quot;[\&amp;quot;$FOLDER\&amp;quot;]&amp;quot; --header &amp;quot;Content-Type: text/javascript&amp;quot; &amp;quot;$SERVER/ajax/folders?action=clear&amp;amp;session=$SESSION&amp;quot;)&lt;br /&gt;
         if [ ! &amp;quot;$DELETEREQ&amp;quot; = &#039;{&amp;quot;data&amp;quot;:[]}&#039; ]&lt;br /&gt;
         then&lt;br /&gt;
                 echo &amp;quot;could not clear folder, error:&amp;quot;&lt;br /&gt;
                 echo $DELETEREQ&lt;br /&gt;
                 echo aborted&lt;br /&gt;
                 exit 1&lt;br /&gt;
         else&lt;br /&gt;
                 echo&lt;br /&gt;
                 echo importing file $IMP_FILE to Folder $FOLDER&lt;br /&gt;
                 $CURL -X POST --form cs_import_type=CSV -F &amp;quot;file=@$IMP_FILE;type=text/csv;name=file&amp;quot; &amp;quot;$SERVER/ajax/import?action=CSV&amp;amp;session=$SESSION&amp;amp;folder=$FOLDER&amp;quot;&lt;br /&gt;
                 echo&lt;br /&gt;
                 echo done&lt;br /&gt;
         fi&lt;br /&gt;
 else&lt;br /&gt;
         echo &amp;quot;aborted&amp;quot;&lt;br /&gt;
         exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: OX6]]&lt;br /&gt;
[[Category: Command line]]&lt;/div&gt;</summary>
		<author><name>Diego.giron</name></author>
	</entry>
	<entry>
		<id>https://wiki.open-xchange.com/wiki/index.php?title=Import_contacts&amp;diff=20850</id>
		<title>Import contacts</title>
		<link rel="alternate" type="text/html" href="https://wiki.open-xchange.com/wiki/index.php?title=Import_contacts&amp;diff=20850"/>
		<updated>2015-10-30T08:10:31Z</updated>

		<summary type="html">&lt;p&gt;Diego.giron: Modify session call to remove &amp;quot;password&amp;quot; from URL.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is an example shell script which allows importing contacts from a local file into a certain Open-Xchange contacts folder.&lt;br /&gt;
&lt;br /&gt;
The folderid is a bit tricky to find out. One way is to discover the HTTP API requests from the UI for example by using Firebug.&lt;br /&gt;
&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 &lt;br /&gt;
 SERVER=http://your.ox.server&lt;br /&gt;
 USER=user@context&lt;br /&gt;
 PASSWORD=userspw&lt;br /&gt;
 &lt;br /&gt;
 USAGE () {&lt;br /&gt;
         echo &amp;quot;usage $0 filename folderid&amp;quot;&lt;br /&gt;
         exit 1&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 test &amp;quot;$1&amp;quot; = &amp;quot;--help&amp;quot; &amp;amp;&amp;amp; USAGE&lt;br /&gt;
 test &amp;quot;$#&amp;quot; = &amp;quot;2&amp;quot; || USAGE&lt;br /&gt;
 &lt;br /&gt;
 IMP_FILE=&amp;quot;$1&amp;quot;&lt;br /&gt;
 FOLDER=&amp;quot;$2&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 CURL=&#039;curl -b cookies -c cookies -H Expect: -s -L --location-trusted -k&#039;&lt;br /&gt;
 &lt;br /&gt;
# Because of security reasons each login variation will reject requests containing the parameter &amp;quot;password&amp;quot; &lt;br /&gt;
# within the URL query (starting with 7.8.0).&lt;br /&gt;
SESSION=`$CURL --data &amp;quot;name=$USER&amp;amp;password=$PASSWORD&amp;quot; &amp;quot;$SERVER/ajax/login?action=login&amp;quot; \&lt;br /&gt;
         |sed &#039;s/^.*session\&amp;quot;:\&amp;quot;\([0-9A-Fa-f]*\)\&amp;quot;.*$/\1/&#039;`&lt;br /&gt;
 echo $SESSION | grep &amp;quot;error&amp;quot; &amp;amp;&amp;amp; echo &amp;quot;got no session, login failed&amp;quot; &amp;amp;&amp;amp; exit 1&lt;br /&gt;
 &lt;br /&gt;
 echo&lt;br /&gt;
 FOLDER_NAME=`$CURL &amp;quot;$SERVER/ajax/folders?action=get&amp;amp;session=$SESSION&amp;amp;id=$FOLDER&amp;quot; | sed &#039; s/^.*title&amp;quot;:&amp;quot;//&#039; | sed &#039;s/&amp;quot;.*$//&#039;`&lt;br /&gt;
 echo &amp;quot;going to clear Folder $FOLDER name: $FOLDER_NAME. Proceed (y/n)?&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 read a&lt;br /&gt;
 if [ &amp;quot;$a&amp;quot; = y -o &amp;quot;$a&amp;quot; = Y ]&lt;br /&gt;
 then&lt;br /&gt;
         echo clearing Folder: $FOLDER&lt;br /&gt;
         DELETEREQ=$($CURL -X PUT  --data-binary &amp;quot;[\&amp;quot;$FOLDER\&amp;quot;]&amp;quot; --header &amp;quot;Content-Type: text/javascript&amp;quot; &amp;quot;$SERVER/ajax/folders?action=clear&amp;amp;session=$SESSION&amp;quot;)&lt;br /&gt;
         if [ ! &amp;quot;$DELETEREQ&amp;quot; = &#039;{&amp;quot;data&amp;quot;:[]}&#039; ]&lt;br /&gt;
         then&lt;br /&gt;
                 echo &amp;quot;could not clear folder, error:&amp;quot;&lt;br /&gt;
                 echo $DELETEREQ&lt;br /&gt;
                 echo aborted&lt;br /&gt;
                 exit 1&lt;br /&gt;
         else&lt;br /&gt;
                 echo&lt;br /&gt;
                 echo importing file $IMP_FILE to Folder $FOLDER&lt;br /&gt;
                 $CURL -X POST --form cs_import_type=CSV -F &amp;quot;file=@$IMP_FILE;type=text/csv;name=file&amp;quot; &amp;quot;$SERVER/ajax/import?action=CSV&amp;amp;session=$SESSION&amp;amp;folder=$FOLDER&amp;quot;&lt;br /&gt;
                 echo&lt;br /&gt;
                 echo done&lt;br /&gt;
         fi&lt;br /&gt;
 else&lt;br /&gt;
         echo &amp;quot;aborted&amp;quot;&lt;br /&gt;
         exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: OX6]]&lt;br /&gt;
[[Category: Command line]]&lt;/div&gt;</summary>
		<author><name>Diego.giron</name></author>
	</entry>
</feed>