# Сущности

Все сущности для API Pro.rent приведены в [swagger-схеме](https://portal.pro.rent/api). В этом разделе приведены расшифровки и комментарии к наиболее сложным из них.

### ApiAttachment

Файл-приложение к другой сущности.

<pre class="language-typescript"><code class="lang-typescript">{
    id: Guid,
    url: string, // Ссылка на файл, readonly
    name: string, // Название Файла
    creator: <a data-footnote-ref href="#user-content-fn-1">ApiUserInfo</a>, // Загрузивший файл пользователь, readonly
    createDate: DateTime // Дата и время создания, readonly
}
</code></pre>

### ApiContract

Содержит полную информацию о договоре. В договоре может быть от одного и более соглашений. Нулевое соглашение является основным договором.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    number?: string, // Номер договора, readonly
    date: Date, // Дата договора, readonly
    type: <a data-footnote-ref href="#user-content-fn-2">ContractType</a>, // Тип договора
    period: { // Общий из всех соглашений период действия договора, readonly
        begin: Date,
        end: Date
    },
    state: <a data-footnote-ref href="#user-content-fn-3">ContractState</a>, // Статус договора, readonly
    mainVersion: <a data-footnote-ref href="#user-content-fn-4">ApiContractVersion</a>, // Соглашение-основной договор
    currentVersionInfo: <a data-footnote-ref href="#user-content-fn-5">ApiContractVersionInfo</a>, // Краткая информация о текущем активном соглашении, readonly
    versions: <a data-footnote-ref href="#user-content-fn-4">ApiContractVersion</a>[], // Все соглашения по договору, включая основное, readonly
    currency: <a data-footnote-ref href="#user-content-fn-6">Currency</a>, // Валюта договора
    billingPeriod: <a data-footnote-ref href="#user-content-fn-7">BillingPeriod</a>, / 
    paymentSchedule?: { // Условия оплаты
        type: <a data-footnote-ref href="#user-content-fn-8">ContractPaymentType</a>, // Тип периода
        day: number, // День оплаты
        months: number, // Периодичность в месяцах
        advanceMonths?: number // Количество месяцев аванса
    },
    paymentTerms?: string, // Текстовое предсравление условий оплаты, readonly
    actMonths: number, // Периодичность выставления актов в месяцах
    ignoreInOccupation: boolean, // Учитывать или нет договор в заполняемости помещений
    notificationDays: number, // За сколько дней до окончания уведомлять ответственного и клиента
    warnings: <a data-footnote-ref href="#user-content-fn-9">ContractWarning</a>, // Предупреждения по договору
    agreementCount: number, // Кол-во дополнительных соглашений
    debt: { // Долги по договору, readonly
        value: number, // Сумма долга
        currency: <a data-footnote-ref href="#user-content-fn-6">Currency</a> // Валюта долга
    }[],
    advance: { // Неразнесенные авансы, readonly
        value: number, // Сумма аванса
        currency: <a data-footnote-ref href="#user-content-fn-6">Currency</a> // Валюта аванса
    }[],
    responsibleId: number, // ID ответственного по договору сотрудника
    responsible: <a data-footnote-ref href="#user-content-fn-10">ApiEmployee</a>, // Ответственный по договору сотрудник, readonly
    documentRuleId: number, // ID правила формирования счетов и актов
    documentRule: <a data-footnote-ref href="#user-content-fn-11">ApiDocumentRule</a>, // Правило формирования счетов и актов, readonly
    autoInvoices: <a data-footnote-ref href="#user-content-fn-12">DocumentAutoMode</a>, // Режим выставления счетов
    autoInvoicesTemplateId?: number, // ID шаблона для счетов
    autoInvoicesTemplate?: <a data-footnote-ref href="#user-content-fn-13">ApiTemplateInfo</a>, // Шаблон для счетов, readonly
    autoActs: <a data-footnote-ref href="#user-content-fn-12">DocumentAutoMode</a>, // Режим выставления актов,
    autoActsTemplateId?: number, // ID шаблона для актов
    autoActsTemplate?: <a data-footnote-ref href="#user-content-fn-13">ApiTemplateInfo</a>, // Шаблон для актов, readonly
    externalLink?: { // Договор во внешнем источнике, например, AmoCRM и др.
        id: string, // ID во внешнем источнике
        name: string, // Название внешнего истояника
        url: string // Ссылка во внешнем источнике
    },
    oneCId?: Guid, // ID договора в 1С
    attachments: <a data-footnote-ref href="#user-content-fn-14">ApiAttachment</a>[], // Приложенный к договору файлы
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
</code></pre>

### ApiContractVersion

Информация об одном соглашении договора. Если  это нулевое соглашение, то информация об основном договоре.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    number?: string, // Номер
    date: Date, // Дата
    type: <a data-footnote-ref href="#user-content-fn-15">ContractVersionType</a>, // Тип соглашения
    period: { // Период действия
        begin: Date,
        end: Date
    },
    endFinal: Date, // Переопределенная следующим соглашением дата окончания периода действия, readonly
    status: <a data-footnote-ref href="#user-content-fn-16">ContractState</a>, // Статус соглашения
    signStatus: <a data-footnote-ref href="#user-content-fn-16">ContractSignStatus</a>, // Статус подписания
    signStatusChangeError?: string, // Текст ошибки при блокировке изменения статуса подписания, readonly
    orgId: number, // ID основного исполнителя
    org: <a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>, // Основной исполнитель, readonly
    orgBankAccountId?: number, // ID р/с основного исполнителя
    orgBankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Р/с основного исполнителя, readonly
    orgSignerId?: number, // ID подписанта основного исполнителя
    orgSigner?: <a data-footnote-ref href="#user-content-fn-19">ApiSigner</a>, // Подписан основного исполнителя, readonly
    orgsAdditional: { // Дополнительные исполнители по договору
        contractorId: number, // ID исполнителя
        contractor: <a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>, // Исполнитель, readonly
        bankAccountId?: number, // ID р/с исполнителя
        bankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Р/с исполнителя, readonly
        signerId?: number, // ID подписанта исполнителя
        signer?: <a data-footnote-ref href="#user-content-fn-19">ApiSigner</a>, // Подписан исполнителя, readonly
        docBankAccountId?: number, // ID счёта исполнителя для счетов и актов
        docBankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Счёт исполнителя для счетов и актов, readonly
        docSignerId?: number, // ID подписанта исполнителя для счетов и актов
        docSigner?: <a data-footnote-ref href="#user-content-fn-19">ApiSigner</a>, // Подписант исполнителя для счетов и актов, readonly
        share: number // Числитель доли исполнителя
    }[],
    orgShareBase?: number, // Знаменатель доли исполнителей, по умолчанию 10.000
    orgUtilityId: number, // ID исполнителя для выставления 100% переменной части
    orgUtility: <a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>, // Исполнитель для выставления 100% переменной части, reaodnly
    clientId: number, // ID заказчика
    client: <a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>, // Заказчик, readonly
    clientBankAccountId?: number, // ID р/с заказчика
    clientBankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Р/с заказчика, readonly
    clientSignerId?: number, // ID заказчика исполнителя
    clientSigner?: <a data-footnote-ref href="#user-content-fn-19">ApiSigner</a>, // Подписан заказчика, readonly
    file: <a data-footnote-ref href="#user-content-fn-20">ApiDocumentFile</a>, // Файл или шаблон
    warnings: <a data-footnote-ref href="#user-content-fn-9">ContractWarning</a>, // Предупреждения по договору, readonly
    currency: <a data-footnote-ref href="#user-content-fn-6">Currency</a>, // Валюта
    amount: number, // Стоимость по соглашению, readonly
    amountRooms: number, // Стоимость помещений, readonly
    amountServices: number, // Стоимость услуг, readonly
    amountIndexed: number, // Индексированная стоимость по соглашению, readonly
    amountRoomsIndexed: number, // Индексированная стоимость помещений, readonly
    amountServicesIndexed: number, // Индексированная стоимость услуг, readonly
    lines: <a data-footnote-ref href="#user-content-fn-21">ApiContractLine</a>[], // Строки помещений и фиксированных услуг
    holidays: ApiContractHoliday[], // Скидки
    utilities: ApiContractUtility[], // Строки переменной часть
    meters: ApiContractMeter[], // Строки счетчиков для переменной части
    acts: ApiContractAct[], // Настройки актов п/п
    indexings: ApiContractIndexing[], // Индексации по документу, readonly
    buildings: ApiBuildingInfo[], // Объекты в соглашении, readonly
    deposit?: number, // Сумма депозита
    recoveryCost?: number, // Сумма восстановительного платежа
    penaltyPercent?: number, // Пени %
    indexingAuto?: boolean, // Индексация, ручная или автоматическая
    indexingDate?: number, // Минимальная дата индексации
    indexingMonths?: number, // Периодичность индексации
    indexingPercent?: number, // Максимальный процент индексации
    indexingNotifyDays?: number, // Срок уведомления об индексации
    indexingTerms?: string, // Текстовое представление условий индексации, readonly
    terminationOrgDays?: number, // Период расторжения исполнителем
    terminationClientDays?: number, // Период расторжения заказчиком
    roomPurpose?: string, // Назначение помещений
    conditions?: string, // Дополнительные условия
    comment?: string, // Комментарий
    notifyActivationDays?: number, // За сколько дней до начала уведомлять ответсвенного и клиента
    approveLink?: { // Согласование документа во внешнем источнике
        id: string, // ID во внешнем источнике
        name: string, // Название внешнего истояника
        url: string // Ссылка во внешнем источнике
    },
    docOrgBankAccountId?: number, // ID счёта основного исполнителя для счетов и актов
    docOrgBankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Счёт основного исполнителя для счетов и актов, readonly
    docOrgSignerId?: number, // ID подписанта основного исполнителя для счетов и актов
    docOrgSigner?: <a data-footnote-ref href="#user-content-fn-19">ApiSigner</a>, // Подписант основного исполнителя для счетов и актов, readonly
    docClientBankAccountId?: number, // ID счёта заказчика для счетов и актов
    docClientBankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Счёт заказчика для счетов и актов, readonly
    docClientSignerId?: number, // ID подписанта заказчика для счетов и актов
    docClientSigner?: <a data-footnote-ref href="#user-content-fn-19">ApiSigner</a>, // Подписант заказчика для счетов и актов, readonly
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
</code></pre>

### ApiContractVersionInfo

Краткая информация о текущем активном соглашении договора.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    orgs: <a data-footnote-ref href="#user-content-fn-22">ApiContractorInfoWithShare</a>[], // Исполнители
    client: <a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>, // Заказчик
    amountRooms: number, // Стоимость помещений
    amountServices: number, // Стоимость услуг
    square: number, // Площадь
    hasHolidays: boolean, // Есть скидки
    buildings: ApiBuildingInfo[], // Объекты в соглашении
    utilities: <a data-footnote-ref href="#user-content-fn-23">UtilityType</a>[], // Переменная часть
    createDate: DateTime, // Дата и время создания
    changeDate: DateTime // Дата и время последнего изменения
}
</code></pre>

