🔌

Integrations

5 articles James By James

Connect UserLoop Contests to Klaviyo and AI tools through MCP.

Klaviyo Integration

Connect Klaviyo to send contest entry and consented gallery-vote events, build segments, and add entrants or voters who explicitly opt into email marketing to a selected Klaviyo list. The integration is available on Pro. Mobile Integrations page showing Klaviyo, Omnisend, and Campaign Monitor setup states Before you connect Create a Klaviyo private API key with access to Events, Lists, Profiles, and Subscriptions. UserLoop validates the key before storing the connection. Connect Klaviyo 1. Open UserLoop Contests in Shopify admin. 2. Go to Integrations. 3. Expand Klaviyo. 4. Paste the private API key. 5. Click Connect. 6. Under Subscriber list, choose a list, or choose Events only — don't add to a list. 7. Click Save. Connecting Klaviyo automatically enables the email marketing opt-in on existing contests and on contests created while the integration is active. The checkbox is optional and unchecked on the storefront. Edit its label under Build > Entry form > Marketing consent. What gets sent UserLoop sends contest entry events with the entrant's email and available name, phone, contest, entry, referral, total-entry, UTM, referrer, and submission details. Choosing a subscriber list is separate from event delivery: - Entry events can be sent without a selected list. - An entrant is subscribed to the selected list only after explicitly selecting the email marketing opt-in. - If the Klaviyo list uses double opt-in, Klaviyo sends its normal confirmation email before adding the subscriber. For a Photo upload action with Require email to vote and Ask voters for marketing consent, a consenting voter sends a Contest Vote Submitted event and can be subscribed to the selected list. Anonymous and non-consented votes are not subscribed. Only entries and consented votes made after the connection are sent. Historical activity is not resent automatically. Use the events in Klaviyo Use the contest entry event to trigger a welcome flow, segment people by contest or campaign, compare acquisition channels, and run post-contest follow-up. Reconnect or disconnect If Klaviyo shows an error, expand the card and reconnect with a current private API key. Click Disconnect to remove the active Klaviyo connection for the shop. Disconnecting hides integration consent controls from the storefront when no other active integration needs them. It does not remove previously synced Klaviyo profiles or events. Troubleshooting If data is missing: 1. Confirm the store is on Pro and Klaviyo shows Connected. 2. Submit a new test entry after connecting. 3. Confirm the private API key has Events, Lists, Profiles, and Subscriptions access. 4. Select a list and save it if you expect subscribers, then explicitly select the email opt-in during the test. 5. If list loading fails, reconnect with a key that has Lists access. For the other providers, see Omnisend Integration and Campaign Monitor Integration. See Photo Contests and Public Voting for the voter opt-in setup.

MCP Integration

