If typebot offers an export/import, then you can use that. Otherwise, you will have to migrate the database (https://docs.cloudron.io/guides/import-postgresql/) and the files manually . Just make sure the typebot custom package and the cloudron package have the same typebot version.
@saranade Indeed you can export all your flows in Typebot, and then import them in your new instance.
So, in any typebot, simply click the 3 dots menu bar on the top right of the typebot's canvas, then choose export flow.
It will send you a json file to download on your computer.
Then, you can import the files in your new instance when creating a new typebot you simply choose import file.
There are basically two apps in one with Typebot. There's the "builder" app which is the admin interface used to create and manage bot flow (this has the auth tied to it), and the "viewer" app, which is where published bots can be viewed by the public. I don't think you can add auth to the viewer URLs.
First: you must have a s3 storage like minio.
Second: You need a bucket and some credentials configured in minio.
Third: add the credentials for the s3 storage to the typebot env.sh file. Remember to add export to every key=value. (= export S3_ENDPOINT=minio-api.example.org) Restart the app.
fourth: collect an image in your flow. insert the image into a variable.
If you want to show the image to the user, add an image as a bubble and insert the variable into the link field.
You are amazing to have solved this and fixed it so quickly, @nebulon.
To get the typebots you were running working again, you can try this:
Restore from an earlier working backup
Navigate to your typebot flow and at the three dots at the top right .... export the flow. Save it in a safe place.
Reinstall Typebot in Cloudron
create a new typebot by selecting the import flow
When you try and re-publish, it will give the typebot a new address, so you might like to edit that option to set it to your previously published address:
@BrutalBirdie yes, I think that needs to be fixed. Obviously, nothing is right/wrong, but this is just a convention to guide people and makes support simpler. The convention is:
If the app uses environment variables, just use env.sh pattern and expect people to add export keyword. A motivation for this is that in many app doc pages, they have export and people copy/paste it.
If the app uses .env , dotenv and other styles, just use env. Same rationale as above.
Use dot files in /app/data only for package internal files. Do not use for app files. For example, it would be htaccess and not .htaccess if needed in /app/data/ . But, we use .initialized since it's a package thing and not related to the app.
Any deviation from above is mostly just oversight...