← Todas las guías nativas

Xodera Plugins · Bubble Native

Xodera B2 Files Native

Mantenga los archivos adjuntos de la aplicación en su propio almacenamiento Backblaze B2. Permita que los usuarios autorizados suban, naveguen y descarguen archivos, y elija explícitamente cuándo un archivo puede compartirse públicamente.

Public beta guides · Haptics instructions are in its Bubble listing

Public beta offer: free Bubble install · 7-day card trial, then US$1.50/month per plugin/project.

Documentación revisada 6 noviembre 2026

Ejemplos prácticos

Almacenar un archivo adjunto de trabajo en el bucket privado del desarrollador

Un trabajo Bubble necesita una referencia de almacenamiento duradera sin tratar una URL de descarga que expira como la identidad del archivo.

`bucket_binding_id = an allowed binding to your own private bucket`; los dinámicos `local_uri`, `display_name`, `mime_type` y `expected_size` describen el archivo local seleccionado.

Planificado: Check local source → Upload file → espere a `upload_verified`. Su flujo de trabajo luego almacena `asset_ref` y los metadatos en el registro de trabajo propio.

Utilice `asset_ref`, `size_bytes`, `mime_type` y `upload_status`. Más tarde, Resolve private read puede proporcionar una URL temporal para un uso autorizado.

Si el guardado en la base de datos falla después de `upload_verified`, reintente la actualización de la BD con la misma referencia de activo en lugar de otra carga. Verifique el resultado de `upload_pending` usando Check or recover upload status y el mismo ID de carga.

Planificado. Su cuenta B2 paga los cargos de almacenamiento y descarga.

Cree una galería de archivos adjuntos propia con registros de archivos duraderos.

Una galería de archivos necesita nombres, tipos y paginación, así como una forma de abrir el recurso seleccionado más tarde.

El registro File de su aplicación almacena un `asset_ref` aceptado, el nombre para mostrar, MIME y la relación propietario/trabajo después de una carga verificada; no utilice una URI local como su identidad en la nube.

Planificado: use List my B2 files para crear la lista de adjuntos. asset_refs identifica los archivos; los valores en el mismo índice proporcionan sus nombres y tipos. Seleccionar un archivo pasa su asset_ref a Get asset metadata o Download accepted version.

`has_more` y `next_cursor` pertenecen a la consulta actual. Una descarga completada devuelve `local_output_uri`; es una copia local del dispositivo, no un enlace público permanente.

Restablezca la paginación después de cambios en la vinculación/cuenta/consulta. En `transfer_error`, conserve el elemento de archivo existente y muestre `error_code`; no lo reemplace silenciosamente con otra versión del proveedor.

Planificado. Su cuenta B2 paga los cargos de almacenamiento y descarga.

Haga que la publicación y la eliminación de versiones exactas sean deliberadas.

El personal no debe exponer accidentalmente un adjunto privado ni eliminar todas las versiones al reemplazar una imagen.

`asset_ref = the selected accepted version`; la vinculación del bucket y los permisos de archivo de la aplicación deben permitir la operación solicitada.

Muestre la visibilidad actual, solicite una confirmación explícita, luego Change public sharing. Para la eliminación, invoque Delete accepted version con confirmación; mantenga los metadatos de la aplicación hasta que se conozca el resultado confirmado.

Después de `share_changed`, consuma `visibility` y `public_url` solo cuando el uso compartido público haya sido explícitamente autorizado. Después de `delete_completed`, actualice el registro de archivo propio; `delete_pending` no es una eliminación final.

Compruebe el resultado de una operación incierta en lugar de asumir el éxito. Las URL de lectura del proveedor emitidas previamente pueden seguir siendo válidas hasta su vencimiento; eliminar una fila de la base de datos o desactivar el uso compartido no recupera los bytes ya descargados.

Planificado. Su cuenta B2 paga los cargos de almacenamiento y descarga.

Lo que funciona ahora

Plugin planificado. No está instalado ni disponible para su uso todavía. La guía a continuación muestra el flujo de trabajo de archivos previsto.

Crea el flujo de trabajo

Planificado

Flujo de trabajo planificado. No está disponible aún en la beta actual.

