{"record":{"id":"2c031519ce8b1c60","repo":"Budibase/budibase","slug":"failed-to-list-sharepoint-drive-items-response","errorCode":null,"errorMessage":"Failed to list SharePoint drive items (${response.status})","messagePattern":"Failed to list SharePoint drive items \\((.+?)\\)","errorType":"http","errorClass":"HTTPError","httpStatus":400,"severity":"error","filePath":"packages/server/src/sdk/workspace/ai/knowledgeSources/sharepoint/connection.ts","lineNumber":757,"sourceCode":"      () =>\n        fetch(nextLink, {\n          signal,\n          headers: {\n            Authorization: bearerToken,\n          },\n        }),\n      signal\n    )\n    if (response.status === 404 && !hasFetchedPage) {\n      return items\n    }\n    if (!response.ok) {\n      console.error(\"Failed to list SharePoint drive items\", {\n        status: response.status,\n        driveId,\n        hasItemId: !!itemId,\n      })\n      throw new HTTPError(\n        response.status === 401 || response.status === 403\n          ? \"Access denied by Microsoft Graph. Ensure delegated SharePoint read permissions are granted.\"\n          : `Failed to list SharePoint drive items (${response.status})`,\n        400\n      )\n    }\n\n    const payload = (await response.json()) as SharePointDriveItemsResponse\n    hasFetchedPage = true\n    items.push(...(Array.isArray(payload.value) ? payload.value : []))\n    const nextPageLink = payload?.[\"@odata.nextLink\"]\n    if (!nextPageLink) {\n      nextLink = \"\"\n      continue\n    }\n\n    if (!isAllowedSharePointNextLink(nextPageLink)) {\n      throw new HTTPError(\"Invalid SharePoint pagination URL\", 400)","sourceCodeStart":739,"sourceCodeEnd":775,"githubUrl":"https://github.com/Budibase/budibase/blob/a81a902e9a8fe55b467d106765f6638f12e35c49/packages/server/src/sdk/workspace/ai/knowledgeSources/sharepoint/connection.ts#L739-L775","documentation":"Error \"Failed to list SharePoint drive items (${response.status})\" thrown in Budibase/budibase.","triggerScenarios":"Thrown at packages/server/src/sdk/workspace/ai/knowledgeSources/sharepoint/connection.ts:757 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a81a902e9a8fe55b467d106765f6638f12e35c49","analyzedAt":"2026-08-29T01:03:10.972Z","schemaVersion":2},"datasetVersion":"2026-08-29T02:17:18.158Z"}