API Reference

Клиент

class amocrm.client.AmoCRM(subdomain, oauth)[исходный код]

Базовые классы: object

Клиент AmoCRM REST API.

Предоставляет доступ к ресурсам сделок, контактов, компаний и воронок через свойства leads, contacts, companies, pipelines. Автоматически обновляет токен доступа при получении ответа 401 Unauthorized.

Параметры:
__init__(subdomain, oauth)[исходный код]

Инициализировать клиент, загрузив токены из хранилища.

Параметры:
  • subdomain (str) – Поддомен аккаунта AmoCRM (например, "mycompany").

  • oauth (OAuthConfig) – Конфигурация OAuth с реквизитами интеграции и хранилищем токенов. Токены загружаются из oauth.storage.load() при создании клиента.

Тип результата:

None

property leads: LeadsResource

Ресурс для работы со сделками.

property pipelines: PipelinesResource

Ресурс для работы с воронками и их статусами.

property contacts: ContactsResource

Ресурс для работы с контактами.

property companies: CompaniesResource

Ресурс для работы с компаниями.

property tasks: TasksResource

Ресурс для работы с задачами.

property custom_fields: CustomFieldsResource

Ресурс для работы с кастомными полями.

configure_dto(*, leads=None, contacts=None, companies=None)[исходный код]

Задать кастомные DTO-классы для ресурсов.

Позволяет использовать подклассы стандартных DTO, чтобы методы ресурсов возвращали экземпляры собственного класса.

Параметры:
  • leads (type[Lead] | None) – Подкласс Lead для leads. Если не передан — ресурс не изменяется.

  • contacts (type[Contact] | None) – Подкласс Contact для contacts. Если не передан — ресурс не изменяется.

  • companies (type[Company] | None) – Подкласс Company для companies. Если не передан — ресурс не изменяется.

Тип результата:

None

Example:

client.configure_dto(leads=MyLead, contacts=MyContact)
lead = client.leads.get(123)  # → MyLead

Авторизация

class amocrm.auth.TokenStorage(*args, **kwargs)[исходный код]

Базовые классы: Protocol

Протокол хранилища токенов OAuth.

Реализации должны обеспечивать сохранение и загрузку пары access_token / refresh_token из произвольного хранилища (база данных, файл, переменные окружения и т.д.).

save(access_token, refresh_token)[исходный код]

Сохранить токены в хранилище.

Параметры:
  • access_token (str) – Токен доступа OAuth 2.0.

  • refresh_token (str) – Токен обновления OAuth 2.0.

Тип результата:

None

load()[исходный код]

Загрузить токены из хранилища.

Результат:

Кортеж (access_token, refresh_token).

Тип результата:

tuple[str, str]

__init__(*args, **kwargs)
class amocrm.auth.OAuthConfig(*, client_id, client_secret, redirect_uri, storage)[исходный код]

Базовые классы: object

Конфигурация OAuth 2.0 для подключения к AmoCRM.

Переменные:
  • client_id (str) – Идентификатор интеграции из личного кабинета AmoCRM.

  • client_secret (str) – Секрет интеграции.

  • redirect_uri (str) – URI перенаправления, указанный при создании интеграции.

  • storage (amocrm.auth.TokenStorage) – Хранилище токенов, реализующее протокол TokenStorage.

Параметры:
client_id: str
client_secret: str
redirect_uri: str
storage: TokenStorage
__init__(*, client_id, client_secret, redirect_uri, storage)
Параметры:
Тип результата:

None

class amocrm.auth.InMemoryTokenStorage[исходный код]

Базовые классы: object

Хранилище токенов в памяти приложения.

Токены сохраняются в полях access_token и refresh_token переданного объекта и сохраняются вызовом instance.save().

save(access_token, refresh_token)[исходный код]

Сохранить токены в память.

Параметры:
  • access_token (str) – Токен доступа OAuth 2.0.

  • refresh_token (str) – Токен обновления OAuth 2.0.

Тип результата:

None

load()[исходный код]

Загрузить токены из памяти.

Результат:

Кортеж (access_token, refresh_token).

Тип результата:

tuple[str, str]

class amocrm.auth.DjangoTokenStorage(instance)[исходный код]

Базовые классы: object

Хранилище токенов на основе экземпляра модели Django.

Токены сохраняются в полях access_token и refresh_token переданного объекта и сохраняются вызовом instance.save().

Параметры:

instance (Any)

__init__(instance)[исходный код]
Параметры:

instance (Any) – Экземпляр модели Django с полями access_token и refresh_token.

Тип результата:

None

save(access_token, refresh_token)[исходный код]

Сохранить токены в модель Django и вызвать instance.save().

Параметры:
  • access_token (str) – Токен доступа OAuth 2.0.

  • refresh_token (str) – Токен обновления OAuth 2.0.

