Share a Pipeline Prototype
Generate a shareable link to let others try your pipeline without giving them access to Haystack Enterprise Platform. Real users can run searches and leave feedback to help you improve your pipeline.
About This Task
You can make your prototype accessible to anyone with the link, without needing to set up Haystack Enterprise Platform accounts, or you can restrict access to people in your Haystack Platform organization.
What Am I Sharing?
Users with access to your prototype can:
- View a read-only prototype page.
- Run searches on your pipeline and add feedback to search results.
- Share the prototype link.
They cannot edit or change anything in Haystack Enterprise Platform. They gain read-only access to the Search page that uses your pipeline and to the following assets:
- File metadata from the search if you enable metadata filters.
- Documents returned from the search.
- Document metadata from the search.
- The name of the pipeline you shared.
- Any metadata for your pipeline in the document store if you enable the metadata filters for the prototype.
If a user without a Haystack Platform account or not logged in to Haystack Enterprise Platform opens a shared pipeline link, they only see that specific pipeline. If a logged-in Haystack Platform user opens the same link, they see all the deployed pipelines in the workspace they have access to.
Prototypes With Login Required
If you configure the prototype to require login, a user must be a member of your Haystack Platform organization to view the prototype. They'll be requested to log in when they paste the link into the browser window.
If your organization uses SSO and you share prototypes with colleagues who don't have accounts yet, you can let people on your SSO email domains sign themselves up through the link, so you don't have to invite each person. An organization admin turns on Allow sign-up from shared links on the SSO connection. Then, when someone opens the link:
- A visitor who isn't a member yet signs in with SSO and joins the organization with the
prototype_userrole in the prototype's workspace. This role lets them use only the prototypes shared in that workspace. - A visitor who is already a member of the workspace signs in as themselves.
- Everyone else uses the link as before.
For details, see Manage an SSO Connection.
Prototype Lifespan
When sharing a pipeline prototype, you can specify when the link to your prototype should expire. If you want to stop sharing the prototype, you can do so at any time by simply deleting the generated link.
Prototype Style
Use the Style tab in the Share prototype window to customize your prototype look and feel. Add a brand logo and colors.
Here's what a customized prototype where users can view source documents may look like:

