PropertyMe · Arazzo Workflow

Schedule, conduct, report and close a PropertyMe inspection

Version 1.0.0

The routine and entry/exit inspection lifecycle. Requires activity:read for the reads and activity:write for every transition. The permitted transition graph is not published, so each step reads current state first and treats a 400 as an illegal transition rather than a retryable failure. Note a defect in PropertyMe's own contract: the transition paths are templated /v1/inspections/{id}/... in lower case while the declared path parameter is named Id. This workflow uses the DECLARED parameter name, Id.

1 workflow 1 source API 1 provider
View Spec View on GitHub Real-EstateAustraliaProperty ManagementRentalsPropTechTenancyTrust AccountingInspectionsMaintenanceDocumentsPaymentsNew ZealandArazzoWorkflows

Provider

propertyme

Workflows

schedule-inspect-report-close
Create an inspection on a property, schedule it, conduct it, file the report and close it.
9 steps inputs: inspectionId, lotId, reportId
1
create-inspection
Create the inspection. No idempotency key exists — on a timeout, confirm with SearchInspectionsRequestinspectionssearch_Get filtered by LotId before retrying.
2
read-inspection
Read current state before transitioning.
4
conduct-inspection
Mark the inspection as conducted.
6
update-report
Revise the report. The operationId ends _Create but the method is PUT.
7
read-report
The report is fetched by REPORT id on its own path, not under the inspection.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Schedule, conduct, report and close a PropertyMe inspection
  version: 1.0.0
  description: >-
    The routine and entry/exit inspection lifecycle. Requires activity:read for the reads and
    activity:write for every transition. The permitted transition graph is not published, so each
    step reads current state first and treats a 400 as an illegal transition rather than a retryable
    failure. Note a defect in PropertyMe's own contract: the transition paths are templated
    /v1/inspections/{id}/... in lower case while the declared path parameter is named Id. This
    workflow uses the DECLARED parameter name, Id.
  x-realizes-capability-ids:
  - BC-4940.20
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-4940.20
      capability_name: Property Maintenance & Work Order Management
      spec: propertyme-scope-activities-api-openapi.yml
      confidence: 0.72
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: scopeActivitiesApi
  url: ../openapi/propertyme-scope-activities-api-openapi.yml
  type: openapi
workflows:
- workflowId: schedule-inspect-report-close
  summary: Create an inspection on a property, schedule it, conduct it, file the report and close it.
  inputs:
    type: object
    properties:
      lotId:
        type: string
        description: GUID of the lot (property) being inspected.
      inspectionId:
        type: string
        description: GUID of the inspection once created.
      reportId:
        type: string
        description: GUID of the inspection report.
    required: [lotId]
  steps:
  - stepId: create-inspection
    description: >-
      Create the inspection. No idempotency key exists — on a timeout, confirm with
      SearchInspectionsRequestinspectionssearch_Get filtered by LotId before retrying.
    operationId: AddInspectionRequestinspections_Post
    parameters:
    - name: Accept
      in: header
      value: application/json
    successCriteria:
    - condition: $statusCode == 200
  - stepId: read-inspection
    description: Read current state before transitioning.
    operationId: GetInspectionRequestinspectionsId_Get
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.inspectionId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: schedule-inspection
    operationId: ScheduleInspectionRequestinspectionsidschedule_Post
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.inspectionId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: conduct-inspection
    description: Mark the inspection as conducted.
    operationId: InspectInspectionRequestinspectionsidinspect_Post
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.inspectionId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: create-report
    operationId: CreateInspectionReportRequestinspectionsIdreport_Post
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.inspectionId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: update-report
    description: Revise the report. The operationId ends _Create but the method is PUT.
    operationId: UpdateInspectionReportRequestinspectionsIdreport_Create
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.inspectionId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: read-report
    description: The report is fetched by REPORT id on its own path, not under the inspection.
    operationId: GetInspectionReportRequestinspectionsreportsId_Get
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.reportId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: attach-document
    operationId: AddInspectionDocumentRequestinspectionsIddocuments_Post
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.inspectionId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: close-inspection
    operationId: CloseInspectionRequestinspectionsidclose_Post
    parameters:
    - name: Accept
      in: header
      value: application/json
    - name: Id
      in: path
      value: $inputs.inspectionId
    successCriteria:
    - condition: $statusCode == 200

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/propertyme-inspection-cycle"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.