Тип результата:

None

load()[исходный код]

Загрузить токены из полей модели Django.

Результат:

Кортеж (access_token, refresh_token).

Тип результата:

tuple[str, str]

Менеджер (синглтон)

amocrm.manager.exchange_code(subdomain, code, oauth)[исходный код]

Обменять код авторизации на токены и инициализировать глобальный клиент.

После успешного обмена глобальный клиент готов к работе; повторный вызов get_client() вернёт уже созданный экземпляр.

Параметры:
  • subdomain (str) – Поддомен аккаунта AmoCRM (например, "mycompany").

  • code (str) – Одноразовый код авторизации из callback-запроса OAuth 2.0.

  • oauth (OAuthConfig) – Конфигурация OAuth с реквизитами интеграции и хранилищем токенов.

Исключение:

AmoCRMTokenRefreshError – Если обмен кода на токены завершился ошибкой.

Тип результата:

None

amocrm.manager.get_client(subdomain, oauth)[исходный код]

Вернуть глобальный клиент, создав его из хранилища при первом вызове.

При первом вызове создаёт AmoCRM, загружая токены из oauth.storage. Последующие вызовы возвращают тот же экземпляр.

Параметры:
  • subdomain (str) – Поддомен аккаунта AmoCRM.

  • oauth (OAuthConfig) – Конфигурация OAuth с реквизитами интеграции и хранилищем токенов.

Результат:

Инициализированный экземпляр AmoCRM.

Тип результата:

AmoCRM

amocrm.manager.reset()[исходный код]

Сбросить глобальный клиент (полезно в тестах).

Тип результата:

None

Исключения

exception amocrm.exceptions.AmoCRMError[исходный код]

Базовые классы: Exception

Базовый класс исключений SDK.

exception amocrm.exceptions.AmoCRMAPIError(status_code, body)[исходный код]

Базовые классы: AmoCRMError

Исключение при ошибке API AmoCRM (статус не 2xx).

Переменные:
  • status_code – HTTP-статус ответа.

  • body – Тело ответа в виде строки.

Параметры:
  • status_code (int)

  • body (str)

Тип результата:

None

__init__(status_code, body)[исходный код]
Параметры:
  • status_code (int) – HTTP-статус ответа API.

  • body (str) – Тело ответа API в виде строки.

Тип результата:

None

exception amocrm.exceptions.AmoCRMTokenRefreshError[исходный код]

Базовые классы: AmoCRMError

Исключение при неудачном обновлении токена доступа.

exception amocrm.exceptions.AmoCRMNotConfiguredError[исходный код]

Базовые классы: AmoCRMError

Исключение при использовании менеджера до его настройки.

Ресурсы

Базовый ресурс

class amocrm.resources._base.BaseResource(client, dto_class=None)[исходный код]

Базовые классы: Generic[_T]

Базовый класс ресурсов AmoCRM API.

Предоставляет стандартные CRUD-операции: list, get, create, update, update_one. Конкретные ресурсы наследуют этот класс, задавая _path, _embedded_key и _dto_class.

Параметры:
__init__(client, dto_class=None)[исходный код]
Параметры:
Тип результата:

None

list(*, page=None, limit=None, query=None, filter=None, order=None, with_=None)[исходный код]

Получить список сущностей с пагинацией и фильтрами.

Параметры:
  • page (int | None) – Номер страницы (начиная с 1). Если не передан — автоматически обходит все страницы и возвращает Iterator[T].

  • limit (int | None) – Количество сущностей на странице (максимум 250). По умолчанию 50 при авто-пагинации.

  • query (str | None) – Строка полнотекстового поиска.

  • filter (dict[str, Any] | None) – Словарь фильтров {"field": "value"}.

  • order (dict[str, str] | None) – Словарь сортировки {"field": "asc"|"desc"}.

  • with – Список дополнительных данных для подгрузки.

  • with_ (list[str] | None)

Результат:

Если page передан — list[T]. Иначе — Iterator[T].

Тип результата:

list[_T] | Iterator[_T]

get(entity_id, *, with_=None)[исходный код]

Получить сущность по идентификатору.

Параметры:
  • entity_id (int) – Идентификатор сущности.

  • with – Список дополнительных данных для подгрузки.

  • with_ (list[str] | None)

Тип результата:

_T

create(items)[исходный код]

Создать одну или несколько сущностей.

Исключение:

AmoCRMError – Если передано более _max_per_request элементов.

Параметры:

items (list[_T])

Тип результата:

list[_T]

update(items)[исходный код]

Обновить одну или несколько сущностей (каждая должна содержать id).

Исключение:

AmoCRMError – Если передано более _max_per_request элементов.

Параметры:

items (list[_T])

Тип результата:

list[_T]

update_one(data)[исходный код]