Do the Users Need a Haystack Enterprise Platform Account?
If the prototype is not set to require login, anyone with the prototype link can use the pipeline right away. They don't need to create or have a Haystack Platform account.
Visitors without an account can also wake a shared service that's in standby, so they can try it without waiting for you to wake it. When they open the link, they wake the service from the prototype page, and the page leaves the standby state once the service is up. A prototype link can only wake the service it was created for. If the prototype requires login, visitors must still log in before they can wake the service.
Collecting Feedback
When testing your pipeline, users can provide feedback on the answers the pipeline returns. You can then view this feedback on the pipeline details page, export it to a file, or retrieve it with the REST API. Feedback can show you how to optimize your pipeline for better performance.
File Upload in Prototypes
You can allow prototype users to upload files directly in the search interface. The file upload option only appears when these conditions are met:
- You enable Allow file uploads in the prototype settings.
- The pipeline's
Inputcomponent is configured to accept files. - You enable the setting that lets users see the source documents.
If the pipeline is not set up to receive file inputs, the upload option does not appear even if you enable it in the prototype settings.
Without the source documents setting, visitors don't see the upload option, even when Allow file uploads is on. Make sure the pipeline version that answers queries has a files input: the deployed version, or the default version if the pipeline isn't deployed. Prototypes shared from a service may not show the upload option yet.
Updating a Shared Pipeline
If you want to change a shared deployed pipeline, you'll need to undeploy it, make your changes, and deploy it again. The sharing link stays the same — let your users know the pipeline may not respond while it's being redeployed.
If you share a service, publishing a new pipeline version to the service doesn't affect the sharing link or traffic. The link stays valid and users automatically use the new version once it's live.
Prerequisites
- You must have a deployed pipelineor an active serviceso that users can run queries and test it out.
- Set the right expectations for your users. For tips on doing this, see Guidelines for Onboarding Your Users.
Share a Deployed Pipeline Prototype
-
In Haystack Enterprise Platform, click Pipelines.
-
Find the pipeline you want to share, and click Playground next to it.
-
In Playground, click Share in the top right corner. A window with prototype settings opens.
-
On the Settings tab:
- Set the link expiration time.
- Add any notes to your users. These can be guidelines on how to use the prototype, things they should pay attention to, and so on. These notes are shown on the prototype page the users open with your link.
- Decide if the prototype requires login. If you enable this option, only users from your Haystack Platform organization will be able to use the prototype after they log in.
- Decide if you want to enable metadata filters. These are the metadata in your documents. They act as search filters.
- Choose if you want the users to be able to see the source documents.
- Optionally, enable Allow file uploads if you want prototype users to upload files during their search. This option only takes effect when the pipeline's
Inputcomponent is configured to accept files. It also needs the option that lets users see source documents.
- Optionally, on the Style tab, upload your logo and choose your brand colors. Supported logo formats are SVG, JPEG, and PNG. Your logo shows in the bottom left corner of the shared prototype, and your color is used to highlight the generated answer.
- Generate and copy the link. You can now send it to anyone you like.
Share a Service
The service must be active before you can share it.
- In Haystack Enterprise Platform, click Gateway.
- Click the name of the service you want to share.
- On Overview, click Share prototype. A window with prototype settings opens.
You can also open the window from Overview by clicking Share a test link in the Try this service card, or from Connect by clicking Share in the Test this service panel.
- On the Settings tab:
- Set the link expiration time.
- Add any notes to your users. These can be guidelines on how to use the prototype, things they should pay attention to, and so on. These notes are shown on the prototype page the users open with your link.
- Decide if the prototype requires login. If you enable this option, only users from your Haystack Platform organization will be able to use the prototype after they log in.
- Decide if you want to enable metadata filters. These are the metadata in your documents. They act as search filters.
- Choose if you want the users to be able to see the source documents.
- Optionally, enable Allow file uploads if you want prototype users to upload files during their search. This option only takes effect when the pipeline's
Inputcomponent is configured to accept files. It also needs the option that lets users see source documents.
- Optionally, on the Style tab, upload your logo and choose your brand colors. Supported logo formats are SVG, JPEG, and PNG. Your logo shows in the bottom left corner of the shared prototype, and your color is used to highlight the generated answer.
- Generate and copy the link. You can now send it to anyone you like.
Set Default Runtime Parameters for a Service Link
Use default runtime parameters to share one service in different configurations without creating a copy of the pipeline. For example, you can share a link that always searches only the Science collection of your documents, and another link that searches the History collection.
-
In the Share prototype window for the service, on the Settings tab, enter the parameters in the Default runtime parameters field as a JSON object that maps component names to their input parameters, as in the pipeline
run()method. Use the same format as for runtime parameters in a query. For example:{"trove_selector": {"trove": "Science"}}Replace
trove_selectorwith the name of a component in your pipeline, andtrovewith one of its input parameters.The field is optional. If the text isn't a valid JSON object, an error appears below the field and Generate is disabled until you fix it.
-
Generate and copy the link. If you edit the field for an existing link, the change is saved when you leave the field.
Every query sent through the link uses these parameters. How they combine with parameters sent by the person using the link depends on whether runtime parameters are enabled for the link:
- Runtime parameters disabled: The link is pinned to your defaults. A query that sends its own runtime parameters is rejected with a 403 error.
- Runtime parameters enabled: Parameters in the query are merged on top of your defaults, key by key, including nested keys. The query's value wins when both define the same key. Keys the query doesn't set keep your default values.
For example, with the default {"trove_selector": {"trove": "Science", "top_k": 5}}, a query that sends {"trove_selector": {"trove": "History"}} runs with trove set to History and top_k set to 5.
The defaults apply to search, chat, and their streaming variants. You can also set default_runtime_params when you create or update a shared prototype through the API. For details, see the API reference.
Stop Sharing a Prototype
You can revoke access to your prototype by deleting the link.
For a pipeline:
-
In Haystack Enterprise Platform, click Pipelines.
-
Find the pipeline you want to stop sharing, click the more actions menu next to it, and choose Share.
-
Click Delete link.

For a service:
- In Haystack Enterprise Platform, click Gateway.
- Click the name of the service you want to stop sharing.
- On Overview, click Share prototype.
- Click Delete link.
When you delete the link, nobody can access the prototype anymore. You need to generate a new link to share the prototype again.
Troubleshoot a Shared Prototype Link
If a visitor can't open your shared prototype link, ask them which reason the page shows, then use the table to fix it.
| Reason shown | Cause | What to do |
|---|---|---|
| Link not valid | The link is incomplete or broken, for example, part of it was cut off when it was copied. | Send the link again. Copy it from the Share prototype window. |
| Link no longer shared | The link was deleted, or the prototype can no longer be found or accessed with this link, for example because it expired. | If the visitor still needs access, generate a new link. |
| Couldn't load prototype | A temporary problem, such as a network failure or a busy server, stopped the prototype from loading. | Click Try again, which reopens the shared link. If the problem continues, try again later. |
Try again appears only for Couldn't load prototype.
Related Information
Was this page helpful?