> ## Documentation Index
> Fetch the complete documentation index at: https://docs.braviloai.com/llms.txt
> Use this file to discover all available pages before exploring further.

> Referencia

# Reference

El widget de Formulario está disponible a través de nuestro CDN como un archivo JavaScript único o a través de NPM como un paquete de componente React.

<Tabs>
  <Tab title="HTML">
    ```html theme={null}
    <script type="module">
    import Form from 'https://cdn.jsdelivr.net/npm/@bravilohq/embeds/dist/form/index.js';

    Form.initStandard({
    formId: 'TU_FORMULARIO_ID',
    });

    </script>

    ```
  </Tab>

  <Tab title="React">
    ```jsx theme={null}
    import { Form } from '@bravilohq/embeds';

    function App() {
    return (
    <Form
    formId="TU_FORMULARIO_ID"
    onEnd={(values) => {
    console.log('Formulario enviado con valores:', values);
    />
    );
    ```
  </Tab>
</Tabs>

## Atributos / Props

<Tabs>
  <Tab title="HTML">
    ```html theme={null}
    <script type="module">
    import Form from 'https://cdn.jsdelivr.net/npm/@bravilohq/embeds/dist/form/index.js';

    Form.initStandard({
    formId: 'TU_FORMULARIO_ID',

    onEnd: function (values) {
    console.log('Formulario enviado con valores:', values);
    },
    </script>
    ```
  </Tab>

  <Tab title="React">
    ```jsx theme={null}
    <Form
    formId="TU_FORMULARIO_ID"
    onEnd={(values) => {
    console.log('Formulario enviado con valores:', values);
    />
    ```
  </Tab>
</Tabs>

<ParamField path="formId" type="string" required>
  ID del Formulario
</ParamField>

<ParamField path="onEnd" type="function">
  Función de callback que se llama cuando el formulario es enviado. La función recibe los valores del formulario como un objeto.

  ```js theme={null}
  const form = await Form.initBubble({
  agentId: 'TU_FORMULARIO_ID',
  onEnd: function (values) {
  console.log('Formulario enviado con valores:', values);
  },
  ```
</ParamField>
