Submit Article Requests

Do you have a suggestion for an article you would like to see created?
Feel free to submit this form and add your suggestions to our document board.

Please fill out the contact form below and we will reply as soon as possible.

  • Appcues Certifications & Training
  • Integration Hub
  • Contact Us
  • Docs home
  • Web Experiences
  • Launchpads

Launchpad v1 Custom Install

Learn more about our custom Launchpad installation process.

Updated at July 8th, 2025

Submit Article Requests

Do you have a suggestion for an article you would like to see created?
Feel free to submit this form and add your suggestions to our document board.

Please fill out the contact form with the details about the help content you'd like to see.

  • Home

  • Installation & Developers

    • Web Experiences

      • Mobile Experiences

        • Workflows

          • Analytics & Data

            • Account Management

              • Best Practices

                • Integrations

                  • System Status

                    Table of Contents

                    Check out Launchpad v2! Installation Process Introduction Connecting Request Format Response Format

                    Check out Launchpad v2!

                    Take a look at our new and improved launchpad, the same great functionality is now available for all plan types. Spin up your in-app resource center without touching a line of code!

                     

                    Once you've made the decision to utilize Launchpad, you can decide which installation method you'll want to use depending on how far you want to customize your Launchpad. The Custom Launchpad Install offers these characteristics:

                    • Implementation difficulty is dependent on the functionalities you want to be included (on a rush for a quick implementation of Launchpad? Try our Standard Launchpad Install!) 
                    • FULL customization (want to add a widget or redirect users to a page? it's possible!) 

                    An example would be our very own 'Help' beacon in Studio. You can read more about how we used Launchpad in this article: How we used Launchpad to create a resource center.

                    Installation Process

                    The Custom Install method will only offer APIs so your development team can implement the Launchpad to your application's own preference, allowing full granular control of how it should look like! There will be no installation templates for this method, as it will have to be created on your end due to its custom nature.

                    Introduction

                    The Appcues API provides an HTTP endpoint for accessing all the content that a user is qualified to see within the Appcues Launchpad.

                    Connecting

                    The root URL for the Appcues API is https://api.appcues.com/.

                    The URL to fetch the list of content is formed using your Appcues account ID (visible from your Appcues account page) and the end user's ID (the first parameter to your site code's Appcues.identify() call), as follows:

                    https://api.appcues.com/v1/accounts/{account_id}/users/{user_id}/launchpad

                    Request Format

                    The user activity endpoint accepts only GET requests.

                    The request should contain the following query parameter:

                    url The URL of the current page the user is on. This is used for page-level filtering and should be fully encoded to ensure an accurate response. For quick testing, a URL encoder like https://meyerweb.com/eric/tools/dencoder/ can be helpful.

                    An example would be:

                    https://api.appcues.com/v1/accounts/{account_id}/users/{user_id}/launchpad?url=https://yoursite.com/dashboard

                    Request headers

                    The Authorization header is required if your account is using Identity Verification. The Authorization header should include the UserID signature and use the following format:

                    Authorization: Bearer {user id signature}

                    Response Format

                    A successful user activity submission will result in a response with status code 200, and a response body like the following:

                    {"request_id":"abc123","contents":[]}

                    request_id Request_id specified in the request, if any.

                    contents An array of content for which the user currently qualifies. Used internally by the Appcues SDK; safe for external users to ignore.

                    Example response of what you might receive (actual response may vary): 

                    {
                    "checklists":[

                    ],
                    "contents":[
                    {
                    "attributes":{
                    "created_at":1646163441985,
                    "created_by":"uRAZUSQ2mDdNDkJMTAs4u3IEmA62",
                    "id":"3211a0f6-ff2f-4feb-97a4-5fe994b8a25e",
                    "internal_name":null,
                    "name":"Localization Test",
                    "state":"PUBLISHED",
                    "steps":{
                    "34a19398-4dbb-4b1c-acd2-5f675e7c3afb":{
                    "id":"34a19398-4dbb-4b1c-acd2-5f675e7c3afb",
                    "index":1,
                    "step":{
                    "attributes":{
                    "backdrop":false,
                    "backdrop_solid_edge":false,
                    "backdrop_solid_edge_opacity":0.5,
                    "beacon_style":"hidden",
                    "hotspots":[
                    {
                    "backdrop_solid_edge_border_radius":0.0,
                    "backdrop_solid_edge_x_padding":0.0,
                    "backdrop_solid_edge_y_padding":0.0,
                    "backup_selectors":null,
                    "hide_next_button":true,
                    "html":"raw html of step",
                    "id":"a21b1c23-be6a-4551-9193-cfbbda121398",
                    "index":0,
                    "next_text":"Next",
                    "offset_x_percentage":0.08125707814269535,
                    "offset_y_percentage":0.09948320413436693,
                    "pattern":null,
                    "selector":".property-setter p:nth-of-type(1)",
                    "selector_settings":{
                    "selector":".property-setter p:nth-of-type(1)"
                    },
                    "skip_text":"Hide these tips",
                    "tooltip_alignment":null,
                    "ui_conditions":{
                    "next":null
                    },
                    "z_index_override":null
                    }
                    ],
                    "sequential":true,
                    "skippable":true,
                    "skippable_display_type":"text",
                    "style":null
                    },
                    "created_at":1646163441992,
                    "flow_id":null,
                    "id":"34a19398-4dbb-4b1c-acd2-5f675e7c3afb",
                    "migrated_from_step_id":null,
                    "name":null,
                    "next_content_id":null,
                    "parent_id":null,
                    "redirect_new_tab":false,
                    "redirect_url":null,
                    "type":"hotspot-group",
                    "updated_at":1646163441992,
                    "version_id":1646163441992
                    },
                    "step_type":"hotspot-group"
                    },
                    "a7bb2572-f410-4bf2-b672-91943bd6ac9e":{
                    "id":"a7bb2572-f410-4bf2-b672-91943bd6ac9e",
                    "index":0,
                    "step":{
                    "attributes":{
                    "backdrop":true,
                    "is_progress_bar_hidden":false,
                    "pattern_type":"modal",
                    "position":"top",
                    "skippable":true,
                    "steps":[
                    {
                    "actions_hidden":false,
                    "html":"raw html of step",
                    "id":"f2bf8d53-05c2-4d51-ad3d-f821b4d46986",
                    "is_button_centered":true,
                    "next_button_hidden":false,
                    "next_text":"Let's go!",
                    "prev_button_hidden":false,
                    "prev_text":"Cancel",
                    "step_buttons":[

                    ],
                    "step_number":1,
                    "ui_conditions":{

                    }
                    }
                    ],
                    "style":null
                    },
                    "created_at":1646163441989,
                    "flow_id":null,
                    "id":"a7bb2572-f410-4bf2-b672-91943bd6ac9e",
                    "migrated_from_step_id":null,
                    "name":null,
                    "next_content_id":null,
                    "parent_id":null,
                    "redirect_new_tab":false,
                    "redirect_url":null,
                    "type":"modal",
                    "updated_at":1646163441989,
                    "version_id":1646163441989
                    },
                    "step_type":"modal"
                    }
                    },
                    "updated_at":1646163440192,
                    "updated_by":"uRAZUSQ2mDdNDkJMTAs4u3IEmA62",
                    "version_id":null
                    },
                    "context":{
                    "locale_id":"default",
                    "locale_name":"default"
                    },
                    "created_at":1646163441985,
                    "format_version":2,
                    "id":"3211a0f6-ff2f-4feb-97a4-5fe994b8a25e",
                    "migrated_from_step_id":null,
                    "name":"Localization Test",
                    "next_content_id":null,
                    "parent_id":null,
                    "redirect_new_tab":false,
                    "redirect_url":null,
                    "type":"journey",
                    "updated_at":1646163440192,
                    "version_id":1646163440192
                    }
                    ],
                    "experiences":[

                    ],
                    "performed_qualification":true,
                    "profile":{
                    "_ABGroup":2
                    },
                    "qualification_reason":null,
                    "request_id":null
                    }

                    Was this article helpful?

                    Yes
                    No
                    Give feedback about this article

                    Related Articles

                    • Self-hosting the Appcues SDK Bootstrap Script
                    • Appcues Public API
                    Appcues logo

                    Product

                    Why Appcues How it works Integrations Security Pricing What's new

                    Use cases

                    Appcues Integration Hub User Onboarding Software Feature Adoption Software NPS & Surveys Announcements Insights Mobile Adoption

                    Company

                    About
                    Careers

                    Support

                    Developer Docs Contact

                    Resources

                    The Appcues Blog Product Adoption Academy GoodUX Case studies Webinar Series Made with Appcues Appcues University

                    Follow us

                    Facebook icon Twitter icon grey Linkedin icon Instagram icon
                    © 2022 Appcues. All rights reserved.
                    Security Terms of Service Privacy Policy

                    Knowledge Base Software powered by Helpjuice

                    Expand