Обновить одну сущность по идентификатору.

Исключение:

AmoCRMError – Если data.id не задан.

Параметры:

data (_T)

Тип результата:

_T

Сделки

class amocrm.resources.leads.LeadsResource(client, dto_class=None)[исходный код]

Базовые классы: BaseResource[Lead]

Ресурс для работы со сделками AmoCRM (/api/v4/leads).

Параметры:
get(lead_id, *, with_=None)[исходный код]

Получить сделку по идентификатору.

По умолчанию подгружает связанные контакты (contacts). Чтобы отключить это поведение или запросить другой набор данных, передайте with_ явно, например with_=[] или with_=["contacts", "companies"].

Параметры:
  • lead_id (int) – Идентификатор сделки.

  • with – Список дополнительных данных для подгрузки. По умолчанию ["contacts"].

  • with_ (list[str] | None)

Результат:

Объект Lead.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

Lead

create_complex(leads)[исходный код]

Сложное создание сделок со связанными сущностями.

Использует эндпоинт POST /api/v4/leads/complex, позволяющий одновременно создавать сделки вместе с контактами и компаниями.

Параметры:

leads (list[Lead]) – Список сделок для создания.

Результат:

Список результатов создания с идентификаторами сделок и связанных сущностей.

Исключение:
  • AmoCRMError – Если передано более 50 сделок или у сделки более одного контакта.

  • AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

list[ComplexLeadResult]

Контакты

class amocrm.resources.contacts.ContactsResource(client, dto_class=None)[исходный код]

Базовые классы: BaseResource[Contact]

Ресурс для работы с контактами AmoCRM (/api/v4/contacts).

Параметры:

Компании

class amocrm.resources.companies.CompaniesResource(client, dto_class=None)[исходный код]

Базовые классы: BaseResource[Company]

Ресурс для работы с компаниями AmoCRM (/api/v4/companies).

Параметры:

Воронки

class amocrm.resources.pipelines.PipelinesResource(client, dto_class=<class 'amocrm.models.pipelines.Pipeline'>)[исходный код]

Базовые классы: object

Ресурс для работы с воронками и статусами AmoCRM.

Эндпоинт: /api/v4/leads/pipelines.

Параметры:
__init__(client, dto_class=<class 'amocrm.models.pipelines.Pipeline'>)[исходный код]
Параметры:
  • client (AmoCRM) – Экземпляр клиента AmoCRM.

  • dto_class (type[Pipeline]) – Класс DTO для десериализации воронок. По умолчанию Pipeline.

Тип результата:

None

list()[исходный код]

Получить список всех воронок аккаунта.

Результат:

Список объектов Pipeline.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

list[Pipeline]

get(pipeline_id)[исходный код]

Получить воронку по идентификатору.

Параметры:

pipeline_id (int) – Идентификатор воронки.

Результат:

Объект Pipeline.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

Pipeline

create(pipelines)[исходный код]

Создать одну или несколько воронок.

Параметры:

pipelines (list[Pipeline]) – Список воронок для создания.

Результат:

Список созданных воронок с заполненными идентификаторами.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

list[Pipeline]

update(pipeline_id, data)[исходный код]

Обновить воронку по идентификатору.

Параметры:
  • pipeline_id (int) – Идентификатор воронки.

  • data (Pipeline) – Объект с обновляемыми полями.

Результат:

Обновлённый объект Pipeline.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

Pipeline

delete(pipeline_id)[исходный код]

Удалить воронку по идентификатору.

Параметры:

pipeline_id (int) – Идентификатор воронки.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

None

list_statuses(pipeline_id, *, with_descriptions=False)[исходный код]

Получить список статусов воронки.

Параметры:
  • pipeline_id (int) – Идентификатор воронки.

  • with_descriptions (bool) – Если True, подгружает описания уровней зрелости для каждого статуса.

Результат:

Список объектов PipelineStatus.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

list[PipelineStatus]

get_status(pipeline_id, status_id, *, with_descriptions=False)[исходный код]

Получить статус воронки по идентификатору.

Параметры:
  • pipeline_id (int) – Идентификатор воронки.

  • status_id (int) – Идентификатор статуса.

  • with_descriptions (bool) – Если True, подгружает описания уровней зрелости.

Результат:

Объект PipelineStatus.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

PipelineStatus

create_statuses(pipeline_id, statuses)[исходный код]

Создать статусы в воронке.

Параметры:
  • pipeline_id (int) – Идентификатор воронки.

  • statuses (list[PipelineStatus]) – Список статусов для создания.

Результат:

Список созданных статусов с заполненными идентификаторами.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

list[PipelineStatus]

update_status(pipeline_id, status_id, data)[исходный код]

Обновить статус воронки.