Estos ejemplos usan registros de aplicación como Lesson, Message y Order. Reemplácelos con sus propios tipos de datos y nombres de elementos. Las direcciones de medios de ejemplo deben ser sustituidas por sus propios archivos.

  1. Planificado: en la configuración de su proyecto, elija su almacenamiento B2 y el bucket permitido. Defina su privacidad, prefijo de carpeta y los tipos y tamaños de archivo aceptados.

  2. Utilice List B2 bindings para mostrar las opciones de almacenamiento permitidas. Use List my B2 files para mostrar los archivos del usuario actual y Get my B2 file info para obtener detalles.

  3. Elija un archivo. Configure bucket_binding_id, local_uri, display_name, mime_type y expected_size, luego ejecute Upload file. Muestre el progreso, pero espere a upload_verified antes de considerar el archivo como guardado.

  4. Guarde asset_ref en el registro de su aplicación. Úselo para Get asset metadata, Resolve private read o Download accepted version. Change public sharing y Delete accepted version requieren una confirmación separada.

Diagrama de flujo — no es una captura de pantalla de la aplicación

Configura una vez

La activación de clave está prevista para este complemento. Cree o elija su proyecto de aplicación Bubble en BestPlugins → Dashboard → Plugins. Elija Xodera B2 Files Native, copie su clave, luego abra Bubble → Plugins → Xodera B2 Files Native y péguela en project_api_key. Guarde una vez; luego use las acciones a continuación. Cada complemento en cada proyecto tiene su propia clave.

Utilice su propia cuenta Backblaze B2 y elija el bucket para esta aplicación. Decida quién puede leer y subir archivos. Guarde los nombres de los campos de usuario sí/no relevantes en b2_reader_permission_field y b2_writer_permission_field; los valores predeterminados son b2_files_reader y b2_files_writer. Sólo un administrador autorizado debe modificar esos permisos de usuario.

Configura una vez
  1. Crea o elige tu proyecto de aplicación Bubble en BestPlugins → Dashboard → Plugins.
  2. Elige este complemento y copia su clave de proyecto.
  3. Planificado: Abra Bubble → Plugins → Xodera B2 Files Native; pegue la clave en project_api_key y guarde.
  4. Añade el elemento, elige los datos de tu aplicación y construye el flujo de trabajo a continuación.
  5. Acceso a beta privada solo por ahora. La instalación pública y la activación de pago aún no están abiertas.
Instalación y suscripción

For Audio Player, Video Player, Photo Editor, Audio Recorder, Files Kit and Haptics: free Bubble installation, a 7-day trial with a card, then US$1.50 per month per plugin and app project. Development and production are included, with no operation cap. File-size and feature limits still apply. Review billing and cancellation before confirming. Other plugins remain unavailable for purchase.

Guarda el resultado en tu aplicación

Adjunto de ejemplo: asset_ref, informe/pedido relacionado, propietario, display_name, mime_type y size_bytes. Guárdelos después de upload_verified. Use asset_ref para volver a abrir un archivo más tarde; una dirección de lectura temporal o una ruta en un dispositivo no es una referencia permanente al archivo. Si falla el guardado del registro de base de datos, reintente guardar ese registro en lugar de subir el archivo nuevamente.

Fallo, cancelación y recuperación

Si el resultado de una carga es desconocido, conserve upload_id y use Check or recover upload status. No cargue otra copia automáticamente. Cancelar afecta la transferencia sin terminar, no un archivo ya guardado. Si el acceso expira, solicite el archivo nuevamente en lugar de reutilizar una dirección temporal antigua.

Capacidades y límites

Tamaño máximo de archivo planificado: 256 MiB, o un límite de bucket inferior que elija. Los cargos de almacenamiento y descarga de Backblaze pertenecen a su cuenta B2. Los archivos en un bucket público son públicos incluso cuando el registro de la aplicación relacionado es privado. No hay promesa de escaneo de virus, carga multipartes, pausa o recuperación después de la terminación de la aplicación.

Configuraciones, acciones y resultados

Utilice estos nombres en Bubble. Las funciones planificadas están marcadas por separado.

Configuraciones beta disponibles

Configuración del elemento

