naftiko: 1.0.0-alpha2 info: label: Datadog API — Rum description: 'Datadog API — Rum. 14 operations. Lead operation: Datadog Aggregate Rum Events. Self-contained Naftiko capability covering one Datadog business surface.' tags: - Datadog - Rum created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: DATADOG_API_KEY: DATADOG_API_KEY capability: consumes: - type: http namespace: datadog-rum baseUri: https://{subdomain}.{site} description: Datadog API — Rum business capability. Self-contained, no shared references. resources: - name: api-v2-rum-analytics-aggregate path: /api/v2/rum/analytics/aggregate operations: - name: aggregaterumevents method: POST description: Datadog Aggregate Rum Events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-rum-applications path: /api/v2/rum/applications operations: - name: getrumapplications method: GET description: Datadog List All the Rum Applications outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createrumapplication method: POST description: Datadog Create a New Rum Application outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-rum-applications-app_id-relationships-retention_filters path: /api/v2/rum/applications/{app_id}/relationships/retention_filters operations: - name: orderretentionfilters method: PATCH description: Datadog Order Rum Retention Filters outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-rum-applications-app_id-retention_filters path: /api/v2/rum/applications/{app_id}/retention_filters operations: - name: listretentionfilters method: GET description: Datadog Get All Rum Retention Filters outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createretentionfilter method: POST description: Datadog Create a Rum Retention Filter outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-rum-applications-app_id-retention_filters-rf_id path: /api/v2/rum/applications/{app_id}/retention_filters/{rf_id} operations: - name: deleteretentionfilter method: DELETE description: Datadog Delete a Rum Retention Filter outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getretentionfilter method: GET description: Datadog Get a Rum Retention Filter outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateretentionfilter method: PATCH description: Datadog Update a Rum Retention Filter outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-rum-applications-id path: /api/v2/rum/applications/{id} operations: - name: deleterumapplication method: DELETE description: Datadog Delete a Rum Application outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: RUM application ID. required: true - name: getrumapplication method: GET description: Datadog Get a Rum Application outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: RUM application ID. required: true - name: updaterumapplication method: PATCH description: Datadog Update a Rum Application outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: RUM application ID. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-rum-events path: /api/v2/rum/events operations: - name: listrumevents method: GET description: Datadog Get a List of Rum Events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: filter[query] in: query type: string description: Search query following RUM syntax. - name: filter[from] in: query type: string description: Minimum timestamp for requested events. - name: filter[to] in: query type: string description: Maximum timestamp for requested events. - name: sort in: query type: string description: Order of events in results. - name: page[cursor] in: query type: string description: List following results with a cursor provided in the previous query. - name: page[limit] in: query type: integer description: Maximum number of events in the response. - name: api-v2-rum-events-search path: /api/v2/rum/events/search operations: - name: searchrumevents method: POST description: Datadog Search Rum Events outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.DATADOG_API_KEY}}' exposes: - type: rest namespace: datadog-rum-rest port: 8080 description: REST adapter for Datadog API — Rum. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v2/rum/analytics/aggregate name: api-v2-rum-analytics-aggregate description: REST surface for api-v2-rum-analytics-aggregate. operations: - method: POST name: aggregaterumevents description: Datadog Aggregate Rum Events call: datadog-rum.aggregaterumevents with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/rum/applications name: api-v2-rum-applications description: REST surface for api-v2-rum-applications. operations: - method: GET name: getrumapplications description: Datadog List All the Rum Applications call: datadog-rum.getrumapplications outputParameters: - type: object mapping: $. - method: POST name: createrumapplication description: Datadog Create a New Rum Application call: datadog-rum.createrumapplication with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/rum/applications/{app-id}/relationships/retention-filters name: api-v2-rum-applications-app-id-relationships-retention-filters description: REST surface for api-v2-rum-applications-app_id-relationships-retention_filters. operations: - method: PATCH name: orderretentionfilters description: Datadog Order Rum Retention Filters call: datadog-rum.orderretentionfilters with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/rum/applications/{app-id}/retention-filters name: api-v2-rum-applications-app-id-retention-filters description: REST surface for api-v2-rum-applications-app_id-retention_filters. operations: - method: GET name: listretentionfilters description: Datadog Get All Rum Retention Filters call: datadog-rum.listretentionfilters outputParameters: - type: object mapping: $. - method: POST name: createretentionfilter description: Datadog Create a Rum Retention Filter call: datadog-rum.createretentionfilter with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/rum/applications/{app-id}/retention-filters/{rf-id} name: api-v2-rum-applications-app-id-retention-filters-rf-id description: REST surface for api-v2-rum-applications-app_id-retention_filters-rf_id. operations: - method: DELETE name: deleteretentionfilter description: Datadog Delete a Rum Retention Filter call: datadog-rum.deleteretentionfilter outputParameters: - type: object mapping: $. - method: GET name: getretentionfilter description: Datadog Get a Rum Retention Filter call: datadog-rum.getretentionfilter outputParameters: - type: object mapping: $. - method: PATCH name: updateretentionfilter description: Datadog Update a Rum Retention Filter call: datadog-rum.updateretentionfilter with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/rum/applications/{id} name: api-v2-rum-applications-id description: REST surface for api-v2-rum-applications-id. operations: - method: DELETE name: deleterumapplication description: Datadog Delete a Rum Application call: datadog-rum.deleterumapplication with: id: rest.id outputParameters: - type: object mapping: $. - method: GET name: getrumapplication description: Datadog Get a Rum Application call: datadog-rum.getrumapplication with: id: rest.id outputParameters: - type: object mapping: $. - method: PATCH name: updaterumapplication description: Datadog Update a Rum Application call: datadog-rum.updaterumapplication with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/rum/events name: api-v2-rum-events description: REST surface for api-v2-rum-events. operations: - method: GET name: listrumevents description: Datadog Get a List of Rum Events call: datadog-rum.listrumevents with: filter[query]: rest.filter[query] filter[from]: rest.filter[from] filter[to]: rest.filter[to] sort: rest.sort page[cursor]: rest.page[cursor] page[limit]: rest.page[limit] outputParameters: - type: object mapping: $. - path: /v1/api/v2/rum/events/search name: api-v2-rum-events-search description: REST surface for api-v2-rum-events-search. operations: - method: POST name: searchrumevents description: Datadog Search Rum Events call: datadog-rum.searchrumevents with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: datadog-rum-mcp port: 9090 transport: http description: MCP adapter for Datadog API — Rum. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: datadog-aggregate-rum-events description: Datadog Aggregate Rum Events hints: readOnly: false destructive: false idempotent: false call: datadog-rum.aggregaterumevents with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-list-all-rum-applications description: Datadog List All the Rum Applications hints: readOnly: true destructive: false idempotent: true call: datadog-rum.getrumapplications outputParameters: - type: object mapping: $. - name: datadog-create-new-rum-application description: Datadog Create a New Rum Application hints: readOnly: false destructive: false idempotent: false call: datadog-rum.createrumapplication with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-order-rum-retention-filters description: Datadog Order Rum Retention Filters hints: readOnly: false destructive: false idempotent: true call: datadog-rum.orderretentionfilters with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-all-rum-retention description: Datadog Get All Rum Retention Filters hints: readOnly: true destructive: false idempotent: true call: datadog-rum.listretentionfilters outputParameters: - type: object mapping: $. - name: datadog-create-rum-retention-filter description: Datadog Create a Rum Retention Filter hints: readOnly: false destructive: false idempotent: false call: datadog-rum.createretentionfilter with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-rum-retention-filter description: Datadog Delete a Rum Retention Filter hints: readOnly: false destructive: true idempotent: true call: datadog-rum.deleteretentionfilter outputParameters: - type: object mapping: $. - name: datadog-get-rum-retention-filter description: Datadog Get a Rum Retention Filter hints: readOnly: true destructive: false idempotent: true call: datadog-rum.getretentionfilter outputParameters: - type: object mapping: $. - name: datadog-update-rum-retention-filter description: Datadog Update a Rum Retention Filter hints: readOnly: false destructive: false idempotent: true call: datadog-rum.updateretentionfilter with: body: tools.body outputParameters: - type: object mapping: $. - name: datadog-delete-rum-application description: Datadog Delete a Rum Application hints: readOnly: false destructive: true idempotent: true call: datadog-rum.deleterumapplication with: id: tools.id outputParameters: - type: object mapping: $. - name: datadog-get-rum-application description: Datadog Get a Rum Application hints: readOnly: true destructive: false idempotent: true call: datadog-rum.getrumapplication with: id: tools.id outputParameters: - type: object mapping: $. - name: datadog-update-rum-application description: Datadog Update a Rum Application hints: readOnly: false destructive: false idempotent: true call: datadog-rum.updaterumapplication with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: datadog-get-list-rum-events description: Datadog Get a List of Rum Events hints: readOnly: true destructive: false idempotent: true call: datadog-rum.listrumevents with: filter[query]: tools.filter[query] filter[from]: tools.filter[from] filter[to]: tools.filter[to] sort: tools.sort page[cursor]: tools.page[cursor] page[limit]: tools.page[limit] outputParameters: - type: object mapping: $. - name: datadog-search-rum-events description: Datadog Search Rum Events hints: readOnly: true destructive: false idempotent: false call: datadog-rum.searchrumevents with: body: tools.body outputParameters: - type: object mapping: $.