Querying records with logical filters
From DreamFactory
GET records in a SQL or NoSQL database with a filter string. Try these examples in the 'API Docs' tab of the DreamFactory Admin Console or from the command line with cURL.
Note that filter strings are simply SQL queries with ordinary SQL operators, including <, <=, >, >=, =, !=, or, and, like.
Contents
- 1 API Endpoint
- 2 API Docs Screenshot
- 3 Example - GET contact records whose last name starts with 'Y'
- 4 Example - GET contact records whose last name is 'Yang'
- 5 Example - GET contact records whose first name is 'Jon' and last name is 'Yang'
- 6 Example - GET contact records whose first name starts with 'J' and last name starts with 'Y'
- 7 Example - GET contact records whose Twitter handle contains 'jon' or whose Skype handle contains 'jon'
- 8 Example - GET contact records whose last name is not 'Yang'
API Endpoint
GET https://{url}/api/v2/{api_name}/_table/{table_name}?filter={filter_string}
API Docs Screenshot
Example - GET contact records whose last name starts with 'Y'
- Table name: contact
- Filter parameter in API call:
last_name like Y%
- Request URL:
https://foo.com/api/v2/db/_table/contact?filter=last_name%20like%20Y%25
Example - GET contact records whose last name is 'Yang'
- Table name: contact
- Filter parameter in API call:
last_name = Yang
- Request URL:
https://foo.com/api/v2/db/_table/contact?filter=last_name%20%3D%20Yang
Example - GET contact records whose first name is 'Jon' and last name is 'Yang'
- Table name: contact
- Filter parameter in API call:
(first_name = Jon) and (last_name = Yang)
- Request URL:
https://foo.com/api/v2/db/_table/contact?filter=(first_name%20%3D%20Jon)%20and%20(last_name%20%3D%20Yang)
Example - GET contact records whose first name starts with 'J' and last name starts with 'Y'
- Table name: contact
- Filter parameter in API call:
(first_name like J%) and (last_name like Y%)
- Request URL:
https://foo.com/api/v2/db/_table/contact?filter=(first_name%20like%20J%25)%20and%20(last_name%20like%20Y%25)
Example - GET contact records whose Twitter handle contains 'jon' or whose Skype handle contains 'jon'
- Table name: contact
- Filter parameter in API call:
(twitter like %jon%) or (skype like %jon%)
- Request URL:
https://foo.com/api/v2/db/_table/contact?filter=(twitter%20like%20%25jon%25)%20or%20(skype%20like%20%25jon%25)
Example - GET contact records whose last name is not 'Yang'
- Table name: contact
- Filter parameter in API call:
(last_name != Yang)
- Request URL:
https://foo.com/api/v2/db/_table/contact?filter=(last_name%20!=%20Yang)