IP Library Granted Patent US 11,709,660
Granted Patent B1
US 11,709,660 · App. 17/964,825 · Granted Jul 25, 2023

Integrated third-party application builder trigger for message flow

Inventors: Alexander Colin Meyer (Chicago, IL); Gerardo Díaz De La Serna Formoso (Mexico City, MX); Gideon Daniel VanRiette (Chicago, IL); James Quinlan (Richmond, VA); Joy Taylor Kaufman (Durham, NC); Kameron Ahler (Colorado, CO); Lauren Leia Rouse (Nashville, TN); Vishak Swaminathan Visvanathan (Brooklyn, NY)
Assignee: Stodge Inc.
G06F8/34G06F9/543
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,709,660
App. No.
17/964,825
Granted
Jul 25, 2023
Kind
B1
Abstract

A message management platform may receive, from an application operator, a configuration of a message flow. The message flow includes one or more messages associated with trigger conditions. The platform may receive, from a code snippet incorporated in an application of a user computing device, a notification that the user computing device has used the application. The platform may associate a user identifier with the user computing device. The platform may subscribe to, on behalf of the application operator, one or more API notification channels of the application builder platform. The platform may receive an API notification from the application builder platform. The platform may determine that the application builder platform's user is associated with the user identifier used by the message management platform. The platform may determine that the event described in the payload matches the trigger condition and transmit the first message to the user computing device.

Claims (85)

1. A system, comprising:

at least one memory; and

at least one processor coupled with the at least one memory, the at least one memory storing code comprising instructions, the instructions when executed by the at least one processor cause a message management platform to perform steps comprising:

presenting a user interface configured to receive, from an application operator, a configuration of a message flow, the message flow comprising recipient criteria defining a segment of subscribers to receive messages from the message flow, at least one message in the message flow associated with a trigger condition;

subscribing to, on behalf of the application operator, at least one application programming interface (API) notification channel of an application builder platform, the application builder platform operational as a backend component of an application controlled by the application operator;

receiving a plurality of API notifications from the application builder platform, the plurality of API notifications comprising respective API payloads that include information describing events associated with a plurality of users of the application builder platform;

receiving a plurality of code-snippet notifications describing events associated with a plurality of user computing devices, a code-snippet notification being received from a user computing device of the plurality of user computing devices via a corresponding code snippet incorporated in an instance of the application operated at the user computing device, the user computing device being associated with a corresponding subscriber with a corresponding subscriber identifier used by the message management platform;

identifying a plurality of user identifiers in the plurality of API payloads from the application builder platform;

determining that the plurality of user identifiers in the plurality of API payloads correspond to a plurality of subscriber identifiers used by the message management platform;

storing, for a first subscriber associated with a first subscriber identifier, subscriber events, the subscriber events comprising one or more events described in one or more API notifications associated with the first subscriber and one or more events described in one or more code-snippet notifications from one of the user computing devices associated with the first subscriber identifier;

determining, based on a plurality of the stored subscriber events associated with the first subscriber, that the first subscriber satisfies the recipient criteria;

enrolling the first subscriber to the segment of subscribers who are to receive messages from the message flow in response to the determination that the recipient criteria is satisfied;

monitoring the trigger condition in the message flow in response to the first subscriber being enrolled in the segment of subscribers;

receiving one or more new subscriber events associated with the first subscriber;

determining that the one or more new subscriber events meet the trigger condition in the message flow; and

transmitting the at least one message in the message flow that is associated with the trigger condition to the first subscriber.

2. The system of claim 1 , wherein the user interface is part of a message flow builder that allows the application operator to build the message flow.

3. The system of claim 1 , wherein the corresponding code snippet is listed in a digital distribution platform of the application builder platform.

4. The system of claim 1 , wherein each API payload comprises a plurality of key-value pairs, the plurality of key-value pairs comprising a user identifier used by the application builder platform and a phone number of a user of the application builder platform.

5. The system of claim 1 , wherein the instructions when executed by the one or more processors further causes the message management platform to perform steps comprising:

generating, responsive to receiving a code-snippet notification indicating that the one of the user computing devices has used the application, a random string that is used as at least a part of the first subscriber identifier;

generating a cookie based on the random string; and

transmitting the cookie to the one of the user computing devices.

6. The system of claim 1 , wherein a subscriber event described in an API notification received from the application builder platform is related to a transaction performed at the backend component that is operated by the application builder platform.

7. The system of claim 1 , wherein the at least one message in the message flow is transmitted to the first subscriber in response to determining that the one or more new subscriber events meet the trigger condition.