### ApiContractLine

Строка договора с информацией о помещении или фиксированной услуге.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    isRoom: boolean, // Помещение или услуга
    name?: string, // Наименование
    roomId?: number, // ID помещения
    room?: ApiRoomTree, // Помещение, readonly
    serviceId?: number, // ID услуги
    service?: ApiService, // Услуга, readonly
    category?: <a data-footnote-ref href="#user-content-fn-24">DocumentLineCategory</a>, // Категория строки
    quantity: number, // Количество
    unit?: string, // Единица измерения
    price: number, // Цена строки
    amount: number, // Сумма строки
    ndsPercent?: <a data-footnote-ref href="#user-content-fn-25">NdsPercent</a>, // НДС %
    isAmountOnly: boolean // Не брать в расчет цену, а только сумму
}
</code></pre>

### ApiContractorInfo

Информация о контрагенте.

```typescript
{
    id: number,
    isOrganization: boolean, // Может быть исполнителем или нет
    type: ContractorType, // Тип
    country: Country, // Страна
    fullName: string, // Полное наименование
    shortName: string, // Краткое наименование
    inn?: string, // Идентификационный номер в стране
    email?: string, // Email для реквизитов
    isSimpleTaxSystem: boolean, // Применяет УСН
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
```

### ApiContractorInfoWithShare

