Skip to content

@happ-integ/nethunt ​

Клиент для работы с NetHunt CRM API.

Установка ​

bash
pnpm add @happ-integ/nethunt

Использование ​

Инициализация ​

typescript
import { NethuntClient } from "@happ-integ/nethunt";

const nethunt = new NethuntClient("email@example.com", "api-key");

Папки (Folders) ​

typescript
// Получить все папки
const folders = await nethunt.getFolders();

// Получить поля папки
const fields = await nethunt.listFolderFields(folderId);

Записи (Records) ​

typescript
// Получить запись по ID
const record = await nethunt.getRecord(recordId);

// Поиск записей
const records = await nethunt.searchRecords({
	folderId: "folder-id",
	query: "search term",
	limit: 10,
});

// Создать запись
const newRecord = await nethunt.createRecord({
	folderId: "folder-id",
	fields: {
		Имя: "John",
		Телефон: "+380501234567",
		Email: "john@example.com",
	},
});

// Обновить запись
await nethunt.updateRecord(recordId, {
	fields: {
		Статус: "Завершено",
	},
});

// Удалить запись
await nethunt.deleteRecord(recordId);

Комментарии ​

typescript
await nethunt.addComment({
	recordId: "record-id",
	text: "Текст комментария",
});

Недавние данные ​

typescript
// Недавние записи
const recentRecords = await nethunt.getRecentRecords(folderId);

// Недавние комментарии
const recentComments = await nethunt.getRecentComments({
	folderId: "folder-id",
	since: "2024-01-01",
	limit: 50,
});

// Недавние звонки
const recentCalls = await nethunt.getRecentCreatedCallLogs({
	folderId: "folder-id",
	since: "2024-01-01",
});

Health Check ​

typescript
const isHealthy = await nethunt.healthCheck();

API ​

NethuntClient ​

typescript
new NethuntClient(email: string, apiKey: string)

Методы ​

МетодОписание
getFolders()Получить все папки
listFolderFields(folderId)Получить поля папки
getRecord(recordId)Получить запись
searchRecords(params)Поиск записей
createRecord(params)Создать запись
updateRecord(recordId, body)Обновить запись
deleteRecord(recordId)Удалить запись
addComment(comment)Добавить комментарий
getRecentRecords(folderId)Недавние записи
getRecentComments(params)Недавние комментарии
getRecentCreatedCallLogs(params)Недавние звонки
healthCheck()Проверка соединения

Типы ​

typescript
interface INethuntRecord {
	recordId: string;
	fields: Record<string, any>;
	createdAt: string;
	updatedAt: string;
}

interface INethuntFolder {
	folderId: string;
	name: string;
}

interface INethuntSearchParams {
	folderId: string;
	recordId?: string;
	query?: string;
	limit?: number;
}

interface INethuntCreateParams {
	folderId: string;
	fields: Record<string, any>;
}

Аутентификация ​

Используется Basic Auth:

  • Email: email аккаунта NetHunt
  • API Key: ключ из настроек NetHunt