Параметры:
  • pipeline_id (int) – Идентификатор воронки.

  • status_id (int) – Идентификатор статуса.

  • data (PipelineStatus) – Объект с обновляемыми полями.

Результат:

Обновлённый объект PipelineStatus.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

PipelineStatus

delete_status(pipeline_id, status_id)[исходный код]

Удалить статус воронки.

Параметры:
  • pipeline_id (int) – Идентификатор воронки.

  • status_id (int) – Идентификатор статуса.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

None

Задачи

class amocrm.resources.tasks.TasksResource(client, dto_class=None)[исходный код]

Базовые классы: BaseResource[Task]

Ресурс для работы с задачами AmoCRM (/api/v4/tasks).

Параметры:
list(*, page=None, limit=None, filter=None, order=None)[исходный код]

Получить список задач с пагинацией и фильтрами.

Параметры:
  • page (int | None) – Номер страницы (начиная с 1). Если не передан — автоматически обходит все страницы и возвращает Iterator[Task].

  • limit (int | None) – Количество задач на странице (максимум 250). По умолчанию 50 при авто-пагинации.

  • filter (dict[str, Any] | None) – Словарь фильтров вида {"field": "value"}; ключи преобразуются в параметры filter[field]=value.

  • order (dict[str, str] | None) – Словарь сортировки вида {"field": "asc"|"desc"}; ключи преобразуются в параметры order[field]=asc.

Результат:

Если page передан — список объектов Task. Если page не передан — Iterator[Task] по всем страницам.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

list[Task] | Iterator[Task]

get(task_id)[исходный код]

Получить задачу по идентификатору.

Параметры:

task_id (int) – Идентификатор задачи.

Результат:

Объект Task.

Исключение:

AmoCRMAPIError – При ошибке API (статус не 2xx).

Тип результата:

Task

Модели

Общие типы

class amocrm.models.common.CustomFieldsMixin[исходный код]

Базовые классы: object

Mixin для типизированного доступа к кастомным полям AmoCRM.

Предоставляет методы для чтения значений кастомных полей по их ID. Должен использоваться совместно с датаклассами, имеющими поле custom_fields_values: list[CustomFieldValue] | None.

custom_fields_values: list[CustomFieldValue] | None
get_cf_raw(field_id)[исходный код]

Вернуть список значений кастомного поля по его ID или None.

Параметры:

field_id (int)

Тип результата:

list[dict[str, Any]] | None

get_cf_value(field_id)[исходный код]

Вернуть первое значение поля (values[0]["value"]) или None.

Параметры:

field_id (int)

Тип результата:

Any

get_cf_values(field_id)[исходный код]

Вернуть все значения поля (values[i]["value"]).

Параметры:

field_id (int)

Тип результата:

list[Any]

get_cf_enum_id(field_id)[исходный код]

Вернуть enum_id первого значения поля или None.

Параметры:

field_id (int)

Тип результата:

int | None

set_cf_value(field_id, value)[исходный код]

Установить единственное значение кастомного поля.

Параметры:
Тип результата:

None

set_cf_values(field_id, values)[исходный код]

Установить несколько значений кастомного поля (multiselect).

Параметры:
Тип результата:

None

set_cf_raw(field_id, values)[исходный код]

Установить raw-значения кастомного поля (например, smart_address).

Параметры:
Тип результата:

None

class amocrm.models.common.Tag(*, id=None, name=None)[исходный код]

Базовые классы: object

Тег сущности AmoCRM.

Переменные:
  • id (int | None) – Идентификатор тега.

  • name (str | None) – Название тега.

Параметры:
  • id (int | None)

  • name (str | None)

id: int | None = None
name: str | None = None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API.

Параметры:

data (dict[str, Any])

Тип результата:

Tag

to_dict()[исходный код]

Сериализовать в словарь, исключая поля со значением None.

Тип результата:

dict[str, Any]

__init__(*, id=None, name=None)
Параметры:
  • id (int | None)

  • name (str | None)

Тип результата:

None

class amocrm.models.common.CustomFieldValue(*, field_id, values=<factory>)[исходный код]

Базовые классы: object

Значение кастомного поля AmoCRM.

Переменные:
  • field_id (int) – Идентификатор кастомного поля.

  • values (list[dict[str, Any]]) – Список значений поля (каждое — словарь с ключами value и опционально enum_id / enum_code).

Параметры:
field_id: int
values: list[dict[str, Any]]
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API.

Параметры:

data (dict[str, Any])

Тип результата:

CustomFieldValue

to_dict()[исходный код]

Сериализовать в словарь для отправки в API.

Тип результата:

dict[str, Any]

__init__(*, field_id, values=<factory>)
Параметры:
Тип результата:

None

class amocrm.models.common.BaseModel[исходный код]

Базовые классы: CustomFieldsMixin

Базовый класс DTO-моделей AmoCRM с общей логикой from_dict/to_dict.