8. The system of claim 1 , wherein the first subscriber is automatically enrolled to the segment of subscribers that receive messages from the message flow in response to determining that the first subscriber satisfies the recipient criteria for the message flow.

9. The system of claim 1 , further comprising instructions that cause the message management platform to perform a step comprising:

introducing, after enrolling the first subscriber to the segment of subscribers who are to receive messages from the message flow, a delay of a predetermined amount of time prior to proceeding with the message flow.

10. The system of claim 1 , wherein the plurality of the stored subscriber events associated with the first subscriber based on which the first subscriber is determined to satisfy the recipient criteria for the message flow include events described in a plurality of API notifications associated with the first subscriber.

11. A computer-implemented method, comprising:

receiving, from an application operator, a configuration of a message flow, the message flow comprising recipient criteria defining a segment of subscribers to receive messages from the message flow, at least one message in the message flow associated with a trigger condition;

subscribing to, on behalf of the application operator, at least one application programming interface (API) notification channel of an application builder platform, the application builder platform operational as a backend component of an application controlled by the application operator;

receiving a plurality of API notifications from the application builder platform, the plurality of API notifications comprising respective API payloads that include information describing events associated with a plurality of users of the application builder platform;

receiving a plurality of code-snippet notifications describing events associated with a plurality of user computing devices, a code-snippet notification being received from a user computing device of the plurality of user computing devices via a corresponding code snippet incorporated in an instance of the application operated at the user computing device, the user computing device being associated with a corresponding subscriber with a corresponding subscriber identifier used by a message management platform;

identifying a plurality of user identifiers in the plurality of API payloads from the application builder platform;

determining that the plurality of user identifiers in the plurality of API payloads correspond to a plurality of subscriber identifiers used by the message management platform;

storing, for a first subscriber associated with a first subscriber identifier, subscriber events, the subscriber events comprising one or more events described in one or more API notifications associated with the first subscriber and one or more events described in one or more code-snippet notifications from one of the user computing devices associated with the first subscriber identifier;

determining, based on a plurality of the stored subscriber events associated with the first subscriber, that the first subscriber satisfies the recipient criteria;

enrolling the first subscriber to the segment of subscribers who are to receive messages from the message flow in response to the determination that the recipient criteria is satisfied;

monitoring the trigger condition in the message flow in response to the first subscriber being enrolled in the segment of subscribers;

receiving one or more new subscriber events associated with the first subscriber;

determining that the one or more new subscriber events meet the trigger condition in the message flow; and

transmitting the at least one message in the message flow that is associated with the trigger condition to the first subscriber.

12. The computer-implemented method of claim 11 , wherein the configuration is received through a user interface that allows the application operator to build the message flow.

13. The computer-implemented method of claim 11 , wherein the corresponding code snippet is listed in a digital distribution platform of the application builder platform.

14. The computer-implemented method of claim 11 , wherein each of the plurality of API notifications is a webhook notification.

15. The computer-implemented method of claim 11 , wherein each API payload comprises a plurality of key-value pairs, the plurality of key-value pairs comprising a user identifier used by the application builder platform and a phone number of a user of the application builder platform.

16. The computer-implemented method of claim 11 , further comprising:

generating, responsive to receiving a code-snippet notification indicating that the one of the user computing devices has used the application, a random string that is used as at least a part of the first subscriber identifier;

generating a cookie based on the random string; and

transmitting the cookie to the one of the user computing devices.

17. The computer-implemented method of claim 11 , wherein a subscriber event described in an API notification received from the application builder platform is related to a transaction performed at the backend component that is operated by the application builder platform.

18. The computer-implemented method of claim 11 , wherein the first subscriber is automatically enrolled to the segment of subscribers that receive messages from the message flow in response to determining that the first subscriber satisfies the recipient criteria for the message flow.

19. The computer-implemented method of claim 11 , further comprising:

introducing, after enrolling the first subscriber to the segment of subscribers who are to receive messages from the message flow, a delay of a predetermined amount of time prior to proceeding with the message flow.

20. The computer-implemented method of claim 11 , wherein the plurality of the stored subscriber events associated with the first subscriber based on which the first subscriber is determined to satisfy the recipient criteria for the message flow include events described in a plurality of API notifications associated with the first subscriber.

21. A system, comprising:

a code snippet incorporated in an application of a user computing device, wherein the application is controlled by an application operator and has a backend component that is operated by an application builder platform; and

a message management platform comprising one or more processors and memory, the memory configured to store code comprising instructions, wherein the instructions, when executed by the one or more processors, cause the one or more processors to perform steps comprising:

