Newer Version Available

This content describes an older version of this product. View Latest

NotifyForFields Set to Referenced

When you set the value of PushTopic.NotifyForFields to Referenced, a change to any field value in the record as long as that field is referenced in the query SELECT clause or WHERE clause causes the Streaming API matching logic to evaluate the record to determine if a notification should be generated.

If the PushTopic.NotifyForFields value is Referenced, then the PushTopic query must have a SELECT clause with at least one field other than ID or a WHERE clause with at least one field other than Id.

Event A notification is generated when
Record is created The record field values match the values specified in the WHERE clause
Record is updated
  • A change occurs in one or more record fields that are specified in the PushTopic query SELECT clause or
  • A change occurs in one or more record fields that are specified in the PushTopic query WHERE clause and
  • The record values of the fields specified in the WHERE clause all match the values in the PushTopic query WHERE clause

Examples

PushTopic Query Result
SELECT Id, f1, f2, f3 FROM InvoiceStatement__c Generates a notification if f1, f2, or f3 have changed.
SELECT Id, f1, f2 FROM InvoiceStatement__c WHERE f3 = 'abc' AND f4 LIKE 'xyz' Generates a notification if f1, f2, f3, or f4 have changed and f3 and f4 match the values in the WHERE clause.
SELECT Id FROM InvoiceStatement__c WHERE f3 = 'abc' AND f4 LIKE 'xyz' Generates a notification if f3 and f4 have changed and f3 and f4 match the values in the WHERE clause.
SELECT Id, f1, f2 FROM InvoiceStatement__c WHERE Id IN ('a07B0000000KWZ7IAO', 'e10R0000000KEU9IAO', 'v32B0000000KWZ7YEP') Generates a notification if f1 or f2 have changed and the record ID is contained in the WHERE clause IN list.
SELECT Id, f1, f2 FROM InvoiceStatement__c WHERE f3 = 'abc' AND f4 LIKE 'xyz' AND Id IN ('a07B0000000KWZ7IAO', 'e10R0000000KEU9IAO', 'v32B0000000KWZ7YEP') Generates a notification if f1, f2, f3, or f4 have changed, f3 and f4 match the values in the WHERE clause, and the ID is contained in the WHERE clause IN list.