Подклассы должны быть датаклассами и определять _scalar_fields — кортеж имён полей, которые берутся напрямую из словаря API.

tags: list[Tag] | None
custom_fields_values: list[CustomFieldValue] | None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API AmoCRM.

Параметры:

data (dict[str, Any])

Тип результата:

_M

to_dict()[исходный код]

Сериализовать в словарь для API, исключая поля со значением None.

Тип результата:

dict[str, Any]

Сделки

class amocrm.models.leads.ComplexLeadResult(*, id, contact_id=None, company_id=None, merged=False, request_id=None)[исходный код]

Базовые классы: object

Результат создания сделки через /api/v4/leads/complex.

Переменные:
  • id (int) – Идентификатор созданной сделки.

  • contact_id (int | None) – Идентификатор связанного контакта.

  • company_id (int | None) – Идентификатор связанной компании.

  • merged (bool) – Признак слияния с существующей сделкой.

  • request_id (list[str] | None) – Список идентификаторов запросов.

Параметры:
  • id (int)

  • contact_id (int | None)

  • company_id (int | None)

  • merged (bool)

  • request_id (list[str] | None)

id: int
contact_id: int | None = None
company_id: int | None = None
merged: bool = False
request_id: list[str] | None = None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API AmoCRM.

Параметры:

data (dict[str, Any])

Тип результата:

ComplexLeadResult

__init__(*, id, contact_id=None, company_id=None, merged=False, request_id=None)
Параметры:
  • id (int)

  • contact_id (int | None)

  • company_id (int | None)

  • merged (bool)

  • request_id (list[str] | None)

Тип результата:

None

class amocrm.models.leads.Lead(*, id=None, name=None, price=None, status_id=None, pipeline_id=None, responsible_user_id=None, group_id=None, created_by=None, updated_by=None, created_at=None, updated_at=None, closed_at=None, closest_task_at=None, is_deleted=None, loss_reason_id=None, score=None, account_id=None, labor_cost=None, tags=None, custom_fields_values=None, contacts=None, company=None)[исходный код]

Базовые классы: BaseModel

DTO-модель сделки AmoCRM.

Переменные:
  • id (int | None) – Идентификатор сделки.

  • name (str | None) – Название сделки.

  • price (int | None) – Бюджет сделки.

  • status_id (int | None) – Идентификатор статуса воронки.

  • pipeline_id (int | None) – Идентификатор воронки.

  • responsible_user_id (int | None) – Идентификатор ответственного пользователя.

  • group_id (int | None) – Идентификатор группы пользователей.

  • created_by (int | None) – Идентификатор пользователя, создавшего сделку.

  • updated_by (int | None) – Идентификатор пользователя, обновившего сделку.

  • created_at (int | None) – Дата создания (Unix timestamp).

  • updated_at (int | None) – Дата последнего изменения (Unix timestamp).

  • closed_at (int | None) – Дата закрытия сделки (Unix timestamp).

  • closest_task_at (int | None) – Дата ближайшей задачи (Unix timestamp).

  • is_deleted (bool | None) – Признак удалённой сделки.

  • loss_reason_id (int | None) – Идентификатор причины закрытия (проигрыша).

  • score (int | None) – Оценка сделки.

  • account_id (int | None) – Идентификатор аккаунта AmoCRM.

  • labor_cost (int | None) – Затраченное время (в минутах).

  • tags (list[amocrm.models.common.Tag] | None) – Список тегов сделки.

  • custom_fields_values (list[amocrm.models.common.CustomFieldValue] | None) – Список значений кастомных полей.

  • contacts (list[amocrm.models.contacts.Contact] | None) – Список связанных контактов.

  • company (amocrm.models.companies.Company | None) – Связанная компания.

