Important Change Notice for NeonCRM API – Search Methods

As part of a major structural overhaul to NeonCRM’s core reporting system, we will be changing the names of a significant number of reporting columns and criteria. These changes will likely require modifications to your application’s code. This change necessarily affects the following API methods:

  • listAccounts
  • listDonations
  • listEvents
  • listMemberships

We have written a complete description of the changes and outlined the necessary steps to keep your application functioning.

Click here to view the migration guide.

Specific Upgrade Information

  • The upgrade will take place January 17, 2015 from 12:00AM to 3:00AM CST.
  • The Current Field Names will function until the upgrade.
  • The New Field Names will function after the upgrade.
  • There will be no overlap period where both names will work.


Many names of columns and criteria will change. Field names, as they existed prior to this update, will cease to work. Developers must update their code to use the new field names.

New API Features – September 2014

As part of our core feature release this month, we have included some new capabilities for existing API methods.

Trigger system emails for transactions

You can now automatically trigger system emails when you create new records through the API. This works on the following API methods:

Implementation is simple; just add a parameter to your request:


These emails follow whatever behavior has been configured in NeonCRM’s system settings. In order for these to work, you must configure these system emails. The settings are shared with the system emails used by NeonCRM’s built-in online forms. If you create any email conditions in NeonCRM, they will apply here as well.

Event Summary

The Event Summary field is now available for use as an output column in the listEvents method.

New API Features – April 2014

We’re excited to announce the release of some new updates to the API. The following features will be made available on Monday, April 21:

New Methods

We have added the following new methods:


Query the server to find accounts that have been recently updated.


This is a simplified and faster version of listAccounts. It has pre-set output columns and a limited set of search criteria.


This is an account search that is similar to the search box in the upper-right corner of NeonCRM. It searches for accounts by Name, Email, or Account ID.


Retrieve a single activity record.


Query the server to find activities that have been recently updated.


Retrieve the account ID of the current system user.

Adjustments to Existing Methods

We have made modifications to the following methods:


Added a new parameter (primaryContactAccountId) to RetrieveOrganizationAccount request.


The reporting logic behind this request has changed. In the previous logic, if an individual and their linked organization both have accounts and the search result returns both account, the response lists them as one entry instead of two. With the new logic, two separate accounts will be returned.

The search criteria and output columns have also been updated.

API Available for Production Environment

For the past few months, API access has been limited to sandbox environments. After testing for several months, we have gained a lot of useful feedback from our user community. This feedback has been very helpful in allowing us to fine-tune our API. We have fixed many bugs, improved performance and reliability, and expanded the available features.

We have decided to allow the API functionality to be enabled on live NeonCRM environments. Our API remains in beta, so all usage on a production environment is at your own risk.

If you would like us to enable your system, please send a request to projects (at) z2systems.com. The following guide explains how to create API keys in a production environment: https://z2.zendesk.com/entries/21818899

API Beta 1.3

On Tuesday, February 26 we will be releasing many new API features to all Beta systems.

These include calls for:

  • Donations
  • Pledges
  • Events
  • Memberships
  • Online Store

The documentation for these features is being added to this site. We will announce when they are available for use.

API Beta 1.2

We have released these updates to the API:

New features:

[authenticateUser] – Added a method for authenticating system users.

  • Added an request which accepts username/password in the request, and returns accountId, systemUserId, and other user information.

