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

# Create Event

> Erstellen Sie ein neues Event vom Typ „Aufmerksamkeitsspanne“ im MediaBridgeService. Dieser Endpunkt wird verwendet, um Events vom Typ „Aufmerksamkeitsspanne“ aufzuzeichnen, die nützlich sein können, um die Nutzerinteraktion mit Medieninhalten zu verfolgen. Die Anfrage muss einen gültigen JSON-Body enthalten, der dem AttentionSpanEventRequest-Schema entspricht.

export const ScopesList = ({scopes = [], description = "Diese API erfordert einen der folgenden Bereiche:"}) => {
  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: "Unterstützte Produkte",
    description: "Erfordert eines der folgenden Produkte oder höher.",
    productNames: {
      marketing: "Marketing Hub",
      sales: "Sales Hub",
      service: "Service Hub",
      cms: "Content Hub"
    },
    tiers: {
      free: "Kostenlos",
      starter: "Starter",
      professional: "Professional",
      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={[
  'media_bridge.write'
]}
    />
  </Accordion>
</AccordionGroup>


## OpenAPI

````yaml specs/2026-09/cms-media-bridge-v2026-09.json POST /media-bridge/2026-09/events/attention-span
openapi: 3.0.1
info:
  title: CMS Media Bridge
  description: Basepom for all HubSpot Projects
  version: 2026-09
  x-hubspot-product-tier-requirements:
    marketing: FREE
    sales: FREE
    service: FREE
    cms: FREE
    commerce: FREE
    crmHub: FREE
    dataHub: FREE
servers:
  - url: https://api.hubapi.com
security: []
tags:
  - name: Advanced
  - name: Basic
  - name: Batch
paths:
  /media-bridge/2026-09/events/attention-span:
    post:
      tags:
        - Advanced
      summary: Veranstaltung erstellen
      description: >-
        Erstellen Sie ein neues Event vom Typ „Aufmerksamkeitsspanne“ im
        MediaBridgeService. Dieser Endpunkt wird verwendet, um Events vom Typ
        „Aufmerksamkeitsspanne“ aufzuzeichnen, die nützlich sein können, um die
        Nutzerinteraktion mit Medieninhalten zu verfolgen. Die Anfrage muss
        einen gültigen JSON-Body enthalten, der dem
        AttentionSpanEventRequest-Schema entspricht.
      operationId: post-/media-bridge/2026-09/events/attention-span
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AttentionSpanEventRequest'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AttentionSpanEvent'
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - media_bridge.write
components:
  schemas:
    AttentionSpanEventRequest:
      required:
        - mediaType
        - occurredTimestamp
        - rawDataMap
        - sessionId
      type: object
      properties:
        _hsenc:
          type: string
          description: >-
            Eine codierte Zeichenfolge, die für HubSpot-spezifische
            Codierungszwecke verwendet wird.
        contactId:
          type: integer
          description: Die eindeutige ID für den Kontakt, der dem Event zugeordnet ist.
          format: int64
        contactUtk:
          type: string
          description: >-
            Der eindeutige Tracking-Schlüssel für den Kontakt, der zur
            Nachverfolgung verwendet wird.
        derivedValues:
          $ref: '#/components/schemas/AttentionSpanCalculatedValues'
        externalId:
          type: string
          description: >-
            Eine externe ID für das Event, die typischerweise zur Korrelation
            mit externen Systemen verwendet wird.
        externalPlayContext:
          type: string
          description: >-
            Zusätzlicher Kontext zum Wiedergabe-Event, typischerweise für
            externe Integrationen verwendet.
          enum:
            - EMAIL
            - EXTERNAL_PAGE
        mediaBridgeId:
          type: integer
          description: Die eindeutige ID für die Media Bridge-Instanz.
          format: int64
        mediaName:
          type: string
          description: Der Name des Mediums, das im Event involviert ist.
        mediaType:
          type: string
          description: >-
            Der Medientyp, der im Event involviert ist. Gültige Werte sind
            „VIDEO“, „AUDIO“, „DOCUMENT“, „OTHER“ und „IMAGE“.
          enum:
            - AUDIO
            - DOCUMENT
            - IMAGE
            - OTHER
            - VIDEO
        mediaUrl:
          type: string
          description: Die URL des Mediums, das im Event involviert ist.
        occurredTimestamp:
          type: integer
          description: >-
            Der Zeitstempel des Vorkommens des Events, dargestellt als
            Unix-Zeitstempel in Millisekunden.
          format: int64
        pageId:
          type: integer
          description: Die eindeutige ID für die Seite, auf der das Event aufgetreten ist.
          format: int64
        pageName:
          type: string
          description: Der Name der Seite, auf der das Event aufgetreten ist.
        pageUrl:
          type: string
          description: Die URL der Seite, auf der das Event aufgetreten ist.
        rawDataMap:
          type: object
          additionalProperties:
            type: integer
            format: int32
          description: >-
            Eine Zuordnung von Rohdaten-Schlüssel-Wert-Paaren, die zusätzlichen
            Kontext zum Event bereitstellen.
        rawDataString:
          type: string
          description: Eine Rohdatenzeichenfolge mit zusätzlichen Informationen zum Event.
        sessionId:
          type: string
          description: >-
            Die eindeutige ID für die Sitzung, während der das Event aufgetreten
            ist.
    AttentionSpanEvent:
      required:
        - contactId
        - mediaBridgeId
        - mediaBridgeObjectCoordinates
        - mediaBridgeObjectTypeId
        - mediaName
        - mediaType
        - occurredTimestamp
        - percentRange
        - portalId
        - providerId
        - sessionId
        - totalPercentPlayed
      type: object
      properties:
        contactId:
          type: integer
          description: >-
            Eine Zeichenfolge, die die eindeutige ID für den dem Event
            zugeordneten Kontakt darstellt.
          format: int64
        externalPlayContext:
          type: string
          description: >-
            Eine Zeichenfolge, die zusätzlichen Kontext zum Wiedergabe-Event aus
            einer externen Quelle bereitstellt.
          enum:
            - EMAIL
            - EXTERNAL_PAGE
        mediaBridgeId:
          type: integer
          description: >-
            Eine Zeichenfolge, die die eindeutige ID für die Media
            Bridge-Instanz darstellt.
          format: int64
        mediaBridgeObjectCoordinates:
          type: string
          description: >-
            Eine Zeichenfolge, die die Koordinaten des Media Bridge-Objekts
            detailliert beschreibt.
        mediaBridgeObjectTypeId:
          type: string
          description: >-
            Eine Zeichenfolge, die die Typ-ID für das Media Bridge-Objekt
            darstellt.
        mediaName:
          type: string
          description: Eine Zeichenfolge, die den Namen des Medieninhalts darstellt.
        mediaType:
          type: string
          description: "Eine Zeichenfolge, die den Medientyp im Event angibt, z.\_B. „VIDEO“, „AUDIO“ usw."
          enum:
            - AUDIO
            - DOCUMENT
            - IMAGE
            - OTHER
            - VIDEO
        mediaUrl:
          type: string
          description: Eine Zeichenfolge, die die URL des Medieninhalts enthält.
        occurredTimestamp:
          type: integer
          description: >-
            Eine Zeichenfolge, die den Zeitstempel des Events im ISO 8601-Format
            darstellt.
          format: int64
        pageId:
          type: integer
          description: Eine Zeichenfolge, die die eindeutige ID für die Seite darstellt.
          format: int64
        pageName:
          type: string
          description: >-
            Eine Zeichenfolge, die den Namen der Seite darstellt, auf der die
            Medien aufgerufen wurden.
        pageObjectCoordinates:
          type: string
          description: >-
            Eine Zeichenfolge, die die Koordinaten des Seitenobjekts detailliert
            beschreibt.
        pageUrl:
          type: string
          description: >-
            Eine Zeichenfolge, die die URL der Seite enthält, auf der die Medien
            aufgerufen wurden.
        percentRange:
          type: string
          description: >-
            Eine Zeichenfolge, die den Bereich der Prozentsätze angibt, die
            während der Sitzung abgespielt wurden.
        portalId:
          type: integer
          description: >-
            Eine Ganzzahl, die die eindeutige ID für das HubSpot-Portal
            darstellt.
          format: int32
        providerId:
          type: integer
          description: >-
            Eine Zeichenfolge, die die eindeutige ID für den Medienanbieter
            darstellt.
          format: int32
        rawData:
          type: string
          description: >-
            Eine Zeichenfolge, die Rohdaten enthält, die dem Event zugeordnet
            sind.
        sessionId:
          type: string
          description: >-
            Eine Zeichenfolge, die die eindeutige ID für die Sitzung darstellt,
            während der die Medien abgespielt wurden.
        totalPercentPlayed:
          type: number
          description: >-
            Eine Zahl, die den gesamten Prozentsatz der abgespielten Medien
            angibt.
        totalSecondsPlayed:
          type: integer
          description: >-
            Eine Zahl, die die Gesamtzahl der Sekunden der wiedergegebenen
            Medien darstellt.
          format: int32
    AttentionSpanCalculatedValues:
      required:
        - totalPercentPlayed
        - totalSecondsPlayed
      type: object
      properties:
        totalPercentPlayed:
          type: number
          description: >-
            Der Prozentsatz des wiedergegebenen Medieninhalts. Dies ist ein
            numerischer Wert, der angibt, wie viel des gesamten Inhalts
            angesehen wurde, ausgedrückt in Prozent.
        totalSecondsPlayed:
          type: integer
          description: >-
            Die Gesamtdauer in Sekunden, die der Medieninhalt abgespielt wurde.
            Dieser numerische Wert stellt die kumulierte Wiedergabezeit dar.
          format: int32
    Error:
      required:
        - category
        - correlationId
        - message
      type: object
      properties:
        category:
          type: string
          description: Die Fehlerkategorie
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Kontext zur Fehlerbedingung
          example: >-
            {invalidPropertyName=[propertyValue], missingScopes=[scope1,
            scope2]}
        correlationId:
          type: string
          description: >-
            Eine eindeutige ID für die Anfrage. Berücksichtigen Sie diesen Wert
            in Fehlerberichten oder Support-Tickets.
          format: uuid
          example: aeb5f871-7f07-4993-9211-075dc63e7cbf
        errors:
          type: array
          description: Weitere Informationen zum Fehler
          items:
            $ref: '#/components/schemas/ErrorDetail'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Eine Zuordnung der Namen von Links zu zugeordneten URIs mit einer
            Dokumentation zum Fehler oder empfohlenen Abhilfemaßnahmen
        message:
          type: string
          description: >-
            Eine für Menschen lesbare Nachricht mit einer Beschreibung des
            Fehlers und ggf. Abhilfemaßnahmen
          example: An error occurred
        subCategory:
          type: string
          description: Eine spezifische Kategorie, die genauere Details zum Fehler enthält
      description: >-
        Stellt eine Fehlerantwort dar, die von der API zurückgegeben wird, wenn
        ein Vorgang fehlschlägt. Diese Komponente wird in verschiedenen
        Endpunkten verwendet, um detaillierte Informationen über den
        aufgetretenen Fehler bereitzustellen.
      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
    ErrorDetail:
      required:
        - message
      type: object
      properties:
        code:
          type: string
          description: Der Statuscode, der dem Fehlerdetail zugeordnet ist
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Kontext zur Fehlerbedingung
          example: '{missingScopes=[scope1, scope2]}'
        in:
          type: string
          description: >-
            Der Name des Felds oder Parameters, in dem der Fehler gefunden
            wurde.
        message:
          type: string
          description: >-
            Eine für Menschen lesbare Nachricht mit einer Beschreibung des
            Fehlers und ggf. Abhilfemaßnahmen
        subCategory:
          type: string
          description: Eine spezifische Kategorie, die genauere Details zum Fehler enthält
      description: >-
        Stellt detaillierte Informationen zu einem in der API aufgetretenen
        Fehler dar. Diese Komponente wird verwendet, um zusätzlichen Kontext und
        spezifische Details zu Fehlern bereitzustellen, typischerweise als Teil
        einer Fehlerantwort.
  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:
            media_bridge.write: ''

````