skills/sales-questionpro/SKILL.md
QuestionPro platform help — self-serve survey and research suite (questionpro.com): 30-52 question types, branching logic, 100+ languages, AskWhy, CX/NPS and employee 360 modules, SPSS export, a QuestionPro Audience consumer panel, and a documented v2 REST API (api-key header, page/perPage, regional US/EU/CA hosts) plus per-survey webhooks. Use when QuestionPro API calls suddenly return 429 after working fine, hunting the v2 base URL or the api-key header, pulling QuestionPro responses into a warehouse or CRM, wiring a survey webhook to fire on completion, deciding whether the free 200-response tier is enough, budgeting a QuestionPro Audience panel order, finding conjoint/MaxDiff/TURF greyed out on your plan, or comparing QuestionPro vs SurveyMonkey vs Qualtrics. Do NOT use for cross-tool NPS/CSAT/VoC strategy (use /sales-customer-feedback), picking a validation method for a startup idea (use /sales-idea-validation), or enterprise XM (use /sales-qualtrics).
npx skillsauth add sales-skills/sales sales-questionproInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Help the user with QuestionPro — survey design, distribution, the Audience panel, response analytics, and the v2 REST API / webhook automation surface.
If references/learnings.md exists, read it first for accumulated platform knowledge.
Ask the user:
What do you need help with?
What's your situation?
What plan are you on? (Essentials/free, Advanced, Team Edition, Research Suite, trial, not sure)
If the user's request already provides enough context, skip to the relevant step. Lead with your best-effort answer, then ask 1-2 clarifying questions at the end.
If the request maps to a specialized skill, route:
/sales-customer-feedback {your question}/sales-idea-validation {your question}/sales-surveymonkey {your question}/sales-zoho-survey {your question}/sales-qualtrics {your question}/sales-deliverability {your question}Otherwise, answer directly using the reference below.
Read references/platform-guide.md for the full platform reference — modules, pricing and plan
gates, the Audience panel, integrations, and how QuestionPro compares to alternatives.
Answer using only the relevant section. Don't dump the full reference.
For API or webhook questions, also read references/questionpro-api-reference.md — v2 REST
endpoints, auth, limits, pagination, response data model, and webhook creation.
You no longer need the full platform guide — focus on the user's specific situation.
/sales-idea-validation for a real
behavior test.requestHeader plus an unguessable URL, and
verify it server-side. Never imply a signature header exists. Retry behavior is undocumented, so
pair every webhook with a nightly reconciliation query. Create it with POST /surveys/{id}/webhooks
and always state both the payload template (requestJSON, e.g. the {complete_response} macro) and
the trigger point (location, e.g. LOCATION_AFTER_SURVEY) — the body is a template the user
defines, so there is no fixed payload schema to code against.perPage=1000, not the default 100, on any bulk read — same data, one-tenth the quota burn.If you discover a gotcha, workaround, or tip not covered in references/learnings.md, append it there
with today's date.
Best-effort from research (2026-07) — review these, especially plan-gated features and pricing, which change.
429 means two different things, and only one of them is retryable. QuestionPro meters both a burst rate limit (300 calls/60s per key, 2,400/60s per org) and a finite lifetime quota of API calls per license (Trial 500, Advanced 5,000, Team Edition 10,000, Research/CX/Communities/Workforce 20,000). Once the quota is spent, every subsequent call 429s forever. This is the single most confusing thing about the API: an integration that worked all week dies permanently, and the status code implies "slow down" when the real answer is "buy more calls."
Conjoint and MaxDiff are Research Suite only — quote-only, and untrialable. Reported ~$5–10k/yr with a 10-user seat minimum, so a two-person research team pays the full freight. They cannot be tested without booking a sales demo. If someone is choosing QuestionPro for conjoint/MaxDiff on a startup budget, that's the wrong tool — say so.
The free Essentials tier has no listed API quota. It's absent from the limits table entirely — don't promise API access on the free plan. Free is also capped at 200 responses per survey.
Team Edition is cheaper per seat than Advanced ($83 vs $99/user/mo) but requires 5 seats — so the real floor is ~$415/mo. A solo user pays more per seat than a team does.
Webhooks have no HMAC signature or signing secret. Authenticate with your own shared secret in
requestHeader and an unguessable URL. Retry/backoff on receiver failure is undocumented — never
assume at-least-once delivery; reconcile.
requestJSON is a template, not a schema. {complete_response} is a macro QuestionPro expands.
The delivered payload shape is whatever you configured, so there's no single fixed webhook schema.
Surveys, CX, and Communities each have a separate API and a separate key. A Surveys key 401s against CX. CX keys are generated inside CX, not under Integration » Developer API.
Keys are data-center-bound. US api.questionpro.com, Canada ca.questionpro.com, EU
eu.questionpro.com. A key minted in one region won't authenticate against another — and the v2
docs never expand the {{env}} placeholder, so people guess wrong.
Audience panel is bid/quote-based with no published rate. Cost-per-complete, incentives included; third-party panel completes typically run $3–15 each. Shorter surveys cost less; tighter targeting costs more. There is no panel API — buying is a UI flow.
Expect aggressive sales email after signup, plus recurring reviewer complaints about price vs value, 7–10 hour support response times, and a cluttered UI.
Response-parsing pitfalls live in the API reference. The answerValues[].value object shape,
non-ISO timestamps, drifting pagination field names, the custom1..custom5 join keys, the
dataQuality/duplicate panel-quality fields, and the deprecated v1 RPC API are all documented in
references/questionpro-api-reference.md (Data-model & parsing pitfalls) — read it before writing a parser.
Self-improving: If you discover something not covered here, append it to references/learnings.md
with today's date.
/sales-customer-feedback — NPS/CSAT/VoC strategy across all tools — survey design, response rates, closed-loop feedback, platform comparison. Install: npx skills add sales-skills/sales --skill sales-customer-feedback -a claude-code/sales-idea-validation — Validating an idea before building — where a paid survey panel does and doesn't count as evidence. Install: npx skills add sales-skills/sales --skill sales-idea-validation -a claude-code/sales-surveymonkey — SurveyMonkey platform help — the closest self-serve peer, with REST API v3 and a per-response Audience panel. Install: npx skills add sales-skills/sales --skill sales-surveymonkey -a claude-code/sales-zoho-survey — Zoho Survey platform help — the budget floor of this class, but without a real API. Install: npx skills add sales-skills/sales --skill sales-zoho-survey -a claude-code/sales-qualtrics — Qualtrics XM platform help — the enterprise research step up. Install: npx skills add sales-skills/sales --skill sales-qualtrics -a claude-code/sales-do — Not sure which skill to use? The router matches any sales objective to the right skill. Install: npx skills add sales-skills/sales --skill sales-do -a claude-codeUser: "Our QuestionPro sync ran fine for a week and now every call returns 429. I added exponential backoff and it's still 429. What's wrong?"
Approach: Backoff already failing is the tell — this is the lifetime API quota, not the burst limit. Advanced includes 5,000 total calls (Team 10,000, Trial 500), and a once-a-minute poll is ~43,200/month, so it's spent in under three days, permanently. Have them check remaining calls under Integration » Developer API. The fix is architectural: switch to a webhook (POST /surveys/{id}/webhooks, location: LOCATION_AFTER_SURVEY) which costs zero calls per delivery, and reserve API reads for a nightly reconcile at perPage=1000. Warn there's no HMAC signature (authenticate with a shared secret in requestHeader + an unguessable URL) and retry is undocumented, so keep the reconcile.
User: "I'm a solo founder. I signed up for QuestionPro to run a conjoint study on pricing but I can't find conjoint anywhere in the builder. Where is it?"
Approach: It's not hidden — conjoint (and MaxDiff) are Research Suite only: quote-only (~$5–10k/yr), 10-seat minimum, no trial, so a solo founder would buy 10 seats for it. Say plainly they picked the tool for a capability they can't reach on any plan they'd buy. Redirect: OpinionX does free conjoint-style pricing studies, and route the pricing question to /sales-idea-validation since "what should I price this at" usually wants a real behavior test (price-tiered landing page + real checkout). Caveat: conjoint measures stated preference, never that anyone will actually pay.
User: "I need 800 responses from US homeowners aged 30-55 to test a product concept. What'll QuestionPro Audience cost and how do I set it up?"
Approach: There's no published per-response rate — Audience is cost-per-complete (incentives included), bought by configuring a sample or requesting a bid. Third-party completes typically run $3–15 each, so 800 is plausibly $2,400–12,000 depending on incidence and length; the real number appears once configured. Levers: shorter surveys cost less, and every extra targeting filter raises the rate. Filter delivered data on the built-in dataQuality, dataQualityScore, and duplicate fields before analysis. Category caveat: 800 "I'd buy this" answers are stated preference at scale, not demand — take the go/no-go to a real behavior test (/sales-idea-validation).
perPage=1000 (10× fewer calls than the default 100).api.questionpro.com · Canada ca.questionpro.com · EU eu.questionpro.com — keys aren't portable and the v2 docs leave {{env}} unexpanded.api-key (not Authorization/X-API-Key). v1 deprecated 2021-07-15 (v2 paths look like /a/api/v2/surveys/{id}/responses). 403 = valid key, tier/role lacks permission./sales-idea-validation.location: LOCATION_AFTER_SURVEY and a real macro like {complete_response} in requestJSON (an empty template delivers nothing). There's no HMAC — authenticate the shared secret in requestHeader, don't reject unsigned. Blank columns = the answerValues[].value object trap (see the API reference's parsing pitfalls). Add a nightly GET /responses reconcile since retry is undocumented.tools
Wizlogo (wizlogo.com) platform help — a budget online logo maker (template/style-variation, marketed as "AI") plus a hub of FREE branding tools (business-name, blog-name and slogan generators, business-card maker, invoice generator, color converter, domain search). The pricing traps: the FREE logo is PERSONAL-USE-ONLY; the two cheap paid tiers are RASTER PNG/JPG only — Single (~€39.99 one-time) and Unlimited (~€3.99 per WEEK, recurring) — and VECTOR (SVG/PDF/EPS) is gated to the ~€299.99 Enterprise tier, which also bundles human designer edits and a social kit. Transparent PNG is on all paid plans. Use when making a Wizlogo logo, understanding free-vs-paid or personal-vs-commercial use, which tier unlocks vector/SVG for print, the weekly-subscription billing trap, its free name/slogan generators, or whether it has an API (UI-only — no public API, webhooks, Zapier or MCP). Do NOT use to just generate the business name (use /sales-namelix) or to compare/validate branding tools (use /sales-idea-validation).
tools
VistaPrint platform help (vistaprint.com, a Cimpress company) — the small-business design + print + digital-marketing platform: a free AI Logomaker (4 generations, 60 more after free sign-up) exporting SVG/PNG/PDF at 4000x4000 with no watermark, a free Brand Kit, business cards/flyers/signage/apparel/promo print, and a website builder. THE RIGHTS TRAP: VistaPrint states NO intellectual-property rights transfer on an AI-generated logo — you get usage rights but CANNOT register it for trademark or copyright; only its human designer service transfers full IP. Use when making a VistaPrint logo, asking if you own or can trademark it, running out of AI logo credits, printed colors not matching the screen, bleed/DPI/font file-prep rejections, or asking whether VistaPrint has an API (the consumer site does not — automation runs through the parent Cimpress Open partner-fulfilment API). Do NOT use for Vista Social scheduling (use /sales-vistasocial) or comparing logo tools market-wide (use /sales-idea-validation).
tools
Turbologo (turbologo.com) platform help — a budget AI/DIY logo maker: enter a business name + industry, pick icons and colors, and it proposes logo concepts you refine in an in-browser editor, then pay a one-time fee to download (designing is free, previews are watermarked, downloading is the paywall). Vector SVG/PDF is gated to the mid tier and up; the top tier adds a brand kit (business cards, letterheads, email signatures, social assets). Use when generating a logo in Turbologo, choosing which download tier to buy, vector SVG vs raster PNG, removing the free watermark, the time-limited edit-after-purchase window, pay-to-download pricing questions, whether an AI logo is yours to trademark, or whether Turbologo has an API to bulk-generate logos (it is UI-only — no public API, webhooks, Zapier, or MCP). Do NOT use to generate the business name (use /sales-namelix), compare or validate branding tools across the market (use /sales-idea-validation), or build wider marketing creative (use /sales-canva).
tools
Online Logo Maker (onlinelogomaker.com) platform help — a long-standing free/freemium DIY logo maker: build the mark yourself from icons, shapes, text, and fonts — MANUAL/template-based, NOT enter-a-name-get-AI-concepts. The free pack downloads a LOW-RES 300px PNG with a background; vector SVG, transparent PNG, and 2000px high-res are gated to a one-time lifetime Premium pack (not a subscription). The free tier's commercial-use rights are disputed by reviewers — clean ownership effectively needs Premium, and a shared-icon mark can be non-distinctive. Use for building/editing a logo here, free download vs Premium, vector SVG or transparent PNG, one-time pricing, commercial-use/trademark terms, near-namesake confusion (NOT LogoMaker.com / LogoMakr / Logomakerr.ai), or whether it has an API (UI-only — no API, webhooks, Zapier, MCP). Do NOT use to generate the business name (use /sales-namelix), compare branding tools across the market (use /sales-idea-validation), or build wider creative (use /sales-canva).