Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-02-18 12:45:46 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-02-18 12:45:46 +0300
commita7b3560714b4d9cc4ab32dffcd1f74a284b93580 (patch)
tree7452bd5c3545c2fa67a28aa013835fb4fa071baf /doc/development/product_qualified_lead_guide
parentee9173579ae56a3dbfe5afe9f9410c65bb327ca7 (diff)
Add latest changes from gitlab-org/gitlab@14-8-stable-eev14.8.0-rc42
Diffstat (limited to 'doc/development/product_qualified_lead_guide')
-rw-r--r--doc/development/product_qualified_lead_guide/index.md94
1 files changed, 94 insertions, 0 deletions
diff --git a/doc/development/product_qualified_lead_guide/index.md b/doc/development/product_qualified_lead_guide/index.md
new file mode 100644
index 00000000000..f9d18bacecd
--- /dev/null
+++ b/doc/development/product_qualified_lead_guide/index.md
@@ -0,0 +1,94 @@
+---
+stage: Growth
+group: Conversion
+info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
+---
+
+# Product Qualified Lead (PQL) development guide
+
+The Product Qualified Lead (PQL) funnel connects our users with our team members. Read more about [PQL product principles](https://about.gitlab.com/handbook/product/product-principles/#product-qualified-leads-pqls).
+
+A hand-raise PQL is a user who requests to speak to sales from within the product.
+
+## Embed a hand-raise lead form
+
+[HandRaiseLeadButton](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/app/assets/javascripts/hand_raise_leads/hand_raise_lead/components/hand_raise_lead_button.vue) is a reusable component that adds a button and a hand-raise modal to any screen.
+
+You can import a hand-raise lead button the following way.
+
+```javascript
+import HandRaiseLeadButton from 'ee/hand_raise_leads/hand_raise_lead/components/hand_raise_lead_button.vue';
+
+export default {
+ components: {
+ HandRaiseLeadButton,
+...
+</script>
+
+<template>
+
+<hand-raise-lead-button />
+
+```
+
+The hand-raise lead form accepts the following parameters via provide or inject.
+
+```javascript
+ provide: {
+ user: {
+ namespaceId,
+ userName,
+ firstName,
+ lastName,
+ companyName,
+ glmContent,
+ },
+ },
+```
+
+### Monitor the lead location
+
+When embedding a new hand raise form, use a unique `glmContent` or `glm_content` field that is different to any existing values.
+
+We currently use the following `glm content` values:
+
+| glm_content value | Notes |
+| ------ | ------ |
+| discover-group-security | This value is used in the group security feature discovery page. |
+| discover-group-security-pqltest | This value is used in the group security feature discovery page [experiment with 3 CTAs](https://gitlab.com/gitlab-org/gitlab/-/issues/349799). |
+| discover-project-security | This value is used in the project security feature discovery page. |
+| discover-project-security-pqltest | This value is used in the project security feature discovery page [experiment with 3 CTAs](https://gitlab.com/gitlab-org/gitlab/-/issues/349799). |
+| group-billing | This value is used in the group billing page. |
+| trial-status-show-group | This value is used in the top left nav when a namespace has an active trial. |
+
+### Test the component
+
+In a jest test, you may test the presence of the component.
+
+```javascript
+expect(wrapper.findComponent(HandRaiseLeadButton).exists()).toBe(true);
+```
+
+## PQL lead flow
+
+The flow of a PQL lead is as follows:
+
+1. A user triggers a [`HandRaiseLeadButton` component](#embed-a-hand-raise-lead-form) on `gitlab.com`.
+1. The `HandRaiseLeadButton` submits any information to the following API endpoint: `/-/trials/create_hand_raise_lead`.
+1. That endpoint reposts the form to the CustomersDot `trials/create_hand_raise_lead` endpoint.
+1. CustomersDot records the form data to the `leads` table and posts the form to [Platypus](https://gitlab.com/gitlab-com/business-technology/enterprise-apps/integrations/platypus).
+1. Platypus posts the form to Workato (which is under the responsibility of the Business Operations team).
+1. Workato sends the form to Marketo.
+1. Marketo does scoring and sends the form to Salesforce.
+1. Our Sales team uses Salesforce to connect to the leads.
+
+## Monitor and manually test leads
+
+- Check the application and Sidekiq logs on `gitlab.com` and CustomersDot to monitor leads.
+- Check the `leads` table in CustomersDot.
+- Set up staging credentials for Platypus, and track the leads on the [Platypus Dashboard](https://staging.ci.nexus.gitlabenvironment.cloud/admin/queues/queue/new-lead-queue).
+- Ask for access to the Marketo Sandbox and validate the leads there.
+
+## Trials
+
+Trials follow the same flow as the PQL leads.