Skip to content

Ask for SharePoint

Bridge Microsoft Graph drive items to Findable's permission-aware Ask API. These endpoints resolve a SharePoint location to a building, expand selected files or folders into Findable document IDs, and return citation display data.

Integration workflow

  1. Resolve the current SharePoint site and drive to a Findable building.
  2. Resolve selected drive item IDs to Findable document IDs.
  3. Pass those IDs as attached_document_ids to the Ask endpoint.
  4. Resolve cited Findable IDs back to SharePoint display metadata.

Resolve a building

GET/v1/building_owners/{buildingOwnerId}/ask-sharepoint/resolve-building

Match SharePoint site and drive context to an active Findable subscription and building.

Authentication

x-api-key header

  • buildingOwnerIdstringrequiredBuilding owner / customer ID.
  • siteIdstringrequiredMicrosoft Graph site ID.
  • driveIdstringrequiredMicrosoft Graph drive ID.
  • parentItemIdstringOptional parent folder ID used to disambiguate multiple subscriptions.

Examples

curl -H "x-api-key: YOUR_API_KEY" \
  "https://api.findable.ai/v1/building_owners/cust-456/ask-sharepoint/resolve-building?siteId=site-123&driveId=drive-456"
  • 200Resolution completed
  • 403Building owner access denied
  • 500Unexpected server error

All endpoints may also return 429 (rate limit) and 500 (server error). See Common Patterns for details.

  • status'resolved' | 'not_found' | 'ambiguous'Resolution outcome.
  • customerIdstringBuilding owner ID from the URL. Always returned, including on not_found and ambiguous.
  • buildingIdstringResolved Findable building ID when status is resolved.
  • subscriptionSharePointSubscriptionSelected subscription when status is resolved.
  • matchesSharePointSubscription[]All site/drive matches, including ambiguous candidates.

Response

{
  "status": "resolved",
  "customerId": "cust-456",
  "buildingId": "bld-789",
  "subscription": {
    "siteId": "site-123",
    "driveId": "drive-456",
    "siteName": "Harbour House"
  },
  "matches": []
}

Resolve selected files or folders

POST/v1/building_owners/{buildingOwnerId}/ask-sharepoint/resolve-documents

Map up to 50 Microsoft Graph drive item IDs to Findable document IDs. Folder IDs expand to synced documents in their subtree, capped at 1,000 documents per folder.

Authentication

x-api-key header

  • buildingOwnerIdstringrequiredBuilding owner / customer ID.
  • building_idstringrequiredResolved Findable building ID.
  • sharepoint_item_idsstring[]requiredBetween 1 and 50 SharePoint file or folder drive item IDs.

Request Body Example

{
  "building_id": "bld-789",
  "sharepoint_item_ids": ["file-123", "folder-456"]
}
  • 200Items resolved
  • 403Customer or building access denied
  • 404Building not found
  • 500Unexpected server error

All endpoints may also return 429 (rate limit) and 500 (server error). See Common Patterns for details.

  • document_idsstring[]Unique Findable document IDs in stable input order.
  • missing_sharepoint_item_idsstring[]Drive item IDs that did not resolve to a synced document.

Response

{
  "document_ids": ["doc-1", "doc-2"],
  "missing_sharepoint_item_ids": ["file-missing"]
}

Resolve citation details

POST/v1/building_owners/{buildingOwnerId}/ask-sharepoint/documents-details

Return display fields and optional SharePoint metadata for up to 50 Findable document IDs.

Authentication

x-api-key header

  • buildingOwnerIdstringrequiredBuilding owner / customer ID.
  • document_idsstring[]requiredBetween 1 and 50 Findable document IDs.

Request Body Example

{ "document_ids": ["doc-1", "doc-2"] }
  • 200Details resolved
  • 403Building owner access denied
  • 404Building not found
  • 500Unexpected server error

All endpoints may also return 429 (rate limit) and 500 (server error). See Common Patterns for details.

  • documentsDocumentDetail[]Readable documents with filename, title, original path, and optional SharePoint metadata.
  • missing_document_idsstring[]Missing, unreadable, or out-of-customer document IDs.

Response

{
  "documents": [{
    "id": "doc-1",
    "filename": "fire-strategy.pdf",
    "title": "Fire strategy",
    "original_path": "/Shared Documents/Fire/",
    "sharepoint_item_id": "file-123"
  }],
  "missing_document_ids": ["doc-missing"]
}