---
title: "Add New Structure From File"
method: POST
path: "/v1/structures/parse-file"
tags: ["structures"]
---

# Add New Structure From File

`POST /v1/structures/parse-file`

## 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/parse-file`
- Auth: OAuth 2
  - Password
  - Token URL: `/v1/auth`

## Request body

- CreateStructureFromFileInput
  - `name` string
  - `content` string
  - `fileType` 'MS_TOWER_ARC_EXPORT' | 'DLUBAL_PYTHON_SCRIPT' | 'ERI_TNX', required
  - `structureType` 'tower' | 'guyed_mast' | 'monopole' | 'rooftop' | 'hybrid' | 'mount' | 'unknown', required
  - `tags` string[], nullable
  - `sectionHeights` number[], nullable

## Response `200`

Successful Response

- Structure
  - `id` integer, required
  - `uuid` string, uuid4, required
  - `name` string, required
  - `project_id` string, nullable
  - `created_by` string, required
  - `created_at` string, date-time, required
  - `design_standard_key` 'EN_01' | 'MSZ_EN_01' | 'NS_EN_01' | 'DIN_EN_01' | 'NF_EN_01' | 'SFS_EN_01' | 'SS_EN_01' | 'BS_EN_01' | 'IS_EN_01' | 'TIA_222_I' | 'TIA_222_H' | 'TIA_222_G' | 'TIA_222_F' | 'PN_EN_01' | 'BDS_EN_01' | 'UNI_EN_01' | 'ASNZS_01', required: Alembic does not detect changes in enums, so the enum constraint has to be manually migrated when changing this enum
  - `geometry_description` GeometryDescription, required
    - `type` 'SECTION_COMPOSITION' | 'TRIPOD_PIPE_PARAMETERS' | 'PARSED_GEOMETRY' | 'NONE', required
    - `data` object, required
  - `structure_type` 'tower' | 'guyed_mast' | 'monopole' | 'rooftop' | 'hybrid' | 'mount', required: Alembic does not detect changes in enums, so the enum constraint has to be manually migrated when changing this enum
  - `guy_wires` WiresInput
    - `wires_and_foundations` WiresAndFoundation[], required
      - `id` integer, nullable
      - `wires` SingleLevelWireInput[], required
        - `id` integer, nullable
        - `cross_section` 'ROPE_1x7_D10' | 'ROPE_1x7_D11' | 'ROPE_1x7_D13' | 'ROPE_1x37_D25' | 'SWR_1x7_D9' | 'SWR_1x7_D11.4' | 'SWR_1x19_D9.2' | 'SWR_1x19_D11.6' | 'SWR_1x37_D9.2' | 'SWR_1x37_D11.6' | 'SWR_6x7_D11.1' | 'SWR_6x7_D14' | 'SS_1x3_D5.6' | 'SS_1x3_D9.9' | 'SS_1x7_D5.1' | 'SS_1x7_D6.4' | 'SS_1x7_D7.3' | 'SS_1x7_D9.2' | 'SS_1x7_D10.6' | 'SS_1x7_D12.1' | 'SS_1x7_D13.1' | 'SS_1x19_D15.4' | 'SS_1x19_D17.6' | 'SS_1x19_D20.1' | 'SS_1x19_D21.8' | 'SS_1x37_D21.0' | 'NS_1x7_D5.4' | 'NS_1x7_D6.9' | 'NS_1x7_D7.7' | 'NS_1x12_D7.5' | 'NS_1x12_D9.5' | 'NS_1x19_D9.0' | 'NS_1x19_D10.8' | 'NS_1x19_D11.5' | 'NS_1x19_D12.8' | 'NS_1x19_D15.0' | 'NS_1x37_D17.9' | 'NS_1x37_D21.0' | 'BS_1x7_D9.8' | 'BS_1x7_D12' | 'BS_1x7_D14.3' | 'NS_1x37_D21.21' | 'NS_1x19_D16.0' | 'NS_1x19_D14.0' | 'NS_1x7_D12.7' | 'BS_6x19_D16.0' | 'BS_6x19_D12.0', required
        - `material_id` string, required
        - `elevation_from_structure_base` number, required
        - `initial_tension` number, required
        - `termination_type` 'metal_filled_socket' | 'resin_filled_socket' | 'ferrule_secured_eye' | 'swaged_socket' | 'u_bolt_grip': Guy wire termination (end assembly) classes from EN 1993-1-11 Tab. 6.3. Stored per guy wire; None means the factor that was hardcoded before the termination became an input is assumed (see the defaults below).
        - `azimuth_offset_deg` number
        - `radial_offset_m` number
        - `elevation_offset_m` number
      - `foundation` GuyFoundation, required
        - `id` integer, nullable
        - `distance_from_center` number, required
        - `elevation` number
        - `azimuth` number, required
        - `guy_foundation_soil` GuyFoundationSoil, required
          - `id` integer, nullable
          - `footing_depth` number, required
          - `water_level` number, required
          - `is_drained` boolean, required
          - `soil_properties` GuySoilProperties, required
            - `id` integer, nullable
            - `angle_of_friction` number, required
            - `cohesion` number, required
            - `soil_density` number, required
            - `characteristic_undrained_shear_strength` number, nullable
          - `backfill_soil_properties` GuySoilProperties, required
            - `id` integer, nullable
            - `angle_of_friction` number, required
            - `cohesion` number, required
            - `soil_density` number, required
            - `characteristic_undrained_shear_strength` number, nullable
        - `foundation_block` CubicShapeGuyFoundationBlock, required
          - `width` number, required
          - `height` number, required
          - `breadth` number, required
  - `product_id` string, nullable, required
  - `capacity_status` 'UNKNOWN' | 'OVERLOADED' | 'UNDERLOADED', required
  - `is_stale_analysis` boolean, required
  - `is_invalidated_analysis` boolean
  - `max_utilization_percent` number, nullable
  - `tags` StructureTag[], required
    - `value` string, required
    - `color` string, required
  - `organization_id` integer, required
  - `analysis_run_id` string, uuid4, nullable
  - `draft_count` integer
  - `version_seq` integer
  - `role` 'live' | 'draft' | 'snapshot'

## 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)
