CMDI API Active Docs

API Base Path:


Search Options

IMPORTANT. Please note that calling uri w/o any Query-String option will retrieve entire list of People. So, please avoid this.

$top and $skip

You can use these parameters to perform paging.
This will skip the first 30 records and retrieve the next 10 records which means “Page 4” of “10 records in each page”


You can use this parameter to get the total # of records while you only retrieve a small subset of data.
eg.$inlinecount=allpages&$top=5&$filter=STATE eq 'VA’
This will return the first 5 records whose address are in Virginia, but will still include the “Total # of Records” in Virginia. You can retrieve the info from <m:count/> tag.


You can use this parameter to sort the result set.
eg.$inlinecount=allpages&$top=5&$orderby=LGIFTDTE desc
This will return the top 5 records in the descending order of “Last Gift Date”


You can use this parameter to specify filtering conditions. Filtering conditions can be applied to any fields in the result set.

ID (Field Name* = PID)
eg.$inlinecount=allpages&$top=1&$filter=PID eq 74001526
This will return a single record whose ID is 74001526

First Name (Field Name = FNAME) and Last Name (Field Name = LNAME)
eg.$inlinecount=allpages&$top=5&$filter=(FNAME eq 'John' and LNAME eq 'Smith')
This will return the first 5 records whose first name is “John” and last name is “Smith”

String Search “Starts With” option
This will return the first 5 records whose first name starts w/ “Jo”

City (Field Name = CITY) and State (Field Name = STATE)
eg.$inlinecount=allpages&$top=5&$filter=(CITY eq 'Falls Church' and STATE eq 'VA')
This will return the first 5 records who resides in “Falls Church, VA”

Highest Gift $ Amount (Field Name = HPC) and Most Recent Gift Date (Field Name = LGIFTDTE)
eg.$inlinecount=allpages&$top=5&$filter=(HPC ge 100 and LGIFTDTE ge datetime'2010-01-01')
This will return the first 5 records who has given a highest gift of more than $100 with the most recent gift since Jan 1, 2010.

*IMPORTANT. Please note that it’s case-sensitive for field name.

$filter Operator

• And: and
• Or: or
• Equal: eq
• Not Equal: ne
• Greater Than: gt
• Greater Than or Equal: ge
• Less Than: lt
• Less Than or Equal: le

Available Search Fields

Note: Quotes are only used sometimes. If you used quotes when they are not required, you will receive an error. If you do not include quotes when they are required, you will recieve an error.
Field NameField Value Sample (NOTE: Quotes are only sometimes used)Field Description
ADDR1'suite 500'Additional Address Line #1
ADDR2'no. 5'Additional Address Line #2
Address_'7704 Leesburg Pike Falls Church, VA 22043-1327'Full Address
CITY'Falls Church'Address - City
CPHONE7031231234Mobile Phone
CTD_AMT50.00“Cycle-to-Date” or “Year-to-Date” Total
CTD_LABEL'Cycle-To-Date'Use it as label for “CTD_AMT”
CUMTOT50.00“Cumulative Total”
EMAIL''Email Address
EMPLOYER'Smythe Inc'Employer
FGIFT100.0000First Gift Amount
FGIFTDTEdatetime'2010-01-01'First Gift Date
FNAME 'John'First name
FULLNAME_'Mr. Fred Smyther'Full Name
HPC100.0000Highest Gift Amount
HPCDTEdatetime'2010-01-01'Highest Gift Date
HPHONE7031231234Home Phone
LGIFT100.0000Most Recent Gift Amount
LGIFTDTEdatetime'2010-01-01'Most Recent Gift Date
LNAME'Smith'Last Name
MNAME'James'Middle Name
NOGIFTS4Total # of Gifts
PID74000000 or '74000000'CMDI ID
SPOUSENAME'Susan'Spouse Name
STATE'VA'Address - State
STREET'1234 Spring Road'Address - Street
TITLE'Sergeant'Professional Title
WPHONE7031231234Work Phone
ZIP '12345'Address - Zip