{"openapi":"3.1.0","info":{"title":"Datadog Notebooks and Dashboards (BYOK) API","version":"0.1.0","description":"Datadog Notebooks and Dashboards (BYOK) lets an AI assistant read your own Datadog Notebooks and Dashboards data through the Datadog Notebooks and Dashboards API with a key you supply (Datadog API key (US1 site, datadoghq.com)). Read-only: 8 tools (list_notebooks, get_notebook, list_dashboard_lists, get_dashboard_list_items, list_powerpacks, get_powerpack, list_dashboard_usage,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-datadog-notebooks.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-datadog-notebooks/docs"},"termsOfService":"https://connectorbay.com/byok-datadog-notebooks/terms"},"servers":[{"url":"https://byok-datadog-notebooks.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-datadog-notebooks/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_notebooks":{"post":{"operationId":"list_notebooks","summary":"List Datadog notebooks (without cells by default) with name, status, type, dates and template variables. Search by name ","description":"List Datadog notebooks (without cells by default) with name, status, type, dates and template variables. Search by name or filter templates and metadata type. Use for \"Which Datadog notebooks are runbooks\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Text to find in the notebook name or author handle.","title":"Query"},"type":{"anyOf":[{"enum":["postmortem","runbook","investigation","documentation","report"],"type":"string"},{"type":"null"}],"default":null,"description":"Only notebooks of this metadata type.","title":"Type"},"is_template":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to list only template notebooks.","title":"Is Template"},"include_cells":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to include the cells of every notebook (large).","title":"Include Cells"},"sort_field":{"anyOf":[{"enum":["modified","name","created"],"type":"string"},{"type":"null"}],"default":"modified","description":"Sort by modified, name or created.","title":"Sort Field"},"sort_dir":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"desc","description":"Sort direction.","title":"Sort Dir"},"start":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Index of the first notebook to return.","title":"Start"},"count":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"Number of notebooks to return (1 to 100).","title":"Count"}},"title":"list_notebooksArguments","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_notebook":{"post":{"operationId":"get_notebook","summary":"Get one notebook by numeric id, including its cells (markdown and query definitions), time setting and template variable","description":"Get one notebook by numeric id, including its cells (markdown and query definitions), time setting and template variables. Use for \"Show the contents of Datadog notebook 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"notebook_id":{"description":"Notebook id (an integer) from list_notebooks.","maximum":9999999999,"minimum":1,"title":"Notebook Id","type":"integer"}},"required":["notebook_id"],"title":"get_notebookArguments","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_dashboard_lists":{"post":{"operationId":"list_dashboard_lists","summary":"List dashboard lists with name, dashboard count, type, dates and favorite flag (no author details). Use for \"Which dashb","description":"List dashboard lists with name, dashboard count, type, dates and favorite flag (no author details). Use for \"Which dashboard lists exist in Datadog\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_dashboard_listsArguments","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_dashboard_list_items":{"post":{"operationId":"get_dashboard_list_items","summary":"List the dashboards inside one dashboard list: id, title, type, URL, tags, popularity and sharing flags. Use for \"Which ","description":"List the dashboards inside one dashboard list: id, title, type, URL, tags, popularity and sharing flags. Use for \"Which dashboards are in Datadog dashboard list 1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"dashboard_list_id":{"description":"Dashboard list id (an integer) from list_dashboard_lists.","maximum":9999999999,"minimum":1,"title":"Dashboard List Id","type":"integer"}},"required":["dashboard_list_id"],"title":"get_dashboard_list_itemsArguments","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_powerpacks":{"post":{"operationId":"list_powerpacks","summary":"List powerpacks (reusable dashboard widget groups) with name, description, tags and template variables. Use for \"What po","description":"List powerpacks (reusable dashboard widget groups) with name, description, tags and template variables. Use for \"What powerpacks are available in Datadog\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"page_limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many items to return (1 to 1000).","title":"Page Limit"},"page_offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Offset to start from.","title":"Page Offset"}},"title":"list_powerpacksArguments","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_powerpack":{"post":{"operationId":"get_powerpack","summary":"Get one powerpack by id with name, description, tags and template variables. Use for \"Show the Datadog powerpack with id","description":"Get one powerpack by id with name, description, tags and template variables. Use for \"Show the Datadog powerpack with id p1\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"powerpack_id":{"description":"Powerpack id (UUID) from list_powerpacks.","maxLength":60,"title":"Powerpack Id","type":"string"}},"required":["powerpack_id"],"title":"get_powerpackArguments","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_dashboard_usage":{"post":{"operationId":"list_dashboard_usage","summary":"List usage statistics for every dashboard: total views, last viewed and edited times, widget counts, quality score and t","description":"List usage statistics for every dashboard: total views, last viewed and edited times, widget counts, quality score and teams (no viewer or author names). Find stale dashboards with the before filters. Use for \"Which Datadog dashboards have not been viewed since July 2026\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"viewed_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only dashboards last viewed strictly before this ISO 8601 time, for example 2026-07-01T00:00:00Z.","title":"Viewed Before"},"edited_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only dashboards last edited strictly before this ISO 8601 time.","title":"Edited Before"},"page_limit":{"anyOf":[{"maximum":500,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Dashboards per page (1 to 500).","title":"Page Limit"},"page_offset":{"anyOf":[{"maximum":1000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Offset to start from.","title":"Page Offset"}},"title":"list_dashboard_usageArguments","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_dashboard_usage":{"post":{"operationId":"get_dashboard_usage","summary":"Get usage statistics for one dashboard id: total views by type, last viewed and edited times, widget counts and quality ","description":"Get usage statistics for one dashboard id: total views by type, last viewed and edited times, widget counts and quality score. Use for \"How often is Datadog dashboard abc-def-ghi viewed\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"dashboard_id":{"description":"Dashboard id such as abc-def-ghi.","maxLength":60,"title":"Dashboard Id","type":"string"}},"required":["dashboard_id"],"title":"get_dashboard_usageArguments","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}}}}