---
title: "Version Diff"
method: GET
path: "/v1/structures/versions/{version_id}/diff"
tags: ["structures", "versions"]
---

# Version Diff

`GET /v1/structures/versions/{version_id}/diff`

## Request

- Base URL: `https://api.shapemaker.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.shapemaker.io/v1/structures/versions/{version_id}/diff`
- Auth: OAuth 2
  - Password
  - Token URL: `/v1/auth`

## Path parameters

- `version_id` string, required

## Response `200`

Successful Response

- DiffView
  - `ancillaries` AncillaryDiffResultView
    - `added` StructureDiscreteAncillaryView[]
      - `id` integer, required
      - `structureId` integer, required
      - `discreteAncillaryId` integer, required
      - `tenantId` integer, nullable
      - `mountHeightM` number, required: Height of the mounting point above ground level (in meters).
      - `azimuthDEG` number, required
      - `mountOption` 'TOP' | 'MIDDLE' | 'BOTTOM', required
      - `shieldingFactor` number, required
      - `mountBracketWeightKG` number, required
      - `shouldAnalyse` boolean, required
      - `discreteAncillary` DiscreteAncillaryView, required
        - `id` integer, required
        - `name` string, required
        - `ancillaryType` string, required
        - `weightKG` number, required
        - `defaultMountOption` string, required
        - `geometries` DiscreteAncillaryGeometryView[], required
          - `geometryType` string, required
          - `geometryValue` number, required
        - `organizationId` integer, required
        - `powerDetails` DefaultPowerDetailsView
          - `powerConsumptionKW` number, required
        - `forceCoefficients` ForceCoefficientsView, required
          - `front` number, nullable, required
          - `side` number, nullable, required
          - `rear` number, nullable, required
        - `epa` EpaView
          - `frontM2` number, required
          - `sideM2` number, required
          - `rearM2` number, required
          - `governingM2` number, nullable: The EPA (m²) in the governing wind direction, if available.
      - `xM` number, nullable
      - `yM` number, nullable
      - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
      - `shelterId` integer, nullable
      - `shelterXM` number, nullable
      - `shelterYM` number, nullable
      - `shelterZM` number, nullable
      - `shelterAzimuthDEG` number, nullable
      - `shelterIsExterior` boolean
      - `isPositionManual` boolean, required
    - `removed` StructureDiscreteAncillaryView[]
      - `id` integer, required
      - `structureId` integer, required
      - `discreteAncillaryId` integer, required
      - `tenantId` integer, nullable
      - `mountHeightM` number, required: Height of the mounting point above ground level (in meters).
      - `azimuthDEG` number, required
      - `mountOption` 'TOP' | 'MIDDLE' | 'BOTTOM', required
      - `shieldingFactor` number, required
      - `mountBracketWeightKG` number, required
      - `shouldAnalyse` boolean, required
      - `discreteAncillary` DiscreteAncillaryView, required
        - `id` integer, required
        - `name` string, required
        - `ancillaryType` string, required
        - `weightKG` number, required
        - `defaultMountOption` string, required
        - `geometries` DiscreteAncillaryGeometryView[], required
          - `geometryType` string, required
          - `geometryValue` number, required
        - `organizationId` integer, required
        - `powerDetails` DefaultPowerDetailsView
          - `powerConsumptionKW` number, required
        - `forceCoefficients` ForceCoefficientsView, required
          - `front` number, nullable, required
          - `side` number, nullable, required
          - `rear` number, nullable, required
        - `epa` EpaView
          - `frontM2` number, required
          - `sideM2` number, required
          - `rearM2` number, required
          - `governingM2` number, nullable: The EPA (m²) in the governing wind direction, if available.
      - `xM` number, nullable
      - `yM` number, nullable
      - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
      - `shelterId` integer, nullable
      - `shelterXM` number, nullable
      - `shelterYM` number, nullable
      - `shelterZM` number, nullable
      - `shelterAzimuthDEG` number, nullable
      - `shelterIsExterior` boolean
      - `isPositionManual` boolean, required
    - `changed` ChangedAncillaryView[]
      - `before` StructureDiscreteAncillaryView, required
        - `id` integer, required
        - `structureId` integer, required
        - `discreteAncillaryId` integer, required
        - `tenantId` integer, nullable
        - `mountHeightM` number, required: Height of the mounting point above ground level (in meters).
        - `azimuthDEG` number, required
        - `mountOption` 'TOP' | 'MIDDLE' | 'BOTTOM', required
        - `shieldingFactor` number, required
        - `mountBracketWeightKG` number, required
        - `shouldAnalyse` boolean, required
        - `discreteAncillary` DiscreteAncillaryView, required
          - `id` integer, required
          - `name` string, required
          - `ancillaryType` string, required
          - `weightKG` number, required
          - `defaultMountOption` string, required
          - `geometries` DiscreteAncillaryGeometryView[], required
            - `geometryType` string, required
            - `geometryValue` number, required
          - `organizationId` integer, required
          - `powerDetails` DefaultPowerDetailsView
            - `powerConsumptionKW` number, required
          - `forceCoefficients` ForceCoefficientsView, required
            - `front` number, nullable, required
            - `side` number, nullable, required
            - `rear` number, nullable, required
          - `epa` EpaView
            - `frontM2` number, required
            - `sideM2` number, required
            - `rearM2` number, required
            - `governingM2` number, nullable: The EPA (m²) in the governing wind direction, if available.
        - `xM` number, nullable
        - `yM` number, nullable
        - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
        - `shelterId` integer, nullable
        - `shelterXM` number, nullable
        - `shelterYM` number, nullable
        - `shelterZM` number, nullable
        - `shelterAzimuthDEG` number, nullable
        - `shelterIsExterior` boolean
        - `isPositionManual` boolean, required
      - `after` StructureDiscreteAncillaryView, required
        - `id` integer, required
        - `structureId` integer, required
        - `discreteAncillaryId` integer, required
        - `tenantId` integer, nullable
        - `mountHeightM` number, required: Height of the mounting point above ground level (in meters).
        - `azimuthDEG` number, required
        - `mountOption` 'TOP' | 'MIDDLE' | 'BOTTOM', required
        - `shieldingFactor` number, required
        - `mountBracketWeightKG` number, required
        - `shouldAnalyse` boolean, required
        - `discreteAncillary` DiscreteAncillaryView, required
          - `id` integer, required
          - `name` string, required
          - `ancillaryType` string, required
          - `weightKG` number, required
          - `defaultMountOption` string, required
          - `geometries` DiscreteAncillaryGeometryView[], required
            - `geometryType` string, required
            - `geometryValue` number, required
          - `organizationId` integer, required
          - `powerDetails` DefaultPowerDetailsView
            - `powerConsumptionKW` number, required
          - `forceCoefficients` ForceCoefficientsView, required
            - `front` number, nullable, required
            - `side` number, nullable, required
            - `rear` number, nullable, required
          - `epa` EpaView
            - `frontM2` number, required
            - `sideM2` number, required
            - `rearM2` number, required
            - `governingM2` number, nullable: The EPA (m²) in the governing wind direction, if available.
        - `xM` number, nullable
        - `yM` number, nullable
        - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
        - `shelterId` integer, nullable
        - `shelterXM` number, nullable
        - `shelterYM` number, nullable
        - `shelterZM` number, nullable
        - `shelterAzimuthDEG` number, nullable
        - `shelterIsExterior` boolean
        - `isPositionManual` boolean, required
      - `fields` string[], required
  - `mounts` MountDiffResultView
    - `added` TowerMountView[]
      - `id` integer, required
      - `uuid` string, uuid4, required
      - `structureId` integer, required
      - `name` string, required
      - `elevationM` number, required
      - `azimuthDeg` number, required
      - `placement` 'axis' | 'face'
      - `xM` number, nullable
      - `yM` number, nullable
      - `rotationDeg` number
      - `sourceMountDesignUuid` string, nullable
      - `members` MountDesignMemberView[], required
        - `uuid` string, required
        - `memberNumber` integer, required
        - `geometry` MountDesignMemberGeometryView, required
          - `p1` Point3D, required
            - `x` number, required
            - `y` number, required
            - `z` number, required
          - `p2` Point3D, required
            - `x` number, required
            - `y` number, required
            - `z` number, required
          - `arc` MountDesignMemberArcView
            - `through` Point3D, required
              - …
            - `loopThrough` Point3D
              - …
        - `properties` MountDesignMemberPropertiesView, required
          - `crossSection` MountDesignCrossSectionView, required
            - `id` string, required
            - `combinedCrossSectionParameters` CombinedCrossSectionParameters
              - …
            - `shape` CrossSectionShapeView
              - …
          - `steelGrade` string, required
          - `memberType` 'Leg1' | 'Diagonal1' | 'Diagonal2' | 'Horizontal1' | 'Horizontal2' | 'Secondary1' | 'Secondary2' | 'Secondary3' | 'Secondary4' | 'Hip1' | 'Hip2' | 'Hip3' | 'Hip4' | 'Plan1' | 'Plan2' | 'Plan3' | 'Plan4' | 'GuyWire' | 'MonopoleLeg' | 'RigidArm' | 'SingleLeg' | 'RooftopBeam' | 'MountMember', required
          - `releasesStart` MemberEndReleasesView
            - `momentY` boolean
            - `momentZ` boolean
            - `torsion` boolean
          - `releasesEnd` MemberEndReleasesView
            - `momentY` boolean
            - `momentZ` boolean
            - `torsion` boolean
          - `stability` MemberStabilityOutput
            - `axisY` MemberAxisStability
              - …
            - `axisZ` MemberAxisStability
              - …
            - `axisV` MemberAxisStability
              - …
            - `restraints` MemberRestraintOutput[]
              - …
            - `bucklingLengthOverrides` MemberBucklingLengthOverride[]
              - …
        - `orientationDeg` number
        - `startNodeUuid` string, nullable
        - `endNodeUuid` string, nullable
      - `supports` TowerMountSupportView[]
        - `uuid` string, required
        - `memberUuid` string, required
        - `positionAlongMemberMm` number, required
        - `dofType` 'freestanding' | 'pinned' | 'fixed' | 'custom', required
        - `restraints` SupportRestraintsView
          - `translation` SupportAxisRestraintsView, required
            - `x` boolean, required
            - `y` boolean, required
            - `z` boolean, required
          - `rotation` SupportAxisRestraintsView, required
            - `x` boolean, required
            - `y` boolean, required
            - `z` boolean, required
        - `coordinateSystem` 'global' | 'local'
        - `isAuto` boolean
      - `ancillaries` TowerMountAncillaryView[]
        - `uuid` string, required
        - `discreteAncillaryId` integer, required
        - `memberUuid` string, required
        - `positionAlongMemberMm` number, required
        - `azimuthDeg` number, required
        - `offsetXMm` number
        - `offsetYMm` number
        - `offsetZMm` number
        - `shieldingFactor` number
        - `mountBracketWeightKg` number
        - `shouldAnalyse` boolean, required
        - `tenantId` integer, nullable, required
        - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
        - `createdAtUtc` string, date-time, required
      - `dismissedLegContacts` TowerMountDismissedContactView[]
        - `memberUuid` string, required
        - `positionAlongMemberMm` number, required
        - `xM` number, required
        - `yM` number, required
        - `zM` number, required
      - `capacityStatus` 'UNKNOWN' | 'OVERLOADED' | 'UNDERLOADED'
      - `governingUtilization` number, nullable
      - `analysisRunId` string, uuid4, nullable
    - `removed` TowerMountView[]
      - `id` integer, required
      - `uuid` string, uuid4, required
      - `structureId` integer, required
      - `name` string, required
      - `elevationM` number, required
      - `azimuthDeg` number, required
      - `placement` 'axis' | 'face'
      - `xM` number, nullable
      - `yM` number, nullable
      - `rotationDeg` number
      - `sourceMountDesignUuid` string, nullable
      - `members` MountDesignMemberView[], required
        - `uuid` string, required
        - `memberNumber` integer, required
        - `geometry` MountDesignMemberGeometryView, required
          - `p1` Point3D, required
            - `x` number, required
            - `y` number, required
            - `z` number, required
          - `p2` Point3D, required
            - `x` number, required
            - `y` number, required
            - `z` number, required
          - `arc` MountDesignMemberArcView
            - `through` Point3D, required
              - …
            - `loopThrough` Point3D
              - …
        - `properties` MountDesignMemberPropertiesView, required
          - `crossSection` MountDesignCrossSectionView, required
            - `id` string, required
            - `combinedCrossSectionParameters` CombinedCrossSectionParameters
              - …
            - `shape` CrossSectionShapeView
              - …
          - `steelGrade` string, required
          - `memberType` 'Leg1' | 'Diagonal1' | 'Diagonal2' | 'Horizontal1' | 'Horizontal2' | 'Secondary1' | 'Secondary2' | 'Secondary3' | 'Secondary4' | 'Hip1' | 'Hip2' | 'Hip3' | 'Hip4' | 'Plan1' | 'Plan2' | 'Plan3' | 'Plan4' | 'GuyWire' | 'MonopoleLeg' | 'RigidArm' | 'SingleLeg' | 'RooftopBeam' | 'MountMember', required
          - `releasesStart` MemberEndReleasesView
            - `momentY` boolean
            - `momentZ` boolean
            - `torsion` boolean
          - `releasesEnd` MemberEndReleasesView
            - `momentY` boolean
            - `momentZ` boolean
            - `torsion` boolean
          - `stability` MemberStabilityOutput
            - `axisY` MemberAxisStability
              - …
            - `axisZ` MemberAxisStability
              - …
            - `axisV` MemberAxisStability
              - …
            - `restraints` MemberRestraintOutput[]
              - …
            - `bucklingLengthOverrides` MemberBucklingLengthOverride[]
              - …
        - `orientationDeg` number
        - `startNodeUuid` string, nullable
        - `endNodeUuid` string, nullable
      - `supports` TowerMountSupportView[]
        - `uuid` string, required
        - `memberUuid` string, required
        - `positionAlongMemberMm` number, required
        - `dofType` 'freestanding' | 'pinned' | 'fixed' | 'custom', required
        - `restraints` SupportRestraintsView
          - `translation` SupportAxisRestraintsView, required
            - `x` boolean, required
            - `y` boolean, required
            - `z` boolean, required
          - `rotation` SupportAxisRestraintsView, required
            - `x` boolean, required
            - `y` boolean, required
            - `z` boolean, required
        - `coordinateSystem` 'global' | 'local'
        - `isAuto` boolean
      - `ancillaries` TowerMountAncillaryView[]
        - `uuid` string, required
        - `discreteAncillaryId` integer, required
        - `memberUuid` string, required
        - `positionAlongMemberMm` number, required
        - `azimuthDeg` number, required
        - `offsetXMm` number
        - `offsetYMm` number
        - `offsetZMm` number
        - `shieldingFactor` number
        - `mountBracketWeightKg` number
        - `shouldAnalyse` boolean, required
        - `tenantId` integer, nullable, required
        - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
        - `createdAtUtc` string, date-time, required
      - `dismissedLegContacts` TowerMountDismissedContactView[]
        - `memberUuid` string, required
        - `positionAlongMemberMm` number, required
        - `xM` number, required
        - `yM` number, required
        - `zM` number, required
      - `capacityStatus` 'UNKNOWN' | 'OVERLOADED' | 'UNDERLOADED'
      - `governingUtilization` number, nullable
      - `analysisRunId` string, uuid4, nullable
    - `changed` ChangedMountView[]
      - `before` TowerMountView, required
        - `id` integer, required
        - `uuid` string, uuid4, required
        - `structureId` integer, required
        - `name` string, required
        - `elevationM` number, required
        - `azimuthDeg` number, required
        - `placement` 'axis' | 'face'
        - `xM` number, nullable
        - `yM` number, nullable
        - `rotationDeg` number
        - `sourceMountDesignUuid` string, nullable
        - `members` MountDesignMemberView[], required
          - `uuid` string, required
          - `memberNumber` integer, required
          - `geometry` MountDesignMemberGeometryView, required
            - `p1` Point3D, required
              - …
            - `p2` Point3D, required
              - …
            - `arc` MountDesignMemberArcView
              - …
          - `properties` MountDesignMemberPropertiesView, required
            - `crossSection` MountDesignCrossSectionView, required
              - …
            - `steelGrade` string, required
            - `memberType` 'Leg1' | 'Diagonal1' | 'Diagonal2' | 'Horizontal1' | 'Horizontal2' | 'Secondary1' | 'Secondary2' | 'Secondary3' | 'Secondary4' | 'Hip1' | 'Hip2' | 'Hip3' | 'Hip4' | 'Plan1' | 'Plan2' | 'Plan3' | 'Plan4' | 'GuyWire' | 'MonopoleLeg' | 'RigidArm' | 'SingleLeg' | 'RooftopBeam' | 'MountMember', required
            - `releasesStart` MemberEndReleasesView
              - …
            - `releasesEnd` MemberEndReleasesView
              - …
            - `stability` MemberStabilityOutput
              - …
          - `orientationDeg` number
          - `startNodeUuid` string, nullable
          - `endNodeUuid` string, nullable
        - `supports` TowerMountSupportView[]
          - `uuid` string, required
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `dofType` 'freestanding' | 'pinned' | 'fixed' | 'custom', required
          - `restraints` SupportRestraintsView
            - `translation` SupportAxisRestraintsView, required
              - …
            - `rotation` SupportAxisRestraintsView, required
              - …
          - `coordinateSystem` 'global' | 'local'
          - `isAuto` boolean
        - `ancillaries` TowerMountAncillaryView[]
          - `uuid` string, required
          - `discreteAncillaryId` integer, required
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `azimuthDeg` number, required
          - `offsetXMm` number
          - `offsetYMm` number
          - `offsetZMm` number
          - `shieldingFactor` number
          - `mountBracketWeightKg` number
          - `shouldAnalyse` boolean, required
          - `tenantId` integer, nullable, required
          - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
          - `createdAtUtc` string, date-time, required
        - `dismissedLegContacts` TowerMountDismissedContactView[]
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `xM` number, required
          - `yM` number, required
          - `zM` number, required
        - `capacityStatus` 'UNKNOWN' | 'OVERLOADED' | 'UNDERLOADED'
        - `governingUtilization` number, nullable
        - `analysisRunId` string, uuid4, nullable
      - `after` TowerMountView, required
        - `id` integer, required
        - `uuid` string, uuid4, required
        - `structureId` integer, required
        - `name` string, required
        - `elevationM` number, required
        - `azimuthDeg` number, required
        - `placement` 'axis' | 'face'
        - `xM` number, nullable
        - `yM` number, nullable
        - `rotationDeg` number
        - `sourceMountDesignUuid` string, nullable
        - `members` MountDesignMemberView[], required
          - `uuid` string, required
          - `memberNumber` integer, required
          - `geometry` MountDesignMemberGeometryView, required
            - `p1` Point3D, required
              - …
            - `p2` Point3D, required
              - …
            - `arc` MountDesignMemberArcView
              - …
          - `properties` MountDesignMemberPropertiesView, required
            - `crossSection` MountDesignCrossSectionView, required
              - …
            - `steelGrade` string, required
            - `memberType` 'Leg1' | 'Diagonal1' | 'Diagonal2' | 'Horizontal1' | 'Horizontal2' | 'Secondary1' | 'Secondary2' | 'Secondary3' | 'Secondary4' | 'Hip1' | 'Hip2' | 'Hip3' | 'Hip4' | 'Plan1' | 'Plan2' | 'Plan3' | 'Plan4' | 'GuyWire' | 'MonopoleLeg' | 'RigidArm' | 'SingleLeg' | 'RooftopBeam' | 'MountMember', required
            - `releasesStart` MemberEndReleasesView
              - …
            - `releasesEnd` MemberEndReleasesView
              - …
            - `stability` MemberStabilityOutput
              - …
          - `orientationDeg` number
          - `startNodeUuid` string, nullable
          - `endNodeUuid` string, nullable
        - `supports` TowerMountSupportView[]
          - `uuid` string, required
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `dofType` 'freestanding' | 'pinned' | 'fixed' | 'custom', required
          - `restraints` SupportRestraintsView
            - `translation` SupportAxisRestraintsView, required
              - …
            - `rotation` SupportAxisRestraintsView, required
              - …
          - `coordinateSystem` 'global' | 'local'
          - `isAuto` boolean
        - `ancillaries` TowerMountAncillaryView[]
          - `uuid` string, required
          - `discreteAncillaryId` integer, required
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `azimuthDeg` number, required
          - `offsetXMm` number
          - `offsetYMm` number
          - `offsetZMm` number
          - `shieldingFactor` number
          - `mountBracketWeightKg` number
          - `shouldAnalyse` boolean, required
          - `tenantId` integer, nullable, required
          - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
          - `createdAtUtc` string, date-time, required
        - `dismissedLegContacts` TowerMountDismissedContactView[]
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `xM` number, required
          - `yM` number, required
          - `zM` number, required
        - `capacityStatus` 'UNKNOWN' | 'OVERLOADED' | 'UNDERLOADED'
        - `governingUtilization` number, nullable
        - `analysisRunId` string, uuid4, nullable
      - `fields` string[], required
      - `ancillaries` MountAncillaryDiffResultView
        - `added` TowerMountAncillaryView[]
          - `uuid` string, required
          - `discreteAncillaryId` integer, required
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `azimuthDeg` number, required
          - `offsetXMm` number
          - `offsetYMm` number
          - `offsetZMm` number
          - `shieldingFactor` number
          - `mountBracketWeightKg` number
          - `shouldAnalyse` boolean, required
          - `tenantId` integer, nullable, required
          - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
          - `createdAtUtc` string, date-time, required
        - `removed` TowerMountAncillaryView[]
          - `uuid` string, required
          - `discreteAncillaryId` integer, required
          - `memberUuid` string, required
          - `positionAlongMemberMm` number, required
          - `azimuthDeg` number, required
          - `offsetXMm` number
          - `offsetYMm` number
          - `offsetZMm` number
          - `shieldingFactor` number
          - `mountBracketWeightKg` number
          - `shouldAnalyse` boolean, required
          - `tenantId` integer, nullable, required
          - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
          - `createdAtUtc` string, date-time, required
        - `changed` ChangedMountAncillaryView[]
          - `before` TowerMountAncillaryView, required
            - `uuid` string, required
            - `discreteAncillaryId` integer, required
            - `memberUuid` string, required
            - `positionAlongMemberMm` number, required
            - `azimuthDeg` number, required
            - `offsetXMm` number
            - `offsetYMm` number
            - `offsetZMm` number
            - `shieldingFactor` number
            - `mountBracketWeightKg` number
            - `shouldAnalyse` boolean, required
            - `tenantId` integer, nullable, required
            - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
            - `createdAtUtc` string, date-time, required
          - `after` TowerMountAncillaryView, required
            - `uuid` string, required
            - `discreteAncillaryId` integer, required
            - `memberUuid` string, required
            - `positionAlongMemberMm` number, required
            - `azimuthDeg` number, required
            - `offsetXMm` number
            - `offsetYMm` number
            - `offsetZMm` number
            - `shieldingFactor` number
            - `mountBracketWeightKg` number
            - `shouldAnalyse` boolean, required
            - `tenantId` integer, nullable, required
            - `status` 'INSTALLED' | 'PLANNED' | 'REMOVED' | 'UNKNOWN' | 'MARKED FOR REMOVAL', required
            - `createdAtUtc` string, date-time, required
          - `fields` string[], required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/shapemaker/apis/shapemaker-api.md) - [All operations](https://skmtc.dev/shapemaker/apis/shapemaker-api/llms.txt) - [OpenAPI document](https://skmtc.dev/shapemaker/apis/shapemaker-api/revisions/b8461cf1236c?raw)