Параметры:
  • id (int | None)

  • name (str | None)

  • price (int | None)

  • status_id (int | None)

  • pipeline_id (int | None)

  • responsible_user_id (int | None)

  • group_id (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • closed_at (int | None)

  • closest_task_at (int | None)

  • is_deleted (bool | None)

  • loss_reason_id (int | None)

  • score (int | None)

  • account_id (int | None)

  • labor_cost (int | None)

  • tags (list[Tag] | None)

  • custom_fields_values (list[CustomFieldValue] | None)

  • contacts (list[Contact] | None)

  • company (Company | None)

id: int | None = None
name: str | None = None
price: int | None = None
status_id: int | None = None
pipeline_id: int | None = None
responsible_user_id: int | None = None
group_id: int | None = None
created_by: int | None = None
updated_by: int | None = None
created_at: int | None = None
updated_at: int | None = None
closed_at: int | None = None
closest_task_at: int | None = None
is_deleted: bool | None = None
loss_reason_id: int | None = None
score: int | None = None
account_id: int | None = None
labor_cost: int | None = None
tags: list[Tag] | None = None
custom_fields_values: list[CustomFieldValue] | None = None
contacts: list[Contact] | None = None
company: Company | None = None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API AmoCRM.

Параметры:

data (dict[str, Any])

Тип результата:

Lead

to_dict()[исходный код]

Сериализовать в словарь для API, исключая поля со значением None.

Тип результата:

dict[str, Any]

__init__(*, id=None, name=None, price=None, status_id=None, pipeline_id=None, responsible_user_id=None, group_id=None, created_by=None, updated_by=None, created_at=None, updated_at=None, closed_at=None, closest_task_at=None, is_deleted=None, loss_reason_id=None, score=None, account_id=None, labor_cost=None, tags=None, custom_fields_values=None, contacts=None, company=None)
Параметры:
  • id (int | None)

  • name (str | None)

  • price (int | None)

  • status_id (int | None)

  • pipeline_id (int | None)

  • responsible_user_id (int | None)

  • group_id (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • closed_at (int | None)

  • closest_task_at (int | None)

  • is_deleted (bool | None)

  • loss_reason_id (int | None)

  • score (int | None)

  • account_id (int | None)

  • labor_cost (int | None)

  • tags (list[Tag] | None)

  • custom_fields_values (list[CustomFieldValue] | None)

  • contacts (list[Contact] | None)

  • company (Company | None)

Тип результата:

None

Контакты

class amocrm.models.contacts.Contact(*, id=None, name=None, first_name=None, last_name=None, responsible_user_id=None, group_id=None, created_by=None, updated_by=None, created_at=None, updated_at=None, closest_task_at=None, is_deleted=None, account_id=None, tags=None, custom_fields_values=None)[исходный код]

Базовые классы: BaseModel

DTO-модель контакта AmoCRM.

Переменные:
  • id (int | None) – Идентификатор контакта.

  • name (str | None) – Полное имя контакта.

  • first_name (str | None) – Имя.

  • last_name (str | None) – Фамилия.

  • responsible_user_id (int | None) – Идентификатор ответственного пользователя.

  • group_id (int | None) – Идентификатор группы пользователей.

  • created_by (int | None) – Идентификатор пользователя, создавшего контакт.

  • updated_by (int | None) – Идентификатор пользователя, обновившего контакт.

  • created_at (int | None) – Дата создания (Unix timestamp).

  • updated_at (int | None) – Дата последнего изменения (Unix timestamp).

  • closest_task_at (int | None) – Дата ближайшей задачи (Unix timestamp).

  • is_deleted (bool | None) – Признак удалённого контакта.

  • account_id (int | None) – Идентификатор аккаунта AmoCRM.

  • tags (list[amocrm.models.common.Tag] | None) – Список тегов контакта.

  • custom_fields_values (list[amocrm.models.common.CustomFieldValue] | None) – Список значений кастомных полей.

Параметры:
  • id (int | None)

  • name (str | None)

  • first_name (str | None)

  • last_name (str | None)

  • responsible_user_id (int | None)

  • group_id (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • closest_task_at (int | None)

  • is_deleted (bool | None)

  • account_id (int | None)

  • tags (list[Tag] | None)

  • custom_fields_values (list[CustomFieldValue] | None)

id: int | None = None
name: str | None = None
first_name: str | None = None
last_name: str | None = None
responsible_user_id: int | None = None
group_id: int | None = None
created_by: int | None = None
updated_by: int | None = None
created_at: int | None = None
updated_at: int | None = None
closest_task_at: int | None = None
is_deleted: bool | None = None
account_id: int | None = None
tags: list[Tag] | None = None
custom_fields_values: list[CustomFieldValue] | None = None
__init__(*, id=None, name=None, first_name=None, last_name=None, responsible_user_id=None, group_id=None, created_by=None, updated_by=None, created_at=None, updated_at=None, closest_task_at=None, is_deleted=None, account_id=None, tags=None, custom_fields_values=None)
Параметры:
  • id (int | None)

  • name (str | None)

  • first_name (str | None)

  • last_name (str | None)

  • responsible_user_id (int | None)

  • group_id (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • closest_task_at (int | None)

  • is_deleted (bool | None)

  • account_id (int | None)

  • tags (list[Tag] | None)

  • custom_fields_values (list[CustomFieldValue] | None)

Тип результата:

None

Компании

class amocrm.models.companies.Company(*, id=None, name=None, responsible_user_id=None, group_id=None, created_by=None, updated_by=None, created_at=None, updated_at=None, closest_task_at=None, is_deleted=None, account_id=None, tags=None, custom_fields_values=None)[исходный код]

Базовые классы: BaseModel

DTO-модель компании AmoCRM.

Переменные:
  • id (int | None) – Идентификатор компании.

  • name (str | None) – Название компании.

  • responsible_user_id (int | None) – Идентификатор ответственного пользователя.

  • group_id (int | None) – Идентификатор группы пользователей.

  • created_by (int | None) – Идентификатор пользователя, создавшего компанию.

  • updated_by (int | None) – Идентификатор пользователя, обновившего компанию.

  • created_at (int | None) – Дата создания (Unix timestamp).

  • updated_at (int | None) – Дата последнего изменения (Unix timestamp).

  • closest_task_at (int | None) – Дата ближайшей задачи (Unix timestamp).

  • is_deleted (bool | None) – Признак удалённой компании.

  • account_id (int | None) – Идентификатор аккаунта AmoCRM.

  • tags (list[amocrm.models.common.Tag] | None) – Список тегов компании.

  • custom_fields_values (list[amocrm.models.common.CustomFieldValue] | None) – Список значений кастомных полей.

Параметры:
  • id (int | None)

  • name (str | None)

  • responsible_user_id (int | None)

  • group_id (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • closest_task_at (int | None)

  • is_deleted (bool | None)

  • account_id (int | None)

  • tags (list[Tag] | None)

  • custom_fields_values (list[CustomFieldValue] | None)

id: int | None = None
name: str | None = None
responsible_user_id: int | None = None
group_id: int | None = None
created_by: int | None = None
updated_by: int | None = None
created_at: int | None = None
updated_at: int | None = None
closest_task_at: int | None = None
is_deleted: bool | None = None
account_id: int | None = None
tags: list[Tag] | None = None
custom_fields_values: list[CustomFieldValue] | None = None
__init__(*, id=None, name=None, responsible_user_id=None, group_id=None, created_by=None, updated_by=None, created_at=None, updated_at=None, closest_task_at=None, is_deleted=None, account_id=None, tags=None, custom_fields_values=None)
Параметры:
  • id (int | None)

  • name (str | None)

  • responsible_user_id (int | None)

  • group_id (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • closest_task_at (int | None)

  • is_deleted (bool | None)

  • account_id (int | None)

  • tags (list[Tag] | None)

  • custom_fields_values (list[CustomFieldValue] | None)

Тип результата:

None

Воронки и статусы

class amocrm.models.pipelines.StatusDescription(*, id=None, level=None, text=None)[исходный код]

Базовые классы: object

Описание уровня зрелости сделки в статусе воронки.

Переменные:
  • id (int | None) – Идентификатор описания.

  • level (str | None) – Уровень зрелости ("newbie", "candidate", "master").

  • text (str | None) – Текст описания.

Параметры:
  • id (int | None)

  • level (str | None)

  • text (str | None)

id: int | None = None
level: str | None = None
text: str | None = None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API.

Параметры:

data (dict[str, Any])

Тип результата:

StatusDescription

to_dict()[исходный код]

Сериализовать в словарь, исключая поля со значением None.

Тип результата:

dict[str, Any]

__init__(*, id=None, level=None, text=None)
Параметры:
  • id (int | None)

  • level (str | None)

  • text (str | None)

Тип результата:

None

class amocrm.models.pipelines.PipelineStatus(*, id=None, name=None, sort=None, is_editable=None, pipeline_id=None, color=None, type=None, account_id=None, descriptions=None)[исходный код]

Базовые классы: object

DTO-модель статуса воронки AmoCRM.

Переменные:
  • id (int | None) – Идентификатор статуса.

  • name (str | None) – Название статуса.

  • sort (int | None) – Порядок сортировки.

  • is_editable (bool | None) – Можно ли редактировать статус.

  • pipeline_id (int | None) – Идентификатор воронки, которой принадлежит статус.

  • color (str | None) – HEX-цвет статуса (например, "#fffeb2").

  • type (int | None) – Тип статуса (0 — обычный, 142 — успешно завершён, 143 — закрыт и не реализован).

  • account_id (int | None) – Идентификатор аккаунта AmoCRM.

  • descriptions (list[amocrm.models.pipelines.StatusDescription] | None) – Описания уровней зрелости сделок в этом статусе.

Параметры:
id: int | None = None
name: str | None = None
sort: int | None = None
is_editable: bool | None = None
pipeline_id: int | None = None
color: str | None = None
type: int | None = None
account_id: int | None = None
descriptions: list[StatusDescription] | None = None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API.

Параметры:

data (dict[str, Any])

Тип результата:

PipelineStatus

to_dict()[исходный код]

Сериализовать в словарь для API, исключая поля со значением None.

Тип результата:

dict[str, Any]

__init__(*, id=None, name=None, sort=None, is_editable=None, pipeline_id=None, color=None, type=None, account_id=None, descriptions=None)
Параметры:
Тип результата:

None

class amocrm.models.pipelines.Pipeline(*, id=None, name=None, sort=None, is_main=None, is_unsorted_on=None, is_archive=None, account_id=None, statuses=None)[исходный код]

Базовые классы: object

DTO-модель воронки продаж AmoCRM.

Переменные:
  • id (int | None) – Идентификатор воронки.

  • name (str | None) – Название воронки.

  • sort (int | None) – Порядок сортировки.

  • is_main (bool | None) – Является ли воронка основной.

  • is_unsorted_on (bool | None) – Включён ли неразобранный раздел.

  • is_archive (bool | None) – Находится ли воронка в архиве.

  • account_id (int | None) – Идентификатор аккаунта AmoCRM.

  • statuses (list[amocrm.models.pipelines.PipelineStatus] | None) – Список статусов воронки.

Параметры:
id: int | None = None
name: str | None = None
sort: int | None = None
is_main: bool | None = None
is_unsorted_on: bool | None = None
is_archive: bool | None = None
account_id: int | None = None
statuses: list[PipelineStatus] | None = None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API.

Параметры:

data (dict[str, Any])

Тип результата:

Pipeline

to_dict()[исходный код]

Сериализовать в словарь для API, исключая поля со значением None.

Тип результата:

dict[str, Any]

__init__(*, id=None, name=None, sort=None, is_main=None, is_unsorted_on=None, is_archive=None, account_id=None, statuses=None)
Параметры:
Тип результата:

None

Задачи

class amocrm.models.tasks.Task(*, id=None, text=None, complete_till=None, task_type_id=None, responsible_user_id=None, is_completed=None, entity_id=None, entity_type=None, duration=None, created_by=None, updated_by=None, created_at=None, updated_at=None, group_id=None, account_id=None, result=None)[исходный код]

Базовые классы: object

DTO-модель задачи AmoCRM.

Переменные:
  • id (int | None) – Идентификатор задачи.

  • text (str | None) – Текст задачи.

  • complete_till (int | None) – Срок выполнения (Unix timestamp).

  • task_type_id (int | None) – Идентификатор типа задачи.

  • responsible_user_id (int | None) – Идентификатор ответственного пользователя.

  • is_completed (bool | None) – Признак выполненной задачи.

  • entity_id (int | None) – Идентификатор связанной сущности.

  • entity_type (str | None) – Тип связанной сущности ("leads", "contacts" и др.).

  • duration (int | None) – Длительность задачи (в секундах).

  • created_by (int | None) – Идентификатор пользователя, создавшего задачу.

  • updated_by (int | None) – Идентификатор пользователя, обновившего задачу.

  • created_at (int | None) – Дата создания (Unix timestamp).

  • updated_at (int | None) – Дата последнего изменения (Unix timestamp).

  • group_id (int | None) – Идентификатор группы пользователей.

  • account_id (int | None) – Идентификатор аккаунта AmoCRM.

  • result (dict[str, Any] | None) – Результат выполнения задачи вида {"text": "..."}.

Параметры:
  • id (int | None)

  • text (str | None)

  • complete_till (int | None)

  • task_type_id (int | None)

  • responsible_user_id (int | None)

  • is_completed (bool | None)

  • entity_id (int | None)

  • entity_type (str | None)

  • duration (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • group_id (int | None)

  • account_id (int | None)

  • result (dict[str, Any] | None)

id: int | None = None
text: str | None = None
complete_till: int | None = None
task_type_id: int | None = None
responsible_user_id: int | None = None
is_completed: bool | None = None
entity_id: int | None = None
entity_type: str | None = None
duration: int | None = None
created_by: int | None = None
updated_by: int | None = None
created_at: int | None = None
updated_at: int | None = None
group_id: int | None = None
account_id: int | None = None
result: dict[str, Any] | None = None
classmethod from_dict(data)[исходный код]

Создать экземпляр из словаря API AmoCRM.

Параметры:

data (dict[str, Any])

Тип результата:

Task

to_dict()[исходный код]

Сериализовать в словарь для API, исключая поля со значением None.

Тип результата:

dict[str, Any]

__init__(*, id=None, text=None, complete_till=None, task_type_id=None, responsible_user_id=None, is_completed=None, entity_id=None, entity_type=None, duration=None, created_by=None, updated_by=None, created_at=None, updated_at=None, group_id=None, account_id=None, result=None)
Параметры:
  • id (int | None)

  • text (str | None)

  • complete_till (int | None)

  • task_type_id (int | None)

  • responsible_user_id (int | None)

  • is_completed (bool | None)

  • entity_id (int | None)

  • entity_type (str | None)

  • duration (int | None)

  • created_by (int | None)

  • updated_by (int | None)

  • created_at (int | None)

  • updated_at (int | None)

  • group_id (int | None)

  • account_id (int | None)

  • result (dict[str, Any] | None)

Тип результата:

None