mem0ai 1.0.33 → 1.0.34
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/dist/index.d.mts +33 -1
- package/dist/index.d.ts +33 -1
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +40 -0
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -2
package/dist/index.d.mts
CHANGED
|
@@ -111,6 +111,28 @@ interface PromptUpdatePayload {
|
|
|
111
111
|
custom_categories?: custom_categories[];
|
|
112
112
|
[key: string]: any;
|
|
113
113
|
}
|
|
114
|
+
declare enum WebhookEvent {
|
|
115
|
+
MEMORY_ADDED = "memory_add",
|
|
116
|
+
MEMORY_UPDATED = "memory_update",
|
|
117
|
+
MEMORY_DELETED = "memory_delete"
|
|
118
|
+
}
|
|
119
|
+
interface Webhook {
|
|
120
|
+
webhook_id?: string;
|
|
121
|
+
name: string;
|
|
122
|
+
url: string;
|
|
123
|
+
project?: string;
|
|
124
|
+
created_at?: Date;
|
|
125
|
+
updated_at?: Date;
|
|
126
|
+
is_active?: boolean;
|
|
127
|
+
event_types?: WebhookEvent[];
|
|
128
|
+
}
|
|
129
|
+
interface WebhookPayload {
|
|
130
|
+
eventTypes: WebhookEvent[];
|
|
131
|
+
projectId: string;
|
|
132
|
+
webhookId: string;
|
|
133
|
+
name: string;
|
|
134
|
+
url: string;
|
|
135
|
+
}
|
|
114
136
|
|
|
115
137
|
interface ClientOptions {
|
|
116
138
|
apiKey: string;
|
|
@@ -167,6 +189,16 @@ declare class MemoryClient {
|
|
|
167
189
|
batchDelete(memories: Array<string>): Promise<string>;
|
|
168
190
|
getProject(options: ProjectOptions): Promise<ProjectResponse>;
|
|
169
191
|
updateProject(prompts: PromptUpdatePayload): Promise<Record<string, any>>;
|
|
192
|
+
getWebhooks(data?: {
|
|
193
|
+
projectId?: string;
|
|
194
|
+
}): Promise<Array<Webhook>>;
|
|
195
|
+
createWebhook(webhook: WebhookPayload): Promise<Webhook>;
|
|
196
|
+
updateWebhook(webhook: WebhookPayload): Promise<{
|
|
197
|
+
message: string;
|
|
198
|
+
}>;
|
|
199
|
+
deleteWebhook(webhookId: string, projectId: string): Promise<{
|
|
200
|
+
message: string;
|
|
201
|
+
}>;
|
|
170
202
|
}
|
|
171
203
|
|
|
172
|
-
export { API_VERSION, type AllUsers, type Memory, MemoryClient, type MemoryData, type MemoryHistory, type MemoryOptions, type MemoryUpdateBody, type Message, type Messages, type ProjectOptions, type ProjectResponse, type PromptUpdatePayload, type SearchOptions, type User, MemoryClient as default };
|
|
204
|
+
export { API_VERSION, type AllUsers, type Memory, MemoryClient, type MemoryData, type MemoryHistory, type MemoryOptions, type MemoryUpdateBody, type Message, type Messages, type ProjectOptions, type ProjectResponse, type PromptUpdatePayload, type SearchOptions, type User, type Webhook, type WebhookPayload, MemoryClient as default };
|
package/dist/index.d.ts
CHANGED
|
@@ -111,6 +111,28 @@ interface PromptUpdatePayload {
|
|
|
111
111
|
custom_categories?: custom_categories[];
|
|
112
112
|
[key: string]: any;
|
|
113
113
|
}
|
|
114
|
+
declare enum WebhookEvent {
|
|
115
|
+
MEMORY_ADDED = "memory_add",
|
|
116
|
+
MEMORY_UPDATED = "memory_update",
|
|
117
|
+
MEMORY_DELETED = "memory_delete"
|
|
118
|
+
}
|
|
119
|
+
interface Webhook {
|
|
120
|
+
webhook_id?: string;
|
|
121
|
+
name: string;
|
|
122
|
+
url: string;
|
|
123
|
+
project?: string;
|
|
124
|
+
created_at?: Date;
|
|
125
|
+
updated_at?: Date;
|
|
126
|
+
is_active?: boolean;
|
|
127
|
+
event_types?: WebhookEvent[];
|
|
128
|
+
}
|
|
129
|
+
interface WebhookPayload {
|
|
130
|
+
eventTypes: WebhookEvent[];
|
|
131
|
+
projectId: string;
|
|
132
|
+
webhookId: string;
|
|
133
|
+
name: string;
|
|
134
|
+
url: string;
|
|
135
|
+
}
|
|
114
136
|
|
|
115
137
|
interface ClientOptions {
|
|
116
138
|
apiKey: string;
|
|
@@ -167,7 +189,17 @@ declare class MemoryClient {
|
|
|
167
189
|
batchDelete(memories: Array<string>): Promise<string>;
|
|
168
190
|
getProject(options: ProjectOptions): Promise<ProjectResponse>;
|
|
169
191
|
updateProject(prompts: PromptUpdatePayload): Promise<Record<string, any>>;
|
|
192
|
+
getWebhooks(data?: {
|
|
193
|
+
projectId?: string;
|
|
194
|
+
}): Promise<Array<Webhook>>;
|
|
195
|
+
createWebhook(webhook: WebhookPayload): Promise<Webhook>;
|
|
196
|
+
updateWebhook(webhook: WebhookPayload): Promise<{
|
|
197
|
+
message: string;
|
|
198
|
+
}>;
|
|
199
|
+
deleteWebhook(webhookId: string, projectId: string): Promise<{
|
|
200
|
+
message: string;
|
|
201
|
+
}>;
|
|
170
202
|
}
|
|
171
203
|
|
|
172
|
-
export { API_VERSION, type AllUsers, type Memory, MemoryClient, type MemoryData, type MemoryHistory, type MemoryOptions, type MemoryUpdateBody, type Message, type Messages, type ProjectOptions, type ProjectResponse, type PromptUpdatePayload, type SearchOptions, type User, MemoryClient as default };
|
|
204
|
+
export { API_VERSION, type AllUsers, type Memory, MemoryClient, type MemoryData, type MemoryHistory, type MemoryOptions, type MemoryUpdateBody, type Message, type Messages, type ProjectOptions, type ProjectResponse, type PromptUpdatePayload, type SearchOptions, type User, type Webhook, type WebhookPayload, MemoryClient as default };
|
|
173
205
|
export = MemoryClient
|
package/dist/index.js
CHANGED
|
@@ -159,6 +159,10 @@ var MemoryClient = class {
|
|
|
159
159
|
"update_project",
|
|
160
160
|
this.updateProject
|
|
161
161
|
);
|
|
162
|
+
this.getWebhooks = this.wrapMethod("get_webhook", this.getWebhooks);
|
|
163
|
+
this.createWebhook = this.wrapMethod("create_webhook", this.createWebhook);
|
|
164
|
+
this.updateWebhook = this.wrapMethod("update_webhook", this.updateWebhook);
|
|
165
|
+
this.deleteWebhook = this.wrapMethod("delete_webhook", this.deleteWebhook);
|
|
162
166
|
}
|
|
163
167
|
wrapMethod(methodName, method) {
|
|
164
168
|
return async function(...args) {
|
|
@@ -398,6 +402,42 @@ var MemoryClient = class {
|
|
|
398
402
|
);
|
|
399
403
|
return response;
|
|
400
404
|
}
|
|
405
|
+
// WebHooks
|
|
406
|
+
async getWebhooks(data) {
|
|
407
|
+
const project_id = (data == null ? void 0 : data.projectId) || this.projectId;
|
|
408
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/`, {
|
|
409
|
+
headers: this.headers
|
|
410
|
+
});
|
|
411
|
+
return response;
|
|
412
|
+
}
|
|
413
|
+
async createWebhook(webhook) {
|
|
414
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${this.projectId}/webhook/`, {
|
|
415
|
+
method: "POST",
|
|
416
|
+
headers: this.headers,
|
|
417
|
+
body: JSON.stringify(webhook)
|
|
418
|
+
});
|
|
419
|
+
return response;
|
|
420
|
+
}
|
|
421
|
+
async updateWebhook(webhook) {
|
|
422
|
+
const project_id = webhook.projectId || this.projectId;
|
|
423
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhook.webhookId}/`, {
|
|
424
|
+
method: "PUT",
|
|
425
|
+
headers: this.headers,
|
|
426
|
+
body: JSON.stringify({
|
|
427
|
+
...webhook,
|
|
428
|
+
projectId: project_id
|
|
429
|
+
})
|
|
430
|
+
});
|
|
431
|
+
return response;
|
|
432
|
+
}
|
|
433
|
+
async deleteWebhook(webhookId, projectId) {
|
|
434
|
+
const project_id = projectId || this.projectId;
|
|
435
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhookId}/`, {
|
|
436
|
+
method: "DELETE",
|
|
437
|
+
headers: this.headers
|
|
438
|
+
});
|
|
439
|
+
return response;
|
|
440
|
+
}
|
|
401
441
|
};
|
|
402
442
|
|
|
403
443
|
// src/mem0.types.ts
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/mem0.ts","../src/telemetry.ts","../src/mem0.types.ts"],"sourcesContent":["import {MemoryClient} from \"./mem0\";\n\nexport { MemoryClient } from './mem0';\nexport * from './mem0.types';\nexport default MemoryClient;","import axios from 'axios';\nimport { AllUsers, ProjectOptions, Memory, MemoryHistory, MemoryOptions, MemoryUpdateBody, ProjectResponse, PromptUpdatePayload, SearchOptions } from './mem0.types';\nimport { captureClientEvent } from './telemetry';\nimport crypto from 'crypto';\n\nclass APIError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'APIError';\n }\n}\n\ninterface ClientOptions{\n apiKey: string;\n host?: string;\n organizationName?: string;\n projectName?: string;\n organizationId?: string;\n projectId?: string;\n}\n\nexport default class MemoryClient {\n apiKey: string;\n host: string;\n organizationName: string | null;\n projectName: string | null;\n organizationId: string | number | null;\n projectId: string | number | null;\n headers: Record<string, string>;\n client: any;\n telemetryId: string;\n\n _validateApiKey(): any {\n if (!this.apiKey) {\n throw new Error('Mem0 API key is required');\n }\n if (typeof this.apiKey !== 'string') {\n throw new Error('Mem0 API key must be a string');\n }\n if (this.apiKey.trim() === '') {\n throw new Error('Mem0 API key cannot be empty');\n }\n }\n\n _validateOrgProject(): void {\n // Check for organizationName/projectName pair\n if ((this.organizationName === null && this.projectName !== null) || \n (this.organizationName !== null && this.projectName === null)) {\n console.warn('Warning: Both organizationName and projectName must be provided together when using either. This will be removedfrom the version 1.0.40. Note that organizationName/projectName are being deprecated in favor of organizationId/projectId.');\n }\n\n // Check for organizationId/projectId pair\n if ((this.organizationId === null && this.projectId !== null) || \n (this.organizationId !== null && this.projectId === null)) {\n console.warn('Warning: Both organizationId and projectId must be provided together when using either. This will be removedfrom the version 1.0.40.');\n }\n }\n\n constructor(options: ClientOptions) {\n this.apiKey = options.apiKey;\n this.host = options.host || \"https://api.mem0.ai\";\n this.organizationName = options.organizationName || null;\n this.projectName = options.projectName || null;\n this.organizationId = options.organizationId || null;\n this.projectId = options.projectId || null;\n\n this.headers = {\n 'Authorization': `Token ${this.apiKey}`,\n 'Content-Type': 'application/json'\n };\n\n this.client = axios.create({\n baseURL: this.host,\n headers: { Authorization: `Token ${this.apiKey}` },\n timeout: 60000,\n });\n\n this._validateApiKey();\n this._validateOrgProject();\n\n this.telemetryId = crypto.createHash('md5').update(this.apiKey).digest('hex');\n\n captureClientEvent('init', this);\n\n this.add = this.wrapMethod('add', this.add);\n this.get = this.wrapMethod('get', this.get);\n this.getAll = this.wrapMethod('get_all', this.getAll);\n this.search = this.wrapMethod('search', this.search);\n this.delete = this.wrapMethod('delete', this.delete);\n this.deleteAll = this.wrapMethod('delete_all', this.deleteAll);\n this.history = this.wrapMethod('history', this.history);\n this.users = this.wrapMethod('users', this.users);\n this.deleteUser = this.wrapMethod('delete_user', this.deleteUser);\n this.deleteUsers = this.wrapMethod('delete_users', this.deleteUsers);\n this.batchUpdate = this.wrapMethod('batch_update', this.batchUpdate);\n this.batchDelete = this.wrapMethod('batch_delete', this.batchDelete);\n this.getProject = this.wrapMethod(\n 'get_project', \n this.getProject\n );\n this.updateProject = this.wrapMethod(\n 'update_project', \n this.updateProject\n );\n }\n\n wrapMethod(methodName: any, method: any) {\n return async function (...args: any) {\n // @ts-ignore\n await captureClientEvent(methodName, this);\n // @ts-ignore\n return method.apply(this, args);\n }.bind(this);\n}\n\n async _fetchWithErrorHandling(url: string, options: any): Promise<any> {\n const response = await fetch(url, options);\n if (!response.ok) {\n const errorData = await response.text();\n throw new APIError(`API request failed: ${errorData}`);\n }\n const jsonResponse = await response.json();\n return jsonResponse;\n }\n\n _preparePayload(messages: string | Array<{ role: string; content: string }>,\n options: MemoryOptions): object {\n const payload: any = {};\n if (typeof messages === 'string') {\n payload.messages = [{ role: 'user', content: messages }];\n } else if (Array.isArray(messages)) {\n payload.messages = messages;\n }\n return { ...payload, ...options };\n }\n\n _prepareParams(options: MemoryOptions): object {\n return Object.fromEntries(Object.entries(options).filter(([_, v]) => v != null));\n }\n\n async add(messages: string | Array<{ role: string; content: string }>, options:MemoryOptions = {}): Promise<Array<Memory>> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n\n const payload = this._preparePayload(messages, options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async get(memoryId: string):Promise<Memory> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n headers: this.headers\n });\n }\n\n getAll(options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, page, page_size, ...otherOptions } = options!;\n if(this.organizationName != null && this.projectName != null){\n otherOptions.org_name = this.organizationName;\n otherOptions.project_name = this.projectName;\n }\n\n let appendedParams = \"\";\n let paginated_response = false;\n\n if(page && page_size){\n appendedParams += `page=${page}&page_size=${page_size}`\n paginated_response = true;\n }\n\n if(this.organizationId != null && this.projectId != null){\n otherOptions.org_id = this.organizationId;\n otherOptions.project_id = this.projectId;\n\n if (otherOptions.org_name) delete otherOptions.org_name;\n if(otherOptions.project_name) delete otherOptions.project_name;\n }\n\n if (api_version === 'v2') {\n let url = paginated_response ? `${this.host}/v2/memories/?${appendedParams}` : `${this.host}/v2/memories/`;\n return this._fetchWithErrorHandling(url, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(otherOptions)\n });\n } else {\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(otherOptions));\n const url = paginated_response ? `${this.host}/v1/memories/?${params}&${appendedParams}` : `${this.host}/v1/memories/?${params}`;\n return this._fetchWithErrorHandling(url, {\n headers: this.headers\n });\n }\n }\n\n async search(query: string, options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, ...otherOptions } = options!;\n const payload = { query, ...otherOptions };\n if(this.organizationName != null && this.projectName != null){\n payload.org_name = this.organizationName;\n payload.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n payload.org_id = this.organizationId;\n payload.project_id = this.projectId;\n\n if (payload.org_name) delete payload.org_name;\n if(payload.project_name) delete payload.project_name;\n }\n const endpoint = api_version === 'v2' ? '/v2/memories/search/' : '/v1/memories/search/';\n const response = await this._fetchWithErrorHandling(`${this.host}${endpoint}`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async delete(memoryId: string): Promise<{ message: string }> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n }\n\n async deleteAll(options: MemoryOptions = {}): Promise<{ message: string }> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(options));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/?${params}`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async history(memoryId: string): Promise<Array<MemoryHistory>> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/history/`, {\n headers: this.headers\n });\n return response;\n }\n\n async users(): Promise<AllUsers>{\n this._validateOrgProject();\n const options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/?${params}`, {\n headers: this.headers\n });\n return response;\n }\n\n async deleteUser(entityId: string, entity: { type: string } = { type: 'user' }): Promise<{ message: string }> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/${entity.type}/${entityId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async deleteUsers(): Promise<{ message: string }> {\n this._validateOrgProject();\n const entities = await this.users();\n \n for (const entity of entities.results) {\n let options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n \n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n \n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n await this.client.delete(`/v1/entities/${entity.type}/${entity.id}/`, { params: options });\n }\n return { message: \"All users, agents, and sessions deleted.\" };\n }\n\n async batchUpdate(memories: Array<MemoryUpdateBody>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory.memoryId,\n text: memory.text\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'PUT',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async batchDelete(memories: Array<string>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'DELETE',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async getProject(options: ProjectOptions): Promise<ProjectResponse> {\n this._validateOrgProject();\n\n const { fields } = options;\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to access instructions or categories\");\n }\n\n const params = new URLSearchParams();\n fields?.forEach(field => params.append('fields', field));\n \n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/?${params.toString()}`,\n {\n headers: this.headers\n }\n );\n return response;\n }\n\n async updateProject(prompts: PromptUpdatePayload): Promise<Record<string, any>> {\n this._validateOrgProject();\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to update instructions or categories\");\n }\n\n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/`,\n {\n method: 'PATCH',\n headers: this.headers,\n body: JSON.stringify(prompts)\n }\n );\n return response;\n }\n\n}\n\nexport {MemoryClient};","// @ts-nocheck\nimport { PostHog } from \"posthog-node\";\nimport os from \"os\";\nimport path from \"path\";\n\nlet version = \"1.0.20\";\n\nconst MEM0_TELEMETRY = process.env.MEM0_TELEMETRY !== \"false\";\n\nclass AnonymousTelemetry {\n constructor(projectApiKey, host) {\n this.client = new PostHog(projectApiKey, { host, flushAt: 1 });\n }\n async captureEvent(distinctId, eventName, properties = {}) {\n const eventProperties = {\n client_source: \"nodejs\",\n client_version: getVersion(),\n node_version: process.version,\n os: process.platform,\n os_version: os.release(),\n os_arch: os.arch(),\n ...properties,\n };\n try {\n this.client.capture({\n distinctId: distinctId,\n event: eventName,\n properties: eventProperties,\n });\n } catch (error) {\n console.error(\"Error capturing event:\", error);\n }\n }\n async shutdown() {\n return this.client.shutdown();\n }\n}\nfunction getVersion() {\n return version;\n}\nconst telemetry = new AnonymousTelemetry(\n \"phc_hgJkUVJFYtmaJqrvf6CYN67TIQ8yhXAkWzUn9AMU4yX\",\n \"https://us.i.posthog.com\"\n);\nasync function captureClientEvent(eventName, instance, additionalData = {}) {\n const eventData = {\n function: `${instance.constructor.name}`,\n ...additionalData,\n };\n await telemetry.captureEvent(\n instance.telemetryId,\n `client.${eventName}`,\n eventData\n );\n}\nexport { telemetry, captureClientEvent };","export interface MemoryOptions {\n user_id?: string;\n agent_id?: string;\n app_id?: string;\n run_id?: string;\n metadata?: Record<string, any>;\n filters?: Record<string, any>;\n org_name?: string | null; // Deprecated\n project_name?: string | null; // Deprecated\n org_id?: string | number | null;\n project_id?: string | number | null;\n infer?: boolean;\n page?: number;\n page_size?: number;\n includes?: string;\n excludes?: string;\n enable_graph?: boolean;\n start_date?: string;\n end_date?: string;\n}\n\nexport interface ProjectOptions {\n fields?: string[];\n}\n\nexport enum API_VERSION {\n V1 = \"v1\",\n V2 = \"v2\",\n}\n\nexport interface Messages {\n role: string;\n content: string;\n}\n\nexport interface Message extends Messages {}\n\nexport interface MemoryHistory {\n id: string;\n memory_id: string;\n input: Array<Messages>;\n old_memory: string | null;\n new_memory: string | null;\n user_id: string;\n categories: Array<string>;\n event: Event | string;\n created_at: Date;\n updated_at: Date;\n}\n\nexport interface SearchOptions extends MemoryOptions {\n api_version?: API_VERSION | string;\n limit?: number;\n enable_graph?: boolean;\n threshold?: number;\n top_k?: number;\n only_metadata_based_search?: boolean;\n keyword_search?: boolean;\n fields?: string[];\n categories?: string[];\n rerank?: boolean;\n}\n\nenum Event {\n ADD = \"ADD\",\n UPDATE = \"UPDATE\",\n DELETE = \"DELETE\",\n NOOP = \"NOOP\",\n}\n\nexport interface MemoryData {\n memory: string;\n}\n\nexport interface Memory {\n id: string;\n messages?: Array<Messages>;\n event?: Event | string;\n data?: MemoryData | null;\n memory?: string;\n user_id?: string;\n hash?: string;\n categories?: Array<string>;\n created_at?: Date;\n updated_at?: Date;\n memory_type?: string;\n score?: number;\n metadata?: any | null;\n}\n\nexport interface MemoryUpdateBody {\n memoryId: string;\n text: string;\n}\n\nexport interface User {\n id: string;\n name: string;\n created_at: Date;\n updated_at: Date;\n total_memories: number;\n owner: string;\n type: string;\n}\n\nexport interface AllUsers {\n count: number;\n results: Array<User>;\n next: any;\n previous: any;\n}\n\nexport interface ProjectResponse {\n custom_instructions?: string;\n custom_categories?: string[];\n [key: string]: any;\n}\n\ninterface custom_categories {\n [key: string]: any;\n}\n\nexport interface PromptUpdatePayload {\n custom_instructions?: string;\n custom_categories?: custom_categories[];\n [key: string]: any;\n}"],"mappings":"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","names":["os","axios","crypto","API_VERSION"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/mem0.ts","../src/telemetry.ts","../src/mem0.types.ts"],"sourcesContent":["import {MemoryClient} from \"./mem0\";\n\nexport { MemoryClient } from './mem0';\nexport * from './mem0.types';\nexport default MemoryClient;","import axios from 'axios';\nimport { AllUsers, ProjectOptions, Memory, MemoryHistory, MemoryOptions, MemoryUpdateBody, ProjectResponse, PromptUpdatePayload, SearchOptions, Webhook, WebhookPayload } from './mem0.types';\nimport { captureClientEvent } from './telemetry';\nimport crypto from 'crypto';\n\nclass APIError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'APIError';\n }\n}\n\ninterface ClientOptions{\n apiKey: string;\n host?: string;\n organizationName?: string;\n projectName?: string;\n organizationId?: string;\n projectId?: string;\n}\n\nexport default class MemoryClient {\n apiKey: string;\n host: string;\n organizationName: string | null;\n projectName: string | null;\n organizationId: string | number | null;\n projectId: string | number | null;\n headers: Record<string, string>;\n client: any;\n telemetryId: string;\n\n _validateApiKey(): any {\n if (!this.apiKey) {\n throw new Error('Mem0 API key is required');\n }\n if (typeof this.apiKey !== 'string') {\n throw new Error('Mem0 API key must be a string');\n }\n if (this.apiKey.trim() === '') {\n throw new Error('Mem0 API key cannot be empty');\n }\n }\n\n _validateOrgProject(): void {\n // Check for organizationName/projectName pair\n if ((this.organizationName === null && this.projectName !== null) || \n (this.organizationName !== null && this.projectName === null)) {\n console.warn('Warning: Both organizationName and projectName must be provided together when using either. This will be removedfrom the version 1.0.40. Note that organizationName/projectName are being deprecated in favor of organizationId/projectId.');\n }\n\n // Check for organizationId/projectId pair\n if ((this.organizationId === null && this.projectId !== null) || \n (this.organizationId !== null && this.projectId === null)) {\n console.warn('Warning: Both organizationId and projectId must be provided together when using either. This will be removedfrom the version 1.0.40.');\n }\n }\n\n constructor(options: ClientOptions) {\n this.apiKey = options.apiKey;\n this.host = options.host || \"https://api.mem0.ai\";\n this.organizationName = options.organizationName || null;\n this.projectName = options.projectName || null;\n this.organizationId = options.organizationId || null;\n this.projectId = options.projectId || null;\n\n this.headers = {\n 'Authorization': `Token ${this.apiKey}`,\n 'Content-Type': 'application/json'\n };\n\n this.client = axios.create({\n baseURL: this.host,\n headers: { Authorization: `Token ${this.apiKey}` },\n timeout: 60000,\n });\n\n this._validateApiKey();\n this._validateOrgProject();\n\n this.telemetryId = crypto.createHash('md5').update(this.apiKey).digest('hex');\n\n captureClientEvent('init', this);\n\n this.add = this.wrapMethod('add', this.add);\n this.get = this.wrapMethod('get', this.get);\n this.getAll = this.wrapMethod('get_all', this.getAll);\n this.search = this.wrapMethod('search', this.search);\n this.delete = this.wrapMethod('delete', this.delete);\n this.deleteAll = this.wrapMethod('delete_all', this.deleteAll);\n this.history = this.wrapMethod('history', this.history);\n this.users = this.wrapMethod('users', this.users);\n this.deleteUser = this.wrapMethod('delete_user', this.deleteUser);\n this.deleteUsers = this.wrapMethod('delete_users', this.deleteUsers);\n this.batchUpdate = this.wrapMethod('batch_update', this.batchUpdate);\n this.batchDelete = this.wrapMethod('batch_delete', this.batchDelete);\n this.getProject = this.wrapMethod(\n 'get_project', \n this.getProject\n );\n this.updateProject = this.wrapMethod(\n 'update_project', \n this.updateProject\n );\n this.getWebhooks = this.wrapMethod('get_webhook', this.getWebhooks);\n this.createWebhook = this.wrapMethod('create_webhook', this.createWebhook);\n this.updateWebhook = this.wrapMethod('update_webhook', this.updateWebhook);\n this.deleteWebhook = this.wrapMethod('delete_webhook', this.deleteWebhook);\n }\n\n wrapMethod(methodName: any, method: any) {\n return async function (...args: any) {\n // @ts-ignore\n await captureClientEvent(methodName, this);\n // @ts-ignore\n return method.apply(this, args);\n }.bind(this);\n}\n\n async _fetchWithErrorHandling(url: string, options: any): Promise<any> {\n const response = await fetch(url, options);\n if (!response.ok) {\n const errorData = await response.text();\n throw new APIError(`API request failed: ${errorData}`);\n }\n const jsonResponse = await response.json();\n return jsonResponse;\n }\n\n _preparePayload(messages: string | Array<{ role: string; content: string }>,\n options: MemoryOptions): object {\n const payload: any = {};\n if (typeof messages === 'string') {\n payload.messages = [{ role: 'user', content: messages }];\n } else if (Array.isArray(messages)) {\n payload.messages = messages;\n }\n return { ...payload, ...options };\n }\n\n _prepareParams(options: MemoryOptions): object {\n return Object.fromEntries(Object.entries(options).filter(([_, v]) => v != null));\n }\n\n async add(messages: string | Array<{ role: string; content: string }>, options:MemoryOptions = {}): Promise<Array<Memory>> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n\n const payload = this._preparePayload(messages, options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async get(memoryId: string):Promise<Memory> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n headers: this.headers\n });\n }\n\n getAll(options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, page, page_size, ...otherOptions } = options!;\n if(this.organizationName != null && this.projectName != null){\n otherOptions.org_name = this.organizationName;\n otherOptions.project_name = this.projectName;\n }\n\n let appendedParams = \"\";\n let paginated_response = false;\n\n if(page && page_size){\n appendedParams += `page=${page}&page_size=${page_size}`\n paginated_response = true;\n }\n\n if(this.organizationId != null && this.projectId != null){\n otherOptions.org_id = this.organizationId;\n otherOptions.project_id = this.projectId;\n\n if (otherOptions.org_name) delete otherOptions.org_name;\n if(otherOptions.project_name) delete otherOptions.project_name;\n }\n\n if (api_version === 'v2') {\n let url = paginated_response ? `${this.host}/v2/memories/?${appendedParams}` : `${this.host}/v2/memories/`;\n return this._fetchWithErrorHandling(url, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(otherOptions)\n });\n } else {\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(otherOptions));\n const url = paginated_response ? `${this.host}/v1/memories/?${params}&${appendedParams}` : `${this.host}/v1/memories/?${params}`;\n return this._fetchWithErrorHandling(url, {\n headers: this.headers\n });\n }\n }\n\n async search(query: string, options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, ...otherOptions } = options!;\n const payload = { query, ...otherOptions };\n if(this.organizationName != null && this.projectName != null){\n payload.org_name = this.organizationName;\n payload.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n payload.org_id = this.organizationId;\n payload.project_id = this.projectId;\n\n if (payload.org_name) delete payload.org_name;\n if(payload.project_name) delete payload.project_name;\n }\n const endpoint = api_version === 'v2' ? '/v2/memories/search/' : '/v1/memories/search/';\n const response = await this._fetchWithErrorHandling(`${this.host}${endpoint}`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async delete(memoryId: string): Promise<{ message: string }> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n }\n\n async deleteAll(options: MemoryOptions = {}): Promise<{ message: string }> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(options));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/?${params}`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async history(memoryId: string): Promise<Array<MemoryHistory>> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/history/`, {\n headers: this.headers\n });\n return response;\n }\n\n async users(): Promise<AllUsers>{\n this._validateOrgProject();\n const options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/?${params}`, {\n headers: this.headers\n });\n return response;\n }\n\n async deleteUser(entityId: string, entity: { type: string } = { type: 'user' }): Promise<{ message: string }> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/${entity.type}/${entityId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async deleteUsers(): Promise<{ message: string }> {\n this._validateOrgProject();\n const entities = await this.users();\n \n for (const entity of entities.results) {\n let options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n \n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n \n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n await this.client.delete(`/v1/entities/${entity.type}/${entity.id}/`, { params: options });\n }\n return { message: \"All users, agents, and sessions deleted.\" };\n }\n\n async batchUpdate(memories: Array<MemoryUpdateBody>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory.memoryId,\n text: memory.text\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'PUT',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async batchDelete(memories: Array<string>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'DELETE',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async getProject(options: ProjectOptions): Promise<ProjectResponse> {\n this._validateOrgProject();\n\n const { fields } = options;\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to access instructions or categories\");\n }\n\n const params = new URLSearchParams();\n fields?.forEach(field => params.append('fields', field));\n \n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/?${params.toString()}`,\n {\n headers: this.headers\n }\n );\n return response;\n }\n\n async updateProject(prompts: PromptUpdatePayload): Promise<Record<string, any>> {\n this._validateOrgProject();\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to update instructions or categories\");\n }\n\n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/`,\n {\n method: 'PATCH',\n headers: this.headers,\n body: JSON.stringify(prompts)\n }\n );\n return response;\n }\n\n // WebHooks\n async getWebhooks(data?: {projectId?: string}): Promise<Array<Webhook>> {\n const project_id = data?.projectId || this.projectId;\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/`, {\n headers: this.headers\n });\n return response;\n }\n\n async createWebhook(webhook: WebhookPayload): Promise<Webhook> {\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${this.projectId}/webhook/`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(webhook)\n });\n return response;\n }\n\n async updateWebhook(webhook: WebhookPayload): Promise<{ message: string }> {\n const project_id = webhook.projectId || this.projectId;\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhook.webhookId}/`, {\n method: 'PUT',\n headers: this.headers,\n body: JSON.stringify({\n ...webhook,\n projectId: project_id\n })\n });\n return response;\n }\n\n async deleteWebhook(webhookId: string, projectId: string): Promise<{ message: string }> {\n const project_id = projectId || this.projectId;\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhookId}/`, {\n method: 'DELETE', \n headers: this.headers\n });\n return response;\n }\n}\n\nexport {MemoryClient};","// @ts-nocheck\nimport { PostHog } from \"posthog-node\";\nimport os from \"os\";\nimport path from \"path\";\n\nlet version = \"1.0.20\";\n\nconst MEM0_TELEMETRY = process.env.MEM0_TELEMETRY !== \"false\";\n\nclass AnonymousTelemetry {\n constructor(projectApiKey, host) {\n this.client = new PostHog(projectApiKey, { host, flushAt: 1 });\n }\n async captureEvent(distinctId, eventName, properties = {}) {\n const eventProperties = {\n client_source: \"nodejs\",\n client_version: getVersion(),\n node_version: process.version,\n os: process.platform,\n os_version: os.release(),\n os_arch: os.arch(),\n ...properties,\n };\n try {\n this.client.capture({\n distinctId: distinctId,\n event: eventName,\n properties: eventProperties,\n });\n } catch (error) {\n console.error(\"Error capturing event:\", error);\n }\n }\n async shutdown() {\n return this.client.shutdown();\n }\n}\nfunction getVersion() {\n return version;\n}\nconst telemetry = new AnonymousTelemetry(\n \"phc_hgJkUVJFYtmaJqrvf6CYN67TIQ8yhXAkWzUn9AMU4yX\",\n \"https://us.i.posthog.com\"\n);\nasync function captureClientEvent(eventName, instance, additionalData = {}) {\n const eventData = {\n function: `${instance.constructor.name}`,\n ...additionalData,\n };\n await telemetry.captureEvent(\n instance.telemetryId,\n `client.${eventName}`,\n eventData\n );\n}\nexport { telemetry, captureClientEvent };","export interface MemoryOptions {\n user_id?: string;\n agent_id?: string;\n app_id?: string;\n run_id?: string;\n metadata?: Record<string, any>;\n filters?: Record<string, any>;\n org_name?: string | null; // Deprecated\n project_name?: string | null; // Deprecated\n org_id?: string | number | null;\n project_id?: string | number | null;\n infer?: boolean;\n page?: number;\n page_size?: number;\n includes?: string;\n excludes?: string;\n enable_graph?: boolean;\n start_date?: string;\n end_date?: string;\n}\n\nexport interface ProjectOptions {\n fields?: string[];\n}\n\nexport enum API_VERSION {\n V1 = \"v1\",\n V2 = \"v2\",\n}\n\nexport interface Messages {\n role: string;\n content: string;\n}\n\nexport interface Message extends Messages {}\n\nexport interface MemoryHistory {\n id: string;\n memory_id: string;\n input: Array<Messages>;\n old_memory: string | null;\n new_memory: string | null;\n user_id: string;\n categories: Array<string>;\n event: Event | string;\n created_at: Date;\n updated_at: Date;\n}\n\nexport interface SearchOptions extends MemoryOptions {\n api_version?: API_VERSION | string;\n limit?: number;\n enable_graph?: boolean;\n threshold?: number;\n top_k?: number;\n only_metadata_based_search?: boolean;\n keyword_search?: boolean;\n fields?: string[];\n categories?: string[];\n rerank?: boolean;\n}\n\nenum Event {\n ADD = \"ADD\",\n UPDATE = \"UPDATE\",\n DELETE = \"DELETE\",\n NOOP = \"NOOP\",\n}\n\nexport interface MemoryData {\n memory: string;\n}\n\nexport interface Memory {\n id: string;\n messages?: Array<Messages>;\n event?: Event | string;\n data?: MemoryData | null;\n memory?: string;\n user_id?: string;\n hash?: string;\n categories?: Array<string>;\n created_at?: Date;\n updated_at?: Date;\n memory_type?: string;\n score?: number;\n metadata?: any | null;\n}\n\nexport interface MemoryUpdateBody {\n memoryId: string;\n text: string;\n}\n\nexport interface User {\n id: string;\n name: string;\n created_at: Date;\n updated_at: Date;\n total_memories: number;\n owner: string;\n type: string;\n}\n\nexport interface AllUsers {\n count: number;\n results: Array<User>;\n next: any;\n previous: any;\n}\n\nexport interface ProjectResponse {\n custom_instructions?: string;\n custom_categories?: string[];\n [key: string]: any;\n}\n\ninterface custom_categories {\n [key: string]: any;\n}\n\nexport interface PromptUpdatePayload {\n custom_instructions?: string;\n custom_categories?: custom_categories[];\n [key: string]: any;\n}\n\nenum WebhookEvent {\n MEMORY_ADDED = \"memory_add\",\n MEMORY_UPDATED = \"memory_update\",\n MEMORY_DELETED = \"memory_delete\",\n}\n\nexport interface Webhook {\n webhook_id?: string;\n name: string;\n url: string;\n project?: string;\n created_at?: Date;\n updated_at?: Date;\n is_active?: boolean;\n event_types?: WebhookEvent[];\n}\n\nexport interface WebhookPayload {\n eventTypes: WebhookEvent[];\n projectId: string;\n webhookId: string;\n name: string;\n url: string;\n}\n"],"mappings":"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","names":["os","axios","crypto","API_VERSION"]}
|
package/dist/index.mjs
CHANGED
|
@@ -121,6 +121,10 @@ var MemoryClient = class {
|
|
|
121
121
|
"update_project",
|
|
122
122
|
this.updateProject
|
|
123
123
|
);
|
|
124
|
+
this.getWebhooks = this.wrapMethod("get_webhook", this.getWebhooks);
|
|
125
|
+
this.createWebhook = this.wrapMethod("create_webhook", this.createWebhook);
|
|
126
|
+
this.updateWebhook = this.wrapMethod("update_webhook", this.updateWebhook);
|
|
127
|
+
this.deleteWebhook = this.wrapMethod("delete_webhook", this.deleteWebhook);
|
|
124
128
|
}
|
|
125
129
|
wrapMethod(methodName, method) {
|
|
126
130
|
return async function(...args) {
|
|
@@ -360,6 +364,42 @@ var MemoryClient = class {
|
|
|
360
364
|
);
|
|
361
365
|
return response;
|
|
362
366
|
}
|
|
367
|
+
// WebHooks
|
|
368
|
+
async getWebhooks(data) {
|
|
369
|
+
const project_id = (data == null ? void 0 : data.projectId) || this.projectId;
|
|
370
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/`, {
|
|
371
|
+
headers: this.headers
|
|
372
|
+
});
|
|
373
|
+
return response;
|
|
374
|
+
}
|
|
375
|
+
async createWebhook(webhook) {
|
|
376
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${this.projectId}/webhook/`, {
|
|
377
|
+
method: "POST",
|
|
378
|
+
headers: this.headers,
|
|
379
|
+
body: JSON.stringify(webhook)
|
|
380
|
+
});
|
|
381
|
+
return response;
|
|
382
|
+
}
|
|
383
|
+
async updateWebhook(webhook) {
|
|
384
|
+
const project_id = webhook.projectId || this.projectId;
|
|
385
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhook.webhookId}/`, {
|
|
386
|
+
method: "PUT",
|
|
387
|
+
headers: this.headers,
|
|
388
|
+
body: JSON.stringify({
|
|
389
|
+
...webhook,
|
|
390
|
+
projectId: project_id
|
|
391
|
+
})
|
|
392
|
+
});
|
|
393
|
+
return response;
|
|
394
|
+
}
|
|
395
|
+
async deleteWebhook(webhookId, projectId) {
|
|
396
|
+
const project_id = projectId || this.projectId;
|
|
397
|
+
const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhookId}/`, {
|
|
398
|
+
method: "DELETE",
|
|
399
|
+
headers: this.headers
|
|
400
|
+
});
|
|
401
|
+
return response;
|
|
402
|
+
}
|
|
363
403
|
};
|
|
364
404
|
|
|
365
405
|
// src/mem0.types.ts
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/mem0.ts","../src/telemetry.ts","../src/mem0.types.ts","../src/index.ts"],"sourcesContent":["import axios from 'axios';\nimport { AllUsers, ProjectOptions, Memory, MemoryHistory, MemoryOptions, MemoryUpdateBody, ProjectResponse, PromptUpdatePayload, SearchOptions } from './mem0.types';\nimport { captureClientEvent } from './telemetry';\nimport crypto from 'crypto';\n\nclass APIError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'APIError';\n }\n}\n\ninterface ClientOptions{\n apiKey: string;\n host?: string;\n organizationName?: string;\n projectName?: string;\n organizationId?: string;\n projectId?: string;\n}\n\nexport default class MemoryClient {\n apiKey: string;\n host: string;\n organizationName: string | null;\n projectName: string | null;\n organizationId: string | number | null;\n projectId: string | number | null;\n headers: Record<string, string>;\n client: any;\n telemetryId: string;\n\n _validateApiKey(): any {\n if (!this.apiKey) {\n throw new Error('Mem0 API key is required');\n }\n if (typeof this.apiKey !== 'string') {\n throw new Error('Mem0 API key must be a string');\n }\n if (this.apiKey.trim() === '') {\n throw new Error('Mem0 API key cannot be empty');\n }\n }\n\n _validateOrgProject(): void {\n // Check for organizationName/projectName pair\n if ((this.organizationName === null && this.projectName !== null) || \n (this.organizationName !== null && this.projectName === null)) {\n console.warn('Warning: Both organizationName and projectName must be provided together when using either. This will be removedfrom the version 1.0.40. Note that organizationName/projectName are being deprecated in favor of organizationId/projectId.');\n }\n\n // Check for organizationId/projectId pair\n if ((this.organizationId === null && this.projectId !== null) || \n (this.organizationId !== null && this.projectId === null)) {\n console.warn('Warning: Both organizationId and projectId must be provided together when using either. This will be removedfrom the version 1.0.40.');\n }\n }\n\n constructor(options: ClientOptions) {\n this.apiKey = options.apiKey;\n this.host = options.host || \"https://api.mem0.ai\";\n this.organizationName = options.organizationName || null;\n this.projectName = options.projectName || null;\n this.organizationId = options.organizationId || null;\n this.projectId = options.projectId || null;\n\n this.headers = {\n 'Authorization': `Token ${this.apiKey}`,\n 'Content-Type': 'application/json'\n };\n\n this.client = axios.create({\n baseURL: this.host,\n headers: { Authorization: `Token ${this.apiKey}` },\n timeout: 60000,\n });\n\n this._validateApiKey();\n this._validateOrgProject();\n\n this.telemetryId = crypto.createHash('md5').update(this.apiKey).digest('hex');\n\n captureClientEvent('init', this);\n\n this.add = this.wrapMethod('add', this.add);\n this.get = this.wrapMethod('get', this.get);\n this.getAll = this.wrapMethod('get_all', this.getAll);\n this.search = this.wrapMethod('search', this.search);\n this.delete = this.wrapMethod('delete', this.delete);\n this.deleteAll = this.wrapMethod('delete_all', this.deleteAll);\n this.history = this.wrapMethod('history', this.history);\n this.users = this.wrapMethod('users', this.users);\n this.deleteUser = this.wrapMethod('delete_user', this.deleteUser);\n this.deleteUsers = this.wrapMethod('delete_users', this.deleteUsers);\n this.batchUpdate = this.wrapMethod('batch_update', this.batchUpdate);\n this.batchDelete = this.wrapMethod('batch_delete', this.batchDelete);\n this.getProject = this.wrapMethod(\n 'get_project', \n this.getProject\n );\n this.updateProject = this.wrapMethod(\n 'update_project', \n this.updateProject\n );\n }\n\n wrapMethod(methodName: any, method: any) {\n return async function (...args: any) {\n // @ts-ignore\n await captureClientEvent(methodName, this);\n // @ts-ignore\n return method.apply(this, args);\n }.bind(this);\n}\n\n async _fetchWithErrorHandling(url: string, options: any): Promise<any> {\n const response = await fetch(url, options);\n if (!response.ok) {\n const errorData = await response.text();\n throw new APIError(`API request failed: ${errorData}`);\n }\n const jsonResponse = await response.json();\n return jsonResponse;\n }\n\n _preparePayload(messages: string | Array<{ role: string; content: string }>,\n options: MemoryOptions): object {\n const payload: any = {};\n if (typeof messages === 'string') {\n payload.messages = [{ role: 'user', content: messages }];\n } else if (Array.isArray(messages)) {\n payload.messages = messages;\n }\n return { ...payload, ...options };\n }\n\n _prepareParams(options: MemoryOptions): object {\n return Object.fromEntries(Object.entries(options).filter(([_, v]) => v != null));\n }\n\n async add(messages: string | Array<{ role: string; content: string }>, options:MemoryOptions = {}): Promise<Array<Memory>> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n\n const payload = this._preparePayload(messages, options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async get(memoryId: string):Promise<Memory> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n headers: this.headers\n });\n }\n\n getAll(options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, page, page_size, ...otherOptions } = options!;\n if(this.organizationName != null && this.projectName != null){\n otherOptions.org_name = this.organizationName;\n otherOptions.project_name = this.projectName;\n }\n\n let appendedParams = \"\";\n let paginated_response = false;\n\n if(page && page_size){\n appendedParams += `page=${page}&page_size=${page_size}`\n paginated_response = true;\n }\n\n if(this.organizationId != null && this.projectId != null){\n otherOptions.org_id = this.organizationId;\n otherOptions.project_id = this.projectId;\n\n if (otherOptions.org_name) delete otherOptions.org_name;\n if(otherOptions.project_name) delete otherOptions.project_name;\n }\n\n if (api_version === 'v2') {\n let url = paginated_response ? `${this.host}/v2/memories/?${appendedParams}` : `${this.host}/v2/memories/`;\n return this._fetchWithErrorHandling(url, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(otherOptions)\n });\n } else {\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(otherOptions));\n const url = paginated_response ? `${this.host}/v1/memories/?${params}&${appendedParams}` : `${this.host}/v1/memories/?${params}`;\n return this._fetchWithErrorHandling(url, {\n headers: this.headers\n });\n }\n }\n\n async search(query: string, options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, ...otherOptions } = options!;\n const payload = { query, ...otherOptions };\n if(this.organizationName != null && this.projectName != null){\n payload.org_name = this.organizationName;\n payload.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n payload.org_id = this.organizationId;\n payload.project_id = this.projectId;\n\n if (payload.org_name) delete payload.org_name;\n if(payload.project_name) delete payload.project_name;\n }\n const endpoint = api_version === 'v2' ? '/v2/memories/search/' : '/v1/memories/search/';\n const response = await this._fetchWithErrorHandling(`${this.host}${endpoint}`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async delete(memoryId: string): Promise<{ message: string }> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n }\n\n async deleteAll(options: MemoryOptions = {}): Promise<{ message: string }> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(options));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/?${params}`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async history(memoryId: string): Promise<Array<MemoryHistory>> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/history/`, {\n headers: this.headers\n });\n return response;\n }\n\n async users(): Promise<AllUsers>{\n this._validateOrgProject();\n const options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/?${params}`, {\n headers: this.headers\n });\n return response;\n }\n\n async deleteUser(entityId: string, entity: { type: string } = { type: 'user' }): Promise<{ message: string }> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/${entity.type}/${entityId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async deleteUsers(): Promise<{ message: string }> {\n this._validateOrgProject();\n const entities = await this.users();\n \n for (const entity of entities.results) {\n let options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n \n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n \n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n await this.client.delete(`/v1/entities/${entity.type}/${entity.id}/`, { params: options });\n }\n return { message: \"All users, agents, and sessions deleted.\" };\n }\n\n async batchUpdate(memories: Array<MemoryUpdateBody>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory.memoryId,\n text: memory.text\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'PUT',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async batchDelete(memories: Array<string>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'DELETE',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async getProject(options: ProjectOptions): Promise<ProjectResponse> {\n this._validateOrgProject();\n\n const { fields } = options;\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to access instructions or categories\");\n }\n\n const params = new URLSearchParams();\n fields?.forEach(field => params.append('fields', field));\n \n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/?${params.toString()}`,\n {\n headers: this.headers\n }\n );\n return response;\n }\n\n async updateProject(prompts: PromptUpdatePayload): Promise<Record<string, any>> {\n this._validateOrgProject();\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to update instructions or categories\");\n }\n\n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/`,\n {\n method: 'PATCH',\n headers: this.headers,\n body: JSON.stringify(prompts)\n }\n );\n return response;\n }\n\n}\n\nexport {MemoryClient};","// @ts-nocheck\nimport { PostHog } from \"posthog-node\";\nimport os from \"os\";\nimport path from \"path\";\n\nlet version = \"1.0.20\";\n\nconst MEM0_TELEMETRY = process.env.MEM0_TELEMETRY !== \"false\";\n\nclass AnonymousTelemetry {\n constructor(projectApiKey, host) {\n this.client = new PostHog(projectApiKey, { host, flushAt: 1 });\n }\n async captureEvent(distinctId, eventName, properties = {}) {\n const eventProperties = {\n client_source: \"nodejs\",\n client_version: getVersion(),\n node_version: process.version,\n os: process.platform,\n os_version: os.release(),\n os_arch: os.arch(),\n ...properties,\n };\n try {\n this.client.capture({\n distinctId: distinctId,\n event: eventName,\n properties: eventProperties,\n });\n } catch (error) {\n console.error(\"Error capturing event:\", error);\n }\n }\n async shutdown() {\n return this.client.shutdown();\n }\n}\nfunction getVersion() {\n return version;\n}\nconst telemetry = new AnonymousTelemetry(\n \"phc_hgJkUVJFYtmaJqrvf6CYN67TIQ8yhXAkWzUn9AMU4yX\",\n \"https://us.i.posthog.com\"\n);\nasync function captureClientEvent(eventName, instance, additionalData = {}) {\n const eventData = {\n function: `${instance.constructor.name}`,\n ...additionalData,\n };\n await telemetry.captureEvent(\n instance.telemetryId,\n `client.${eventName}`,\n eventData\n );\n}\nexport { telemetry, captureClientEvent };","export interface MemoryOptions {\n user_id?: string;\n agent_id?: string;\n app_id?: string;\n run_id?: string;\n metadata?: Record<string, any>;\n filters?: Record<string, any>;\n org_name?: string | null; // Deprecated\n project_name?: string | null; // Deprecated\n org_id?: string | number | null;\n project_id?: string | number | null;\n infer?: boolean;\n page?: number;\n page_size?: number;\n includes?: string;\n excludes?: string;\n enable_graph?: boolean;\n start_date?: string;\n end_date?: string;\n}\n\nexport interface ProjectOptions {\n fields?: string[];\n}\n\nexport enum API_VERSION {\n V1 = \"v1\",\n V2 = \"v2\",\n}\n\nexport interface Messages {\n role: string;\n content: string;\n}\n\nexport interface Message extends Messages {}\n\nexport interface MemoryHistory {\n id: string;\n memory_id: string;\n input: Array<Messages>;\n old_memory: string | null;\n new_memory: string | null;\n user_id: string;\n categories: Array<string>;\n event: Event | string;\n created_at: Date;\n updated_at: Date;\n}\n\nexport interface SearchOptions extends MemoryOptions {\n api_version?: API_VERSION | string;\n limit?: number;\n enable_graph?: boolean;\n threshold?: number;\n top_k?: number;\n only_metadata_based_search?: boolean;\n keyword_search?: boolean;\n fields?: string[];\n categories?: string[];\n rerank?: boolean;\n}\n\nenum Event {\n ADD = \"ADD\",\n UPDATE = \"UPDATE\",\n DELETE = \"DELETE\",\n NOOP = \"NOOP\",\n}\n\nexport interface MemoryData {\n memory: string;\n}\n\nexport interface Memory {\n id: string;\n messages?: Array<Messages>;\n event?: Event | string;\n data?: MemoryData | null;\n memory?: string;\n user_id?: string;\n hash?: string;\n categories?: Array<string>;\n created_at?: Date;\n updated_at?: Date;\n memory_type?: string;\n score?: number;\n metadata?: any | null;\n}\n\nexport interface MemoryUpdateBody {\n memoryId: string;\n text: string;\n}\n\nexport interface User {\n id: string;\n name: string;\n created_at: Date;\n updated_at: Date;\n total_memories: number;\n owner: string;\n type: string;\n}\n\nexport interface AllUsers {\n count: number;\n results: Array<User>;\n next: any;\n previous: any;\n}\n\nexport interface ProjectResponse {\n custom_instructions?: string;\n custom_categories?: string[];\n [key: string]: any;\n}\n\ninterface custom_categories {\n [key: string]: any;\n}\n\nexport interface PromptUpdatePayload {\n custom_instructions?: string;\n custom_categories?: custom_categories[];\n [key: string]: any;\n}","import {MemoryClient} from \"./mem0\";\n\nexport { MemoryClient } from './mem0';\nexport * from './mem0.types';\nexport default MemoryClient;"],"mappings":"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","names":["API_VERSION"]}
|
|
1
|
+
{"version":3,"sources":["../src/mem0.ts","../src/telemetry.ts","../src/mem0.types.ts","../src/index.ts"],"sourcesContent":["import axios from 'axios';\nimport { AllUsers, ProjectOptions, Memory, MemoryHistory, MemoryOptions, MemoryUpdateBody, ProjectResponse, PromptUpdatePayload, SearchOptions, Webhook, WebhookPayload } from './mem0.types';\nimport { captureClientEvent } from './telemetry';\nimport crypto from 'crypto';\n\nclass APIError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'APIError';\n }\n}\n\ninterface ClientOptions{\n apiKey: string;\n host?: string;\n organizationName?: string;\n projectName?: string;\n organizationId?: string;\n projectId?: string;\n}\n\nexport default class MemoryClient {\n apiKey: string;\n host: string;\n organizationName: string | null;\n projectName: string | null;\n organizationId: string | number | null;\n projectId: string | number | null;\n headers: Record<string, string>;\n client: any;\n telemetryId: string;\n\n _validateApiKey(): any {\n if (!this.apiKey) {\n throw new Error('Mem0 API key is required');\n }\n if (typeof this.apiKey !== 'string') {\n throw new Error('Mem0 API key must be a string');\n }\n if (this.apiKey.trim() === '') {\n throw new Error('Mem0 API key cannot be empty');\n }\n }\n\n _validateOrgProject(): void {\n // Check for organizationName/projectName pair\n if ((this.organizationName === null && this.projectName !== null) || \n (this.organizationName !== null && this.projectName === null)) {\n console.warn('Warning: Both organizationName and projectName must be provided together when using either. This will be removedfrom the version 1.0.40. Note that organizationName/projectName are being deprecated in favor of organizationId/projectId.');\n }\n\n // Check for organizationId/projectId pair\n if ((this.organizationId === null && this.projectId !== null) || \n (this.organizationId !== null && this.projectId === null)) {\n console.warn('Warning: Both organizationId and projectId must be provided together when using either. This will be removedfrom the version 1.0.40.');\n }\n }\n\n constructor(options: ClientOptions) {\n this.apiKey = options.apiKey;\n this.host = options.host || \"https://api.mem0.ai\";\n this.organizationName = options.organizationName || null;\n this.projectName = options.projectName || null;\n this.organizationId = options.organizationId || null;\n this.projectId = options.projectId || null;\n\n this.headers = {\n 'Authorization': `Token ${this.apiKey}`,\n 'Content-Type': 'application/json'\n };\n\n this.client = axios.create({\n baseURL: this.host,\n headers: { Authorization: `Token ${this.apiKey}` },\n timeout: 60000,\n });\n\n this._validateApiKey();\n this._validateOrgProject();\n\n this.telemetryId = crypto.createHash('md5').update(this.apiKey).digest('hex');\n\n captureClientEvent('init', this);\n\n this.add = this.wrapMethod('add', this.add);\n this.get = this.wrapMethod('get', this.get);\n this.getAll = this.wrapMethod('get_all', this.getAll);\n this.search = this.wrapMethod('search', this.search);\n this.delete = this.wrapMethod('delete', this.delete);\n this.deleteAll = this.wrapMethod('delete_all', this.deleteAll);\n this.history = this.wrapMethod('history', this.history);\n this.users = this.wrapMethod('users', this.users);\n this.deleteUser = this.wrapMethod('delete_user', this.deleteUser);\n this.deleteUsers = this.wrapMethod('delete_users', this.deleteUsers);\n this.batchUpdate = this.wrapMethod('batch_update', this.batchUpdate);\n this.batchDelete = this.wrapMethod('batch_delete', this.batchDelete);\n this.getProject = this.wrapMethod(\n 'get_project', \n this.getProject\n );\n this.updateProject = this.wrapMethod(\n 'update_project', \n this.updateProject\n );\n this.getWebhooks = this.wrapMethod('get_webhook', this.getWebhooks);\n this.createWebhook = this.wrapMethod('create_webhook', this.createWebhook);\n this.updateWebhook = this.wrapMethod('update_webhook', this.updateWebhook);\n this.deleteWebhook = this.wrapMethod('delete_webhook', this.deleteWebhook);\n }\n\n wrapMethod(methodName: any, method: any) {\n return async function (...args: any) {\n // @ts-ignore\n await captureClientEvent(methodName, this);\n // @ts-ignore\n return method.apply(this, args);\n }.bind(this);\n}\n\n async _fetchWithErrorHandling(url: string, options: any): Promise<any> {\n const response = await fetch(url, options);\n if (!response.ok) {\n const errorData = await response.text();\n throw new APIError(`API request failed: ${errorData}`);\n }\n const jsonResponse = await response.json();\n return jsonResponse;\n }\n\n _preparePayload(messages: string | Array<{ role: string; content: string }>,\n options: MemoryOptions): object {\n const payload: any = {};\n if (typeof messages === 'string') {\n payload.messages = [{ role: 'user', content: messages }];\n } else if (Array.isArray(messages)) {\n payload.messages = messages;\n }\n return { ...payload, ...options };\n }\n\n _prepareParams(options: MemoryOptions): object {\n return Object.fromEntries(Object.entries(options).filter(([_, v]) => v != null));\n }\n\n async add(messages: string | Array<{ role: string; content: string }>, options:MemoryOptions = {}): Promise<Array<Memory>> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n\n const payload = this._preparePayload(messages, options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async get(memoryId: string):Promise<Memory> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n headers: this.headers\n });\n }\n\n getAll(options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, page, page_size, ...otherOptions } = options!;\n if(this.organizationName != null && this.projectName != null){\n otherOptions.org_name = this.organizationName;\n otherOptions.project_name = this.projectName;\n }\n\n let appendedParams = \"\";\n let paginated_response = false;\n\n if(page && page_size){\n appendedParams += `page=${page}&page_size=${page_size}`\n paginated_response = true;\n }\n\n if(this.organizationId != null && this.projectId != null){\n otherOptions.org_id = this.organizationId;\n otherOptions.project_id = this.projectId;\n\n if (otherOptions.org_name) delete otherOptions.org_name;\n if(otherOptions.project_name) delete otherOptions.project_name;\n }\n\n if (api_version === 'v2') {\n let url = paginated_response ? `${this.host}/v2/memories/?${appendedParams}` : `${this.host}/v2/memories/`;\n return this._fetchWithErrorHandling(url, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(otherOptions)\n });\n } else {\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(otherOptions));\n const url = paginated_response ? `${this.host}/v1/memories/?${params}&${appendedParams}` : `${this.host}/v1/memories/?${params}`;\n return this._fetchWithErrorHandling(url, {\n headers: this.headers\n });\n }\n }\n\n async search(query: string, options?: SearchOptions): Promise<Array<Memory>> {\n this._validateOrgProject();\n const { api_version, ...otherOptions } = options!;\n const payload = { query, ...otherOptions };\n if(this.organizationName != null && this.projectName != null){\n payload.org_name = this.organizationName;\n payload.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n payload.org_id = this.organizationId;\n payload.project_id = this.projectId;\n\n if (payload.org_name) delete payload.org_name;\n if(payload.project_name) delete payload.project_name;\n }\n const endpoint = api_version === 'v2' ? '/v2/memories/search/' : '/v1/memories/search/';\n const response = await this._fetchWithErrorHandling(`${this.host}${endpoint}`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(payload)\n });\n return response;\n }\n\n async delete(memoryId: string): Promise<{ message: string }> {\n return this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n }\n\n async deleteAll(options: MemoryOptions = {}): Promise<{ message: string }> {\n this._validateOrgProject();\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(this._prepareParams(options));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/?${params}`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async history(memoryId: string): Promise<Array<MemoryHistory>> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/memories/${memoryId}/history/`, {\n headers: this.headers\n });\n return response;\n }\n\n async users(): Promise<AllUsers>{\n this._validateOrgProject();\n const options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n\n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n\n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n // @ts-ignore\n const params = new URLSearchParams(options);\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/?${params}`, {\n headers: this.headers\n });\n return response;\n }\n\n async deleteUser(entityId: string, entity: { type: string } = { type: 'user' }): Promise<{ message: string }> {\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/entities/${entity.type}/${entityId}/`, {\n method: 'DELETE',\n headers: this.headers\n });\n return response;\n }\n\n async deleteUsers(): Promise<{ message: string }> {\n this._validateOrgProject();\n const entities = await this.users();\n \n for (const entity of entities.results) {\n let options: MemoryOptions = {};\n if(this.organizationName != null && this.projectName != null){\n options.org_name = this.organizationName;\n options.project_name = this.projectName;\n }\n \n if(this.organizationId != null && this.projectId != null){\n options.org_id = this.organizationId;\n options.project_id = this.projectId;\n \n if (options.org_name) delete options.org_name;\n if(options.project_name) delete options.project_name;\n }\n await this.client.delete(`/v1/entities/${entity.type}/${entity.id}/`, { params: options });\n }\n return { message: \"All users, agents, and sessions deleted.\" };\n }\n\n async batchUpdate(memories: Array<MemoryUpdateBody>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory.memoryId,\n text: memory.text\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'PUT',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async batchDelete(memories: Array<string>): Promise<string> {\n const memoriesBody = memories.map(memory => ({\n memory_id: memory\n }));\n const response = await this._fetchWithErrorHandling(`${this.host}/v1/batch/`, {\n method: 'DELETE',\n headers: this.headers,\n body: JSON.stringify({memories: memoriesBody})\n });\n return response;\n }\n\n async getProject(options: ProjectOptions): Promise<ProjectResponse> {\n this._validateOrgProject();\n\n const { fields } = options;\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to access instructions or categories\");\n }\n\n const params = new URLSearchParams();\n fields?.forEach(field => params.append('fields', field));\n \n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/?${params.toString()}`,\n {\n headers: this.headers\n }\n );\n return response;\n }\n\n async updateProject(prompts: PromptUpdatePayload): Promise<Record<string, any>> {\n this._validateOrgProject();\n \n if (!(this.organizationId && this.projectId)) {\n throw new Error(\"organizationId and projectId must be set to update instructions or categories\");\n }\n\n const response = await this._fetchWithErrorHandling(\n `${this.host}/api/v1/orgs/organizations/${this.organizationId}/projects/${this.projectId}/`,\n {\n method: 'PATCH',\n headers: this.headers,\n body: JSON.stringify(prompts)\n }\n );\n return response;\n }\n\n // WebHooks\n async getWebhooks(data?: {projectId?: string}): Promise<Array<Webhook>> {\n const project_id = data?.projectId || this.projectId;\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/`, {\n headers: this.headers\n });\n return response;\n }\n\n async createWebhook(webhook: WebhookPayload): Promise<Webhook> {\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${this.projectId}/webhook/`, {\n method: 'POST',\n headers: this.headers,\n body: JSON.stringify(webhook)\n });\n return response;\n }\n\n async updateWebhook(webhook: WebhookPayload): Promise<{ message: string }> {\n const project_id = webhook.projectId || this.projectId;\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhook.webhookId}/`, {\n method: 'PUT',\n headers: this.headers,\n body: JSON.stringify({\n ...webhook,\n projectId: project_id\n })\n });\n return response;\n }\n\n async deleteWebhook(webhookId: string, projectId: string): Promise<{ message: string }> {\n const project_id = projectId || this.projectId;\n const response = await this._fetchWithErrorHandling(`${this.host}/api/v1/webhooks/${project_id}/webhook/${webhookId}/`, {\n method: 'DELETE', \n headers: this.headers\n });\n return response;\n }\n}\n\nexport {MemoryClient};","// @ts-nocheck\nimport { PostHog } from \"posthog-node\";\nimport os from \"os\";\nimport path from \"path\";\n\nlet version = \"1.0.20\";\n\nconst MEM0_TELEMETRY = process.env.MEM0_TELEMETRY !== \"false\";\n\nclass AnonymousTelemetry {\n constructor(projectApiKey, host) {\n this.client = new PostHog(projectApiKey, { host, flushAt: 1 });\n }\n async captureEvent(distinctId, eventName, properties = {}) {\n const eventProperties = {\n client_source: \"nodejs\",\n client_version: getVersion(),\n node_version: process.version,\n os: process.platform,\n os_version: os.release(),\n os_arch: os.arch(),\n ...properties,\n };\n try {\n this.client.capture({\n distinctId: distinctId,\n event: eventName,\n properties: eventProperties,\n });\n } catch (error) {\n console.error(\"Error capturing event:\", error);\n }\n }\n async shutdown() {\n return this.client.shutdown();\n }\n}\nfunction getVersion() {\n return version;\n}\nconst telemetry = new AnonymousTelemetry(\n \"phc_hgJkUVJFYtmaJqrvf6CYN67TIQ8yhXAkWzUn9AMU4yX\",\n \"https://us.i.posthog.com\"\n);\nasync function captureClientEvent(eventName, instance, additionalData = {}) {\n const eventData = {\n function: `${instance.constructor.name}`,\n ...additionalData,\n };\n await telemetry.captureEvent(\n instance.telemetryId,\n `client.${eventName}`,\n eventData\n );\n}\nexport { telemetry, captureClientEvent };","export interface MemoryOptions {\n user_id?: string;\n agent_id?: string;\n app_id?: string;\n run_id?: string;\n metadata?: Record<string, any>;\n filters?: Record<string, any>;\n org_name?: string | null; // Deprecated\n project_name?: string | null; // Deprecated\n org_id?: string | number | null;\n project_id?: string | number | null;\n infer?: boolean;\n page?: number;\n page_size?: number;\n includes?: string;\n excludes?: string;\n enable_graph?: boolean;\n start_date?: string;\n end_date?: string;\n}\n\nexport interface ProjectOptions {\n fields?: string[];\n}\n\nexport enum API_VERSION {\n V1 = \"v1\",\n V2 = \"v2\",\n}\n\nexport interface Messages {\n role: string;\n content: string;\n}\n\nexport interface Message extends Messages {}\n\nexport interface MemoryHistory {\n id: string;\n memory_id: string;\n input: Array<Messages>;\n old_memory: string | null;\n new_memory: string | null;\n user_id: string;\n categories: Array<string>;\n event: Event | string;\n created_at: Date;\n updated_at: Date;\n}\n\nexport interface SearchOptions extends MemoryOptions {\n api_version?: API_VERSION | string;\n limit?: number;\n enable_graph?: boolean;\n threshold?: number;\n top_k?: number;\n only_metadata_based_search?: boolean;\n keyword_search?: boolean;\n fields?: string[];\n categories?: string[];\n rerank?: boolean;\n}\n\nenum Event {\n ADD = \"ADD\",\n UPDATE = \"UPDATE\",\n DELETE = \"DELETE\",\n NOOP = \"NOOP\",\n}\n\nexport interface MemoryData {\n memory: string;\n}\n\nexport interface Memory {\n id: string;\n messages?: Array<Messages>;\n event?: Event | string;\n data?: MemoryData | null;\n memory?: string;\n user_id?: string;\n hash?: string;\n categories?: Array<string>;\n created_at?: Date;\n updated_at?: Date;\n memory_type?: string;\n score?: number;\n metadata?: any | null;\n}\n\nexport interface MemoryUpdateBody {\n memoryId: string;\n text: string;\n}\n\nexport interface User {\n id: string;\n name: string;\n created_at: Date;\n updated_at: Date;\n total_memories: number;\n owner: string;\n type: string;\n}\n\nexport interface AllUsers {\n count: number;\n results: Array<User>;\n next: any;\n previous: any;\n}\n\nexport interface ProjectResponse {\n custom_instructions?: string;\n custom_categories?: string[];\n [key: string]: any;\n}\n\ninterface custom_categories {\n [key: string]: any;\n}\n\nexport interface PromptUpdatePayload {\n custom_instructions?: string;\n custom_categories?: custom_categories[];\n [key: string]: any;\n}\n\nenum WebhookEvent {\n MEMORY_ADDED = \"memory_add\",\n MEMORY_UPDATED = \"memory_update\",\n MEMORY_DELETED = \"memory_delete\",\n}\n\nexport interface Webhook {\n webhook_id?: string;\n name: string;\n url: string;\n project?: string;\n created_at?: Date;\n updated_at?: Date;\n is_active?: boolean;\n event_types?: WebhookEvent[];\n}\n\nexport interface WebhookPayload {\n eventTypes: WebhookEvent[];\n projectId: string;\n webhookId: string;\n name: string;\n url: string;\n}\n","import {MemoryClient} from \"./mem0\";\n\nexport { MemoryClient } from './mem0';\nexport * from './mem0.types';\nexport default MemoryClient;"],"mappings":"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","names":["API_VERSION"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mem0ai",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.34",
|
|
4
4
|
"description": "The Memory Layer For Your AI Apps",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -36,7 +36,6 @@
|
|
|
36
36
|
"axios": "^1.7.7",
|
|
37
37
|
"crypto": "^1.0.1",
|
|
38
38
|
"fix-tsup-cjs": "^1.2.0",
|
|
39
|
-
"mem0ai": "^1.0.32",
|
|
40
39
|
"posthog-node": "^4.2.1",
|
|
41
40
|
"ts-node": "^10.9.2"
|
|
42
41
|
},
|