receiving, from the application operator, a configuration of a message flow, the message flow comprising recipient criteria defining a segment of subscribers to receive messages from the message flow, at least one message in the message flow associated with a trigger condition;

subscribing to, on behalf of the application operator, at least one application programming interface (API) notification channel of the application builder platform;

receiving a plurality of API notifications from the application builder platform, the plurality of API notifications comprising respective API payloads that include information describing events associated with a plurality of users of the application builder platform;

receiving a plurality of code-snippet notifications describing events associated with a plurality of user computing devices, a code-snippet notification being received from the user computing device of the plurality of user computing devices via the code snippet incorporated in the application of the user computing device, the user computing device being associated with a corresponding subscriber with a corresponding subscriber identifier used by the message management platform;

identifying a plurality of user identifiers in the plurality of API payloads from the application builder platform;

determining that the plurality of user identifiers in the plurality of API payloads correspond to a plurality of subscriber identifiers used by the message management platform;

storing, for a first subscriber associated with a first subscriber identifier, subscriber events, the subscriber events comprising one or more events described in one or more API notifications associated with the first subscriber and one or more events described in one or more code-snippet notifications from one of the user computing devices associated with the first subscriber identifier;

determining, based on a plurality of the stored subscriber events associated with the first subscriber, that the first subscriber satisfies the recipient criteria;

enrolling the first subscriber to the segment of subscribers who are to receive messages from the message flow in response to the determination that the recipient criteria is satisfied;

monitoring the trigger condition in the message flow in response to the first subscriber being enrolled in the segment of subscribers;

receiving one or more new subscriber events associated with the first subscriber;

determining that the one or more new subscriber events meet the trigger condition in the message flow; and

transmitting the at least one message in the message flow that is associated with the trigger condition to the first subscriber.

22. The system of claim 21 , further comprising a user interface that is part of a message flow builder that allows the application operator to build the message flow.

23. The system of claim 21 , wherein the code snippet is listed in a digital distribution platform of the application builder platform.

24. The system of claim 21 , wherein each of the plurality of API notifications is a webhook notification.

25. The system of claim 21 , wherein each API payload comprises a plurality of key-value pairs, the plurality of key-value pairs comprising a user identifier used by the application builder platform and a phone number of a user of the application builder platform.

26. The system of claim 21 , wherein the instructions, when executed by the one or more processors, cause the one or more processors to perform:

generating, responsive to receiving a code-snippet notification indicating that the one of the user computing devices has used the application, a random string that is used as at least a part of the first subscriber identifier;

generating a cookie based on the random string; and

transmitting the cookie to the one of the user computing devices.

27. The system of claim 21 , wherein a subscriber event described in an API notification received from the application builder platform is related to a transaction performed at the backend component that is operated by the application builder platform.

28. The system of claim 21 , wherein the first subscriber is automatically enrolled to the segment of subscribers that receive messages from the message flow in response to determining that the first subscriber satisfies the recipient criteria for the message flow.

29. The system of claim 21 , further comprising instructions that cause the message management platform to perform a step comprising:

introducing, after enrolling the first subscriber to the segment of subscribers who are to receive messages from the message flow, a delay of a predetermined amount of time prior to proceeding with the message flow.

30. The system of claim 21 , wherein the plurality of the stored subscriber events associated with the first subscriber based on which the first subscriber is determined to satisfy the recipient criteria for the message flow include events described in a plurality of API notifications associated with the first subscriber.

Assignments (5)
SECURITY INTEREST Recorded Feb 3, 2025
From: STODGE INC.
To: SILVER LAKE WATERMAN FUND III, L.P., AS AGENT
Reel/Frame 070094/0972 →
SECURITY INTEREST Recorded Dec 16, 2024
From: STODGE INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 069599/0896 →
RELEASE OF SECURITY INTEREST Recorded Dec 11, 2024
From: SILICON VALLEY BANK
To: STODGE INC.
Reel/Frame 069554/0505 →
SECURITY INTEREST Recorded Jan 13, 2023
From: STODGE INC.
To: SILICON VALLEY BANK
Reel/Frame 062368/0174 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2022
From: MEYER, ALEXANDER COLIN; DÍAZ DE LA SERNA FORMOSO, GERARDO; VANRIETTE, GIDEON DANIEL; QUINLAN, JAMES; KAUFMAN, JOY TAYLOR; AHLER, KAMERON; ROUSE, LAUREN LEIA; VISVANATHAN, VISHAK SWAMINATHAN
To: STODGE INC.
Reel/Frame 062193/0595 →