Информация о контрагенте с долей.

<pre class="language-typescript"><code class="lang-typescript">{
    ...<a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>
    share?: number, // Числитель доли
    shareBase?: number // Знаменатель доли
}
</code></pre>

### ApiBankAccount

Расчётный счёт.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    status: <a data-footnote-ref href="#user-content-fn-26">ItemStatus</a>, // Статус
    expiry?: Date, // Срок действия
    currency: <a data-footnote-ref href="#user-content-fn-6">Currency</a>, // Валюта
    number: string, // Номер р/с
    bik: string, // Идентификационный код банка
    bankName: string, // Название банка
    corr?: string, // Корр. счёт
    comment?: string, // Комментарий
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
</code></pre>

### ApiDocumentFile

Информация о файле документа.

```typescript
{
    templateId?: number, // ID шаблона
    template?: ApiTemplateInfo, // Шаблон
    fileId?: Guid, // ID файла
    name?: string, // Наименование файла
    urlDocx?: string, // Ссылка на DOCX файл
    urlPdf?: string, // Ссылка на PDF файл
    urlPdfWithActs?: string // Ссылка на PDF с актами п/п
}
```

### ApiDocumentRule

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

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    name, string, // Наименование
    status: <a data-footnote-ref href="#user-content-fn-26">ItemStatus</a>, // Статус
    lineMode: <a data-footnote-ref href="#user-content-fn-27">DocumentLineMode</a>, // Тип срок в счетах и актах
    lineContract: boolean, // Включать номер договора в каждую строку
    invoiceSurchargeDays?: number, // Выставлять счета на доплату
    attachments: boolean, // Прикладывать акты РСО арендаторам
    usageCount: number, // Кол-во договоров с этим правилом
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
</code></pre>

