---
title: "Change applicability of a managed website"
method: PATCH
path: "/knowledge/websites/{websiteId}/property"
---

# Change applicability of a managed website

`PATCH /knowledge/websites/{websiteId}/property`

## Request

- Base URL: `https://platform-api.visitoai.com/m2m/v1`
- URL: `https://platform-api.visitoai.com/m2m/v1/knowledge/websites/{websiteId}/property`
- Auth: HTTP bearer

Set all website knowledge to propertyId from list_properties, or null for global scope. This changes retrieval applicability for the current website generation; confirm returned scope/pages after saving. Required permission: knowledge:write. Connected business only; no tenant override.

## Path parameters

- `websiteId` string, required

## Request body

- KnowledgeScopeInput
  - `propertyId` string, nullable, required: Copy propertyId from list_properties, or null to make this knowledge global across the business.

## Response `200`

Success

- KnowledgeWebsite
  - `websiteId` string, required
  - `sourceId` string, required
  - `sourceType` 'website', required
  - `active` boolean, required
  - `scope` 'property' | 'global', required
  - `title` string, required
  - `url` string, required
  - `chunkCount` integer, required
  - `activeTokens` integer
  - `selectedTokens` integer
  - `createdBy` object
    - `id` string
    - `displayName` string
    - `email` string
  - `rootUrl` string, required
  - `normalizedRootUrl` string, required
  - `crawlDepth` integer, required
  - `maxPages` integer, required
  - `propertyId` string
  - `propertyName` string
  - `status` 'idle' | 'crawling' | 'failed', required
  - `defaultEnabled` boolean, required
  - `selectionRules` object[], required
    - `kind` 'path' | 'page', required
    - `key` string, required
    - `enabled` boolean, required
  - `currentGenerationId` string
  - `latestJob` KnowledgeCrawlJob
    - `jobId` string
    - `status` 'queued' | 'running' | 'completed' | 'failed'
    - `progress` object
      - `phase` 'queued' | 'crawling' | 'embedding' | 'finalizing'
      - `pagesDiscovered` integer
      - `pagesProcessed` integer
      - `chunksEmbedded` integer
    - `chunks` integer
    - `url` string
    - `crawlDepth` integer
    - `maxPages` integer
    - `sourceId` string
    - `error` object
      - `code` string
      - `message` string
    - `websiteId` string
    - `websiteGenerationId` string
    - `createdAt` string
    - `startedAt` string
    - `completedAt` string
    - `updatedAt` string
    - `snapshotPages` integer
  - `totalPages` integer, required
  - `enabledPages` integer, required
  - `pages` object[]
    - `sourceId` string, required
    - `url` string, required
    - `canonicalUrl` string, required
    - `path` string, required
    - `enabled` boolean, required
    - `chunkCount` integer, required
    - `tokens` integer
    - `displayOrder` integer
    - `updatedAt` string
  - `createdAt` string
  - `updatedAt` string
  - `lastCrawledAt` string

## Other responses

- `400`: Invalid request
- `403`: Missing permission
- `404`: Resource not found
- `409`: Conflict; read state and reconcile

---

[API](https://skmtc.dev/visitoai/apis/visito-m2m-api.md) - [All operations](https://skmtc.dev/visitoai/apis/visito-m2m-api/llms.txt) - [OpenAPI document](https://skmtc.dev/visitoai/apis/visito-m2m-api/revisions/98377d35c234?raw)
