<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.opentaps.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Krybalko</id>
	<title>Opentaps Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.opentaps.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Krybalko"/>
	<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=Special:Contributions/Krybalko"/>
	<updated>2026-05-15T15:30:20Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.32.1</generator>
	<entry>
		<id>https://docs.opentaps.org/docs/index.php?title=CRM-2_Administrative_API&amp;diff=7544</id>
		<title>CRM-2 Administrative API</title>
		<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=CRM-2_Administrative_API&amp;diff=7544"/>
		<updated>2014-08-07T12:29:00Z</updated>

		<summary type="html">&lt;p&gt;Krybalko: /* Twitter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Administrative API is used to manage your domain.  &lt;br /&gt;
&lt;br /&gt;
The API calls follow the general RESTful pattern of [[CRM-2 API]].  The base URL is &amp;lt;tt&amp;gt;https://crm2.opentaps.com/admin/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To access the admin API, your user must have the '''DOMAIN_CONF''' permission.&lt;br /&gt;
&lt;br /&gt;
For all requests the clientDomain and authToken parameters are required.&lt;br /&gt;
&lt;br /&gt;
Here are the additional resources available:&lt;br /&gt;
&lt;br /&gt;
=== Reset (Permanent) Token ===&lt;br /&gt;
&lt;br /&gt;
Method: POST&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;/admin/reset-token&amp;lt;/tt&amp;gt;&lt;br /&gt;
Parameter: &lt;br /&gt;
* Current permanent auth token for your user&lt;br /&gt;
* Client domain&lt;br /&gt;
&lt;br /&gt;
This API expires (deletes) the current permanent auth token, generates a new one, and returns it to you as the result.  After this, you must use the new one to access the system.  The API will validate that the token you've supplied is for a user of your domain.&lt;br /&gt;
&lt;br /&gt;
=== Users ===&lt;br /&gt;
&lt;br /&gt;
Add or remove users for a Contact&lt;br /&gt;
&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;/admin/user&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameters:&lt;br /&gt;
* contactId : unique ID of your Contact&lt;br /&gt;
* userId: id of user.  For Gmail, use full email (someone@gmail.com).  For twitter, use username without the initial @ (someone)&lt;br /&gt;
* userIdType: type of your user id.  Use GOOGLE_APPS for Gmail or TWITTER_LOGIN for Twitter.&lt;br /&gt;
&lt;br /&gt;
Add a new User and Contact at the same time with&lt;br /&gt;
&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;/admin/user-contact&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameters:&lt;br /&gt;
* firstName&lt;br /&gt;
* lastName&lt;br /&gt;
* companyName&lt;br /&gt;
* emailAddress&lt;br /&gt;
* userId&lt;br /&gt;
* userIdType: Same as above&lt;br /&gt;
&lt;br /&gt;
=== User Permissions ===&lt;br /&gt;
&lt;br /&gt;
Add or remove a security permission from a user&lt;br /&gt;
&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;/admin/user-permission&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Parameters:&lt;br /&gt;
* userId: unique id of the user&lt;br /&gt;
* permission: Permission string&lt;br /&gt;
&lt;br /&gt;
If the permission you are trying to add is not a valid permission, you will get an error message with a list of the valid permissions.&lt;br /&gt;
&lt;br /&gt;
=== Email Notifications ===&lt;br /&gt;
&lt;br /&gt;
Configure the email account to use when sending notification emails for your domain.  You must also configure the same email as an email to poll (see below) separately so that the responses are also registered.  Otherwise, response to your notification emails will be ignored.&lt;br /&gt;
&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;/admin/email-notifications&amp;lt;/tt&amp;gt; (ie, &amp;lt;tt&amp;gt;https://crm2.opentaps.com/admin/email-notifications&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Parameters are the ones for your mail server, ie &amp;lt;tt&amp;gt;mailUser&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailPass&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailStoreProtocol&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailHost&amp;lt;/tt&amp;gt;.  For gmail, use &amp;lt;tt&amp;gt;smtps&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;smtp.gmail.com&amp;lt;/tt&amp;gt; for protocol and host.&lt;br /&gt;
&lt;br /&gt;
For all requests the clientDomain and authToken parameters are required.&lt;br /&gt;
&lt;br /&gt;
* The method POST and PUT is used to SET the email notification account settings.&lt;br /&gt;
* The method DELETE is used to REMOVE the email notification account settings.&lt;br /&gt;
* The method GET is used to GET the current email notification account settings.&lt;br /&gt;
&lt;br /&gt;
Note: the password is encrypted in the DB and won't be returned in the replies.&lt;br /&gt;
&lt;br /&gt;
=== Emails To Poll ===&lt;br /&gt;
&lt;br /&gt;
Configures the emails to be polled for your domain.  &lt;br /&gt;
&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;/admin/email-to-poll&amp;lt;/tt&amp;gt; (ie, &amp;lt;tt&amp;gt;https://crm2.opentaps.com/admin/email-to-poll&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Parameters are the ones for your mail server, ie &amp;lt;tt&amp;gt;mailUser&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailPass&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailStoreProtocol&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailHost&amp;lt;/tt&amp;gt;.  For gmail, use &amp;lt;tt&amp;gt;gimap&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;pop.googlemail.com&amp;lt;/tt&amp;gt; for protocol and host.&lt;br /&gt;
&lt;br /&gt;
* The method POST is used to ADD email to poll.&lt;br /&gt;
* The method PUT is used to UPDATE email to poll.&lt;br /&gt;
* The method DELETE is used to REMOVE email to poll.&lt;br /&gt;
* The method GET is used to GET list of the emails to poll.&lt;br /&gt;
&lt;br /&gt;
For POST, PUT and DELETE, mailUser is required.&lt;br /&gt;
&lt;br /&gt;
Note: the password is encrypted in the DB and won't be returned in the replies.&lt;br /&gt;
&lt;br /&gt;
=== Valid Activity Types ===&lt;br /&gt;
&lt;br /&gt;
Configures the valid activity types for your domain's application settings.  Activity types are always capitalized and automatically capitalized when you add them.&lt;br /&gt;
&lt;br /&gt;
URL: &amp;lt;tt&amp;gt;https://crm2.opentaps.com/admin/activity-type&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* POST adds a single activityType&lt;br /&gt;
* GET returns a list of valid activity types&lt;br /&gt;
* DELETE removes a single activityType&lt;br /&gt;
&lt;br /&gt;
=== Twitter ===&lt;br /&gt;
&lt;br /&gt;
Configures the twitter users which opentaps CRM2 uses to interact with twitter.  Normally this is done automatically when somebody logs into twitter.com once from the login page, but you can control it more explicitly using this API to add a user or remove one that you don't want to use.&lt;br /&gt;
&lt;br /&gt;
URL: &amp;lt;tt&amp;gt;https://crm2.opentaps.com/admin/twitter&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* POST adds a new user to use with twitter.  Parameters are &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;userId&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;token&amp;lt;/tt&amp;gt;, and &amp;lt;tt&amp;gt;tokenSecret&amp;lt;/tt&amp;gt;&lt;br /&gt;
* GET returns a list of users to use with twitter &lt;br /&gt;
* DELETE removes a user.  Parameter is &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt;&lt;/div&gt;</summary>
		<author><name>Krybalko</name></author>
		
	</entry>
	<entry>
		<id>https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7425</id>
		<title>Set up CRM2</title>
		<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7425"/>
		<updated>2013-12-17T12:34:27Z</updated>

		<summary type="html">&lt;p&gt;Krybalko: /* Setting up the WordPress Contact Form */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
