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

# Get a list of forms

export const ScopesList = ({scopes = [], description = "Esta API requiere uno de los siguientes ámbitos:"}) => {
  if (!scopes || scopes.length === 0) {
    return null;
  }
  const sortedScopes = scopes.sort((a, b) => a.localeCompare(b));
  return <div>
      <div className="text-sm mb-2">{description}</div>
      <div>
        {sortedScopes.map((scope, index) => <div key={index}>
            <code>
              <span className="text-xs">{scope}</span>
            </code>
          </div>)}
      </div>
    </div>;
};

export const SupportedProducts = ({marketing, sales, service, cms, marketingLevel, salesLevel, serviceLevel, cmsLevel}) => {
  const translations = {
    header: "Productos compatibles",
    description: "Se requiere uno de los siguientes productos o productos de ediciones superiores.",
    productNames: {
      marketing: "Marketing Hub",
      sales: "Sales Hub",
      service: "Service Hub",
      cms: "Content Hub"
    },
    tiers: {
      free: "Gratuito",
      starter: "Starter",
      professional: "Pro",
      enterprise: "Enterprise"
    }
  };
  const translateTier = tier => {
    if (!tier) return '';
    const lowerTier = tier.toLowerCase();
    return translations.tiers[lowerTier] || tier;
  };
  const products = [{
    name: marketing ? translations.productNames.marketing : '',
    level: translateTier(marketingLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/marketing-bolt.svg",
    alt: "Marketing Hub"
  }, {
    name: sales ? translations.productNames.sales : '',
    level: translateTier(salesLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/sales-star.svg",
    alt: "Sales Hub"
  }, {
    name: service ? translations.productNames.service : '',
    level: translateTier(serviceLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/service-heart.svg",
    alt: "Service Hub"
  }, {
    name: cms ? translations.productNames.cms : '',
    level: translateTier(cmsLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/content-play.svg",
    alt: "Content Hub"
  }].filter(product => product.name && product.level);
  if (products.length === 0) return null;
  return <div>
      <div className="text-sm mb-2">{translations.description}</div>
      <div className={`grid ${products.length === 1 ? 'grid-cols-1' : 'grid-cols-2'} gap-1.5`}>
        {products.map((product, index) => <div key={index} style={{
    display: 'flex',
    alignItems: 'center'
  }}>
            <img src={product.icon} alt={product.alt} className="w-3.5 h-3.5 mr-1.5 mt-2.5 mb-2.5 flex-shrink-0 align-middle" />
            <span className="font-medium mr-1 text-sm">{product.name} -</span>
            <span className="text-sm">{product.level}</span>
          </div>)}
      </div>
    </div>;
};

<AccordionGroup>
  <Accordion title="Supported products" defaultOpen="true" icon="cubes">
    <SupportedProducts marketing={true} sales={true} service={true} cms={true} marketingLevel="FREE" salesLevel="FREE" serviceLevel="FREE" cmsLevel="FREE" />
  </Accordion>

  <Accordion title="Required Scopes" icon="key">
    <ScopesList
      scopes={[
  'forms'
]}
    />
  </Accordion>
</AccordionGroup>


## OpenAPI

````yaml specs/legacy/v3/marketing-forms-v3.json GET /marketing/v3/forms
openapi: 3.0.1
info:
  title: Formularios
  description: Basepom for all HubSpot Projects
  version: v3
  x-hubspot-product-tier-requirements:
    marketing: FREE
    sales: FREE
    service: FREE
    cms: FREE
    commerce: FREE
    crmHub: FREE
    dataHub: FREE
  x-hubspot-api-use-case: >-
    Cambia programáticamente ciertas partes de un formulario de HubSpot sobre la
    base de casos de uso más complejos o datos de un servicio de terceros
    (mostrando un campo dinámicamente basado en los datos que estás consultando
    de una fuente externa).
  x-hubspot-related-documentation:
    - name: Forms Guide
      url: https://developers.hubspot.com/docs/guides/api/marketing/forms
  x-hubspot-introduction: >-
    Utiliza la API de formularios para crear y gestionar formularios en tu
    cuenta de HubSpot, que luego puedets insertar en tu sitio web para recopilar
    envíos de formularios de los visitantes del sitio web.
servers:
  - url: https://api.hubapi.com
security: []
tags:
  - name: Basic
paths:
  /marketing/v3/forms:
    get:
      tags:
        - Basic
      operationId: get-/marketing/v3/forms_/marketing/v3/forms
      parameters:
        - name: after
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: string
        - name: archived
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: boolean
        - name: formTypes
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - hubspot
                - captured
                - flow
                - blog_comment
                - all
        - name: limit
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: integer
            format: int32
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/CollectionResponseFormDefinitionBaseForwardPaging
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - forms
components:
  schemas:
    CollectionResponseFormDefinitionBaseForwardPaging:
      required:
        - results
      type: object
      properties:
        paging:
          $ref: '#/components/schemas/ForwardPaging'
        results:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/HubSpotFormDefinition'
    ForwardPaging:
      type: object
      properties:
        next:
          $ref: '#/components/schemas/NextPage'
    HubSpotFormDefinition:
      required:
        - archived
        - configuration
        - createdAt
        - displayOptions
        - fieldGroups
        - formType
        - id
        - legalConsentOptions
        - name
        - updatedAt
      type: object
      properties:
        archived:
          type: boolean
        archivedAt:
          type: string
          format: date-time
        configuration:
          $ref: '#/components/schemas/HubSpotFormConfiguration'
        createdAt:
          type: string
          format: date-time
        displayOptions:
          $ref: '#/components/schemas/FormDisplayOptions'
        fieldGroups:
          type: array
          items:
            $ref: '#/components/schemas/FieldGroup'
        formType:
          type: string
          default: hubspot
          enum:
            - hubspot
        id:
          type: string
        legalConsentOptions:
          oneOf:
            - $ref: '#/components/schemas/LegalConsentOptionsNone'
            - $ref: '#/components/schemas/LegalConsentOptionsLegitimateInterest'
            - $ref: '#/components/schemas/LegalConsentOptionsExplicitConsentToProcess'
            - $ref: '#/components/schemas/LegalConsentOptionsImplicitConsentToProcess'
        name:
          type: string
        updatedAt:
          type: string
          format: date-time
      x-hubspot-sub-type-impl: true
    Error:
      required:
        - category
        - correlationId
        - message
      type: object
      properties:
        category:
          type: string
          description: La categoría del error
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Contexto de la condición de error
          example: >-
            {invalidPropertyName=[propertyValue], missingScopes=[scope1,
            scope2]}
        correlationId:
          type: string
          description: >-
            Un identificador único para la solicitud. Incluye este valor con
            cualquier informe de error o ticket de asistencia.
          format: uuid
          example: aeb5f871-7f07-4993-9211-075dc63e7cbf
        errors:
          type: array
          description: información adicional acerca del error
          items:
            $ref: '#/components/schemas/ErrorDetail'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Un mapa de nombres de enlaces a las URI asociadas que contienen
            documentación sobre el error o los pasos recomendados para
            solucionarlo
        message:
          type: string
          description: >-
            Un mensaje legible en el que se describa el error y los pasos para
            solucionarlo, si procede
          example: An error occurred
        subCategory:
          type: string
          description: >-
            Una categoría específica que contiene detalles más concretos acerca
            del error
      example:
        message: Invalid input (details will vary based on the error)
        correlationId: aeb5f871-7f07-4993-9211-075dc63e7cbf
        category: VALIDATION_ERROR
        links:
          knowledge-base: https://www.hubspot.com/products/service/knowledge-base
    NextPage:
      required:
        - after
      type: object
      properties:
        after:
          type: string
          description: >-
            La ficha del cursor de paginación utilizada para obtener la
            siguiente página de resultados. Pasa este valor en solicitudes
            subsiguientes para continuar con la paginación.
        link:
          type: string
          description: >-
            La URL completa para recuperar la siguiente página de resultados en
            respuestas paginadas.
      description: >-
        Especifica la información de paginación necesaria para obtener el
        siguiente conjunto de resultados en una respuesta paginada de la API
    HubSpotFormConfiguration:
      required:
        - allowLinkToResetKnownValues
        - archivable
        - cloneable
        - createNewContactForNewEmail
        - editable
        - language
        - lifecycleStages
        - notifyContactOwner
        - notifyRecipients
        - postSubmitAction
        - prePopulateKnownValues
        - recaptchaEnabled
      type: object
      properties:
        allowLinkToResetKnownValues:
          type: boolean
          description: >-
            Decidir si se agrega un enlace de restablecimiento al formulario.
            Esto elimina cualquier contenido escrito previamente en el
            formulario y crea un nuevo contacto en el envío.
        archivable:
          type: boolean
          description: Decidir si el formulario puede archivarse.
        cloneable:
          type: boolean
          description: Decidir si el formulario puede clonarse.
        createNewContactForNewEmail:
          type: boolean
          description: >-
            Decidir si se crea un nuevo contacto cuando se envíe un formulario
            con una dirección de correo electrónico que no coincide con ninguna
            en sus registros de contactos existentes.
        editable:
          type: boolean
          description: Decidir si el formulario puede editarse.
        embedType:
          type: string
          enum:
            - V3
            - V4
        language:
          type: string
          description: El idioma del formulario.
          enum:
            - af
            - ar-eg
            - bg
            - bn
            - ca-es
            - cs
            - da
            - de
            - el
            - en
            - en-gb
            - es
            - es-mx
            - fi
            - fr
            - fr-ca
            - he-il
            - hr
            - hu
            - id
            - it
            - ja
            - ko
            - lt
            - ms
            - nl
            - no-no
            - pl
            - pt
            - pt-br
            - ro
            - ru
            - sk
            - sl
            - sv
            - th
            - tl
            - tr
            - uk
            - vi
            - zh-cn
            - zh-hk
            - zh-tw
        lifecycleStages:
          type: array
          items:
            $ref: '#/components/schemas/LifecycleStage'
        notifyContactOwner:
          type: boolean
          description: >-
            Decidir si se envía un correo electrónico de notificación al
            propietario del contacto cuando se recibe una comunicación.
        notifyRecipients:
          type: array
          description: >-
            La lista de IDs de usuario que recibirán un correo electrónico de
            notificación cuando se reciba una comunicación.
          items:
            type: string
        postSubmitAction:
          $ref: '#/components/schemas/FormPostSubmitAction'
        prePopulateKnownValues:
          type: boolean
          description: >-
            Decidir si los campos de contactos se rellenan previamente con
            información conocida cuando un contacto vuelve a tu sitio.
        recaptchaEnabled:
          type: boolean
          description: Decidir si CAPTCHA (prevención de spam) está activado.
    FormDisplayOptions:
      required:
        - renderRawHtml
        - style
        - submitButtonText
        - theme
      type: object
      properties:
        cssClass:
          type: string
          description: >-
            Nombres de clase de hoja de estilos en cascada personalizados que se
            aplicarán al elemento del formulario para estilos adicionales.
        renderRawHtml:
          type: boolean
          description: >-
            Decidir si el formulario se mostrará como HTML sin formato en lugar
            de dentro de un iFrame.
        style:
          $ref: '#/components/schemas/FormStyle'
        submitButtonText:
          type: string
          description: El texto que aparece en el botón de envío del formulario.
        theme:
          type: string
          description: >-
            El tema utilizado para dar estilo a los campos de entrada. Esto no
            se aplicará si el formulario se añade a una página CMS de HubSpot.
          enum:
            - canvas
            - default_style
            - legacy
            - linear
            - round
            - sharp
    FieldGroup:
      required:
        - fields
        - groupType
        - richTextType
      type: object
      properties:
        fields:
          type: array
          description: Los campos de formulario incluidos en el grupo
          items:
            oneOf:
              - $ref: '#/components/schemas/EmailField'
              - $ref: '#/components/schemas/PhoneField'
              - $ref: '#/components/schemas/MobilePhoneField'
              - $ref: '#/components/schemas/SingleLineTextField'
              - $ref: '#/components/schemas/MultiLineTextField'
              - $ref: '#/components/schemas/NumberField'
              - $ref: '#/components/schemas/SingleCheckboxField'
              - $ref: '#/components/schemas/MultipleCheckboxesField'
              - $ref: '#/components/schemas/DropdownField'
              - $ref: '#/components/schemas/RadioField'
              - $ref: '#/components/schemas/DatepickerField'
              - $ref: '#/components/schemas/FileField'
              - $ref: '#/components/schemas/PaymentLinkRadioField'
        groupType:
          type: string
          description: >-
            El tipo de agrupación de campos. Valores: default_group (campos
            estándar), progressive y queued.
          enum:
            - default_group
            - progressive
            - queued
        richText:
          type: string
          description: >-
            Un bloque de texto enriquecido o una imagen. Estos pueden utilizarse
            para añadir información adicional para los clientes que completan el
            formulario. Si el grupo de campos incluye campos, el texto
            enriquecido se mostrará antes de los campos.
        richTextType:
          type: string
          description: >-
            El tipo de texto enriquecido incluido. El valor predeterminado es
            texto. Valores: texto, imagen.
          enum:
            - image
            - text
    LegalConsentOptionsNone:
      title: none
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: >-
            El tipo de consentimiento legal. Establécelo como "ninguno" para
            indicar que no se requiere ninguna configuración de consentimiento
            legal para este formulario.
          default: none
          enum:
            - none
      x-hubspot-sub-type-impl: true
    LegalConsentOptionsLegitimateInterest:
      title: legitimate_interest
      required:
        - lawfulBasis
        - privacyText
        - subscriptionTypeIds
        - type
      type: object
      properties:
        lawfulBasis:
          type: string
          description: >-
            La base jurídica para tratamiento de datos bajo interés legítimo.
            Valores: lead (tratamiento para generación de leads), cliente
            (tratamiento para clientes existentes), otros (otros intereses
            legítimos). Predeterminado: lead.
          enum:
            - client
            - lead
            - other
        privacyText:
          type: string
          description: >-
            Texto en el que se explican las prácticas de la política de
            privacidad y del tratamiento de datos.
        subscriptionTypeIds:
          type: array
          items:
            type: integer
            format: int64
        type:
          type: string
          description: El tipo de consentimiento legal.
          default: legitimate_interest
          enum:
            - legitimate_interest
      x-hubspot-sub-type-impl: true
    LegalConsentOptionsExplicitConsentToProcess:
      title: explicit_consent_to_process
      required:
        - communicationsCheckboxes
        - privacyText
        - type
      type: object
      properties:
        communicationConsentText:
          type: string
          description: >-
            Texto en el que se explican las preferencias de consentimiento para
            la comunicación. Informa a los usuarios cómo se utilizará su
            información de contacto para las comunicaciones.
        communicationsCheckboxes:
          type: array
          items:
            $ref: '#/components/schemas/LegalConsentCheckbox'
        consentToProcessCheckboxLabel:
          type: string
          description: >-
            Texto de la etiqueta para la casilla de verificación del
            consentimiento para procesar.
        consentToProcessFooterText:
          type: string
          description: >-
            Texto del pie de página para la sección del consentimiento para
            procesar.
        consentToProcessText:
          type: string
          description: >-
            Texto en el que se explica el consentimiento para el tratamiento de
            datos personales.
        privacyText:
          type: string
          description: >-
            Texto explicativo de la política de privacidad y las prácticas de
            tratamiento de datos. Campo obligatorio que informa a los usuarios
            sobre sus derechos de privacidad y cómo se protegen sus datos.
        type:
          type: string
          description: El tipo de consentimiento legal.
          default: explicit_consent_to_process
          enum:
            - explicit_consent_to_process
      x-hubspot-sub-type-impl: true
    LegalConsentOptionsImplicitConsentToProcess:
      title: implicit_consent_to_process
      required:
        - communicationsCheckboxes
        - privacyText
        - type
      type: object
      properties:
        communicationConsentText:
          type: string
          description: >-
            Texto en el que se explican las preferencias de consentimiento para
            la comunicación.
        communicationsCheckboxes:
          type: array
          items:
            $ref: '#/components/schemas/LegalConsentCheckbox'
        consentToProcessText:
          type: string
          description: >-
            Texto en el que se explica el consentimiento para el tratamiento de
            datos personales.
        privacyText:
          type: string
          description: >-
            Texto en el que se explican las prácticas de la política de
            privacidad y del tratamiento de datos.
        type:
          type: string
          description: El tipo de consentimiento legal.
          default: implicit_consent_to_process
          enum:
            - implicit_consent_to_process
      x-hubspot-sub-type-impl: true
    ErrorDetail:
      required:
        - message
      type: object
      properties:
        code:
          type: string
          description: El código de estado asociado al detalle del error
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Contexto de la condición de error
          example: '{missingScopes=[scope1, scope2]}'
        in:
          type: string
          description: El nombre del campo o parámetro en el que se encontró el error.
        message:
          type: string
          description: >-
            Un mensaje legible en el que se describa el error y los pasos para
            solucionarlo, si procede
        subCategory:
          type: string
          description: >-
            Una categoría específica que contiene detalles más concretos acerca
            del error
    LifecycleStage:
      required:
        - objectTypeId
        - value
      type: object
      properties:
        objectTypeId:
          type: string
          description: El objectTypeId tanto para el contacto como para la empresa
        value:
          type: string
          description: >-
            El nombre interno de la etapa del ciclo de vida del contacto
            establecido al enviar un formulario
    FormPostSubmitAction:
      required:
        - type
        - value
      type: object
      properties:
        type:
          type: string
          description: >-
            La acción a tomar después de enviar. La acción predeterminada es
            mostrar un mensaje de agradecimiento.
          enum:
            - redirect_url
            - thank_you
        value:
          type: string
          description: El texto de agradecimiento o la página a la que se redirigirá.
    FormStyle:
      required:
        - backgroundWidth
        - fontFamily
        - helpTextColor
        - helpTextSize
        - labelTextColor
        - labelTextSize
        - legalConsentTextColor
        - legalConsentTextSize
        - submitAlignment
        - submitColor
        - submitFontColor
        - submitSize
      type: object
      properties:
        backgroundWidth:
          type: string
          description: >-
            El ancho del fondo del formulario. Acepta valores porcentuales (por
            ejemplo, "100%") o valores de píxel (por ejemplo, "600px").
        fontFamily:
          type: string
          description: >-
            Familia de fuentes utilizada en toda la forma (por ejemplo, "arial,
            helvetica, sans-serif").
        helpTextColor:
          type: string
          description: >-
            Código de color hexadecimal para el texto de ayuda que se muestra
            debajo de los campos del formulario.
        helpTextSize:
          type: string
          description: >-
            Tamaño de fuente para texto de ayuda. Acepta valores de píxel (por
            ejemplo, "11px").
        labelTextColor:
          type: string
          description: Código de color hexadecimal para etiquetas de campo.
        labelTextSize:
          type: string
          description: >-
            Tamaño de fuente para etiquetas de campo. Acepta valores de píxel
            (por ejemplo, "11px").
        legalConsentTextColor:
          type: string
          description: Código de color hexadecimal para texto de consentimiento legal.
        legalConsentTextSize:
          type: string
          description: >-
            Tamaño de fuente para texto de consentimiento legal. Acepta valores
            de píxel (por ejemplo, "14px").
        submitAlignment:
          type: string
          description: >-
            Alineación horizontal del botón de envío. Valores: izquierda,
            centro, derecha.
          enum:
            - center
            - left
            - right
        submitColor:
          type: string
          description: Código de color hexadecimal para el fondo del botón de envío.
        submitFontColor:
          type: string
          description: Código de color hexadecimal para el texto del botón de envío.
        submitSize:
          type: string
          description: >-
            Tamaño de fuente para el texto del botón de envío. Acepta valores de
            píxel (por ejemplo, "12px").
    EmailField:
      title: email
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
        - validation
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: email
          enum:
            - email
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
        validation:
          $ref: '#/components/schemas/EmailFieldValidation'
      x-hubspot-sub-type-impl: true
    PhoneField:
      title: phone
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
        - useCountryCodeSelect
        - validation
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: phone
          enum:
            - phone
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
        useCountryCodeSelect:
          type: boolean
          description: >-
            Decidir si se muestra un menú desplegable de código de país junto al
            campo de teléfono.
        validation:
          $ref: '#/components/schemas/PhoneFieldValidation'
      x-hubspot-sub-type-impl: true
    MobilePhoneField:
      title: mobile_phone
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
        - validation
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: mobile_phone
          enum:
            - mobile_phone
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
        validation:
          $ref: '#/components/schemas/PhoneFieldValidation'
      x-hubspot-sub-type-impl: true
    SingleLineTextField:
      title: single_line_text
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: single_line_text
          enum:
            - single_line_text
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    MultiLineTextField:
      title: multi_line_text
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: multi_line_text
          enum:
            - multi_line_text
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    NumberField:
      title: number
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: number
          enum:
            - number
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
        validation:
          $ref: '#/components/schemas/NumberFieldValidation'
      x-hubspot-sub-type-impl: true
    SingleCheckboxField:
      title: single_checkbox
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: single_checkbox
          enum:
            - single_checkbox
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    MultipleCheckboxesField:
      title: multiple_checkboxes
      required:
        - defaultValues
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - options
        - required
      type: object
      properties:
        defaultValues:
          type: array
          description: >-
            Los valores seleccionados por opción predeterminada. Estos valores
            se enviarán a menos que el cliente los modifique.
          items:
            type: string
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: multiple_checkboxes
          enum:
            - multiple_checkboxes
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        options:
          type: array
          description: La lista de opciones disponibles para este campo.
          items:
            $ref: '#/components/schemas/EnumeratedFieldOption'
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    DropdownField:
      title: dropdown
      required:
        - defaultValues
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - options
        - required
      type: object
      properties:
        defaultValues:
          type: array
          description: >-
            Los valores seleccionados por opción predeterminada. Estos valores
            se enviarán a menos que el cliente los modifique.
          items:
            type: string
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: dropdown
          enum:
            - dropdown
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        options:
          type: array
          description: La lista de opciones disponibles para este campo.
          items:
            $ref: '#/components/schemas/EnumeratedFieldOption'
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    RadioField:
      title: radio
      required:
        - defaultValues
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - options
        - required
      type: object
      properties:
        defaultValues:
          type: array
          description: >-
            Los valores seleccionados por opción predeterminada. Estos valores
            se enviarán a menos que el cliente los modifique.
          items:
            type: string
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: radio
          enum:
            - radio
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        options:
          type: array
          description: La lista de opciones disponibles para este campo.
          items:
            $ref: '#/components/schemas/EnumeratedFieldOption'
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    DatepickerField:
      title: datepicker
      required:
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
      type: object
      properties:
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: datepicker
          enum:
            - datepicker
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    FileField:
      title: file
      required:
        - allowMultipleFiles
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - required
      type: object
      properties:
        allowMultipleFiles:
          type: boolean
          description: Decidir si se permite la carga de varios archivos.
        defaultValue:
          type: string
          description: >-
            El valor introducido por opción predeterminada. Este valor se
            enviará a menos que el cliente lo modifique.
        dependentFields:
          type: array
          description: >-
            Una lista de otros campos que se harán visibles en función del valor
            introducido en este campo.
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto adicional que ayuda al cliente a rellenar el campo.
        fieldType:
          type: string
          description: Determina cómo se mostrará y validará el campo.
          default: file
          enum:
            - file
        hidden:
          type: boolean
          description: >-
            Decidir si un campo debe estar oculto o no. Los campos ocultos no
            aparecerán en el formulario, pero se pueden utilizar para pasar un
            valor a una propiedad sin necesidad de que el cliente lo introduzca.
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        name:
          type: string
          description: >-
            El identificador del campo. En combinación con el ID del tipo de
            objeto, debe ser único.
        objectTypeId:
          type: string
          description: >-
            Un ID único para el tipo de objeto CRM de este campo. Por ejemplo,
            un campo CONTACTO tendrá el ID de tipo de objeto 0-1.
        placeholder:
          type: string
          description: El mensaje que aparece cuando no se rellena el campo.
        required:
          type: boolean
          description: >-
            Decidir si se requiere un valor para este campo al enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    PaymentLinkRadioField:
      title: payment_link_radio
      required:
        - defaultValues
        - dependentFields
        - fieldType
        - hidden
        - label
        - name
        - objectTypeId
        - options
        - required
      type: object
      properties:
        defaultValues:
          type: array
          items:
            type: string
        dependentFields:
          type: array
          items:
            $ref: '#/components/schemas/DependentField'
        description:
          type: string
          description: Texto descriptivo adicional sobre el campo.
        fieldType:
          type: string
          description: El identificador del tipo de campo.
          default: payment_link_radio
          enum:
            - payment_link_radio
        hidden:
          type: boolean
          description: Si el campo es un campo oculto.
        label:
          type: string
          description: >-
            La etiqueta visible que se muestra con el campo para describir su
            propósito para los usuarios del formulario.
        name:
          type: string
          description: >-
            El nombre interno de la API utilizado para identificar este campo en
            las solicitudes y respuestas de la API.
        objectTypeId:
          type: string
          description: >-
            El tipo de objeto del CRM con el que está asociado este campo (por
            ejemplo, contactos, negocios).
        options:
          type: array
          items:
            $ref: '#/components/schemas/EnumeratedFieldOption'
        required:
          type: boolean
          description: >-
            Si los usuarios deben seleccionar una opción antes de enviar el
            formulario.
      x-hubspot-sub-type-impl: true
    LegalConsentCheckbox:
      required:
        - label
        - required
        - subscriptionTypeId
      type: object
      properties:
        label:
          type: string
          description: La etiqueta principal para el campo del formulario.
        required:
          type: boolean
          description: >-
            Decidir si esta casilla de verificación es obligatoria al enviar el
            formulario.
        subscriptionTypeId:
          type: integer
          description: >-
            El ID del tipo de suscripción asociado con esta casilla de
            verificación de consentimiento.
          format: int64
    DependentField:
      required:
        - dependentCondition
        - dependentField
      type: object
      properties:
        dependentCondition:
          $ref: '#/components/schemas/DependentFieldFilter'
        dependentField:
          description: >-
            Un campo de formulario que se mostrará condicionalmente en función
            de si se cumple la condición dependiente.
          oneOf:
            - $ref: '#/components/schemas/EmailField'
            - $ref: '#/components/schemas/PhoneField'
            - $ref: '#/components/schemas/MobilePhoneField'
            - $ref: '#/components/schemas/SingleLineTextField'
            - $ref: '#/components/schemas/MultiLineTextField'
            - $ref: '#/components/schemas/NumberField'
            - $ref: '#/components/schemas/SingleCheckboxField'
            - $ref: '#/components/schemas/MultipleCheckboxesField'
            - $ref: '#/components/schemas/DropdownField'
            - $ref: '#/components/schemas/RadioField'
            - $ref: '#/components/schemas/DatepickerField'
            - $ref: '#/components/schemas/FileField'
            - $ref: '#/components/schemas/PaymentLinkRadioField'
    EmailFieldValidation:
      required:
        - blockedEmailDomains
        - useDefaultBlockList
      type: object
      properties:
        blockedEmailDomains:
          type: array
          description: Una lista de dominios de correo electrónico que se bloquearán.
          items:
            type: string
        useDefaultBlockList:
          type: boolean
          description: >-
            Decidir si se deben bloquear los proveedores de correo electrónico
            gratuito.
    PhoneFieldValidation:
      required:
        - maxAllowedDigits
        - minAllowedDigits
      type: object
      properties:
        maxAllowedDigits:
          type: integer
          description: >-
            El número máximo de dígitos permitido en el número de teléfono.
            Valor predeterminado: 20. Debe ser mayor que o igual a
            minAllowedDigits.
          format: int32
        minAllowedDigits:
          type: integer
          description: >-
            El número mínimo de dígitos requerido en el número de teléfono.
            Valor predeterminado: 7. Debe ser menor que o igual a
            maxAllowedDigits.
          format: int32
    NumberFieldValidation:
      required:
        - maxAllowedDigits
        - minAllowedDigits
      type: object
      properties:
        maxAllowedDigits:
          type: integer
          description: >-
            El número máximo de dígitos permitido para la entrada de campo
            numérico. Debe ser mayor que o igual a minAllowedDigits.
          format: int32
        minAllowedDigits:
          type: integer
          description: >-
            El número mínimo de dígitos requerido para una entrada de campo
            numérica válida. Debe ser menor que o igual a maxAllowedDigits.
          format: int32
    EnumeratedFieldOption:
      required:
        - displayOrder
        - label
        - value
      type: object
      properties:
        description:
          type: string
          description: Texto descriptivo adicional sobre la opción.
        displayOrder:
          type: integer
          description: El orden en que se mostrarán las opciones.
          format: int32
        label:
          type: string
          description: La etiqueta visible para esta opción.
        value:
          type: string
          description: El valor que se enviará si se selecciona esta opción.
    DependentFieldFilter:
      required:
        - operator
        - rangeEnd
        - rangeStart
        - value
        - values
      type: object
      properties:
        operator:
          type: string
          description: >-
            El operador de comparación utilizado para evaluar la condición del
            campo dependiente. Admite igualdad (eq, neq), operaciones de cadena
            (contiene, doesnt_contain, str_starts_with, str_ends_with),
            comparaciones numéricas (lt, lte, gt, gte), comprobaciones de rango
            (entre, not_between), operaciones de ajuste (set_any, set_not_any,
            set_eq, set_neq) y condiciones basadas en el tiempo (within_time,
            within_time_reverse).
          enum:
            - between
            - contains
            - doesnt_contain
            - eq
            - gt
            - gte
            - is_not_empty
            - lt
            - lte
            - neq
            - not_between
            - set_all
            - set_any
            - set_eq
            - set_neq
            - set_not_all
            - set_not_any
            - str_ends_with
            - str_starts_with
            - within_time
            - within_time_reverse
        rangeEnd:
          type: string
          description: >-
            El valor final de los operadores basados en rangos (between,
            not_between). Debe proporcionarse junto con rangeStart.
        rangeStart:
          type: string
          description: >-
            El valor de inicio de los operadores basados en rangos (between,
            not_between). Debe proporcionarse junto con rangeEnd.
        value:
          type: string
          description: >-
            El valor único con el que comparar cuando se utilizan operadores
            como eq, neq, contains, lt, gt y otros operadores de comparación de
            un solo valor.
        values:
          type: array
          items:
            type: string
  responses:
    Error:
      description: An error occurred.
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://app.hubspot.com/oauth/authorize
          tokenUrl: https://api.hubapi.com/oauth/v1/token
          scopes:
            forms: ''

````