Skip to main content
Esta función requiere la aprobación de HubSpot para su uso. Si estás interesado en solicitar acceso a los objetos de la aplicación, o si quieres saber más sobre la funcionalidad, envía este formulario de interés.
Abajo encontrarás información de referencia sobre las características de las aplicaciones de la plataforma de desarrollo con objetos de aplicación, incluidas las definiciones de los archivos de configuración, los detalles de los permisos y mucho más.

Estructura del proyecto

  • Todos los componentes del proyecto deben estar dentro del directorio src especificado en el archivo de configuración hsproject.json.
  • Todas las funciones y componentes de la aplicación deben estar en el directorio app/.
  • Las asociaciones de objetos de la aplicación se definen en el directorio app-object-associations/.
  • Las suscripciones a webhooks se definen en el directorio webhooks/.
  • Las acciones de workflow personalizadas se definen en el directorio workflow-actions/.
  • Todas las funciones de la tarjeta deben estar en el directorio cards/.
  • Todas las instancias de componentes y características se declaran utilizando los archivos *-hsmeta.json. Debes anteponer al nombre del archivo algo significativo (por ejemplo, my-app-hsmeta.json). Estos archivos deben estar en el nivel raíz de sus respectivas carpetas (por ejemplo, app/my-app-hsmeta.json, cards/my-card-hsmeta.json).
El ejemplo de estructura de directorios que aparece abajo describe todas las funciones disponibles.

Ver ejemplo en GitHub

Objetos de aplicación

Para crear un objeto de aplicación, incluye un directorio de componentes app-objects en el proyecto, junto con un archivo de configuración.
Abajo se indican las opciones de configuración disponibles para *-object-hsmeta.json.

Ver ejemplo en GitHub

Los campos marcados con * son obligatorios.

El nombre completo (FQN) de tu objeto de aplicación será a<appId>_<objectName>. Por ejemplo: si tu appId es 16858319 y el nombre del objeto de la aplicación es CARS, entonces el FQN sería a16858319_CARS. Utilizarás el FQN cuando establezcas valores de alcance para los objetos de tu aplicación.

Esquema de la aplicación

Para crear un objeto de aplicación, incluye un archivo de configuración app-hsmeta.json en el directorio app.
Abajo se indican las opciones de configuración disponibles para app-hsmeta.json.
Ten en cuenta los siguientes cambios en los archivos de configuración de las tarjetas de aplicación:
  • Agregados los campos de nivel superior uid, type y config.
  • Eliminado el campo extensions.
  • Agregado el campo distribution.

Ver ejemplo en GitHub

Esquema de la aplicación *-hsmeta.json campos

Los campos marcados con * son obligatorios

campos de autenticación

Los campos marcados con * son obligatorios.

Permisos

En el campo auth del archivo de configuración de una aplicación, puedes especificar tres tipos de permisos: permisos requeridos, permisos requeridos condicionalmente y permisos opcionales. Para esta etapa de la beta, solo debes incluir los permisos de los objetos de tu aplicación como conditionallyRequiredScopes. Esto te permitirá aislar tus nuevas funciones para clientes específicos incluyendo los permisos de los objetos de la aplicación en la URL de instalación. Los permisos de los objetos de la aplicación utilizan el siguiente formato: crm.app.schemas.<appObjectFullyQualifiedName>.read Por ejemplo, para un objeto de aplicación con el FQN a16858319_cars, el permiso read sería: crm.app.schemas.a16858319_cars.read. Como mínimo, tu aplicación debe incluir el permiso read de arriba para que los clientes puedan acceder al objeto. Se recomienda incluir todos los permisos de objetos de aplicación en tu aplicación, como se muestra abajo.
Para obtener una lista completa de los permisos disponibles, consulta la referencia de permisos.

Definición del componente de webhooks

Para definir un conjunto de suscripciones a webhook para tu aplicación, incluye un directorio webhooks en el proyecto, junto con un archivo de configuración *-hsmeta.json.
Abajo se indican las opciones de configuración disponibles para el archivo *-hsmeta.json.

Webhook *-hsmeta.json campos

Los campos marcados con * son obligatorios.

Para cada objeto subscription, se pueden especificar los siguientes campos, en función del tipo de definición de suscripción al que estés suscrito (es decir, crmObjects, legacyCrmObjects o hubEvents) o de si estás suscrito a un cambio de propiedad específico (por ejemplo, contact.propertyChange).

Esquema de la tarjeta de la aplicación

Para crear una tarjeta de aplicación que aparezca en una página de registro de objetos de aplicación, incluye un directorio de componentes cards en el proyecto, junto con un archivo de configuración.
  • Asegúrate de que has ejecutado hs project upload después de crear tu componente de objeto de aplicación y los archivos de configuración asociados.
  • En tu archivo my-app-card-hsmeta.json, agrega el UID del objeto de tu aplicación a la matriz objectTypes (por ejemplo, "app_object_uid" en este ejemplo). Cada uno de los campos disponibles en el archivo .json se detalla en la tabla siguiente.
Ten en cuenta los siguientes cambios en los archivos de configuración de las tarjetas de aplicación:
  • Agregados los campos de nivel superior uid, type y config.
  • El campo module ha pasado a llamarse entrypoint.
  • El campo title ha pasado a llamarse name.
  • El campo objectTypes se ha simplificado para aceptar una matriz de cadenas.
  • Cuando hayas guardado los cambios en tu archivo example-card-hsmeta.json, ejecuta hs project upload.
Las tarjetas se agregan automáticamente a la vista predeterminada de los objetos de la aplicación. Si la tarjeta no aparece automáticamente, aprende a agregar tarjetas a los registros de CRM.

Ver ejemplo en GitHub

Tarjeta de aplicación *-hsmeta.json campos

Los campos marcados con * son obligatorios.

Asociaciones de objetos de la aplicación

Para habilitar las asociaciones entre el objeto de tu aplicación y otros objetos del CRM, incluye un directorio de componentes app-object-associations en el proyecto, junto con un archivo de configuración.
Abajo se indican las opciones de configuración del objeto de la aplicación disponibles (*-association-hsmeta.json).

Asociación *-asociación-hsmeta.json campos

Los campos marcados con * son obligatorios.

Última modificación el 10 de febrero de 2026