The Model Context Protocol (MCP) integration lets compatible AI clients inspect and manage contests through a private, shop-scoped server URL. MCP includes write tools. Connect only trusted clients and review sensitive actions—especially status changes and winner selection—before allowing them to run. Enable MCP 1. Open UserLoop Contests in Shopify admin. 2. Go to MCP. 3. Turn on Enable MCP. 4. Copy the personal MCP server URL immediately. The full key is shown only when it is created. The page provides one-click setup for Cursor and VS Code, a command for Claude Code, connector instructions for Claude and ChatGPT, and JSON for other Streamable HTTP clients. Read tools | Tool | What it returns | |---|---| | list_contests | Contests with entry counts and performance data | | get_contest | One contest with its prizes and actions | | get_contest_stats | Entries, winners, views, and conversion rate | | get_entries | Searchable, paginated entrant data | | get_winners | Winners with entrant and prize details | | get_entries_over_time | Daily entry counts for up to 365 days | The time-series tool gives an AI client the data needed to summarize trends or draw a chart. The visual format depends on the client you use. Write tools | Tool | What it changes | |---|---| | create_contest | Creates a contest with confirmed title and dates | | update_contest | Changes supported fields, including customer-facing language | | update_contest_status | Activates, deactivates, ends, or archives a contest | | add_prize | Adds a product or custom prize | | select_random_winner | Runs a weighted random draw for a prize | | select_manual_winner | Awards a prize to a specified eligible entry | | select_most_voted_winner | Awards an eligible highest-voted photo | | finish_contest_without_winner | Resolves winner selection without awarding a prize | | reopen_winner_selection | Reverses a no-winner decision | Example prompts - “List my active contests and compare their conversion rates.” - “Chart entries for this contest over the last 90 days.” - “Create a French draft contest called Autumn Giveaway from 1 September to 30 September.” - “Show the eligible entries and remaining prizes before drawing.” - “Select the most-voted eligible photo for the grand prize.” Ask the client to inspect a contest before changing it. MCP writes are applied to the connected store when invoked; they do not use Sidekick's inline confirmation card. Protect the URL The personal URL contains an API key. Treat it like a password: - Never paste it into a public ticket, document, screenshot, or repository. - Add it only to trusted clients and workspaces. - Use Regenerate URL if it is lost or exposed. This revokes the previous key. - Disable MCP when it is no longer needed; connected clients immediately lose access. If a client does not show a recently added tool, refresh or rescan the MCP server. Remove and reconnect it with a regenerated URL if its tool cache does not update.

Shopify Sidekick

UserLoop Contests works with Shopify Sidekick, so you can inspect contest performance and prepare common contest changes using natural language inside Shopify admin. What Sidekick can help with Sidekick can use UserLoop Contests tools to: - List contests and inspect one contest's configuration. - Report contest statistics, entries, winners, and entry trends. - Create a draft contest from confirmed dates and a title. - Update contest settings or status. - Add a prize. - Select a random, manual, or most-voted winner. - Finish a contest without a winner. - Reopen winner selection. Sidekick only works with contests for the current Shopify store. Example prompts - “Show my active contests and their conversion rates.” - “How many entries did the summer giveaway receive this week?” - “Create a draft contest called Autumn Giveaway from 1 September to 30 September.” - “Add a £100 gift card prize to Autumn Giveaway.” - “Show the eligible entries before I draw a winner.” - “Select a random winner for the grand prize.” Be specific about the contest title, dates, prize, and intended status. If several contests have similar names, ask Sidekick to list them first. Confirmation before changes Read-only requests return information immediately. Changes to an existing contest are staged in an inline confirmation card, and nothing is applied until you click Confirm and apply. Creating a contest uses a separate Sidekick flow. Sidekick must first confirm the title, start date, and end date with you; after you approve those details in the conversation, it creates the draft and opens it in the editor. Review proposed values carefully, especially dates, status changes, prize quantities, and winner selection. Winner decisions affect real entrant records and should only be confirmed when the campaign is ready to be resolved. Creating a contest with Sidekick Sidekick needs a confirmed title, start date, and end date. It creates the contest as a draft so you can open the full editor, add the remaining details, preview every surface, and activate it when ready. If Sidekick cannot complete a request - Confirm that UserLoop Contests is installed for the current store. - Use the exact contest title or ask Sidekick to list contests first. - Provide explicit dates and the relevant prize. - Open UserLoop Contests directly for visual design, theme configuration, uploads, and other work that benefits from the full editor.

Omnisend Integration