This update will fix numerous issues:

  • [LinkIndividualToOrganization/RemoveIndividualFromOrganization] now uses the Contact ID instead of Account ID.
    • [listOrganizationContacts] – We have added the isPrimaryContact flag as an output field. This indicates the primary contact for this organization account.
    • [linkIndividualToOrganization/removeIndividualFromOrganization] – We changed individualAccountId to individualContactId.
    • [linkIndividualToOrganziation] – Added error code [10035][Given contact is a primary company contact which cannot be set to non-primary] .
  • [LinkIndividualToOrganization] add address objects in the schema.
    • Now, when linking an individual to organization, address/department/title/organizationEmail can be provided within the request.
    • [linkIndividualToOrganization] – Removed error code[10035][Given account ID already linked.]. Now, the same contact ID can be relinked with different address/department/title/organizationEmail information.
    • If an address is not provided in the request, the organization’s address will be copied, assuming the organization has an existing address.
  • [RetrieveIndividualAccount] – Resolved an issue causing the Zip+4 to display as “null”.
  • [UpdateIndividual/OrganizationAccount] – Resolved a primary address validation error.
    • Primary Address validation now applies to the addresses sent from the request in addition to the existing addresses in the database.
  • [ListAccounts] – Resolved NullPointException Error
    • NullPointerException occurred when a system field could not be found .
  • [UpdateOrganizationAccount] – Resolved error that prevented the updating of an organization account when the organization does not have a primary contact.
    • Added error code [10078][ Organization account primary contact ID is required.] This displays if the given organization account has a primary contact, and the ID has not been provided.
  • [UpdateIndividual/OrganizationAccount] – Resolved issues related to empty addresses.
    • For individual accounts, an empty primary address will be created when the account is created without a primary address supplied in a request. This empty address will be removed if the account updates this account contact with a new primary address.
    • For organization accounts, the system can now only accept one company address for the primary contact.  Added a validation error [10075][ Only one address allowed for organization primary contact.]
    • The fields [isPrimaryAddress] and [confirmDelete] are no longer used for organization accounts because the system always maintains a single primary company address.
    • When updating organization accounts, if the address ID is not provided, the existing primary address will be updated (if it exists), otherwise a new one will be created.
  • [listActivities] – This now sorts activities in descending order of most recent, by Start Date.
  • [Add/Update/RemoveAddress] – This no longer applies to organization accounts.
    • Added the validation error [10139][ Account ID is invalid, cannot add/update/remove address for organization account. Please refer to linkIndividualToOrganizationAccount and removeIndividualFromOrganizationAccount requests.]
    • Added accountId in the [removeAddress] request to check that the given addressId belongs to the given individual account id.
  • [AddActivity] – Resolved system errors.
  • Resolved general type conversion issue.
    • Now returns HTTP 400 “Bad request” with an error message “Invalid format for input String {String name}”
  • [UpdateOrganizationAccount] – If the primary contact is linked to an individual Account, then only the address and company contact information can be updated.
    • Added the validation error 10079 [Current primary contact for this organization belongs to an individual account, thus the contact information cannot be updated, please refer to the UpdateIndividualAccount request. Invalid field:{field name}]

API Beta Release

Today we are announcing the beginning of beta testing for our API. This long-anticipated project comes at a time of unprecedented opportunity for collaboration and sharing of data between applications. As NeonCRM grows, we are proud to welcome you as partners in the evolution of our platform.

What can I do with the API?

Right now, we’re starting simple. The first API, now available to testers, is the Accounts API. You can use this to retrieve, create, edit, and delete account data. You can also use this to manage households, link individuals to organizations, and view an account’s activities. We are actively developing APIs to work with Donations, Memberships, Events, and the Online Store. These will be released to beta testers at a later time.


To try to make everyone happy, we developed our APIs for both RESTful and SOAP protocols. The REST APIs can return both JSON and XML formats, and uses an API key for authentication.

Beta Testing

The beta testing period will last for an undetermined amount of time. We want to put the API through its paces before we make it available for all clients. As a beta tester, you will receive the following:

  • A duplicate “sandbox” version of your existing NeonCRM system.
  • An API key which provides access to API requests.

At this point in time, you cannot use API features on your “live” NeonCRM system. Also, we will periodically solicit feedback from beta testers.


The API is not supported in the same way as the rest of NeonCRM. Please do not submit tickets, live chat requests, or phone calls to the support team. Instead, please direct all inquries to the API Forum. We encourage you to contribute to our community of experienced users.

Let’s get started!

Organizations that have requested beta testing access will receive an email with their API key and their testing sandbox. To become a beta tester, please email us at projects [at] z2systems.com. Your request may take 2-3 business days to process.