bucket_binding_id · textlocal_uri · textdisplay_name · textmime_type · textexpected_size · numbermetadata_json · textasset_ref · textis_active · yes_nodisabled · yes_nolanguage · textui_text_json · texttitle · textshow_preview · yes_noshow_provider_browse · yes_no

Estados

status · textis_busy · yes_noupload_id · textupload_status · textasset_ref · textdisplay_name · textmime_type · textsize_bytes · numberbytes_sent · numberprogress · numberprogress_indeterminate · yes_notemporary_read_url · textread_expires_at · textlocal_output_uri · textpublic_url · textvisibility · textnext_cursor · texthas_more · yes_noquery_revision · textfiles_json · textbuckets_json · textremote_files_json · textremote_next_cursor · textremote_has_more · yes_noremote_query_revision · textbucket_binding_id · textcleanup_pending · yes_noerror_code · texterror_message · text

Eventos

file_selectedupload_startedupload_transport_completedupload_verifiedupload_pendingbuckets_loadedbucket_selectedlist_loadedmetadata_loadedread_resolveddownload_completedshare_changeddelete_completeddelete_pendingbrowse_loadedtransfer_cancelledcleanup_pendingtransfer_errorsession_cleared

Acciones y sus entradas

List allowed bucketsSelect bucket bindingCheck local sourceUpload fileCheck or recover upload statusCancel owned transferClear local sessionList application filesRefresh application filesLoad more application filesSelect asset referenceGet asset metadataResolve private readDownload accepted versionBrowse provider filesChange public sharingDelete accepted version
Configuración del elemento · 14

Flujo de trabajo planificado. No está disponible aún en la beta actual.

bucket_binding_idtext · Predeterminado: ""
Valor de ejemplo<binding returned by List B2 bindings>
Ejemplo de expresión BubbleSelected Binding's binding_id
Elección de almacenamiento devuelta por List B2 bindings. Use su ID para este archivo.
local_uritext · Predeterminado: ""
Valor de ejemplofile:///app-cache/attachment.jpg
Ejemplo de expresión BubbleOffline Files' local_uri
Ubicación de archivo legible en este dispositivo. No es un enlace de descarga en línea.
display_nametext · Predeterminado: ""
Valor de ejemploreport-photo.jpg
Ejemplo de expresión BubbleSelected Attachment's display_name
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
mime_typetext · Predeterminado: ""
Valor de ejemploimage/jpeg
Ejemplo de expresión BubblePhoto Editor's output_mime
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
expected_sizenumber · Predeterminado: 0
Valor de ejemplo246975
Ejemplo de expresión BubbleOffline Files' size_bytes
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
metadata_jsontext · Predeterminado: ""
Valor de ejemplo{"label":"field-report"}
Ejemplo de expresión BubbleSelected Attachment's safe_metadata_json
JSON opcional con información de la aplicación, como una etiqueta de informe. Manténgalo pequeño y evite datos personales.
asset_reftext · Predeterminado: ""
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.
is_activeyes_no · Predeterminado: true
Valor de ejemployes
Ejemplo de expresión BubbleGuideHost's view_is_active (your yes/no custom state)
Establece sí mientras esta vista está abierta. Establece no al salir, para que la reproducción o el trabajo actual puedan detenerse.
disabledyes_no · Predeterminado: false
Valor de ejemplono
Ejemplo de expresión BubbleGuideHost's is_busy (your yes/no custom state)
Desactiva el elemento mientras tu aplicación está ocupada o esta acción no está disponible.
languagetext · Predeterminado: "auto"
Valor de ejemplouk
Ejemplo de expresión BubbleCurrent User's preferred_language
Configurar language=auto para seguir un dispositivo o idioma de navegador compatible. Introduzca un código de idioma compatible para seleccionarlo explícitamente.
ui_text_jsontext · Predeterminado: ""
Valor de ejemplo{}
Ejemplo de expresión BubbleApp Settings' player_labels_json (supported keys only)
JSON opcional con etiquetas de botón compatibles. Déjalo vacío para usar el texto incorporado.
titletext · Predeterminado: ""
Valor de ejemploLesson 4 — review
Ejemplo de expresión BubbleSelected Lesson's name
Texto visible de la aplicación; vacío usa la copia localizada incorporada donde sea compatible. Sin credenciales.
show_previewyes_no · Predeterminado: false
Valor de ejemployes
Ejemplo de expresión BubbleApp Settings' b2_preview
Mostrar u ocultar la vista previa del archivo.
show_provider_browseyes_no · Predeterminado: false
Valor de ejemplono
Ejemplo de expresión BubbleCurrent User's authorized_browse_UI (presentation only)
Mostrar u ocultar los controles de navegación de almacenamiento para usuarios permitidos.
Acciones y sus entradas · 20

