GroupTrack API Use Cases
Key APIs
- Authentication: All requests require authentication via Bearer Token, query parameter (
api-key), or an API key header (gt-api-key, orx-gt-api-key). See Authentication Guide for details. - Rate Limiting: Be aware of rate limits (429 responses include
retry_afterandreset_time). See the Rate Limit Guide for more details. - Filtering: Use query parameters like
filter[emailAddress]=…,filter[GTID]=…,filter[tagID]=…for precise searches. See the Filter Guide for more details - Pagination: Use
page[cursor]parameter and checkmeta.scroll_idin responses for large result sets. - Pipeline & Stage Management: Always retrieve available pipelines/stages via
GET /pipelinesbefore assigning contacts. - Tag Sets: Tags belong to Tag Sets - always specify both
tagSetUIDandtagIDwhen working with tags.
1. Universal Lead Upsert Service
Why it's valuable
Every form, funnel, or checkout can hit a single endpoint you own, and you handle whether to create or update the contact in GroupTrack.
Endpoints used
GET /contacts → POST /contacts or PATCH /contacts/{GTID}
Flow
- Your app receives an email/ID from any front-end form.
GET /contacts?filter[emailAddress]=…to check if they already exist.- If no match →
POST /contactswith name, email, and initial pipeline placement. - If match →
PATCH /contacts/{GTID}to update contact info and tags.
2. Funnel → Pipeline Auto-Enroller
Why it's valuable
Instantly move leads from opt-in to a structured sales journey without manual pipeline updates.
Endpoints used
POST /contacts → POST /contacts/{GTID}/pipelines → POST /contacts/{GTID}/tagsets/{tagSetUID}/tags
Flow
- When someone opts in,
POST /contactswith their basic info. - Add them to your chosen pipeline via
POST /contacts/{GTID}/pipelineswith thepipelineUID. - Attach tags like
src_funnel_x,funnel_optin_completeusingPOST /contacts/{GTID}/tagsets/{tagSetUID}/tags. - You now have a clear, trackable entry point for that lead's whole journey.
3. DM Keyword → Stage & Task Automation
Why it's valuable
Turn "I'm ready" in a DM into a real, trackable sales action for your team.
Endpoints used
Your DM webhook → GET /contacts → PATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage → POST /tasks → POST /activities
Flow
- Your DM listener/webhook receives a message containing a trigger keyword (e.g., "ready", "book").
- Match by email via
GET /contacts?filter[emailAddress]=…. - Move them to a hot stage using
PATCH /contacts/{GTID}/pipelines/{pipelineUID}/stagewith the newstageUID. POST /tasksto assign "Book a call with this lead in 24 hours" to a rep.POST /activitieswith type "Message Sent" and a note summarizing the trigger message for context.
4. Challenge / Event Registration Engine
Why it's valuable
Orchestrate challenge participants or live event registrants as a real pipeline instead of a spreadsheet.
Endpoints used
POST /contacts → POST /contacts/{GTID}/tagsets/{tagSetUID}/tags → POST /contacts/{GTID}/pipelines → POST /tasks
Flow
- When someone registers for a challenge,
POST /contacts. - Tag them with
challenge_may,challenge_registeredviaPOST /contacts/{GTID}/tagsets/{tagSetUID}/tags. - Put them into a "Challenge" pipeline using
POST /contacts/{GTID}/pipelines. - The pipeline will automatically place them in the initial stage.
- Create Day 1 follow-up tasks for your team using
POST /tasks(welcome messages, DM check-ins, etc.).
5. Engagement Scoring via Tag Bands
Why it's valuable
You get a lightweight "engagement score" without needing custom fields—just clever tags.
Endpoints used
GET /contacts/{GTID} → DELETE /contacts/{GTID}/tagSets/{tagSetUID}/tags/{tagID} → POST /contacts/{GTID}/tagsets/{tagSetUID}/tags → PATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage
Flow
- Your script watches events (comments, clicks, DMs, attendance).
- When something happens, decide their new "band" (e.g.,
eng_score_1_3,eng_score_4_6,eng_score_7_10). - Remove any existing
eng_score_*tags usingDELETE /contacts/{GTID}/tagSets/{tagSetUID}/tags/{tagID}. - Add the new score tag using
POST /contacts/{GTID}/tagsets/{tagSetUID}/tags. - If they hit
eng_score_7_10, optionally move them into aHot Leadstage withPATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage.
6. Stuck Lead / Rescue Bot
Why it's valuable
Automatically find people who've stalled out in the journey and re-activate them.
Endpoints used
GET /contacts (with filters) → GET /tasks → POST /tasks → POST /activities → POST /contacts/{GTID}/tagsets/{tagSetUID}/tags
Flow
- On a schedule,
GET /contacts?filter[stageUID]=…to get all contacts in a specific stage (e.g.,Demo Booked). GET /tasks?GTID=…&taskStatus=completedto check their last completed task timestamp.- If no activity for X days →
- Tag with
at_riskusingPOST /contacts/{GTID}/tagsets/{tagSetUID}/tags. POST /taskswith "Re-engage this person" assigned to a team member.POST /activitieswith context ("No activity since demo date.").
- Tag with
7. Daily SDR / Closer Queue Builder
Why it's valuable
Your reps log in each day with a clean, prioritized list of who to contact next.
Endpoints used
GET /pipelines → GET /contacts (with filters) → GET /tasks → POST /tasks → PATCH /tasks/{taskUID}
Flow
- Nightly job:
GET /pipelinesto retrieve available pipelines and stages.GET /contacts?filter[stageUID]=…for specific stages (New Lead,Follow-Up Needed).GET /tasks?GTID=…&taskStatus=opento check who has no open tasks.
- For each contact without open tasks:
POST /tasksfor your SDR team (e.g., "Call within 24 hours").
- As reps work the tasks, they update them with
PATCH /tasks/{taskUID}.
8. Launch / Promotion Result Tracker
Why it's valuable
Tie launch actions to a specific tag and pipeline so you can see exactly how a promo performed.
Endpoints used
POST /contacts/{GTID}/tagsets/{tagSetUID}/tags → PATCH /contacts/{GTID} → PATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage → POST /activities
Flow
- During a launch, tag all participants with
POST /contacts/{GTID}/tagsets/{tagSetUID}/tags:promo_october,launch_webinar_attendee, etc. - When they purchase, move them from
Launch: Warm→Launch: Customerstage usingPATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage. - Add an activity when a sale happens using
POST /activities, including which offer they bought. - Afterward, filter reports by
GET /contacts?filter[tagID]=…to see conversions.
9. Conversation Summarizer & Context Helper
Why it's valuable
Give your team "at-a-glance" conversation context instead of reading long histories.
Endpoints used
GET /activities → AI in your system → POST /activities
Flow
- Pull recent activities via
GET /activities?GTID=…&type=Message Sent. - Send the activity notes to your summarizer (outside GroupTrack).
POST /activitiesback to the contact with a summary note:SUMMARY: Asked about payment plan; hesitant about timing; agreed to follow up next Tuesday.- Reps can quickly scan the latest summary activities before reaching out.
10. Next Best Action (NBA) Tagger
Why it's valuable
Tell reps exactly what to do next, based on all the data GroupTrack already has.
Endpoints used
GET /contacts/{GTID} → GET /activities → AI in your system → POST /contacts/{GTID}/tagsets/{tagSetUID}/tags → POST /activities
Flow
- Your job fetches each contact's stage, tags, and recent activities using
GET /contacts/{GTID}andGET /activities. - AI/logic decides the next move ("Send case study," "Offer downsell," "Invite to challenge").
- Add a tag like
nba_send_case_studyornba_invite_to_challengeusingPOST /contacts/{GTID}/tagsets/{tagSetUID}/tags. - Add an activity via
POST /activities:NBA: Send case study email before Friday. - Reps filter contacts by
GET /contacts?filter[tagID]=…to work the right contacts with the right actions.
11. LMS / Course Progress Sync via Tags & Stages
Why it's valuable
Bridge your course platform and GroupTrack so education progress becomes a sales signal.
Endpoints used
GET /contacts → POST /contacts/{GTID}/tagsets/{tagSetUID}/tags → PATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage
Flow
- When a student completes a module in your LMS, call your integration.
- Look up the matching contact in GroupTrack via
GET /contacts?filter[emailAddress]=…. - Tag them with
course_module_1_done,course_module_2_done, etc. usingPOST /contacts/{GTID}/tagsets/{tagSetUID}/tags. - Move stages as they progress (e.g.,
Student: New→Student: Active→Student: Graduate) usingPATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage. - At graduation, reps can see who's primed for the next offer.
12. Stripe / Billing Sync for Customers & Churn
Why it's valuable
Keep your customer and revenue lifecycle reflected directly inside GroupTrack.
Endpoints used
POST /contacts or PATCH /contacts/{GTID} → PATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage → POST /activities → POST /tasks → POST /contacts/{GTID}/tagsets/{tagSetUID}/tags
Flow
- On successful payment:
- Upsert the contact using
POST /contactsorPATCH /contacts/{GTID}. - Move them to a
Customerstage usingPATCH /contacts/{GTID}/pipelines/{pipelineUID}/stage. - Tag with
product_x_customerusingPOST /contacts/{GTID}/tagsets/{tagSetUID}/tags. - Add an activity summarizing the transaction via
POST /activities.
- Upsert the contact using
- On failed payments or cancellations:
- Move them to
At-RiskorCancelledstage. - Tag with
churned,payment_failed. POST /tasksfor your retention team ("Reach out within 48 hours").
- Move them to
13. Daily Leadership Snapshot Bot
Why it's valuable
Gives the founder/leadership a quick pulse on what's happening in the business without logging into five tools.
Endpoints used
GET /pipelines → GET /contacts → GET /tasks → GET /tagSets
Flow
- Once per day, collect:
- New contacts created (check
addedDtTmfield) viaGET /contacts - Task metrics via
GET /tasks(created/completed counts) - Deals moved to "Won" or "Lost" stages via contact stage analysis
- Any contacts with
at_riskorhot_leadtags viaGET /contacts?filter[tagID]=…
- New contacts created (check
- Format that into a simple summary (outside GroupTrack).
- Send to Slack/email for leadership as a KPI digest.
14. Agency Multi-Client Dashboard via Tags & Pipelines
Why it's valuable
If you're an agency, you can see how each client's GroupTrack instance is performing from one place.
Endpoints used
Per client: GET /contacts, GET /pipelines, GET /tagSets, GET /tasks
Flow
- Your backend authenticates to each client's GroupTrack separately.
- On a schedule, pull:
- Contact counts by stage from
GET /contactswith various filters - Volume of
hot_leadorlaunch_*tags - Number of open/overdue tasks via
GET /tasks?taskStatus=…
- Contact counts by stage from
- Normalize and display in your own dashboard UI.
- Use this for reporting, retainers, and "we're watching your numbers" value-add.
Additional Resources
- Complete API Reference - Full documentation for all endpoints
- MCP & AI Server Guide - Connect AI agents (Meta Muse, Claude, Cursor) to GroupTrack
- Authentication Guide - How to authenticate your API requests
- Webhooks - Set up real-time event notifications
- Rate Limiting - Understanding and managing API rate limits
- Error Handling - Common errors and how to resolve them