{"openapi":"3.1.0","info":{"title":"Datadog RUM (BYOK) API","version":"0.1.0","description":"Datadog RUM (BYOK) lets an AI assistant read your own Datadog RUM data through the Datadog RUM API with a key you supply (Datadog API key (US1 site, datadoghq.com)). Read-only: 7 tools (list_applications, get_application, get_rum_config, list_rum_metrics, list_retention_filters, get_retention_filter, list_teams_ownership_rules). The BYOK key travels with each request, is used for that one call...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-datadog-rum.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-datadog-rum/docs"},"termsOfService":"https://connectorbay.com/byok-datadog-rum/terms"},"servers":[{"url":"https://byok-datadog-rum.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-datadog-rum/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_applications":{"post":{"operationId":"list_applications","summary":"List RUM applications with id, name, type (browser, ios, android, react-native, flutter ...), active flag and last updat","description":"List RUM applications with id, name, type (browser, ios, android, react-native, flutter ...), active flag and last update time. Client tokens and creator handles are left out. Use for \"Which RUM applications do I have in Datadog\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_applicationsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_application":{"post":{"operationId":"get_application","summary":"Get one RUM application by id: name, type, active flag, product scale states (event processing and product analytics ret","description":"Get one RUM application by id: name, type, active flag, product scale states (event processing and product analytics retention) and update time. Use for \"Show the details of my Datadog RUM application\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"RUM application id (UUID) from list_applications.","maxLength":60,"title":"Id","type":"string"}},"required":["id"],"title":"get_applicationArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_rum_config":{"post":{"operationId":"get_rum_config","summary":"Show the organization's RUM settings: whether RUM is disabled, retention filters enabled, enforced application tags and ","description":"Show the organization's RUM settings: whether RUM is disabled, retention filters enabled, enforced application tags and out-of-the-box metrics version. Use for \"Are RUM retention filters enabled in my Datadog org\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_rum_configArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_rum_metrics":{"post":{"operationId":"list_rum_metrics","summary":"List RUM-based metrics: id (metric name), event type, aggregation type, measure path, filter query and group-by tags. Us","description":"List RUM-based metrics: id (metric name), event type, aggregation type, measure path, filter query and group-by tags. Use for \"Which metrics are generated from Datadog RUM events\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_rum_metricsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_retention_filters":{"post":{"operationId":"list_retention_filters","summary":"List the retention filters of one RUM application (which events are kept, sample rate, enabled flag, trace sampling). Us","description":"List the retention filters of one RUM application (which events are kept, sample rate, enabled flag, trace sampling). Use for \"Which retention filters does my Datadog RUM application use\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"app_id":{"description":"RUM application id (UUID) from list_applications.","maxLength":60,"title":"App Id","type":"string"}},"required":["app_id"],"title":"list_retention_filtersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_retention_filter":{"post":{"operationId":"get_retention_filter","summary":"Get one RUM retention filter of an application by id. Use for \"Show Datadog RUM retention filter rf1\".","description":"Get one RUM retention filter of an application by id. Use for \"Show Datadog RUM retention filter rf1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"app_id":{"description":"RUM application id (UUID) from list_applications.","maxLength":60,"title":"App Id","type":"string"},"rf_id":{"description":"Retention filter id from list_retention_filters.","maxLength":60,"title":"Rf Id","type":"string"}},"required":["app_id","rf_id"],"title":"get_retention_filterArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_teams_ownership_rules":{"post":{"operationId":"list_teams_ownership_rules","summary":"List rules that map RUM views to owning teams, per application and service. Filter by view name, team handle, applicatio","description":"List rules that map RUM views to owning teams, per application and service. Filter by view name, team handle, application or service. Use for \"Which team owns the checkout view in Datadog RUM\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"view_name":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only rules for this RUM view name.","title":"View Name"},"team_handle":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only rules owned by this team handle.","title":"Team Handle"},"application_id":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Only rules for this RUM application id (UUID).","title":"Application Id"},"service":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only rules for this RUM service name.","title":"Service"}},"title":"list_teams_ownership_rulesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}