Connect Omnisend to sync contest contacts, consent, tags, entry events, and consented gallery-vote events. The integration is available on Pro. Mobile Integrations page showing Klaviyo, Omnisend, and Campaign Monitor setup states Connect Omnisend 1. Create an API key in Omnisend. 2. Open UserLoop Contests in Shopify admin. 3. Go to Integrations. 4. Expand Omnisend. 5. Paste the API key and click Connect. 6. Optionally enter a contact tag, such as summer-giveaway, and click Save. UserLoop validates the key before storing the connection. Every synced contact receives the additive source:userloop-contests tag. If you configure another tag, UserLoop adds it without replacing tags already managed in Omnisend. Marketing consent Connecting Omnisend automatically enables both email and SMS marketing opt-ins on existing contests and on contests created while the integration is active. The storefront checkboxes are optional and unchecked. Edit their labels under Build > Entry form > Marketing consent. - Email is marked subscribed only when the entrant selects the email opt-in. - SMS is marked subscribed only when a phone number is collected and the entrant selects the SMS opt-in. - A collected email or phone without consent remains non-subscribed. - For email-gated photo voting, Ask voters for marketing consent adds the same contest email opt-in to the vote form. Only voters who select it are subscribed. What gets sent UserLoop creates or updates the Omnisend contact with available name, email, phone, consent state, contest details, total entries, and referral code. It also sends UserLoop contest entry events with contest, entry, and available UTM details. A consenting identified voter is created or updated as an Omnisend email contact and sends a gallery-vote event with contest details. Anonymous and non-consented votes are not subscribed. Only entries and consented votes made after connection are sent. Historical activity is not resent automatically. Disconnect Click Disconnect on the Omnisend card to remove the active connection. This does not delete contacts, tags, or events already stored in Omnisend. Troubleshooting If a contact or event is missing: 1. Confirm the store is on Pro and Omnisend shows Connected. 2. Submit a new test entry after connecting. 3. Confirm the API key is current and can access Omnisend contacts and events. 4. Check the correct consent box during the test. 5. For SMS, confirm the contest collects a phone number and one was provided. 6. Reconnect with a current API key if the card shows an error. See Entry Settings for consent controls. For other providers, see Klaviyo Integration and Campaign Monitor Integration. See Photo Contests and Public Voting for the voter opt-in setup.

Campaign Monitor Integration

Connect Campaign Monitor with OAuth and add entrants or identified gallery voters who explicitly opt into email marketing to a selected subscriber list. The integration is available on Pro. Mobile Integrations page showing Klaviyo, Omnisend, and Campaign Monitor setup states Connect Campaign Monitor 1. Open UserLoop Contests in Shopify admin. 2. Go to Integrations. 3. Expand Campaign Monitor. 4. Click Connect with Campaign Monitor. 5. Sign in to Campaign Monitor and approve list-management and subscriber-import access. 6. After returning to UserLoop Contests, choose a Subscriber list. If the account has multiple clients, the menu identifies the client and list. 7. Click Save. The OAuth return opens the Integrations page inside the correct Shopify admin store. UserLoop refreshes the OAuth connection when required. Marketing consent Connecting Campaign Monitor automatically enables the email marketing opt-in on existing contests and on contests created while the integration is active. The checkbox is optional and unchecked. Edit its label under Build > Entry form > Marketing consent. UserLoop adds an entrant to Campaign Monitor only after they explicitly select it. A Photo upload action can also show the contest's email opt-in on an email-gated vote form; only voters who select it are added. What gets sent For consented entries and identified voters, UserLoop sends the available email and name to the selected Campaign Monitor list. Anonymous and non-consented votes are not sent. UserLoop does not force an unsubscribed person to resubscribe and does not change Campaign Monitor's existing consent-to-track value. Campaign Monitor requires a selected list. Entries made before connection are not imported automatically, and this provider does not receive the contest event stream used by Klaviyo and Omnisend. Disconnect Click Disconnect on the Campaign Monitor card to remove the active OAuth connection. This does not delete subscribers already stored in Campaign Monitor. Troubleshooting If subscribers are missing: 1. Confirm the store is on Pro and Campaign Monitor shows Connected. 2. Choose a subscriber list and click Save. 3. Submit a new test entry and select the email marketing opt-in. 4. If destination loading fails, reconnect and approve the requested Campaign Monitor access. 5. If authorization was cancelled, start Connect with Campaign Monitor again. 6. Check the person's existing status in Campaign Monitor; UserLoop does not force resubscription. See Entry Settings for consent controls. For other providers, see Klaviyo Integration and Omnisend Integration. See Photo Contests and Public Voting for the voter opt-in setup.