generated: '2026-07-26' method: generated source: openapi/propertyme-openapi.json description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 86 by_action_class: connected: 48 acting: 38 by_consequence: read: 48 write: 38 human_in_the_loop_required: 0 operations: - path: /v1/tenancies method: get operationId: TenancyRequesttenancies_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tasks method: get operationId: ChangedTasksRequesttasks_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tasks method: post operationId: AddTaskRequesttasks_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/members method: get operationId: MembersRequestmembers_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots method: get operationId: ChangedLotRequestlots_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks method: get operationId: ChangedJobTaskRequestjobtasks_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks method: post operationId: AddJobRequestjobtasks_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections method: get operationId: ChangedInspectionsRequestinspections_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections method: post operationId: AddInspectionRequestinspections_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/contacts method: get operationId: ChangedContactsRequestcontacts_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/bills method: post operationId: AddBillRequestbills_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/tenancies/balances method: get operationId: TenancyBalanceRequesttenanciesbalances_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tasks/{Id} method: get operationId: GetTaskRequesttasksId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tasks/{Id} method: post operationId: UpdateTaskRequesttasksId_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/portfolios/disconnect method: delete operationId: DisconnectPortfolioRequestportfoliosdisconnect_Delete x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/lots/sales method: get operationId: LotActiveSalesRequestlotssales_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/archived method: get operationId: LotArchivedRequestlotsarchived_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/{Id} method: get operationId: LotRequestlotsId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/rentals method: get operationId: LotRentalsRequestlotsrentals_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/vacancy method: get operationId: LotVacantSalesRequestlotsvacancy_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks/{Id} method: get operationId: JobTaskRequestjobtasksId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks/{Id} method: post operationId: UpdateJobRequestjobtasksId_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/search method: get operationId: SearchJobTaskRequestjobtaskssearch_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections/{id} method: post operationId: UpdateInspectionRequestinspectionsid_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{id} method: delete operationId: DeleteInspectionRequestinspectionsid_Delete x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{Id} method: get operationId: GetInspectionRequestinspectionsId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections/search method: get operationId: SearchInspectionsRequestinspectionssearch_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections/query method: get operationId: QueryInspectionRequestinspectionsquery_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/contacts/agency method: get operationId: AgencyRequestcontactsagency_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/contacts/{Id} method: get operationId: ContactRequestcontactsId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/contacts/ownerships method: get operationId: ContactOwnershipsRequestcontactsownerships_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/contacts/suppliers method: get operationId: QuerySuppliersRequestcontactssuppliers_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/contacts/tenants method: get operationId: ContactTenantsRequestcontactstenants_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tenancies/balances/{id} method: get operationId: SingleTenancyBalanceRequesttenanciesbalancesid_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tasks/{Id}/comments method: post operationId: AddTaskCommentRequesttasksIdcomments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/tasks/{Id}/documents method: post operationId: AddTaskDocumentRequesttasksIddocuments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/tasks/{Id}/images method: get operationId: GetTaskImagestasksIdimages_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tasks/{Id}/members method: get operationId: GetTaskManagerRequesttasksIdmembers_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/{Id}/comments method: post operationId: AddLotCommentRequestlotsIdcomments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/lots/{Id}/documents method: post operationId: AddLotDocumentRequestlotsIddocuments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/lots/{Id}/images method: get operationId: GetLotImageslotsIdimages_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/{Id}/detail method: get operationId: LotDetailRequestlotsIddetail_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/{Id}/members method: get operationId: LotManagerRequestlotsIdmembers_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks/{Id}/assign method: post operationId: AssignTaskRequestjobtasksIdassign_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/comments method: post operationId: AddJobCommentRequestjobtasksIdcomments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/documents method: get operationId: GetJobDocumentsjobtasksIddocuments_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks/{Id}/documents method: post operationId: AddJobDocumentsRequestjobtasksIddocuments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/images method: get operationId: GetJobImagesjobtasksIdimages_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks/{Id}/images method: post operationId: AddJobImagesRequestjobtasksIdimages_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/members method: get operationId: JobTaskManagerRequestjobtasksIdmembers_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks/{Id}/quotation method: post operationId: AddJobTasksQuotationRequestjobtasksIdquotation_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/quotations method: get operationId: GetJobTasksQuotationRequestjobtasksIdquotations_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/jobtasks/{Id}/approve method: post operationId: ApproveJobTaskRequestjobtasksIdapprove_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/complete method: post operationId: CompleteJobTaskRequestjobtasksIdcomplete_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/reject method: post operationId: RejectJobTaskRequestjobtasksIdreject_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/reopen method: post operationId: ReopenJobTaskRequestjobtasksIdreopen_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{id}/close method: post operationId: CloseInspectionRequestinspectionsidclose_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{Id}/comments method: post operationId: AddInspectionCommentRequestinspectionsIdcomments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{Id}/documents method: post operationId: AddInspectionDocumentRequestinspectionsIddocuments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{Id}/images method: get operationId: GetInspectionsImagesinspectionsIdimages_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections/{id}/inspect method: post operationId: InspectInspectionRequestinspectionsidinspect_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/status/{Status} method: get operationId: GetInspectionsRequestinspectionsstatusStatus_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections/Members/{Id} method: get operationId: GetInspectionManagerRequestinspectionsMembersId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections/{id}/reopen method: post operationId: ReopenInspectionRequestinspectionsidreopen_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{id}/reschedule method: post operationId: RescheduleInspectionRequestinspectionsidreschedule_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{id}/schedule method: post operationId: ScheduleInspectionRequestinspectionsidschedule_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/reports/{Id} method: get operationId: GetInspectionReportRequestinspectionsreportsId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/inspections/{Id}/report method: put operationId: UpdateInspectionReportRequestinspectionsIdreport_Create x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/inspections/{Id}/report method: post operationId: CreateInspectionReportRequestinspectionsIdreport_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/dashboards/activities/{Type} method: get operationId: ActivityDashboardRequestdashboardsactivitiesType_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/dashboards/communications/{Type} method: get operationId: CommunicationDashboardRequestdashboardscommunicationsType_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/dashboards/lots/{Type} method: get operationId: LotDashboardRequestdashboardslotsType_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/dashboards/transactions/{Type} method: get operationId: TransactionDashboardRequestdashboardstransactionsType_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/contacts/{Id}/comments method: post operationId: AddContactCommentRequestcontactsIdcomments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/contacts/{Id}/documents method: post operationId: AddContactDocumentRequestcontactsIddocuments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/contacts/{Id}/images method: get operationId: GetContactImagescontactsIdimages_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/{Id}/folio/documents method: post operationId: AddLotFolioDocumentRequestlotsIdfoliodocuments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/quotation/{QuoteId} method: post operationId: UpdateJobTasksQuotationRequestjobtasksIdquotationQuoteId_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/contacts/{Id}/alerts/{Type} method: get operationId: GetContactAlertsRequestcontactsIdalertsType_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lots/{Id}/alerts/{Type} method: get operationId: GetContactAlertsRequestlotsIdalertsType_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v2/jobtasks/{Id} method: get operationId: JobTaskV2RequestjobtasksId_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v2/jobtasks/{Id} method: post operationId: UpdateJobV2RequestjobtasksId_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v2/jobtasks/search method: get operationId: SearchJobTaskV2Requestjobtaskssearch_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v2/jobtasks method: get operationId: ChangedJobTaskV2Requestjobtasks_Get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v2/jobtasks method: post operationId: AddJobV2Requestjobtasks_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/jobtasks/{Id}/quotation/{QuoteId}/documents method: post operationId: AddJobTasksQuotationDocumentRequestjobtasksIdquotationQuoteIddocuments_Post x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required