Flujo de trabajo planificado. No está disponible aún en la beta actual.

List allowed buckets

Sin parámetros de acción

Select bucket binding
binding_idtext · Predeterminado: —
Valor de ejemplo<returned allowed binding ID>
Ejemplo de expresión BubbleSelected Binding's binding_id
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
Check local source

Sin parámetros de acción

Upload file
acknowledge_public_bytesyes_no · Predeterminado: —
Valor de ejemplono
Ejemplo de expresión BubblePublic bucket disclosure Checkbox is checked (private bucket: no)
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
confirm_retryyes_no · Predeterminado: —
Valor de ejemplono
Ejemplo de expresión BubbleRetry Checkbox is checked after confirmed clean pending status
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
Check or recover upload status
upload_idtext · Predeterminado: —
Valor de ejemplo<original returned upload_id>
Ejemplo de expresión BubbleCurrent UploadIntent's upload_id
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
Cancel owned transfer

Sin parámetros de acción

Clear local session

Sin parámetros de acción

List application files

Sin parámetros de acción

Refresh application files

Sin parámetros de acción

Load more application files

Sin parámetros de acción

Select asset reference
asset_reftext · Predeterminado: —
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.
Get asset metadata
asset_reftext · Predeterminado: —
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.
Resolve private read
asset_reftext · Predeterminado: —
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.
Download accepted version
asset_reftext · Predeterminado: —
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.
Browse provider files
prefixtext · Predeterminado: —
Valor de ejemplo""
Ejemplo de expresión BubbleAuthorized Browse Settings' prefix
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
load_moreyes_no · Predeterminado: —
Valor de ejemplono
Ejemplo de expresión BubbleLoad More button only, for unchanged query
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
Change public sharing
asset_reftext · Predeterminado: —
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.
enabledyes_no · Predeterminado: —
Valor de ejemplono
Ejemplo de expresión BubblePublic Share Checkbox is checked after separate confirmation
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
confirmyes_no · Predeterminado: —
Valor de ejemployes — explicit confirmation only
Ejemplo de expresión BubbleConfirm Checkbox is checked
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
Delete accepted version
asset_reftext · Predeterminado: —
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.
confirmyes_no · Predeterminado: —
Valor de ejemployes — explicit confirmation only
Ejemplo de expresión BubbleConfirm Checkbox is checked
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
List B2 bindings
environmenttext · Predeterminado: —
Valor de ejemplodevelopment
Ejemplo de expresión BubbleApp Settings' selected_environment
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.

Devoluciones

ok · yes/nostatus · texterror_code · textbinding_ids · text listlabels · text listprivacy · text listmax_size_bytes · number list
List my B2 files
environmenttext · Predeterminado: —
Valor de ejemplodevelopment
Ejemplo de expresión BubbleApp Settings' selected_environment
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
binding_idtext · Predeterminado: —
Valor de ejemplo<returned allowed binding ID>
Ejemplo de expresión BubbleSelected Binding's binding_id
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
limitnumber · Predeterminado: —
Valor de ejemplo50
Ejemplo de expresión BubbleGallery Settings' page_size
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
cursortext · Predeterminado: —
Valor de ejemplo""
Ejemplo de expresión BubblePrevious List my B2 files result's next_cursor; empty on first page
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.

Devoluciones

