IP Library Granted Patent US 11,757,823
Granted Patent B2
US 11,757,823 · App. 17/408,265 · Granted Sep 12, 2023

Electronic mail authentication and tracking in database system

Inventors: Minhui Yan (San Francisco, CA); Abhijit Bare (San Francisco, CA)
Assignee: Salesforce, Inc.
H04L51/56H04L51/08H04L51/42H04L63/0428
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,757,823
App. No.
17/408,265
Granted
Sep 12, 2023
Kind
B2
Abstract

Disclosed are some implementations of systems, apparatus, methods and computer program products for tracking inbound email messages in association with database records. A first electronic mail message received via a network from a first client device is processed, where the first electronic mail message has a header including a message identifier. The message identifier is obtained from the header and parsed such that an encrypted portion and one or more unencrypted portions are obtained, where a first unencrypted portion of the unencrypted portions includes an entity identifier associated with a first database record of a database. A secret key associated with the first electronic mail message is obtained and the first electronic mail message is authenticated using the secret key, the encrypted portion of the message identifier, and at least one unencrypted portion of the unencrypted portions of the message identifier. The first electronic mail message is stored in association with the first database record according to a result of authenticating the first electronic mail message.

Claims (55)

1. A system comprising:

a database system implemented using a server system including at least one hardware processor, the database system configurable to cause:

processing a first electronic mail message received via a network from a first client device, the first electronic mail message having a header including a message identifier;

obtaining the message identifier from the header;

parsing the message identifier such that an encrypted portion and one or more unencrypted portions are obtained, a first unencrypted portion of the unencrypted portions including an entity identifier associated with a first entity database record of a database;

obtaining a secret key associated with the first electronic mail message;

authenticating the first electronic mail message using the secret key, the encrypted portion of the message identifier, and at least one unencrypted portion of the unencrypted portions of the message identifier; and

storing the first electronic mail message in association with the first entity database record according to a result of authenticating the first electronic mail message.

2. The system of claim 1 , the unencrypted portions further including one or more identifiers, the one or more identifiers including at least one of: an organization identifier or a key identifier.

3. The system of claim 2 , the database system further configurable to cause:

obtaining the secret key associated with the first electronic mail message by retrieving the secret key using at least one of the identifiers.

4. The system of claim 1 , the database system further configurable to cause;

discarding the first electronic mail message responsive to determining that the first electronic mail message is not successfully authenticated.

5. The system of claim 1 , the database system further configurable to cause:

creating a second database record associated with the entity identifier; and

associating the first electronic mail message with the second database record.

6. The system of claim 1 , the database system further configurable to cause:

authenticating the first electronic message by calling an application programming interface (API).

7. The system of claim 1 , the database system further configurable to cause:

ascertaining whether to perform authentication for the first electronic mail message.

8. A method, comprising:

processing a first electronic mail message received via a network from a first client device, the first electronic mail message having a header including a message identifier;

obtaining the message identifier from the header;

parsing the message identifier such that an encrypted portion and one or more unencrypted portions are obtained, a first unencrypted portion of the unencrypted portions including an entity identifier associated with a first entity database record of a database;

obtaining a secret key associated with the first electronic mail message;

authenticating the first electronic mail message using the secret key, the encrypted portion of the message identifier, and at least one unencrypted portion of the unencrypted portions of the message identifier; and

storing the first electronic mail message in association with the first entity database record according to a result of authenticating the first electronic mail message.

9. The method of claim 8 , the unencrypted portions further including one or more identifiers, the one or more identifiers including at least one of: an organization identifier or a key identifier.

10. The method of claim 9 , further comprising:

obtaining the secret key associated with the first electronic mail message by retrieving the secret key using at least one of the identifiers.

11. The method of claim 8 , further comprising:

discarding the first electronic mail message responsive to determining that the first electronic mail message is not successfully authenticated.

12. The method of claim 8 , further comprising:

creating a second database record associated with the entity identifier; and

associating the first electronic mail message with the second database record.

13. The method of claim 8 , further comprising:

authenticating the first electronic message by calling an application programming interface (API).

14. The method of claim 8 , further comprising:

ascertaining whether to perform authentication for the first electronic mail message.

15. The method of claim 8 , the database being part of a Customer Relationship Management (CRM) system.

16. A non-transitory machine-readable storage medium having computer program instructions stored therein, the computer program instructions configured such that, when executed by one or more processors, the computer program instructions cause the one or more processors to:

process a first electronic mail message received via a network from a first client device, the first electronic mail message having a header including a message identifier;

obtain the message identifier from the header;

parse the message identifier such that an encrypted portion and one or more unencrypted portions are obtained, a first unencrypted portion of the unencrypted portions including an entity identifier associated with a first entity database record of a database;

obtain a secret key associated with the first electronic mail message;

authenticate the first electronic mail message using the secret key, the encrypted portion of the message identifier, and at least one unencrypted portion of the unencrypted portions of the message identifier; and

store the first electronic mail message in association with the first entity database record according to a result of authenticating the first electronic mail message.

17. The non-transitory machine-readable medium of claim 16 , the unencrypted portions further including one or more identifiers, the one or more identifiers including at least one of: an organization identifier or a key identifier.

18. The non-transitory machine-readable medium of claim 17 , wherein the computer program instructions are further configured to cause the one or more processors to:

obtain the secret key associated with the first electronic mail message by retrieving the secret key using at least one of the identifiers.

19. The non-transitory machine-readable medium of claim 16 , wherein the computer program instructions are further configured to cause the one or more processors to:

discard the first electronic mail message responsive to determining that the first electronic mail message is not successfully authenticated.

20. The non-transitory machine-readable medium of claim 16 , wherein the computer program instructions are further configured to cause the one or more processors to:

create a second database record associated with the entity identifier; and

associate the first electronic mail message with the second database record.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0571 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2021
From: YAN, MINHUI; BARE, ABHIJIT
To: SALESFORCE.COM, INC.
Reel/Frame 057245/0740 →