---
title: "Analyze Tower Mount"
method: POST
path: "/v1/structures/{structure_id}/mounts/{mount_uuid}/analyze"
tags: ["structures"]
---

# Analyze Tower Mount

`POST /v1/structures/{structure_id}/mounts/{mount_uuid}/analyze`

## 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/{structure_id}/mounts/{mount_uuid}/analyze`
- Auth: OAuth 2
  - Password
  - Token URL: `/v1/auth`

## Path parameters

- `structure_id` string, required
- `mount_uuid` string, required

## Response `200`

Successful Response

- TowerMountAnalyzeResponseView: Outcome of a tower-mount analysis run: the mount with its regenerated auto supports and fresh capacity status, plus the id of the new run. The analysis itself is read from GET .../analysis: returning it here too sent the largest payload of the page twice and made the run re-read the row it had just written.
  - `mount` 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
          - `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
            - `x` number, required
            - `y` number, required
            - `z` number, required
          - `loopThrough` Point3D
            - `x` number, required
            - `y` number, required
            - `z` number, required
      - `properties` MountDesignMemberPropertiesView, required
        - `crossSection` MountDesignCrossSectionView, required
          - `id` string, required
          - `combinedCrossSectionParameters` CombinedCrossSectionParameters
            - `connectorSpacingMm` number, required: Spacing between connectors in mm along the member
            - `hasCompositeAction` boolean, required
          - `shape` CrossSectionShapeView
            - `shapeType` string, required
            - `diameterMm` number, nullable
            - `heightMm` number, nullable
            - `widthMm` number, nullable
            - `thicknessMm` number, nullable
            - `webThicknessMm` number, nullable
        - `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
            - `buckling` MemberEffectiveLength
              - …
            - `lateralTorsional` MemberEffectiveLength
              - …
          - `axisZ` MemberAxisStability
            - `buckling` MemberEffectiveLength
              - …
            - `lateralTorsional` MemberEffectiveLength
              - …
          - `axisV` MemberAxisStability
            - `buckling` MemberEffectiveLength
              - …
            - `lateralTorsional` MemberEffectiveLength
              - …
          - `restraints` MemberRestraintOutput[]
            - `positionAlongMemberMm` number, required
            - `points` MemberRestraintPoint[]
              - …
          - `bucklingLengthOverrides` MemberBucklingLengthOverride[]
            - `axis` 'y' | 'z' | 'v', required
            - `startMm` number, required
            - `endMm` number, nullable
            - `factor` number, nullable
            - `lengthMm` number, nullable
      - `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
  - `analysisRunId` string, uuid4, 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)
