Search Fields
We support three types of search fields: text fields, multiple value fields, and range fields.
Text Fields
Text Fields can be searched using 5 operators: is, is not, starts with, ends with, and contains. Here is an example searching for customer email on a transaction.
search_results = Braintree::Transaction.search do |search|
search.customer_email.is "john.smith@example.com"
end
search_results = Braintree::Transaction.search do |search|
search.customer_email.is_not "john.smith@example.com"
end
search_results = Braintree::Transaction.search do |search|
search.customer_email.starts_with "john.smith"
end
search_results = Braintree::Transaction.search do |search|
search.customer_email.ends_with "example.com"
end
search_results = Braintree::Transaction.search do |search|
search.customer_email.contains "smith"
end
Multiple Value Fields
Search fields that accept multiple values support two operators: is and in.
search_results = Braintree::Transaction.search do |search|
search.status.is Transaction::Status::Authorized
end
search_results = Braintree::Transaction.search do |search|
search.status.in(
Transaction::Status::Authorized,
Transaction::Status::SubmittedForSettlement
)
end
Range Fields
Ranges support four operators: is, between, >=, and <=. Between is inclusive.
search_results = Braintree::Transaction.search do |search|
search.amount.is("15.00")
end
search_results = Braintree::Transaction.search do |search|
search.amount >= "10.00"
end
search_results = Braintree::Transaction.search do |search|
search.amount <= "20.00"
end
search_results = Braintree::Transaction.search do |search|
search.amount.between("10.00", "20.00")
end