### ApiEmployee

Информация о сотруднике.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    email: string,
    emailConfirmed: boolean, // Email подтвержден, readonly
    displayName: string, // Отображаемое имя, readonly
    firstName: string, // Имя
    middleName?: string, // Отчество
    lastName: string, // Фамилия
    position?: string, // Должность
    pemissions: SubPermission, // Параметры доступа в аккаунте
    adminPermissions: AdminPermission, // Параметры доступа администратора
    phone?: string, // Телефон
    phoneConfirmed: boolean, // Телефон подтвержден, readonly
    avatar?: <a data-footnote-ref href="#user-content-fn-28">ApiFileInfo</a>, // Аватар пользователя
    managerCount: number, // Кол-во секиций, где сотрудник управляющий, readonly
    responsibleCount: number, // Кол-во договоров, где сотрудник ответсвенный, readonly
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime, // Дата и время последнего изменения, readonly
    activityDate: DateTime, // Дата и время последней активности, readonly
    lockoutEnd?: DateTime // Дата и время срока блокировки пользователя, readonly
}
</code></pre>

### ApiFileInfo

Информация о файле в системе.

```typescript
{
    id: Guid,
    url: string // Ссылка на файл, readonly
}
```

### ApiPayment

Денежная операция.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    type: <a data-footnote-ref href="#user-content-fn-29">PaymentType</a>, // Тип платежа
    number?: string, // Номер
    date: Date, // Дата
    orgId: number, // ID исполнителя
    org: <a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>, // Исполнитель, readonly
    orgBankAccountId?: number, // ID р/с исполнителя
    orgBankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Р/с исполнителя, readonly
    clientId: number, // ID заказчика
    client: <a data-footnote-ref href="#user-content-fn-17">ApiContractorInfo</a>, // Заказчик, readonly
    clientBankAccountId?: number, // ID р/с заказчика
    clientBankAccount?: <a data-footnote-ref href="#user-content-fn-18">ApiBankAccount</a>, // Р/с заказчика, readonly
    currency: <a data-footnote-ref href="#user-content-fn-6">Currency</a>, // Валюта платежа
    amount: number, // Сумма платежа
    amountConnected: number, // Разнесенная сумма, readonly
    purpose?: string, // Назначение платежа
    comment?: string, // Комментарий
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
</code></pre>