=== First Steps ===&lt;br /&gt;
&lt;br /&gt;
This shows you how to set up opentaps CRM2&lt;br /&gt;
&lt;br /&gt;
The first step is to request an account with an API key by [http://www.opentaps.org/Contact contacting us].&lt;br /&gt;
&lt;br /&gt;
Once you have received your permanent authorization token key by email, reset it &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ curl -X POST 'https://crm2.opentaps.com/admin/reset-token' -d clientDomain= ${yourDomain} -d authToken=${authToken}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Keep your new auth token secret!'''  Someone with this token will be able to access everything in your account.&lt;br /&gt;
&lt;br /&gt;
=== Setting Up with opentaps in the Cloud ===&lt;br /&gt;
&lt;br /&gt;
If you are using an [http://www.opentaps.org/cloud opentaps in the Cloud] Amazon EC2 instance from an instance which says &amp;quot;crm2&amp;quot;, then CRM2 is already pre-loaded for you.  Simply edit the file &amp;lt;tt&amp;gt;hot-deploy/crm2/config/crm2.properties&amp;lt;/tt&amp;gt; and populate your settings:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
crm2.activities.widget.baseOpentapsUrl = https://your-ec2-instance-ip.compute-1.amazonaws.com&lt;br /&gt;
crm2.activities.widget.authToken = your-auth-token-value&lt;br /&gt;
crm2.activities.widget.clientDomain = your-domain.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, restart opentaps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ /etc/init.d/opentaps restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You should see an activities widget similar to those from [[Tour of CRM2]] in your CRM system.&lt;br /&gt;
&lt;br /&gt;
=== Setting up for opentaps 1.x ===&lt;br /&gt;
&lt;br /&gt;
If you are using an older AMI which does not have &amp;quot;crm2&amp;quot; in its name, or if you are running opentaps on your own server, then you will have to get the code for crm2.  You can check it out of our subversion repository into the opentaps/ directory (opentaps 1.5) or hot-deploy directory (earlier versions) like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ svn co svn://svn.opentaps.org/opentaps_crm2/opentaps_1.5/crm2 crm2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Out of the box, this code works for opentaps 1.5.  If you are using opentaps 1.4 or earlier versions,  you will need to replace some of the lines which are for opentaps 1.5 with those for earlier versions.  Edit the file &amp;lt;tt&amp;gt;src/com/opentaps/crm2/ContactExportService.java&amp;lt;/tt&amp;gt; and search for &amp;quot;opentaps 1.5&amp;quot; and follow the instructions to comment out and uncomment the appropriate lines.  &lt;br /&gt;
&lt;br /&gt;
Next, compile the new module with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ ant&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the new module to either opentaps/component-load.xml or hot-deploy/component-load.xml file with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    &amp;lt;load-component component-location=&amp;quot;crm2&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have the [http://www.opentaps.org/services-support/professional-edition opentaps Professional Edition], just uncomment lines between&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;!-- Uncomment to use Crm2 application&lt;br /&gt;
and&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
in the following files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
opentaps/crmsfa/webapp/crmsfa/orders/viewOrder.ftl&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/accounts/AccountsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/contacts/ContactsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/leads/LeadsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/orders/OrdersScreens.xml&lt;br /&gt;
opentaps/opentaps-common/webapp/common/WEB-INF/common-controller.xml&lt;br /&gt;
opentaps/purchasing/webapp/purchasing/order/viewOrder.ftl&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/order/OrderScreens.xml&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/supplier/SupplierScreens.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If not, download the [http://sourceforge.net/projects/opentaps/files/opentaps%202/CRM2/opentaps-1.5-crm2.patch/download patch file for crm2] and apply it to your opentaps.&lt;br /&gt;
&lt;br /&gt;
Finally, follow the instructions above to configure your &amp;lt;tt&amp;gt;crm2/config/crm2.properties&amp;lt;/tt&amp;gt; file and restart opentaps.&lt;br /&gt;
&lt;br /&gt;
=== Exporting Users to CRM2 ===&lt;br /&gt;
&lt;br /&gt;
To export your users to CRM2, run the service &amp;lt;tt&amp;gt;exportContactsToCrm2&amp;lt;/tt&amp;gt; with the following parameters:&lt;br /&gt;
* authToken&lt;br /&gt;
* clientDomain&lt;br /&gt;
* exportContactUrl: ​https://crm2.opentaps.com/crm2/contact-import&lt;br /&gt;
* exportUserUrl: ​https://crm2.opentaps.com/crm2/users&lt;br /&gt;
&lt;br /&gt;
This services uses entity sync. Newly created or updated contacts will be added. If the party has a user_login which has _VIEW permission to CRMSFA or FINANCIALS (through any of his user_login_security_permission_group), his user_login_id will be imported as a user_id without password&lt;br /&gt;
&lt;br /&gt;
This service can be set up to run regularly as a job, so new users are automatically added to CRM2.&lt;br /&gt;
&lt;br /&gt;
=== Setting up the WordPress Contact Form ===&lt;br /&gt;
&lt;br /&gt;
* Copy opentaps_crm2/wordpress/template-crm2-contact.php to your wordpress curent theme directory&lt;br /&gt;
* Modify template-crm2-contact.php to set up your authToken and clientDomain&lt;br /&gt;
* Create new wordpress Page with template-crm2-contact.php template&lt;/div&gt;</summary>
		<author><name>Krybalko</name></author>
		
	</entry>
	<entry>
		<id>https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7424</id>
		<title>Set up CRM2</title>
		<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7424"/>
		<updated>2013-12-17T12:33:20Z</updated>

		<summary type="html">&lt;p&gt;Krybalko: /* Setting up the WordPress Contact Form */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
=== First Steps ===&lt;br /&gt;
&lt;br /&gt;
This shows you how to set up opentaps CRM2&lt;br /&gt;
&lt;br /&gt;
The first step is to request an account with an API key by [http://www.opentaps.org/Contact contacting us].&lt;br /&gt;
&lt;br /&gt;
Once you have received your permanent authorization token key by email, reset it &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ curl -X POST 'https://crm2.opentaps.com/admin/reset-token' -d clientDomain= ${yourDomain} -d authToken=${authToken}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Keep your new auth token secret!'''  Someone with this token will be able to access everything in your account.&lt;br /&gt;
&lt;br /&gt;
=== Setting Up with opentaps in the Cloud ===&lt;br /&gt;
&lt;br /&gt;
If you are using an [http://www.opentaps.org/cloud opentaps in the Cloud] Amazon EC2 instance from an instance which says &amp;quot;crm2&amp;quot;, then CRM2 is already pre-loaded for you.  Simply edit the file &amp;lt;tt&amp;gt;hot-deploy/crm2/config/crm2.properties&amp;lt;/tt&amp;gt; and populate your settings:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
crm2.activities.widget.baseOpentapsUrl = https://your-ec2-instance-ip.compute-1.amazonaws.com&lt;br /&gt;
crm2.activities.widget.authToken = your-auth-token-value&lt;br /&gt;
crm2.activities.widget.clientDomain = your-domain.com&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, restart opentaps&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ /etc/init.d/opentaps restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You should see an activities widget similar to those from [[Tour of CRM2]] in your CRM system.&lt;br /&gt;
&lt;br /&gt;
=== Setting up for opentaps 1.x ===&lt;br /&gt;
&lt;br /&gt;
If you are using an older AMI which does not have &amp;quot;crm2&amp;quot; in its name, or if you are running opentaps on your own server, then you will have to get the code for crm2.  You can check it out of our subversion repository into the opentaps/ directory (opentaps 1.5) or hot-deploy directory (earlier versions) like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ svn co svn://svn.opentaps.org/opentaps_crm2/opentaps_1.5/crm2 crm2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Out of the box, this code works for opentaps 1.5.  If you are using opentaps 1.4 or earlier versions,  you will need to replace some of the lines which are for opentaps 1.5 with those for earlier versions.  Edit the file &amp;lt;tt&amp;gt;src/com/opentaps/crm2/ContactExportService.java&amp;lt;/tt&amp;gt; and search for &amp;quot;opentaps 1.5&amp;quot; and follow the instructions to comment out and uncomment the appropriate lines.  &lt;br /&gt;
&lt;br /&gt;
Next, compile the new module with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ ant&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the new module to either opentaps/component-load.xml or hot-deploy/component-load.xml file with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    &amp;lt;load-component component-location=&amp;quot;crm2&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have the [http://www.opentaps.org/services-support/professional-edition opentaps Professional Edition], just uncomment lines between&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;!-- Uncomment to use Crm2 application&lt;br /&gt;
and&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
in the following files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
opentaps/crmsfa/webapp/crmsfa/orders/viewOrder.ftl&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/accounts/AccountsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/contacts/ContactsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/leads/LeadsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/orders/OrdersScreens.xml&lt;br /&gt;
opentaps/opentaps-common/webapp/common/WEB-INF/common-controller.xml&lt;br /&gt;
opentaps/purchasing/webapp/purchasing/order/viewOrder.ftl&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/order/OrderScreens.xml&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/supplier/SupplierScreens.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If not, download the [http://sourceforge.net/projects/opentaps/files/opentaps%202/CRM2/opentaps-1.5-crm2.patch/download patch file for crm2] and apply it to your opentaps.&lt;br /&gt;
&lt;br /&gt;
Finally, follow the instructions above to configure your &amp;lt;tt&amp;gt;crm2/config/crm2.properties&amp;lt;/tt&amp;gt; file and restart opentaps.&lt;br /&gt;
&lt;br /&gt;
=== Exporting Users to CRM2 ===&lt;br /&gt;
&lt;br /&gt;
To export your users to CRM2, run the service &amp;lt;tt&amp;gt;exportContactsToCrm2&amp;lt;/tt&amp;gt; with the following parameters:&lt;br /&gt;
* authToken&lt;br /&gt;
* clientDomain&lt;br /&gt;
* exportContactUrl: ​https://crm2.opentaps.com/crm2/contact-import&lt;br /&gt;
* exportUserUrl: ​https://crm2.opentaps.com/crm2/users&lt;br /&gt;
&lt;br /&gt;
This services uses entity sync. Newly created or updated contacts will be added. If the party has a user_login which has _VIEW permission to CRMSFA or FINANCIALS (through any of his user_login_security_permission_group), his user_login_id will be imported as a user_id without password&lt;br /&gt;
&lt;br /&gt;
This service can be set up to run regularly as a job, so new users are automatically added to CRM2.&lt;br /&gt;
&lt;br /&gt;
=== Setting up the WordPress Contact Form ===&lt;br /&gt;
 * Copy opentaps_crm2/wordpress/template-crm2-contact.php to your wordpress curent theme directory&lt;br /&gt;
 * Modify template-crm2-contact.php to set up your authToken and clientDomain&lt;br /&gt;
 * Create new wordpress Page with template-crm2-contact.php template&lt;/div&gt;</summary>
		<author><name>Krybalko</name></author>
		
	</entry>
	<entry>
		<id>https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7385</id>
		<title>Set up CRM2</title>
		<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7385"/>
		<updated>2013-08-22T12:56:14Z</updated>

		<summary type="html">&lt;p&gt;Krybalko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
=== First Steps ===&lt;br /&gt;
&lt;br /&gt;
This shows you how to set up opentaps CRM2&lt;br /&gt;
&lt;br /&gt;
The first step is to request an account with an API key by [http://www.opentaps.org/Contact contacting us].&lt;br /&gt;
&lt;br /&gt;
Once you have received your permanent authorization token key by email, reset it &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ curl -X POST 'https://crm2.opentaps.com/admin/reset-token' -d clientDomain= ${yourDomain} -d authToken=${authToken}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Keep your new auth token secret!'''  Someone with this token will be able to access everything in your account.&lt;br /&gt;
&lt;br /&gt;
=== Setting up for opentaps 1.x ===&lt;br /&gt;
&lt;br /&gt;
The first step is to get the code for opentaps 1.x which uses crm2.  You can check it out of our subversion repository into the opentaps/ directory (opentaps 1.5) or hot-deploy directory (earlier versions) like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ svn co svn://svn.opentaps.org/opentaps_crm2/opentaps_1.5/crm2 crm2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Out of the box, this code works for opentaps 1.5.  If you are using opentaps 1.4 or earlier versions,  you will need to replace some of the lines which are for opentaps 1.5 with those for earlier versions.  Edit the file &amp;lt;tt&amp;gt;src/com/opentaps/crm2/ContactExportService.java&amp;lt;/tt&amp;gt; and search for &amp;quot;opentaps 1.5&amp;quot; and follow the instructions to comment out and uncomment the appropriate lines.  &lt;br /&gt;
&lt;br /&gt;
Next, compile the new module with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ ant&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the new module to either opentaps/component-load.xml or hot-deploy/component-load.xml file with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    &amp;lt;load-component component-location=&amp;quot;crm2&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Uncomment lines between&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;!-- Uncomment to use Crm2 application&lt;br /&gt;
and&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
in the following files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
opentaps/crmsfa/webapp/crmsfa/orders/viewOrder.ftl&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/accounts/AccountsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/contacts/ContactsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/leads/LeadsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/orders/OrdersScreens.xml&lt;br /&gt;
opentaps/opentaps-common/webapp/common/WEB-INF/common-controller.xml&lt;br /&gt;
opentaps/purchasing/webapp/purchasing/order/viewOrder.ftl&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/order/OrderScreens.xml&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/supplier/SupplierScreens.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Krybalko</name></author>
		
	</entry>
	<entry>
		<id>https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7384</id>
		<title>Set up CRM2</title>
		<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=Set_up_CRM2&amp;diff=7384"/>
		<updated>2013-08-22T12:55:41Z</updated>

		<summary type="html">&lt;p&gt;Krybalko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
=== First Steps ===&lt;br /&gt;
&lt;br /&gt;
This shows you how to set up opentaps CRM2&lt;br /&gt;
&lt;br /&gt;
The first step is to request an account with an API key by [http://www.opentaps.org/Contact contacting us].&lt;br /&gt;
&lt;br /&gt;
Once you have received your permanent authorization token key by email, reset it &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ curl -X POST 'https://crm2.opentaps.com/admin/reset-token' -d clientDomain= ${yourDomain} -d authToken=${authToken}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Keep your new auth token secret!'''  Someone with this token will be able to access everything in your account.&lt;br /&gt;
&lt;br /&gt;
=== Setting up for opentaps 1.x ===&lt;br /&gt;
&lt;br /&gt;
The first step is to get the code for opentaps 1.x which uses crm2.  You can check it out of our subversion repository into the opentaps/ directory (opentaps 1.5) or hot-deploy directory (earlier versions) like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ svn co svn://svn.opentaps.org/opentaps_crm2/opentaps_1.5/crm2 crm2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Out of the box, this code works for opentaps 1.5.  If you are using opentaps 1.4 or earlier versions,  you will need to replace some of the lines which are for opentaps 1.5 with those for earlier versions.  Edit the file &amp;lt;tt&amp;gt;src/com/opentaps/crm2/ContactExportService.java&amp;lt;/tt&amp;gt; and search for &amp;quot;opentaps 1.5&amp;quot; and follow the instructions to comment out and uncomment the appropriate lines.  &lt;br /&gt;
&lt;br /&gt;
Next, compile the new module with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ ant&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the new module to either opentaps/component-load.xml or hot-deploy/component-load.xml file with&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    &amp;lt;load-component component-location=&amp;quot;crm2&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Uncomment lines between&lt;br /&gt;
&amp;lt;!-- Uncomment to use Crm2 application&lt;br /&gt;
and&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
in the following files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
opentaps/crmsfa/webapp/crmsfa/orders/viewOrder.ftl&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/accounts/AccountsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/contacts/ContactsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/leads/LeadsScreens.xml&lt;br /&gt;
opentaps/crmsfa/widget/crmsfa/screens/orders/OrdersScreens.xml&lt;br /&gt;
opentaps/opentaps-common/webapp/common/WEB-INF/common-controller.xml&lt;br /&gt;
opentaps/purchasing/webapp/purchasing/order/viewOrder.ftl&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/order/OrderScreens.xml&lt;br /&gt;
opentaps/purchasing/widget/purchasing/screens/supplier/SupplierScreens.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Krybalko</name></author>
		
	</entry>
	<entry>
		<id>https://docs.opentaps.org/docs/index.php?title=CRM-2_Administrative_API&amp;diff=7351</id>
		<title>CRM-2 Administrative API</title>
		<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=CRM-2_Administrative_API&amp;diff=7351"/>
		<updated>2013-04-03T11:11:37Z</updated>

		<summary type="html">&lt;p&gt;Krybalko: /* Emails To Poll */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Administrative API is used to manage your domain.  &lt;br /&gt;
&lt;br /&gt;
The API calls follow the general RESTful pattern of [[CRM-2 API]].  The base URL is &amp;lt;tt&amp;gt;http://crm-2-url/admin/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To access the admin API, your user must have the '''DOMAIN_CONF''' permission.&lt;br /&gt;
&lt;br /&gt;
Here are the additional resources available:&lt;br /&gt;
&lt;br /&gt;
=== Emails To Poll ===&lt;br /&gt;
&lt;br /&gt;
Configures the emails to be polled for your domain.  &lt;br /&gt;
&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;email-to-poll&amp;lt;/tt&amp;gt; (ie, &amp;lt;tt&amp;gt;http://crm-2-url/admin/email-to-poll&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Parameters are the ones for your mail server, ie &amp;lt;tt&amp;gt;mailUser&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailPass&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailStoreProtocol&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailHost&amp;lt;/tt&amp;gt;.  For gmail, use &amp;lt;tt&amp;gt;imaps&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;pop.google.com&amp;lt;/tt&amp;gt; for protocol and host.&lt;br /&gt;
&lt;br /&gt;
For all requests the clientDomain and authToken parameters are required.&lt;br /&gt;
&lt;br /&gt;
 * The method POST is used to ADD email to poll.&lt;br /&gt;
 * The method PUT is used to UPDATE email to poll.&lt;br /&gt;
 * The method DELETE is used to REMOVE email to poll.&lt;br /&gt;
 * The method GET is used to GET list of the emails to poll.&lt;br /&gt;
&lt;br /&gt;
For POST, PUT and DELETE, mailUser is required.&lt;/div&gt;</summary>
		<author><name>Krybalko</name></author>
		
	</entry>
	<entry>
		<id>https://docs.opentaps.org/docs/index.php?title=CRM-2_Administrative_API&amp;diff=7350</id>
		<title>CRM-2 Administrative API</title>
		<link rel="alternate" type="text/html" href="https://docs.opentaps.org/docs/index.php?title=CRM-2_Administrative_API&amp;diff=7350"/>
		<updated>2013-04-03T11:09:54Z</updated>

		<summary type="html">&lt;p&gt;Krybalko: /* Emails To Poll */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Administrative API is used to manage your domain.  &lt;br /&gt;
&lt;br /&gt;
The API calls follow the general RESTful pattern of [[CRM-2 API]].  The base URL is &amp;lt;tt&amp;gt;http://crm-2-url/admin/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To access the admin API, your user must have the '''DOMAIN_CONF''' permission.&lt;br /&gt;
&lt;br /&gt;
Here are the additional resources available:&lt;br /&gt;
&lt;br /&gt;
=== Emails To Poll ===&lt;br /&gt;
&lt;br /&gt;
Configures the emails to be polled for your domain.  &lt;br /&gt;
&lt;br /&gt;
URL extension: &amp;lt;tt&amp;gt;email-to-poll&amp;lt;/tt&amp;gt; (ie, &amp;lt;tt&amp;gt;http://crm-2-url/admin/email-to-poll&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Parameters are the ones for your mail server, ie &amp;lt;tt&amp;gt;mailUser&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailPass&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailStoreProtocol&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;mailHost&amp;lt;/tt&amp;gt;.  For gmail, use &amp;lt;tt&amp;gt;imaps&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;pop.google.com&amp;lt;/tt&amp;gt; for protocol and host.&lt;br /&gt;
&lt;br /&gt;
For all requests the clientDomain and authToken parameters are required.&lt;br /&gt;
&lt;br /&gt;
The method POST is used to ADD email to poll.&lt;br /&gt;
The method PUT is used to UPDATE email to poll.&lt;br /&gt;
The method DELETE is used to REMOVE email to poll.&lt;br /&gt;
The method GET is used to GET list of the emails to poll.&lt;br /&gt;
&lt;br /&gt;
For POST, PUT and DELETE, mailUser is required.&lt;/div&gt;</summary>
		<author><name>Krybalko</name></author>
		
	</entry>
</feed>