--- stage: Growth group: Acquisition info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/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. ## Set up your development environment 1. Set up GDK with a connection to your local CustomersDot instance. 1. Set up CustomersDot to talk to a staging instance of Workato. 1. Set up CustomersDot using the [normal install instructions](https://gitlab.com/gitlab-org/customers-gitlab-com/-/blob/staging/doc/setup/installation_steps.md). 1. Set the `CUSTOMER_PORTAL_URL` environment variable to your local (or ngrok) URL of your CustomersDot instance. 1. Place `export CUSTOMER_PORTAL_URL='https://XXX.ngrok.io/'` in your shell `rc` script (`~/.zshrc` or `~/.bash_profile` or `~/.bashrc`) and restart GDK. 1. Enter the credentials on CustomersDot development to Workato in your `/config/secrets.yml` and restart. Credentials for the Workato Staging are in the 1Password Subscription portal vault. The URL for staging is `https://apim.workato.com/gitlab-dev/services/marketo/lead`. ```yaml workato_url: "<%= ENV['WORKATO_URL'] %>" workato_client_id: "<%= ENV['WORKATO_CLIENT_ID'] %>" workato_client_secret: "<%= ENV['WORKATO_CLIENT_SECRET'] %>" ``` ### Set up lead monitoring 1. Set up access for the Marketo sandbox, similar [to this example request](https://gitlab.com/gitlab-com/team-member-epics/access-requests/-/issues/13162). ### Manually test leads 1. Register a new user with a unique email on your local GitLab instance. 1. Send the PQL lead by submitting your new form or creating a new trial or a new hand raise lead. 1. Use easily identifiable values that can be easily seen in Workato staging. 1. Observe the entry in the staging instance of Workato and paste in the merge request comment and mention. ## Troubleshooting - Check the application and Sidekiq logs on `gitlab.com` and CustomersDot to monitor leads. - Check the `leads` table in CustomersDot. - Ask for access to the Marketo Sandbox and validate the leads there, [to this example request](https://gitlab.com/gitlab-com/team-member-epics/access-requests/-/issues/13162). ## 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, ...