ok · yes/nostatus · texterror_code · textasset_refs · text listdisplay_names · text listmime_types · text listsize_bytes · number listcreated_ats · text listvisibility · text listpublic_urls · text listprovider_status · text listinspection_status · text listmetadata_labels · text listhas_more · yes/nonext_cursor · textquery_revision · text
Get my B2 file info
environmenttext · Predeterminado: —
Valor de ejemplodevelopment
Ejemplo de expresión BubbleApp Settings' selected_environment
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
binding_idtext · Predeterminado: —
Valor de ejemplo<returned allowed binding ID>
Ejemplo de expresión BubbleSelected Binding's binding_id
Utilice el valor del registro comercial actual; validarlo contra los límites a continuación.
asset_reftext · Predeterminado: —
Valor de ejemplo<returned asset_ref>
Ejemplo de expresión BubbleSelected B2Asset's asset_ref
Identidad estable y opaca de activo aceptado del servicio. Seleccionarla nunca elude la autorización del usuario.

Devoluciones

ok · yes/nostatus · texterror_code · textasset_ref · textdisplay_name · textmime_type · textsize_bytes · numbercreated_at · textvisibility · textpublic_url · textprovider_status · textinspection_status · textmetadata_label · text
Estados y eventos

Flujo de trabajo planificado. No está disponible aún en la beta actual.

Estados

status · text

Resultado actual de esta acción. Usa el evento de finalización correspondiente antes de guardar el éxito.

is_busy · yes_no

El trabajo sigue en progreso. Espere antes de iniciar otra acción.

upload_id · text

Identificador para este elemento o acción. Manténgalo con el registro de la aplicación correspondiente. Use el mismo identificador de solicitud al reintentar un resultado incierto.

upload_status · text

Resultado actual de esta acción. Usa el evento de finalización correspondiente antes de guardar el éxito.

asset_ref · text

Identificador para este elemento o acción. Manténgalo con el registro de la aplicación correspondiente. Use el mismo identificador de solicitud al reintentar un resultado incierto.

display_name · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

mime_type · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

size_bytes · number

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

bytes_sent · number

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

progress · number

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

progress_indeterminate · yes_no

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

temporary_read_url · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

read_expires_at · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

local_output_uri · text

Ubicación del archivo en este dispositivo. Guarde o cargue el archivo por separado si debe mantenerse en línea.

public_url · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

visibility · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

next_cursor · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

has_more · yes_no

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

query_revision · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

files_json · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

buckets_json · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

remote_files_json · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

remote_next_cursor · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

remote_has_more · yes_no

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

remote_query_revision · text

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

bucket_binding_id · text

Identificador para este elemento o acción. Manténgalo con el registro de la aplicación correspondiente. Use el mismo identificador de solicitud al reintentar un resultado incierto.

cleanup_pending · yes_no

Valor actual del elemento seleccionado. Léelo después del evento relacionado.

error_code · text

Información de error de la última acción. Muestra un mensaje útil y ofrece el reintento correspondiente.

error_message · text

Información de error de la última acción. Muestra un mensaje útil y ofrece el reintento correspondiente.

Eventos

file_selected

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

upload_started

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

upload_transport_completed

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

upload_verified

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

upload_pending

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

buckets_loaded

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

bucket_selected

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

list_loaded

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

metadata_loaded

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

read_resolved

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

download_completed

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

share_changed

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

delete_completed

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

delete_pending

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

browse_loaded

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

transfer_cancelled

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

cleanup_pending

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

transfer_error

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

session_cleared

Cuando ocurra este evento, lea los estados relacionados del mismo elemento.

Preguntas que hacen los desarrolladores

¿Puedo guardar la URL de lectura temporal como mi archivo?

No. Persista asset_ref y los metadatos canónicos. Reautorice lecturas; la ruta de descarga del dispositivo no es un archivo Bubble.

¿Cómo funciona la suscripción?

Precios planificados: instalar el plugin en Bubble es gratuito. El acceso a BestPlugins es una suscripción separada para cada plugin en cada proyecto de aplicación Bubble: 7 días gratis, luego US$1.50 por mes. Development y Live están incluidos. No hay un límite fijo en la cantidad de operaciones; los límites de tamaño de archivo y de funciones siguen aplicando. El proceso de compra aún no está abierto. La pantalla de activación mostrará la primera fecha de facturación y los términos de cancelación.

Guías relacionadas

Lanzamiento de Marketplace pendiente

Guía del foro no publicada

Para obtener ayuda, indíquenos qué plugin y dispositivo utiliza, la acción que intentó y lo que ocurrió. Use un ejemplo sin datos personales. Nunca comparta su clave ni archivos privados.