The Docket - Marketo integration writes Docket activity back to Marketo and preserves UTM attribution end-to-end. This guide walks through the one-time connection setup and per-agent writeback configuration.
Before you start
Admin access to Marketo Engage with permission to create API users, roles, and channels
Admin access to Docket
Your Marketo Munchkin Account ID (find it under Admin → Munchkin in Marketo)
Confirmation that your daily API quota (50,000 calls/day by default) isn't already heavily utilized by other integrations
Section 1 - Marketo prerequisites (Marketo Admin)
Complete these three steps in Marketo before starting the Docket-side setup. Skipping any of them will cause the connection to fail with a clear error message, but doing them upfront makes setup smooth.
1.1 Create the "Docket" channel
Marketo doesn't allow channels to be created via API, so this step is manual.
In Marketo, go to Admin → Tags.
Under Channels, click New Channel.
Set the following:
Channel Name:
Docket(exact spelling, case-sensitive)Applicable Program Type:
Default
Add two progression statuses, in this order:
Engaged- marks that a visitor had a conversation with a Docket agentMeeting Booked- marks that a visitor booked a meeting through Docket
Save the channel.
Why this matters: Docket attaches every conversation and booked meeting to a program tied to this channel. If the channel doesn't exist or the status names don't match exactly, the connection will fail with the message: "The Docket channel does not exist in Marketo. Please refer to the integration guide for prerequisites."
1.2 Create a custom role for Docket
Docket needs four specific API permissions. Create a dedicated role so you can audit usage cleanly.
Go to Admin → Users & Roles → Roles.
Click New Role.
Name it
Docket API Role.Grant exactly these permissions:
Access API → Read-Only Assets
Access API → Read-Write Person
Access API → Read-Write Activity
Access API → Read-Write Activity Metadata
Save.
If any of these are missing, the Docket connection will fail with a specific message telling you which scope is missing.
1.3 Create an API-only user and a LaunchPoint service
Go to Admin → Users & Roles → Users.
Click Invite New User.
Enter an email like
[email protected]. The user does not need to access the Marketo UI.Assign the
Docket API Roleyou just created.Check API Only so the user can't log in interactively.
Send the invite, then accept it.
Now create the LaunchPoint service that issues the credentials Docket will use:
Go to Admin → LaunchPoint.
Click New → New Service.
Set:
Display Name:
DocketService:
CustomAPI Only User: the user you just created
Save.
Click View Details on the new service.
Copy down the Client ID and Client Secret. You'll need these for the Docket-side setup.
Section 2 - Connect Marketo to Docket (Marketo Admin)
2.1 Start the connection
In Docket, go to Settings → Integrations.
Find Marketo and click Connect.
Enter:
Munchkin Account ID (e.g.
123-ABC-456)Client ID from the LaunchPoint service
Client Secret from the LaunchPoint service
Click Connect.
2.2 What happens on success
Docket automatically performs the following on first successful connection:
Creates a folder in Marketo called
Docket, with description: "Created by Docket. The Docket Engagement program will be used to track all interactions with Docket Agents."Creates a program inside it called
Docket Engagement(type: Engagement, channel: Docket)If the program already exists, Docket adopts it instead of creating a duplicate
Registers two custom activity types:
Docket ConversationandDocket Meeting Booked
The program will appear in Marketo within 2 minutes. The channel and type can't be changed after creation, so verify the channel name carefully in section 1.1.
Section 3 - Configuring write-back and program enrolment
Each Docket agent has its own writeback configuration. Changes to one agent don't affect others, so you can roll this out gradually.
In Docket, go to Marketing Agent Configuration → [your agent] → Analysis and Actions → Marketo.
Turn on the toggle for Marketo.
You can individually turn on Lead Sync, Activity Sync and Program enrolment.
Lead sync - Create new leads or update existing ones based on Docket conversations.
Activities - Create custom activities for Docket conversations or meetings booked via Docket.
Program enrolment - Configure rules for a lead to be enrolled in a Marketo program based on trigger criteria.
3.1 Configuring the Activities written back by Docket
Two custom activities are written:
Docket Conversation captures everything about a chat with a Docket agent. Mandatory fields (always written):
Visitor Email
Agent Name
Conversation Duration
Page URL
Conversation Summary
Docket Meeting Status
Docket Interaction Count
Full Transcript
Conversation ID
Conversation Start Time
Conversation End Time
Agent ID
Updated by Docket
Optional fields (you choose which to include):
UTM Source, UTM Medium, UTM Campaign, UTM Content, UTM Term
Click ID, Click ID Type
Docket First Interaction, Docket Latest Interaction
Docket Meeting Date, Docket Meeting Owner
Post-Call Analysis fields (these are dynamic based on your post-call analysis configuration)
Docket Meeting Booked captures meeting details:
Subject, Description
Start and end datetime
Meeting owner
Meeting status (booked / rescheduled / cancelled)
Lead association (where available)
Conferencing link
Meeting source (always "Docket")
Docket booking ID / Meeting ID
Important - 20-field limit: Marketo enforces a hard cap of 20 attributes per custom activity. The mandatory fields take 13 of those slots, leaving 7 for optional + post-call analysis fields combined. Docket prevents you from saving a configuration that exceeds the limit. If your Marketo Admin has manually added fields to the activity in Marketo, you may have fewer slots than expected; Docket will show: "Could not save the configuration as the Activity has more than 20 fields configured."
3.2 Configure Field Updates (Lead Object)
Field Updates write directly to the Marketo Lead record. Two write modes per field:
Overwrite - always replaces the existing value
Fill if empty - only writes if the field is currently blank
3.3 Configure Program Enrollment
Program Enrollment adds the visitor as a Program Member with a specific status. You can enroll into multiple programs from a single trigger.
Three enrollment options:
On conversation completed
Default program:
Docket EngagementDefault status:
EngagedYou can pick any other program from the dropdown
On meeting booked
Default program:
Docket EngagementDefault status:
Meeting Booked
Custom criteria
Write a prompt describing when to enroll (e.g. "enroll if the visitor is from an enterprise company and discussed pricing")
An LLM evaluates the criteria using the full conversation context
Default program:
Docket Engagement/ status:Engaged
Each agent can have up to 5 program enrollment rules.
How enrollment behaves at runtime
Lead state | Behavior |
Lead not in Marketo | Docket creates the Lead, then enrolls |
Lead exists, not in the program | Enroll at the configured status |
Lead exists, at an earlier status | Advance to the configured status |
Lead exists, at the same or later status | Skip |
Program no longer exists | Skip |
Status progression is forward-only. Docket will never downgrade a Lead (e.g. from Meeting Booked back to Engaged).
Need Help?
For additional assistance or troubleshooting, contact [email protected] or reach out to your Docket Customer Success Manager.

