@notionhq/client 5.10.0 → 5.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/package.json +1 -1
- package/build/src/Client.d.ts +17 -2
- package/build/src/Client.d.ts.map +1 -1
- package/build/src/Client.js +77 -0
- package/build/src/Client.js.map +1 -1
- package/build/src/api-endpoints.d.ts +80 -25
- package/build/src/api-endpoints.d.ts.map +1 -1
- package/build/src/api-endpoints.js +32 -11
- package/build/src/api-endpoints.js.map +1 -1
- package/build/src/utils.d.ts +12 -0
- package/build/src/utils.d.ts.map +1 -1
- package/build/src/utils.js +17 -0
- package/build/src/utils.js.map +1 -1
- package/package.json +1 -1
package/build/src/Client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Agent } from \"node:http\"\nimport {\n type Logger,\n LogLevel,\n logLevelSeverity,\n makeConsoleLogger,\n} from \"./logging\"\nimport {\n APIErrorCode,\n APIResponseError,\n buildRequestError,\n isHTTPResponseError,\n isNotionClientError,\n type NotionClientError,\n RequestTimeoutError,\n validateRequestPath,\n} from \"./errors\"\nimport { pick } from \"./utils\"\nimport {\n type GetBlockParameters,\n type GetBlockResponse,\n getBlock,\n type UpdateBlockParameters,\n type UpdateBlockResponse,\n updateBlock,\n type DeleteBlockParameters,\n type DeleteBlockResponse,\n deleteBlock,\n type AppendBlockChildrenParameters,\n type AppendBlockChildrenResponse,\n appendBlockChildren,\n type ListBlockChildrenParameters,\n type ListBlockChildrenResponse,\n listBlockChildren,\n type QueryDataSourceParameters,\n type QueryDataSourceResponse,\n queryDataSource,\n type CreateDataSourceParameters,\n type CreateDataSourceResponse,\n createDataSource,\n type UpdateDataSourceParameters,\n type UpdateDataSourceResponse,\n updateDataSource,\n type GetDataSourceParameters,\n type GetDataSourceResponse,\n getDataSource,\n type CreatePageParameters,\n type CreatePageResponse,\n createPage,\n type GetPageParameters,\n type GetPageResponse,\n getPage,\n type UpdatePageParameters,\n type UpdatePageResponse,\n updatePage,\n type MovePageParameters,\n type MovePageResponse,\n movePage,\n type GetUserParameters,\n type GetUserResponse,\n getUser,\n type ListUsersParameters,\n type ListUsersResponse,\n listUsers,\n type SearchParameters,\n type SearchResponse,\n search,\n type GetSelfParameters,\n type GetSelfResponse,\n getSelf,\n type GetPagePropertyParameters,\n type GetPagePropertyResponse,\n getPageProperty,\n type CreateCommentParameters,\n type CreateCommentResponse,\n createComment,\n type ListCommentsParameters,\n type ListCommentsResponse,\n listComments,\n type GetCommentParameters,\n type GetCommentResponse,\n getComment,\n type OauthTokenResponse,\n type OauthTokenParameters,\n oauthToken,\n type OauthIntrospectResponse,\n type OauthIntrospectParameters,\n oauthIntrospect,\n type OauthRevokeResponse,\n type OauthRevokeParameters,\n oauthRevoke,\n type CreateFileUploadParameters,\n type CreateFileUploadResponse,\n createFileUpload,\n type GetFileUploadResponse,\n type GetFileUploadParameters,\n getFileUpload,\n type SendFileUploadParameters,\n type SendFileUploadResponse,\n sendFileUpload,\n type CompleteFileUploadParameters,\n type CompleteFileUploadResponse,\n completeFileUpload,\n type ListFileUploadsParameters,\n type ListFileUploadsResponse,\n listFileUploads,\n GetDatabaseParameters,\n GetDatabaseResponse,\n getDatabase,\n CreateDatabaseResponse,\n CreateDatabaseParameters,\n createDatabase,\n UpdateDatabaseParameters,\n UpdateDatabaseResponse,\n updateDatabase,\n listDataSourceTemplates,\n ListDataSourceTemplatesResponse,\n ListDataSourceTemplatesParameters,\n} from \"./api-endpoints\"\nimport {\n version as PACKAGE_VERSION,\n name as PACKAGE_NAME,\n} from \"../package.json\"\nimport type { SupportedFetch } from \"./fetch-types\"\n\nexport type RetryOptions = {\n /**\n * Maximum number of retry attempts. Set to 0 to disable retries.\n * @default 2\n */\n maxRetries?: number\n /**\n * Initial delay between retries in milliseconds.\n * Used as base for exponential back-off when retry-after header is absent.\n * @default 1000\n */\n initialRetryDelayMs?: number\n /**\n * Maximum delay between retries in milliseconds.\n * @default 60000\n */\n maxRetryDelayMs?: number\n}\n\nexport type ClientOptions = {\n auth?: string\n timeoutMs?: number\n baseUrl?: string\n logLevel?: LogLevel\n logger?: Logger\n notionVersion?: string\n fetch?: SupportedFetch\n /** Silently ignored in the browser */\n agent?: Agent\n /**\n * Configuration for automatic retries on rate limit (429) and server errors.\n * Set to false to disable retries entirely.\n */\n retry?: RetryOptions | false\n}\n\ntype FileParam = {\n filename?: string\n data: string | Blob\n}\n\nexport type RequestParameters = {\n path: string\n method: Method\n query?: QueryParams\n body?: Record<string, unknown>\n formDataParams?: Record<string, string | FileParam>\n headers?: Record<string, string>\n /**\n * To authenticate using public API token, `auth` should be passed as a\n * string. If you are trying to complete OAuth, then `auth` should be an object\n * containing your integration's client ID and secret.\n */\n auth?:\n | string\n | {\n client_id: string\n client_secret: string\n }\n}\n\nexport default class Client {\n #auth?: string\n #logLevel: LogLevel\n #logger: Logger\n #prefixUrl: string\n #timeoutMs: number\n #notionVersion: string\n #fetch: SupportedFetch\n #agent: Agent | undefined\n #userAgent: string\n #maxRetries: number\n #initialRetryDelayMs: number\n #maxRetryDelayMs: number\n\n static readonly defaultNotionVersion = \"2025-09-03\"\n\n public constructor(options?: ClientOptions) {\n this.#auth = options?.auth\n this.#logLevel = options?.logLevel ?? LogLevel.WARN\n this.#logger = options?.logger ?? makeConsoleLogger(PACKAGE_NAME)\n this.#prefixUrl = `${options?.baseUrl ?? \"https://api.notion.com\"}/v1/`\n this.#timeoutMs = options?.timeoutMs ?? 60_000\n this.#notionVersion = options?.notionVersion ?? Client.defaultNotionVersion\n this.#fetch = options?.fetch ?? fetch\n this.#agent = options?.agent\n this.#userAgent = `notionhq-client/${PACKAGE_VERSION}`\n\n if (options?.retry === false) {\n this.#maxRetries = 0\n this.#initialRetryDelayMs = 0\n this.#maxRetryDelayMs = 0\n } else {\n this.#maxRetries = options?.retry?.maxRetries ?? 2\n this.#initialRetryDelayMs = options?.retry?.initialRetryDelayMs ?? 1000\n this.#maxRetryDelayMs = options?.retry?.maxRetryDelayMs ?? 60_000\n }\n }\n\n /**\n * Sends a request.\n */\n public async request<ResponseBody extends object>(\n args: RequestParameters\n ): Promise<ResponseBody> {\n const { path, method, query, body, formDataParams, auth } = args\n\n validateRequestPath(path)\n\n this.log(LogLevel.INFO, \"request start\", { method, path })\n\n const url = this.buildRequestUrl(path, query)\n const bodyAsJsonString = this.serializeBody(body)\n const headers = this.buildRequestHeaders(\n args.headers,\n auth,\n bodyAsJsonString\n )\n const formData = this.buildFormData(formDataParams, headers)\n\n return this.executeWithRetry<ResponseBody>({\n url,\n method,\n path,\n headers,\n body: bodyAsJsonString ?? formData,\n })\n }\n\n /**\n * Builds the full URL with query parameters.\n */\n private buildRequestUrl(path: string, query: QueryParams | undefined): URL {\n const url = new URL(`${this.#prefixUrl}${path}`)\n if (query) {\n for (const [key, value] of Object.entries(query)) {\n if (value !== undefined) {\n if (Array.isArray(value)) {\n for (const val of value) {\n url.searchParams.append(key, decodeURIComponent(val))\n }\n } else {\n url.searchParams.append(key, String(value))\n }\n }\n }\n }\n return url\n }\n\n /**\n * Serializes the request body to JSON string if non-empty.\n */\n private serializeBody(\n body: Record<string, unknown> | undefined\n ): string | undefined {\n if (!body || Object.entries(body).length === 0) {\n return undefined\n }\n return JSON.stringify(body)\n }\n\n /**\n * Builds the request headers including auth and content-type.\n */\n private buildRequestHeaders(\n customHeaders: Record<string, string> | undefined,\n auth: RequestParameters[\"auth\"],\n bodyAsJsonString: string | undefined\n ): Record<string, string> {\n const authorizationHeader = this.buildAuthHeader(auth)\n\n const headers: Record<string, string> = {\n ...customHeaders,\n ...authorizationHeader,\n \"Notion-Version\": this.#notionVersion,\n \"user-agent\": this.#userAgent,\n }\n\n if (bodyAsJsonString !== undefined) {\n headers[\"content-type\"] = \"application/json\"\n }\n\n return headers\n }\n\n /**\n * Builds the authorization header based on auth type.\n */\n private buildAuthHeader(\n auth: RequestParameters[\"auth\"]\n ): Record<string, string> {\n if (typeof auth === \"object\") {\n const unencodedCredential = `${auth.client_id}:${auth.client_secret}`\n const encodedCredential =\n Buffer.from(unencodedCredential).toString(\"base64\")\n return { authorization: `Basic ${encodedCredential}` }\n }\n return this.authAsHeaders(auth)\n }\n\n /**\n * Builds FormData from form parameters if provided.\n * Also removes content-type header to let fetch set the boundary.\n */\n private buildFormData(\n formDataParams: Record<string, string | FileParam> | undefined,\n headers: Record<string, string>\n ): FormData | undefined {\n if (!formDataParams) {\n return undefined\n }\n\n delete headers[\"content-type\"]\n\n const formData = new FormData()\n for (const [key, value] of Object.entries(formDataParams)) {\n if (typeof value === \"string\") {\n formData.append(key, value)\n } else if (typeof value === \"object\") {\n formData.append(\n key,\n typeof value.data === \"object\" ? value.data : new Blob([value.data]),\n value.filename\n )\n }\n }\n return formData\n }\n\n /**\n * Executes the request with retry logic.\n */\n private async executeWithRetry<ResponseBody extends object>(args: {\n url: URL\n method: Method\n path: string\n headers: Record<string, string>\n body: string | FormData | undefined\n }): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n let attempt = 0\n // eslint-disable-next-line no-constant-condition\n while (true) {\n try {\n return await this.executeSingleRequest<ResponseBody>({\n url,\n method,\n path,\n headers,\n body,\n })\n } catch (error: unknown) {\n if (!isNotionClientError(error)) {\n throw error\n }\n\n this.logRequestError(error, attempt)\n\n if (attempt < this.#maxRetries && this.canRetry(error, method)) {\n const delayMs = this.calculateRetryDelay(error, attempt)\n this.log(LogLevel.INFO, \"retrying request\", {\n method,\n path,\n attempt: attempt + 1,\n delayMs,\n })\n await this.sleep(delayMs)\n attempt++\n continue\n }\n\n throw error\n }\n }\n }\n\n /**\n * Executes a single HTTP request (no retry).\n */\n private async executeSingleRequest<ResponseBody extends object>(args: {\n url: URL\n method: Method\n path: string\n headers: Record<string, string>\n body: string | FormData | undefined\n }): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n const response = await RequestTimeoutError.rejectAfterTimeout(\n this.#fetch(url.toString(), {\n method: method.toUpperCase(),\n headers,\n body,\n agent: this.#agent,\n }),\n this.#timeoutMs\n )\n\n const responseText = await response.text()\n if (!response.ok) {\n throw buildRequestError(response, responseText)\n }\n\n const responseJson: ResponseBody = JSON.parse(responseText)\n this.log(LogLevel.INFO, \"request success\", {\n method,\n path,\n ...this.extractRequestId(responseJson),\n })\n return responseJson\n }\n\n /**\n * Logs a request error with appropriate detail level.\n */\n private logRequestError(error: NotionClientError, attempt: number): void {\n this.log(LogLevel.WARN, \"request fail\", {\n code: error.code,\n message: error.message,\n attempt,\n ...this.extractRequestId(error),\n })\n\n if (isHTTPResponseError(error)) {\n this.log(LogLevel.DEBUG, \"failed response body\", {\n body: error.body,\n })\n }\n }\n\n /**\n * Extracts request_id from an object if present.\n */\n private extractRequestId(obj: unknown): { requestId?: string } {\n if (\n obj &&\n typeof obj === \"object\" &&\n \"request_id\" in obj &&\n typeof obj.request_id === \"string\"\n ) {\n return { requestId: obj.request_id }\n }\n return {}\n }\n\n /**\n * Determines if an error can be retried based on its error code and method.\n * Rate limits (429) are always retryable since the server explicitly asks us\n * to retry. Server errors (500, 503) are only retried for idempotent methods\n * (GET, DELETE) to avoid duplicate side effects.\n */\n private canRetry(error: unknown, method: Method): boolean {\n if (!APIResponseError.isAPIResponseError(error)) {\n return false\n }\n\n // Rate limits are always retryable - server says \"try again later\"\n if (error.code === APIErrorCode.RateLimited) {\n return true\n }\n\n // Server errors only retry for idempotent methods\n const isIdempotent = method === \"get\" || method === \"delete\"\n if (isIdempotent) {\n return (\n error.code === APIErrorCode.InternalServerError ||\n error.code === APIErrorCode.ServiceUnavailable\n )\n }\n\n return false\n }\n\n /**\n * Calculates the delay before the next retry attempt.\n * Uses retry-after header if present, otherwise exponential back-off with\n * jitter.\n */\n private calculateRetryDelay(error: unknown, attempt: number): number {\n // Try to get retry-after from the error headers\n if (APIResponseError.isAPIResponseError(error)) {\n const retryAfterMs = this.parseRetryAfterHeader(error.headers)\n if (retryAfterMs !== undefined) {\n return Math.min(retryAfterMs, this.#maxRetryDelayMs)\n }\n }\n\n // Exponential back-off with full jitter\n const baseDelay = this.#initialRetryDelayMs * Math.pow(2, attempt)\n const jitter = Math.random()\n return Math.min(baseDelay * jitter + baseDelay / 2, this.#maxRetryDelayMs)\n }\n\n /**\n * Parses the retry-after header value.\n * Supports both delta-seconds (e.g., \"120\") and HTTP-date formats.\n * Returns the delay in milliseconds, or undefined if not present or invalid.\n */\n private parseRetryAfterHeader(headers: unknown): number | undefined {\n if (!headers) {\n return undefined\n }\n\n let retryAfterValue: string | null = null\n\n // Handle Headers object (standard fetch API)\n if (typeof headers === \"object\" && \"get\" in headers) {\n const headersObj = headers as { get: (name: string) => string | null }\n retryAfterValue = headersObj.get(\"retry-after\")\n }\n // Handle plain object\n else if (typeof headers === \"object\") {\n const headersRecord = headers as Record<string, string>\n retryAfterValue =\n headersRecord[\"retry-after\"] ?? headersRecord[\"Retry-After\"] ?? null\n }\n\n if (!retryAfterValue) {\n return undefined\n }\n\n // Try parsing as delta-seconds (integer)\n const seconds = parseInt(retryAfterValue, 10)\n if (!isNaN(seconds) && seconds >= 0) {\n return seconds * 1000\n }\n\n // Try parsing as HTTP-date\n const date = Date.parse(retryAfterValue)\n if (!isNaN(date)) {\n const delayMs = date - Date.now()\n return delayMs > 0 ? delayMs : 0\n }\n\n return undefined\n }\n\n private sleep(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms))\n }\n\n /*\n * Notion API endpoints\n */\n\n public readonly blocks = {\n /**\n * Retrieve block\n */\n retrieve: (\n args: WithAuth<GetBlockParameters>\n ): Promise<GetBlockResponse> => {\n return this.request<GetBlockResponse>({\n path: getBlock.path(args),\n method: getBlock.method,\n query: pick(args, getBlock.queryParams),\n body: pick(args, getBlock.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update block\n */\n update: (\n args: WithAuth<UpdateBlockParameters>\n ): Promise<UpdateBlockResponse> => {\n return this.request<UpdateBlockResponse>({\n path: updateBlock.path(args),\n method: updateBlock.method,\n query: pick(args, updateBlock.queryParams),\n body: pick(args, updateBlock.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Delete block\n */\n delete: (\n args: WithAuth<DeleteBlockParameters>\n ): Promise<DeleteBlockResponse> => {\n return this.request<DeleteBlockResponse>({\n path: deleteBlock.path(args),\n method: deleteBlock.method,\n query: pick(args, deleteBlock.queryParams),\n body: pick(args, deleteBlock.bodyParams),\n auth: args?.auth,\n })\n },\n children: {\n /**\n * Append block children\n */\n append: (\n args: WithAuth<AppendBlockChildrenParameters>\n ): Promise<AppendBlockChildrenResponse> => {\n return this.request<AppendBlockChildrenResponse>({\n path: appendBlockChildren.path(args),\n method: appendBlockChildren.method,\n query: pick(args, appendBlockChildren.queryParams),\n body: pick(args, appendBlockChildren.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve block children\n */\n list: (\n args: WithAuth<ListBlockChildrenParameters>\n ): Promise<ListBlockChildrenResponse> => {\n return this.request<ListBlockChildrenResponse>({\n path: listBlockChildren.path(args),\n method: listBlockChildren.method,\n query: pick(args, listBlockChildren.queryParams),\n body: pick(args, listBlockChildren.bodyParams),\n auth: args?.auth,\n })\n },\n },\n }\n\n public readonly databases = {\n /**\n * Retrieve a database\n */\n retrieve: (\n args: WithAuth<GetDatabaseParameters>\n ): Promise<GetDatabaseResponse> => {\n return this.request<GetDatabaseResponse>({\n path: getDatabase.path(args),\n method: getDatabase.method,\n query: pick(args, getDatabase.queryParams),\n body: pick(args, getDatabase.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Create a database\n */\n create: (\n args: WithAuth<CreateDatabaseParameters>\n ): Promise<CreateDatabaseResponse> => {\n return this.request<CreateDatabaseResponse>({\n path: createDatabase.path(),\n method: createDatabase.method,\n query: pick(args, createDatabase.queryParams),\n body: pick(args, createDatabase.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update a database\n */\n update: (\n args: WithAuth<UpdateDatabaseParameters>\n ): Promise<UpdateDatabaseResponse> => {\n return this.request<UpdateDatabaseResponse>({\n path: updateDatabase.path(args),\n method: updateDatabase.method,\n query: pick(args, updateDatabase.queryParams),\n body: pick(args, updateDatabase.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly dataSources = {\n /**\n * Retrieve a data source\n */\n retrieve: (\n args: WithAuth<GetDataSourceParameters>\n ): Promise<GetDataSourceResponse> => {\n return this.request<GetDataSourceResponse>({\n path: getDataSource.path(args),\n method: getDataSource.method,\n query: pick(args, getDataSource.queryParams),\n body: pick(args, getDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Query a data source\n */\n query: (\n args: WithAuth<QueryDataSourceParameters>\n ): Promise<QueryDataSourceResponse> => {\n return this.request<QueryDataSourceResponse>({\n path: queryDataSource.path(args),\n method: queryDataSource.method,\n query: pick(args, queryDataSource.queryParams),\n body: pick(args, queryDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Create a data source\n */\n create: (\n args: WithAuth<CreateDataSourceParameters>\n ): Promise<CreateDataSourceResponse> => {\n return this.request<CreateDataSourceResponse>({\n path: createDataSource.path(),\n method: createDataSource.method,\n query: pick(args, createDataSource.queryParams),\n body: pick(args, createDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update a data source\n */\n update: (\n args: WithAuth<UpdateDataSourceParameters>\n ): Promise<UpdateDataSourceResponse> => {\n return this.request<UpdateDataSourceResponse>({\n path: updateDataSource.path(args),\n method: updateDataSource.method,\n query: pick(args, updateDataSource.queryParams),\n body: pick(args, updateDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List page templates that are available for a data source\n */\n listTemplates: (\n args: WithAuth<ListDataSourceTemplatesParameters>\n ): Promise<ListDataSourceTemplatesResponse> => {\n return this.request<ListDataSourceTemplatesResponse>({\n path: listDataSourceTemplates.path(args),\n method: listDataSourceTemplates.method,\n query: pick(args, listDataSourceTemplates.queryParams),\n body: pick(args, listDataSourceTemplates.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly pages = {\n /**\n * Create a page\n */\n create: (\n args: WithAuth<CreatePageParameters>\n ): Promise<CreatePageResponse> => {\n return this.request<CreatePageResponse>({\n path: createPage.path(),\n method: createPage.method,\n query: pick(args, createPage.queryParams),\n body: pick(args, createPage.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a page\n */\n retrieve: (args: WithAuth<GetPageParameters>): Promise<GetPageResponse> => {\n return this.request<GetPageResponse>({\n path: getPage.path(args),\n method: getPage.method,\n query: pick(args, getPage.queryParams),\n body: pick(args, getPage.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update page properties\n */\n update: (\n args: WithAuth<UpdatePageParameters>\n ): Promise<UpdatePageResponse> => {\n return this.request<UpdatePageResponse>({\n path: updatePage.path(args),\n method: updatePage.method,\n query: pick(args, updatePage.queryParams),\n body: pick(args, updatePage.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Move a page\n */\n move: (args: WithAuth<MovePageParameters>): Promise<MovePageResponse> => {\n return this.request<MovePageResponse>({\n path: movePage.path(args),\n method: movePage.method,\n query: pick(args, movePage.queryParams),\n body: pick(args, movePage.bodyParams),\n auth: args?.auth,\n })\n },\n properties: {\n /**\n * Retrieve page property\n */\n retrieve: (\n args: WithAuth<GetPagePropertyParameters>\n ): Promise<GetPagePropertyResponse> => {\n return this.request<GetPagePropertyResponse>({\n path: getPageProperty.path(args),\n method: getPageProperty.method,\n query: pick(args, getPageProperty.queryParams),\n body: pick(args, getPageProperty.bodyParams),\n auth: args?.auth,\n })\n },\n },\n }\n\n public readonly users = {\n /**\n * Retrieve a user\n */\n retrieve: (args: WithAuth<GetUserParameters>): Promise<GetUserResponse> => {\n return this.request<GetUserResponse>({\n path: getUser.path(args),\n method: getUser.method,\n query: pick(args, getUser.queryParams),\n body: pick(args, getUser.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List all users\n */\n list: (args: WithAuth<ListUsersParameters>): Promise<ListUsersResponse> => {\n return this.request<ListUsersResponse>({\n path: listUsers.path(),\n method: listUsers.method,\n query: pick(args, listUsers.queryParams),\n body: pick(args, listUsers.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Get details about bot\n */\n me: (args: WithAuth<GetSelfParameters>): Promise<GetSelfResponse> => {\n return this.request<GetSelfResponse>({\n path: getSelf.path(),\n method: getSelf.method,\n query: pick(args, getSelf.queryParams),\n body: pick(args, getSelf.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly comments = {\n /**\n * Create a comment\n */\n create: (\n args: WithAuth<CreateCommentParameters>\n ): Promise<CreateCommentResponse> => {\n return this.request<CreateCommentResponse>({\n path: createComment.path(),\n method: createComment.method,\n query: pick(args, createComment.queryParams),\n body: pick(args, createComment.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List comments\n */\n list: (\n args: WithAuth<ListCommentsParameters>\n ): Promise<ListCommentsResponse> => {\n return this.request<ListCommentsResponse>({\n path: listComments.path(),\n method: listComments.method,\n query: pick(args, listComments.queryParams),\n body: pick(args, listComments.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a comment\n */\n retrieve: (\n args: WithAuth<GetCommentParameters>\n ): Promise<GetCommentResponse> => {\n return this.request<GetCommentResponse>({\n path: getComment.path(args),\n method: getComment.method,\n query: pick(args, getComment.queryParams),\n body: pick(args, getComment.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly fileUploads = {\n /**\n * Create a file upload\n */\n create: (\n args: WithAuth<CreateFileUploadParameters>\n ): Promise<CreateFileUploadResponse> => {\n return this.request<CreateFileUploadResponse>({\n path: createFileUpload.path(),\n method: createFileUpload.method,\n query: pick(args, createFileUpload.queryParams),\n body: pick(args, createFileUpload.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a file upload\n */\n retrieve: (\n args: WithAuth<GetFileUploadParameters>\n ): Promise<GetFileUploadResponse> => {\n return this.request<GetFileUploadResponse>({\n path: getFileUpload.path(args),\n method: getFileUpload.method,\n query: pick(args, getFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List file uploads\n */\n list: (\n args: WithAuth<ListFileUploadsParameters>\n ): Promise<ListFileUploadsResponse> => {\n return this.request<ListFileUploadsResponse>({\n path: listFileUploads.path(),\n method: listFileUploads.method,\n query: pick(args, listFileUploads.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Send a file upload\n *\n * Requires a `file_upload_id`, obtained from the `id` of the Create File\n * Upload API response.\n *\n * The `file` parameter contains the raw file contents or Blob/File object\n * under `file.data`, and an optional `file.filename` string.\n *\n * Supply a stringified `part_number` parameter when using file uploads\n * in multi-part mode.\n *\n * This endpoint sends HTTP multipart/form-data instead of JSON parameters.\n */\n send: (\n args: WithAuth<SendFileUploadParameters>\n ): Promise<SendFileUploadResponse> => {\n return this.request<SendFileUploadResponse>({\n path: sendFileUpload.path(args),\n method: sendFileUpload.method,\n query: pick(args, sendFileUpload.queryParams),\n formDataParams: pick(args, sendFileUpload.formDataParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Complete a file upload\n */\n complete: (\n args: WithAuth<CompleteFileUploadParameters>\n ): Promise<CompleteFileUploadResponse> => {\n return this.request<CompleteFileUploadResponse>({\n path: completeFileUpload.path(args),\n method: completeFileUpload.method,\n query: pick(args, completeFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n }\n\n /**\n * Search\n */\n public search = (\n args: WithAuth<SearchParameters>\n ): Promise<SearchResponse> => {\n return this.request<SearchResponse>({\n path: search.path(),\n method: search.method,\n query: pick(args, search.queryParams),\n body: pick(args, search.bodyParams),\n auth: args?.auth,\n })\n }\n\n public readonly oauth = {\n /**\n * Get token\n */\n token: (\n args: OauthTokenParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthTokenResponse> => {\n return this.request<OauthTokenResponse>({\n path: oauthToken.path(),\n method: oauthToken.method,\n query: pick(args, oauthToken.queryParams),\n body: pick(args, oauthToken.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Introspect token\n */\n introspect: (\n args: OauthIntrospectParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthIntrospectResponse> => {\n return this.request<OauthIntrospectResponse>({\n path: oauthIntrospect.path(),\n method: oauthIntrospect.method,\n query: pick(args, oauthIntrospect.queryParams),\n body: pick(args, oauthIntrospect.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Revoke token\n */\n revoke: (\n args: OauthRevokeParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthRevokeResponse> => {\n return this.request<OauthRevokeResponse>({\n path: oauthRevoke.path(),\n method: oauthRevoke.method,\n query: pick(args, oauthRevoke.queryParams),\n body: pick(args, oauthRevoke.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n }\n\n /**\n * Emits a log message to the console.\n *\n * @param level The level for this message\n * @param args Arguments to send to the console\n */\n private log(\n level: LogLevel,\n message: string,\n extraInfo: Record<string, unknown>\n ) {\n if (logLevelSeverity(level) >= logLevelSeverity(this.#logLevel)) {\n this.#logger(level, message, extraInfo)\n }\n }\n\n /**\n * Transforms an API key or access token into a headers object suitable for an HTTP request.\n *\n * This method uses the instance's value as the default when the input is undefined. If neither are defined, it returns\n * an empty object\n *\n * @param auth API key or access token\n * @returns headers key-value object\n */\n private authAsHeaders(auth?: string): Record<string, string> {\n const headers: Record<string, string> = {}\n const authHeaderValue = auth ?? this.#auth\n if (authHeaderValue !== undefined) {\n headers[\"authorization\"] = `Bearer ${authHeaderValue}`\n }\n return headers\n }\n}\n\n/*\n * Type aliases to support the generic request interface.\n */\ntype Method = \"get\" | \"post\" | \"patch\" | \"delete\"\ntype QueryParams = Record<string, string | number | string[]> | URLSearchParams\n\ntype WithAuth<P> = P & { auth?: string }\n"]}
|
|
1
|
+
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Agent } from \"node:http\"\nimport {\n type Logger,\n LogLevel,\n logLevelSeverity,\n makeConsoleLogger,\n} from \"./logging\"\nimport {\n APIErrorCode,\n APIResponseError,\n buildRequestError,\n isHTTPResponseError,\n isNotionClientError,\n type NotionClientError,\n RequestTimeoutError,\n validateRequestPath,\n} from \"./errors\"\nimport { pick, getUnknownParams, type EndpointDefinition } from \"./utils\"\nimport {\n type GetBlockParameters,\n type GetBlockResponse,\n getBlock,\n type UpdateBlockParameters,\n type UpdateBlockResponse,\n updateBlock,\n type DeleteBlockParameters,\n type DeleteBlockResponse,\n deleteBlock,\n type AppendBlockChildrenParameters,\n type AppendBlockChildrenResponse,\n appendBlockChildren,\n type ListBlockChildrenParameters,\n type ListBlockChildrenResponse,\n listBlockChildren,\n type QueryDataSourceParameters,\n type QueryDataSourceResponse,\n queryDataSource,\n type CreateDataSourceParameters,\n type CreateDataSourceResponse,\n createDataSource,\n type UpdateDataSourceParameters,\n type UpdateDataSourceResponse,\n updateDataSource,\n type GetDataSourceParameters,\n type GetDataSourceResponse,\n getDataSource,\n type CreatePageParameters,\n type CreatePageResponse,\n createPage,\n type GetPageParameters,\n type GetPageResponse,\n getPage,\n type UpdatePageParameters,\n type UpdatePageResponse,\n updatePage,\n type MovePageParameters,\n type MovePageResponse,\n movePage,\n type GetPageMarkdownParameters,\n type GetPageMarkdownResponse,\n getPageMarkdown,\n type UpdatePageMarkdownParameters,\n type UpdatePageMarkdownResponse,\n updatePageMarkdown,\n type GetUserParameters,\n type GetUserResponse,\n getUser,\n type ListUsersParameters,\n type ListUsersResponse,\n listUsers,\n type SearchParameters,\n type SearchResponse,\n search,\n type GetSelfParameters,\n type GetSelfResponse,\n getSelf,\n type GetPagePropertyParameters,\n type GetPagePropertyResponse,\n getPageProperty,\n type CreateCommentParameters,\n type CreateCommentResponse,\n createComment,\n type ListCommentsParameters,\n type ListCommentsResponse,\n listComments,\n type GetCommentParameters,\n type GetCommentResponse,\n getComment,\n type OauthTokenResponse,\n type OauthTokenParameters,\n oauthToken,\n type OauthIntrospectResponse,\n type OauthIntrospectParameters,\n oauthIntrospect,\n type OauthRevokeResponse,\n type OauthRevokeParameters,\n oauthRevoke,\n type CreateFileUploadParameters,\n type CreateFileUploadResponse,\n createFileUpload,\n type GetFileUploadResponse,\n type GetFileUploadParameters,\n getFileUpload,\n type SendFileUploadParameters,\n type SendFileUploadResponse,\n sendFileUpload,\n type CompleteFileUploadParameters,\n type CompleteFileUploadResponse,\n completeFileUpload,\n type ListFileUploadsParameters,\n type ListFileUploadsResponse,\n listFileUploads,\n GetDatabaseParameters,\n GetDatabaseResponse,\n getDatabase,\n CreateDatabaseResponse,\n CreateDatabaseParameters,\n createDatabase,\n UpdateDatabaseParameters,\n UpdateDatabaseResponse,\n updateDatabase,\n listDataSourceTemplates,\n ListDataSourceTemplatesResponse,\n ListDataSourceTemplatesParameters,\n} from \"./api-endpoints\"\nimport {\n version as PACKAGE_VERSION,\n name as PACKAGE_NAME,\n} from \"../package.json\"\nimport type { SupportedFetch } from \"./fetch-types\"\n\nexport type RetryOptions = {\n /**\n * Maximum number of retry attempts. Set to 0 to disable retries.\n * @default 2\n */\n maxRetries?: number\n /**\n * Initial delay between retries in milliseconds.\n * Used as base for exponential back-off when retry-after header is absent.\n * @default 1000\n */\n initialRetryDelayMs?: number\n /**\n * Maximum delay between retries in milliseconds.\n * @default 60000\n */\n maxRetryDelayMs?: number\n}\n\nexport type ClientOptions = {\n auth?: string\n timeoutMs?: number\n baseUrl?: string\n logLevel?: LogLevel\n logger?: Logger\n notionVersion?: string\n fetch?: SupportedFetch\n /** Silently ignored in the browser */\n agent?: Agent\n /**\n * Configuration for automatic retries on rate limit (429) and server errors.\n * Set to false to disable retries entirely.\n */\n retry?: RetryOptions | false\n}\n\ntype FileParam = {\n filename?: string\n data: string | Blob\n}\n\nexport type RequestParameters = {\n path: string\n method: Method\n query?: QueryParams\n body?: Record<string, unknown>\n formDataParams?: Record<string, string | FileParam>\n headers?: Record<string, string>\n /**\n * To authenticate using public API token, `auth` should be passed as a\n * string. If you are trying to complete OAuth, then `auth` should be an object\n * containing your integration's client ID and secret.\n */\n auth?:\n | string\n | {\n client_id: string\n client_secret: string\n }\n}\n\nexport default class Client {\n #auth?: string\n #logLevel: LogLevel\n #logger: Logger\n #prefixUrl: string\n #timeoutMs: number\n #notionVersion: string\n #fetch: SupportedFetch\n #agent: Agent | undefined\n #userAgent: string\n #maxRetries: number\n #initialRetryDelayMs: number\n #maxRetryDelayMs: number\n\n static readonly defaultNotionVersion = \"2025-09-03\"\n\n public constructor(options?: ClientOptions) {\n this.#auth = options?.auth\n this.#logLevel = options?.logLevel ?? LogLevel.WARN\n this.#logger = options?.logger ?? makeConsoleLogger(PACKAGE_NAME)\n this.#prefixUrl = `${options?.baseUrl ?? \"https://api.notion.com\"}/v1/`\n this.#timeoutMs = options?.timeoutMs ?? 60_000\n this.#notionVersion = options?.notionVersion ?? Client.defaultNotionVersion\n this.#fetch = options?.fetch ?? fetch\n this.#agent = options?.agent\n this.#userAgent = `notionhq-client/${PACKAGE_VERSION}`\n\n if (options?.retry === false) {\n this.#maxRetries = 0\n this.#initialRetryDelayMs = 0\n this.#maxRetryDelayMs = 0\n } else {\n this.#maxRetries = options?.retry?.maxRetries ?? 2\n this.#initialRetryDelayMs = options?.retry?.initialRetryDelayMs ?? 1000\n this.#maxRetryDelayMs = options?.retry?.maxRetryDelayMs ?? 60_000\n }\n }\n\n /**\n * Sends a request.\n */\n public async request<ResponseBody extends object>(\n args: RequestParameters\n ): Promise<ResponseBody> {\n const { path, method, query, body, formDataParams, auth } = args\n\n validateRequestPath(path)\n\n this.log(LogLevel.INFO, \"request start\", { method, path })\n\n const url = this.buildRequestUrl(path, query)\n const bodyAsJsonString = this.serializeBody(body)\n const headers = this.buildRequestHeaders(\n args.headers,\n auth,\n bodyAsJsonString\n )\n const formData = this.buildFormData(formDataParams, headers)\n\n return this.executeWithRetry<ResponseBody>({\n url,\n method,\n path,\n headers,\n body: bodyAsJsonString ?? formData,\n })\n }\n\n /**\n * Builds the full URL with query parameters.\n */\n private buildRequestUrl(path: string, query: QueryParams | undefined): URL {\n const url = new URL(`${this.#prefixUrl}${path}`)\n if (query) {\n for (const [key, value] of Object.entries(query)) {\n if (value !== undefined) {\n if (Array.isArray(value)) {\n for (const val of value) {\n url.searchParams.append(key, decodeURIComponent(val))\n }\n } else {\n url.searchParams.append(key, String(value))\n }\n }\n }\n }\n return url\n }\n\n /**\n * Serializes the request body to JSON string if non-empty.\n */\n private serializeBody(\n body: Record<string, unknown> | undefined\n ): string | undefined {\n if (!body || Object.entries(body).length === 0) {\n return undefined\n }\n return JSON.stringify(body)\n }\n\n /**\n * Builds the request headers including auth and content-type.\n */\n private buildRequestHeaders(\n customHeaders: Record<string, string> | undefined,\n auth: RequestParameters[\"auth\"],\n bodyAsJsonString: string | undefined\n ): Record<string, string> {\n const authorizationHeader = this.buildAuthHeader(auth)\n\n const headers: Record<string, string> = {\n ...customHeaders,\n ...authorizationHeader,\n \"Notion-Version\": this.#notionVersion,\n \"user-agent\": this.#userAgent,\n }\n\n if (bodyAsJsonString !== undefined) {\n headers[\"content-type\"] = \"application/json\"\n }\n\n return headers\n }\n\n /**\n * Builds the authorization header based on auth type.\n */\n private buildAuthHeader(\n auth: RequestParameters[\"auth\"]\n ): Record<string, string> {\n if (typeof auth === \"object\") {\n const unencodedCredential = `${auth.client_id}:${auth.client_secret}`\n const encodedCredential =\n Buffer.from(unencodedCredential).toString(\"base64\")\n return { authorization: `Basic ${encodedCredential}` }\n }\n return this.authAsHeaders(auth)\n }\n\n /**\n * Builds FormData from form parameters if provided.\n * Also removes content-type header to let fetch set the boundary.\n */\n private buildFormData(\n formDataParams: Record<string, string | FileParam> | undefined,\n headers: Record<string, string>\n ): FormData | undefined {\n if (!formDataParams) {\n return undefined\n }\n\n delete headers[\"content-type\"]\n\n const formData = new FormData()\n for (const [key, value] of Object.entries(formDataParams)) {\n if (typeof value === \"string\") {\n formData.append(key, value)\n } else if (typeof value === \"object\") {\n formData.append(\n key,\n typeof value.data === \"object\" ? value.data : new Blob([value.data]),\n value.filename\n )\n }\n }\n return formData\n }\n\n /**\n * Executes the request with retry logic.\n */\n private async executeWithRetry<ResponseBody extends object>(args: {\n url: URL\n method: Method\n path: string\n headers: Record<string, string>\n body: string | FormData | undefined\n }): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n let attempt = 0\n // eslint-disable-next-line no-constant-condition\n while (true) {\n try {\n return await this.executeSingleRequest<ResponseBody>({\n url,\n method,\n path,\n headers,\n body,\n })\n } catch (error: unknown) {\n if (!isNotionClientError(error)) {\n throw error\n }\n\n this.logRequestError(error, attempt)\n\n if (attempt < this.#maxRetries && this.canRetry(error, method)) {\n const delayMs = this.calculateRetryDelay(error, attempt)\n this.log(LogLevel.INFO, \"retrying request\", {\n method,\n path,\n attempt: attempt + 1,\n delayMs,\n })\n await this.sleep(delayMs)\n attempt++\n continue\n }\n\n throw error\n }\n }\n }\n\n /**\n * Executes a single HTTP request (no retry).\n */\n private async executeSingleRequest<ResponseBody extends object>(args: {\n url: URL\n method: Method\n path: string\n headers: Record<string, string>\n body: string | FormData | undefined\n }): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n const response = await RequestTimeoutError.rejectAfterTimeout(\n this.#fetch(url.toString(), {\n method: method.toUpperCase(),\n headers,\n body,\n agent: this.#agent,\n }),\n this.#timeoutMs\n )\n\n const responseText = await response.text()\n if (!response.ok) {\n throw buildRequestError(response, responseText)\n }\n\n const responseJson: ResponseBody = JSON.parse(responseText)\n this.log(LogLevel.INFO, \"request success\", {\n method,\n path,\n ...this.extractRequestId(responseJson),\n })\n return responseJson\n }\n\n /**\n * Logs a request error with appropriate detail level.\n */\n private logRequestError(error: NotionClientError, attempt: number): void {\n this.log(LogLevel.WARN, \"request fail\", {\n code: error.code,\n message: error.message,\n attempt,\n ...this.extractRequestId(error),\n })\n\n if (isHTTPResponseError(error)) {\n this.log(LogLevel.DEBUG, \"failed response body\", {\n body: error.body,\n })\n }\n }\n\n /**\n * Extracts request_id from an object if present.\n */\n private extractRequestId(obj: unknown): { requestId?: string } {\n if (\n obj &&\n typeof obj === \"object\" &&\n \"request_id\" in obj &&\n typeof obj.request_id === \"string\"\n ) {\n return { requestId: obj.request_id }\n }\n return {}\n }\n\n /**\n * Determines if an error can be retried based on its error code and method.\n * Rate limits (429) are always retryable since the server explicitly asks us\n * to retry. Server errors (500, 503) are only retried for idempotent methods\n * (GET, DELETE) to avoid duplicate side effects.\n */\n private canRetry(error: unknown, method: Method): boolean {\n if (!APIResponseError.isAPIResponseError(error)) {\n return false\n }\n\n // Rate limits are always retryable - server says \"try again later\"\n if (error.code === APIErrorCode.RateLimited) {\n return true\n }\n\n // Server errors only retry for idempotent methods\n const isIdempotent = method === \"get\" || method === \"delete\"\n if (isIdempotent) {\n return (\n error.code === APIErrorCode.InternalServerError ||\n error.code === APIErrorCode.ServiceUnavailable\n )\n }\n\n return false\n }\n\n /**\n * Calculates the delay before the next retry attempt.\n * Uses retry-after header if present, otherwise exponential back-off with\n * jitter.\n */\n private calculateRetryDelay(error: unknown, attempt: number): number {\n // Try to get retry-after from the error headers\n if (APIResponseError.isAPIResponseError(error)) {\n const retryAfterMs = this.parseRetryAfterHeader(error.headers)\n if (retryAfterMs !== undefined) {\n return Math.min(retryAfterMs, this.#maxRetryDelayMs)\n }\n }\n\n // Exponential back-off with full jitter\n const baseDelay = this.#initialRetryDelayMs * Math.pow(2, attempt)\n const jitter = Math.random()\n return Math.min(baseDelay * jitter + baseDelay / 2, this.#maxRetryDelayMs)\n }\n\n /**\n * Parses the retry-after header value.\n * Supports both delta-seconds (e.g., \"120\") and HTTP-date formats.\n * Returns the delay in milliseconds, or undefined if not present or invalid.\n */\n private parseRetryAfterHeader(headers: unknown): number | undefined {\n if (!headers) {\n return undefined\n }\n\n let retryAfterValue: string | null = null\n\n // Handle Headers object (standard fetch API)\n if (typeof headers === \"object\" && \"get\" in headers) {\n const headersObj = headers as { get: (name: string) => string | null }\n retryAfterValue = headersObj.get(\"retry-after\")\n }\n // Handle plain object\n else if (typeof headers === \"object\") {\n const headersRecord = headers as Record<string, string>\n retryAfterValue =\n headersRecord[\"retry-after\"] ?? headersRecord[\"Retry-After\"] ?? null\n }\n\n if (!retryAfterValue) {\n return undefined\n }\n\n // Try parsing as delta-seconds (integer)\n const seconds = parseInt(retryAfterValue, 10)\n if (!isNaN(seconds) && seconds >= 0) {\n return seconds * 1000\n }\n\n // Try parsing as HTTP-date\n const date = Date.parse(retryAfterValue)\n if (!isNaN(date)) {\n const delayMs = date - Date.now()\n return delayMs > 0 ? delayMs : 0\n }\n\n return undefined\n }\n\n private sleep(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms))\n }\n\n /*\n * Notion API endpoints\n */\n\n public readonly blocks = {\n /**\n * Retrieve block\n */\n retrieve: (\n args: WithAuth<GetBlockParameters>\n ): Promise<GetBlockResponse> => {\n this.warnUnknownParams(args, getBlock)\n return this.request<GetBlockResponse>({\n path: getBlock.path(args),\n method: getBlock.method,\n query: pick(args, getBlock.queryParams),\n body: pick(args, getBlock.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update block\n */\n update: (\n args: WithAuth<UpdateBlockParameters>\n ): Promise<UpdateBlockResponse> => {\n this.warnUnknownParams(args, updateBlock)\n return this.request<UpdateBlockResponse>({\n path: updateBlock.path(args),\n method: updateBlock.method,\n query: pick(args, updateBlock.queryParams),\n body: pick(args, updateBlock.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Delete block\n */\n delete: (\n args: WithAuth<DeleteBlockParameters>\n ): Promise<DeleteBlockResponse> => {\n this.warnUnknownParams(args, deleteBlock)\n return this.request<DeleteBlockResponse>({\n path: deleteBlock.path(args),\n method: deleteBlock.method,\n query: pick(args, deleteBlock.queryParams),\n body: pick(args, deleteBlock.bodyParams),\n auth: args?.auth,\n })\n },\n children: {\n /**\n * Append block children\n */\n append: (\n args: WithAuth<AppendBlockChildrenParameters>\n ): Promise<AppendBlockChildrenResponse> => {\n this.warnUnknownParams(args, appendBlockChildren)\n return this.request<AppendBlockChildrenResponse>({\n path: appendBlockChildren.path(args),\n method: appendBlockChildren.method,\n query: pick(args, appendBlockChildren.queryParams),\n body: pick(args, appendBlockChildren.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve block children\n */\n list: (\n args: WithAuth<ListBlockChildrenParameters>\n ): Promise<ListBlockChildrenResponse> => {\n this.warnUnknownParams(args, listBlockChildren)\n return this.request<ListBlockChildrenResponse>({\n path: listBlockChildren.path(args),\n method: listBlockChildren.method,\n query: pick(args, listBlockChildren.queryParams),\n body: pick(args, listBlockChildren.bodyParams),\n auth: args?.auth,\n })\n },\n },\n }\n\n public readonly databases = {\n /**\n * Retrieve a database\n */\n retrieve: (\n args: WithAuth<GetDatabaseParameters>\n ): Promise<GetDatabaseResponse> => {\n this.warnUnknownParams(args, getDatabase)\n return this.request<GetDatabaseResponse>({\n path: getDatabase.path(args),\n method: getDatabase.method,\n query: pick(args, getDatabase.queryParams),\n body: pick(args, getDatabase.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Create a database\n */\n create: (\n args: WithAuth<CreateDatabaseParameters>\n ): Promise<CreateDatabaseResponse> => {\n this.warnUnknownParams(args, createDatabase)\n return this.request<CreateDatabaseResponse>({\n path: createDatabase.path(),\n method: createDatabase.method,\n query: pick(args, createDatabase.queryParams),\n body: pick(args, createDatabase.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update a database\n */\n update: (\n args: WithAuth<UpdateDatabaseParameters>\n ): Promise<UpdateDatabaseResponse> => {\n this.warnUnknownParams(args, updateDatabase)\n return this.request<UpdateDatabaseResponse>({\n path: updateDatabase.path(args),\n method: updateDatabase.method,\n query: pick(args, updateDatabase.queryParams),\n body: pick(args, updateDatabase.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly dataSources = {\n /**\n * Retrieve a data source\n */\n retrieve: (\n args: WithAuth<GetDataSourceParameters>\n ): Promise<GetDataSourceResponse> => {\n this.warnUnknownParams(args, getDataSource)\n return this.request<GetDataSourceResponse>({\n path: getDataSource.path(args),\n method: getDataSource.method,\n query: pick(args, getDataSource.queryParams),\n body: pick(args, getDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Query a data source\n */\n query: (\n args: WithAuth<QueryDataSourceParameters>\n ): Promise<QueryDataSourceResponse> => {\n this.warnUnknownParams(args, queryDataSource)\n return this.request<QueryDataSourceResponse>({\n path: queryDataSource.path(args),\n method: queryDataSource.method,\n query: pick(args, queryDataSource.queryParams),\n body: pick(args, queryDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Create a data source\n */\n create: (\n args: WithAuth<CreateDataSourceParameters>\n ): Promise<CreateDataSourceResponse> => {\n this.warnUnknownParams(args, createDataSource)\n return this.request<CreateDataSourceResponse>({\n path: createDataSource.path(),\n method: createDataSource.method,\n query: pick(args, createDataSource.queryParams),\n body: pick(args, createDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update a data source\n */\n update: (\n args: WithAuth<UpdateDataSourceParameters>\n ): Promise<UpdateDataSourceResponse> => {\n this.warnUnknownParams(args, updateDataSource)\n return this.request<UpdateDataSourceResponse>({\n path: updateDataSource.path(args),\n method: updateDataSource.method,\n query: pick(args, updateDataSource.queryParams),\n body: pick(args, updateDataSource.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List page templates that are available for a data source\n */\n listTemplates: (\n args: WithAuth<ListDataSourceTemplatesParameters>\n ): Promise<ListDataSourceTemplatesResponse> => {\n this.warnUnknownParams(args, listDataSourceTemplates)\n return this.request<ListDataSourceTemplatesResponse>({\n path: listDataSourceTemplates.path(args),\n method: listDataSourceTemplates.method,\n query: pick(args, listDataSourceTemplates.queryParams),\n body: pick(args, listDataSourceTemplates.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly pages = {\n /**\n * Create a page\n */\n create: (\n args: WithAuth<CreatePageParameters>\n ): Promise<CreatePageResponse> => {\n this.warnUnknownParams(args, createPage)\n return this.request<CreatePageResponse>({\n path: createPage.path(),\n method: createPage.method,\n query: pick(args, createPage.queryParams),\n body: pick(args, createPage.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a page\n */\n retrieve: (args: WithAuth<GetPageParameters>): Promise<GetPageResponse> => {\n this.warnUnknownParams(args, getPage)\n return this.request<GetPageResponse>({\n path: getPage.path(args),\n method: getPage.method,\n query: pick(args, getPage.queryParams),\n body: pick(args, getPage.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update page properties\n */\n update: (\n args: WithAuth<UpdatePageParameters>\n ): Promise<UpdatePageResponse> => {\n this.warnUnknownParams(args, updatePage)\n return this.request<UpdatePageResponse>({\n path: updatePage.path(args),\n method: updatePage.method,\n query: pick(args, updatePage.queryParams),\n body: pick(args, updatePage.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Move a page\n */\n move: (args: WithAuth<MovePageParameters>): Promise<MovePageResponse> => {\n this.warnUnknownParams(args, movePage)\n return this.request<MovePageResponse>({\n path: movePage.path(args),\n method: movePage.method,\n query: pick(args, movePage.queryParams),\n body: pick(args, movePage.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a page as markdown\n */\n retrieveMarkdown: (\n args: WithAuth<GetPageMarkdownParameters>\n ): Promise<GetPageMarkdownResponse> => {\n return this.request<GetPageMarkdownResponse>({\n path: getPageMarkdown.path(args),\n method: getPageMarkdown.method,\n query: pick(args, getPageMarkdown.queryParams),\n body: pick(args, getPageMarkdown.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update a page's content as markdown\n */\n updateMarkdown: (\n args: WithAuth<UpdatePageMarkdownParameters>\n ): Promise<UpdatePageMarkdownResponse> => {\n return this.request<UpdatePageMarkdownResponse>({\n path: updatePageMarkdown.path(args),\n method: updatePageMarkdown.method,\n query: pick(args, updatePageMarkdown.queryParams),\n body: pick(args, updatePageMarkdown.bodyParams),\n auth: args?.auth,\n })\n },\n properties: {\n /**\n * Retrieve page property\n */\n retrieve: (\n args: WithAuth<GetPagePropertyParameters>\n ): Promise<GetPagePropertyResponse> => {\n this.warnUnknownParams(args, getPageProperty)\n return this.request<GetPagePropertyResponse>({\n path: getPageProperty.path(args),\n method: getPageProperty.method,\n query: pick(args, getPageProperty.queryParams),\n body: pick(args, getPageProperty.bodyParams),\n auth: args?.auth,\n })\n },\n },\n }\n\n public readonly users = {\n /**\n * Retrieve a user\n */\n retrieve: (args: WithAuth<GetUserParameters>): Promise<GetUserResponse> => {\n this.warnUnknownParams(args, getUser)\n return this.request<GetUserResponse>({\n path: getUser.path(args),\n method: getUser.method,\n query: pick(args, getUser.queryParams),\n body: pick(args, getUser.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List all users\n */\n list: (args: WithAuth<ListUsersParameters>): Promise<ListUsersResponse> => {\n this.warnUnknownParams(args, listUsers)\n return this.request<ListUsersResponse>({\n path: listUsers.path(),\n method: listUsers.method,\n query: pick(args, listUsers.queryParams),\n body: pick(args, listUsers.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Get details about bot\n */\n me: (args: WithAuth<GetSelfParameters>): Promise<GetSelfResponse> => {\n this.warnUnknownParams(args, getSelf)\n return this.request<GetSelfResponse>({\n path: getSelf.path(),\n method: getSelf.method,\n query: pick(args, getSelf.queryParams),\n body: pick(args, getSelf.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly comments = {\n /**\n * Create a comment\n */\n create: (\n args: WithAuth<CreateCommentParameters>\n ): Promise<CreateCommentResponse> => {\n this.warnUnknownParams(args, createComment)\n return this.request<CreateCommentResponse>({\n path: createComment.path(),\n method: createComment.method,\n query: pick(args, createComment.queryParams),\n body: pick(args, createComment.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List comments\n */\n list: (\n args: WithAuth<ListCommentsParameters>\n ): Promise<ListCommentsResponse> => {\n this.warnUnknownParams(args, listComments)\n return this.request<ListCommentsResponse>({\n path: listComments.path(),\n method: listComments.method,\n query: pick(args, listComments.queryParams),\n body: pick(args, listComments.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a comment\n */\n retrieve: (\n args: WithAuth<GetCommentParameters>\n ): Promise<GetCommentResponse> => {\n this.warnUnknownParams(args, getComment)\n return this.request<GetCommentResponse>({\n path: getComment.path(args),\n method: getComment.method,\n query: pick(args, getComment.queryParams),\n body: pick(args, getComment.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly fileUploads = {\n /**\n * Create a file upload\n */\n create: (\n args: WithAuth<CreateFileUploadParameters>\n ): Promise<CreateFileUploadResponse> => {\n this.warnUnknownParams(args, createFileUpload)\n return this.request<CreateFileUploadResponse>({\n path: createFileUpload.path(),\n method: createFileUpload.method,\n query: pick(args, createFileUpload.queryParams),\n body: pick(args, createFileUpload.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a file upload\n */\n retrieve: (\n args: WithAuth<GetFileUploadParameters>\n ): Promise<GetFileUploadResponse> => {\n this.warnUnknownParams(args, getFileUpload)\n return this.request<GetFileUploadResponse>({\n path: getFileUpload.path(args),\n method: getFileUpload.method,\n query: pick(args, getFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List file uploads\n */\n list: (\n args: WithAuth<ListFileUploadsParameters>\n ): Promise<ListFileUploadsResponse> => {\n this.warnUnknownParams(args, listFileUploads)\n return this.request<ListFileUploadsResponse>({\n path: listFileUploads.path(),\n method: listFileUploads.method,\n query: pick(args, listFileUploads.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Send a file upload\n *\n * Requires a `file_upload_id`, obtained from the `id` of the Create File\n * Upload API response.\n *\n * The `file` parameter contains the raw file contents or Blob/File object\n * under `file.data`, and an optional `file.filename` string.\n *\n * Supply a stringified `part_number` parameter when using file uploads\n * in multi-part mode.\n *\n * This endpoint sends HTTP multipart/form-data instead of JSON parameters.\n */\n send: (\n args: WithAuth<SendFileUploadParameters>\n ): Promise<SendFileUploadResponse> => {\n this.warnUnknownParams(args, sendFileUpload)\n return this.request<SendFileUploadResponse>({\n path: sendFileUpload.path(args),\n method: sendFileUpload.method,\n query: pick(args, sendFileUpload.queryParams),\n formDataParams: pick(args, sendFileUpload.formDataParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Complete a file upload\n */\n complete: (\n args: WithAuth<CompleteFileUploadParameters>\n ): Promise<CompleteFileUploadResponse> => {\n this.warnUnknownParams(args, completeFileUpload)\n return this.request<CompleteFileUploadResponse>({\n path: completeFileUpload.path(args),\n method: completeFileUpload.method,\n query: pick(args, completeFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n }\n\n /**\n * Search\n */\n public search = (\n args: WithAuth<SearchParameters>\n ): Promise<SearchResponse> => {\n this.warnUnknownParams(args, search)\n return this.request<SearchResponse>({\n path: search.path(),\n method: search.method,\n query: pick(args, search.queryParams),\n body: pick(args, search.bodyParams),\n auth: args?.auth,\n })\n }\n\n public readonly oauth = {\n /**\n * Get token\n */\n token: (\n args: OauthTokenParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthTokenResponse> => {\n return this.request<OauthTokenResponse>({\n path: oauthToken.path(),\n method: oauthToken.method,\n query: pick(args, oauthToken.queryParams),\n body: pick(args, oauthToken.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Introspect token\n */\n introspect: (\n args: OauthIntrospectParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthIntrospectResponse> => {\n return this.request<OauthIntrospectResponse>({\n path: oauthIntrospect.path(),\n method: oauthIntrospect.method,\n query: pick(args, oauthIntrospect.queryParams),\n body: pick(args, oauthIntrospect.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Revoke token\n */\n revoke: (\n args: OauthRevokeParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthRevokeResponse> => {\n return this.request<OauthRevokeResponse>({\n path: oauthRevoke.path(),\n method: oauthRevoke.method,\n query: pick(args, oauthRevoke.queryParams),\n body: pick(args, oauthRevoke.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n }\n\n /**\n * Logs a warning when the caller passes parameters that are not recognized\n * by the endpoint definition. This helps catch typos and renamed parameters\n * (e.g. `archived` vs `in_trash` for `databases.update`) that would\n * otherwise be silently dropped by `pick()`.\n */\n private warnUnknownParams(\n args: Record<string, unknown>,\n endpoint: EndpointDefinition\n ): void {\n if (!args || typeof args !== \"object\") return\n\n const unknownKeys = getUnknownParams(args, endpoint)\n if (unknownKeys.length > 0) {\n this.log(LogLevel.WARN, \"unknown parameters were ignored\", {\n unknownParams: unknownKeys,\n knownParams: [\n ...endpoint.pathParams,\n ...endpoint.queryParams,\n ...endpoint.bodyParams,\n ...(endpoint.formDataParams ?? []),\n ],\n })\n }\n }\n\n /**\n * Emits a log message to the console.\n *\n * @param level The level for this message\n * @param args Arguments to send to the console\n */\n private log(\n level: LogLevel,\n message: string,\n extraInfo: Record<string, unknown>\n ) {\n if (logLevelSeverity(level) >= logLevelSeverity(this.#logLevel)) {\n this.#logger(level, message, extraInfo)\n }\n }\n\n /**\n * Transforms an API key or access token into a headers object suitable for an HTTP request.\n *\n * This method uses the instance's value as the default when the input is undefined. If neither are defined, it returns\n * an empty object\n *\n * @param auth API key or access token\n * @returns headers key-value object\n */\n private authAsHeaders(auth?: string): Record<string, string> {\n const headers: Record<string, string> = {}\n const authHeaderValue = auth ?? this.#auth\n if (authHeaderValue !== undefined) {\n headers[\"authorization\"] = `Bearer ${authHeaderValue}`\n }\n return headers\n }\n}\n\n/*\n * Type aliases to support the generic request interface.\n */\ntype Method = \"get\" | \"post\" | \"patch\" | \"delete\"\ntype QueryParams =\n | Record<string, string | number | boolean | string[]>\n | URLSearchParams\n\ntype WithAuth<P> = P & { auth?: string }\n"]}
|
|
@@ -1682,6 +1682,13 @@ type PageIdParentForBlockBasedObjectResponse = {
|
|
|
1682
1682
|
type: "page_id";
|
|
1683
1683
|
page_id: IdResponse;
|
|
1684
1684
|
};
|
|
1685
|
+
type PageMarkdownResponse = {
|
|
1686
|
+
object: "page_markdown";
|
|
1687
|
+
id: IdResponse;
|
|
1688
|
+
markdown: string;
|
|
1689
|
+
truncated: boolean;
|
|
1690
|
+
unknown_block_ids: Array<IdResponse>;
|
|
1691
|
+
};
|
|
1685
1692
|
export type PageObjectResponse = {
|
|
1686
1693
|
object: "page";
|
|
1687
1694
|
id: IdResponse;
|
|
@@ -2806,6 +2813,7 @@ type CreatePageBodyParameters = {
|
|
|
2806
2813
|
cover?: PageCoverRequest | null;
|
|
2807
2814
|
content?: Array<BlockObjectRequest>;
|
|
2808
2815
|
children?: Array<BlockObjectRequest>;
|
|
2816
|
+
markdown?: string;
|
|
2809
2817
|
template?: {
|
|
2810
2818
|
type: "none";
|
|
2811
2819
|
} | {
|
|
@@ -2825,7 +2833,7 @@ export declare const createPage: {
|
|
|
2825
2833
|
readonly method: "post";
|
|
2826
2834
|
readonly pathParams: readonly [];
|
|
2827
2835
|
readonly queryParams: readonly [];
|
|
2828
|
-
readonly bodyParams: readonly ["parent", "properties", "icon", "cover", "content", "children", "template", "position"];
|
|
2836
|
+
readonly bodyParams: readonly ["parent", "properties", "icon", "cover", "content", "children", "markdown", "template", "position"];
|
|
2829
2837
|
readonly path: () => string;
|
|
2830
2838
|
};
|
|
2831
2839
|
type GetPagePathParameters = {
|
|
@@ -2958,6 +2966,30 @@ export declare const updatePage: {
|
|
|
2958
2966
|
readonly bodyParams: readonly ["properties", "icon", "cover", "is_locked", "template", "erase_content", "archived", "in_trash"];
|
|
2959
2967
|
readonly path: (p: UpdatePagePathParameters) => string;
|
|
2960
2968
|
};
|
|
2969
|
+
type MovePagePathParameters = {
|
|
2970
|
+
page_id: IdRequest;
|
|
2971
|
+
};
|
|
2972
|
+
type MovePageBodyParameters = {
|
|
2973
|
+
parent: {
|
|
2974
|
+
page_id: IdRequest;
|
|
2975
|
+
type?: "page_id";
|
|
2976
|
+
} | {
|
|
2977
|
+
data_source_id: IdRequest;
|
|
2978
|
+
type?: "data_source_id";
|
|
2979
|
+
};
|
|
2980
|
+
};
|
|
2981
|
+
export type MovePageParameters = MovePagePathParameters & MovePageBodyParameters;
|
|
2982
|
+
export type MovePageResponse = PartialPageObjectResponse | PageObjectResponse;
|
|
2983
|
+
/**
|
|
2984
|
+
* Move a page
|
|
2985
|
+
*/
|
|
2986
|
+
export declare const movePage: {
|
|
2987
|
+
readonly method: "post";
|
|
2988
|
+
readonly pathParams: readonly ["page_id"];
|
|
2989
|
+
readonly queryParams: readonly [];
|
|
2990
|
+
readonly bodyParams: readonly ["parent"];
|
|
2991
|
+
readonly path: (p: MovePagePathParameters) => string;
|
|
2992
|
+
};
|
|
2961
2993
|
type GetPagePropertyPathParameters = {
|
|
2962
2994
|
page_id: IdRequest;
|
|
2963
2995
|
property_id: string;
|
|
@@ -2978,6 +3010,53 @@ export declare const getPageProperty: {
|
|
|
2978
3010
|
readonly bodyParams: readonly [];
|
|
2979
3011
|
readonly path: (p: GetPagePropertyPathParameters) => string;
|
|
2980
3012
|
};
|
|
3013
|
+
type GetPageMarkdownPathParameters = {
|
|
3014
|
+
page_id: IdRequest;
|
|
3015
|
+
};
|
|
3016
|
+
type GetPageMarkdownQueryParameters = {
|
|
3017
|
+
include_transcript?: boolean;
|
|
3018
|
+
};
|
|
3019
|
+
export type GetPageMarkdownParameters = GetPageMarkdownPathParameters & GetPageMarkdownQueryParameters;
|
|
3020
|
+
export type GetPageMarkdownResponse = PageMarkdownResponse;
|
|
3021
|
+
/**
|
|
3022
|
+
* Retrieve a page as markdown
|
|
3023
|
+
*/
|
|
3024
|
+
export declare const getPageMarkdown: {
|
|
3025
|
+
readonly method: "get";
|
|
3026
|
+
readonly pathParams: readonly ["page_id"];
|
|
3027
|
+
readonly queryParams: readonly ["include_transcript"];
|
|
3028
|
+
readonly bodyParams: readonly [];
|
|
3029
|
+
readonly path: (p: GetPageMarkdownPathParameters) => string;
|
|
3030
|
+
};
|
|
3031
|
+
type UpdatePageMarkdownPathParameters = {
|
|
3032
|
+
page_id: IdRequest;
|
|
3033
|
+
};
|
|
3034
|
+
type UpdatePageMarkdownBodyParameters = {
|
|
3035
|
+
type: "insert_content";
|
|
3036
|
+
insert_content: {
|
|
3037
|
+
content: string;
|
|
3038
|
+
after?: string;
|
|
3039
|
+
};
|
|
3040
|
+
} | {
|
|
3041
|
+
type: "replace_content_range";
|
|
3042
|
+
replace_content_range: {
|
|
3043
|
+
content: string;
|
|
3044
|
+
content_range: string;
|
|
3045
|
+
allow_deleting_content?: boolean;
|
|
3046
|
+
};
|
|
3047
|
+
};
|
|
3048
|
+
export type UpdatePageMarkdownParameters = UpdatePageMarkdownPathParameters & UpdatePageMarkdownBodyParameters;
|
|
3049
|
+
export type UpdatePageMarkdownResponse = PageMarkdownResponse;
|
|
3050
|
+
/**
|
|
3051
|
+
* Update a page's content as markdown
|
|
3052
|
+
*/
|
|
3053
|
+
export declare const updatePageMarkdown: {
|
|
3054
|
+
readonly method: "patch";
|
|
3055
|
+
readonly pathParams: readonly ["page_id"];
|
|
3056
|
+
readonly queryParams: readonly [];
|
|
3057
|
+
readonly bodyParams: readonly ["type", "insert_content", "replace_content_range"];
|
|
3058
|
+
readonly path: (p: UpdatePageMarkdownPathParameters) => string;
|
|
3059
|
+
};
|
|
2981
3060
|
type GetBlockPathParameters = {
|
|
2982
3061
|
block_id: IdRequest;
|
|
2983
3062
|
};
|
|
@@ -3875,29 +3954,5 @@ export declare const oauthIntrospect: {
|
|
|
3875
3954
|
readonly bodyParams: readonly ["token"];
|
|
3876
3955
|
readonly path: () => string;
|
|
3877
3956
|
};
|
|
3878
|
-
type MovePagePathParameters = {
|
|
3879
|
-
page_id: IdRequest;
|
|
3880
|
-
};
|
|
3881
|
-
type MovePageBodyParameters = {
|
|
3882
|
-
parent: {
|
|
3883
|
-
page_id: IdRequest;
|
|
3884
|
-
type?: "page_id";
|
|
3885
|
-
} | {
|
|
3886
|
-
data_source_id: IdRequest;
|
|
3887
|
-
type?: "data_source_id";
|
|
3888
|
-
};
|
|
3889
|
-
};
|
|
3890
|
-
export type MovePageParameters = MovePagePathParameters & MovePageBodyParameters;
|
|
3891
|
-
export type MovePageResponse = PartialPageObjectResponse | PageObjectResponse;
|
|
3892
|
-
/**
|
|
3893
|
-
* Move a page
|
|
3894
|
-
*/
|
|
3895
|
-
export declare const movePage: {
|
|
3896
|
-
readonly method: "post";
|
|
3897
|
-
readonly pathParams: readonly ["page_id"];
|
|
3898
|
-
readonly queryParams: readonly [];
|
|
3899
|
-
readonly bodyParams: readonly ["parent"];
|
|
3900
|
-
readonly path: (p: MovePagePathParameters) => string;
|
|
3901
|
-
};
|
|
3902
3957
|
export {};
|
|
3903
3958
|
//# sourceMappingURL=api-endpoints.d.ts.map
|