### ApiSigner

Подписант контрагента.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    status: <a data-footnote-ref href="#user-content-fn-26">ItemStatus</a>, // Статус
    expiry?: Date, // Срок действия
    name: string, // ФИО
    nameGenitive?: string, // ФИО в родительном падеже
    position?: string, // Должность
    positionGenitive?: string, // Должность в родительном падеже
    actsOnTheBasisOf?: string, // Действует на основании
    signName?: string, // Имя для подписи
    signFile?: ApiFileInfo, // Файл подписи
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
</code></pre>

### ApiTemplateInfo

Информация о шаблоне документа.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    name: string, // Наименование
    type: <a data-footnote-ref href="#user-content-fn-30">TemplateType</a>, // Тип
    status: <a data-footnote-ref href="#user-content-fn-26">ItemStatus</a>, // Статус
    expiry?: Date, // Срок действия
    file: <a data-footnote-ref href="#user-content-fn-28">ApiFileInfo</a>, // Основной файл
    fileVatInvoice?: <a data-footnote-ref href="#user-content-fn-28">ApiFileInfo</a>, // Файл счёта-фактуры для типа акта
    createDate: DateTime, // Дата и время создания, readonly
    changeDate: DateTime // Дата и время последнего изменения, readonly
}
</code></pre>

### ApiUserInfo

Информация о пользователе.

<pre class="language-typescript"><code class="lang-typescript">{
    id: number,
    email: string,
    displayName: string, // Отображаемое имя
    avatar?: <a data-footnote-ref href="#user-content-fn-28">ApiFileInfo</a> // Аватар пользователя
}
</code></pre>

[^1]: [Посмотреть схему](#apiuserinfo)

[^2]: [Посмотреть значения](/d/api/enums.md#contracttype)

[^3]: [Посмотреть значения](/d/api/enums.md#contractstate)

[^4]: [Посмотреть схему](#apicontractversion)

[^5]: [Посмотреть схему](#apicontractversioninfo)

[^6]: [Посмотреть значения](/d/api/enums.md#currency)

[^7]: [Посмотреть значения](/d/api/enums.md#billingperiod)

[^8]: [Посмотреть значения](/d/api/enums.md#contractpaymenttype)

[^9]: [Посмотреть значения](/d/api/enums.md#contractortype)

[^10]: [Посмотреть схему](#apiemployee)

[^11]: [Посмотреть схему](#apidocumentrule)

[^12]: [Посмотреть значения](/d/api/enums.md#documentautomode)

[^13]: [Посмотреть схему](#apitemplateinfo)

[^14]: [Посмотреть схему](#apiattachment)

[^15]: [Посмотреть значения](/d/api/enums.md#contractversiontype)

[^16]: [Посмотреть значения](/d/api/enums.md#contractsignstatus)

[^17]: [Посмотреть схему](#apicontractorinfo)

[^18]: [Посмотреть схему](#apibankaccount)

[^19]: [Посмотреть схему](#apisigner)

[^20]: [Посмотреть схему](#apidocumentfile)

[^21]: [Посмотреть схему](#apicontractline)

[^22]: [Посмотреть схему](#apicontractorinfowithshare)

[^23]: [Посмотреть значения](/d/api/enums.md#utilitytype)

[^24]: [Посмотреть значения](/d/api/enums.md#documentlinecategory)

[^25]: Посмотреть значения

[^26]: [Посмотреть значения](/d/api/enums.md#itemstatus)

[^27]: [Посмотреть значения](/d/api/enums.md#documentlinemode)

[^28]: [Посмотреть схему](#apifileinfo)

[^29]: [Посмотреть значения](/d/api/enums.md#paymenttype)

[^30]: [Посмотреть значения](/d/api/enums.md#templatetype)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pro.rent/d/api/models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
