---
title: "Generate Foundation Groups From Templates"
method: POST
path: "/v1/product/{family_uuid}/foundation-groups/generate-from-templates"
tags: ["products", "foundation groups"]
---

# Generate Foundation Groups From Templates

`POST /v1/product/{family_uuid}/foundation-groups/generate-from-templates`

## 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/product/{family_uuid}/foundation-groups/generate-from-templates`
- Auth: OAuth 2
  - Password
  - Token URL: `/v1/auth`

Scan the family's templates, find every unique combination of
(foundation arrangement, cross-section, wire material, termination type,
block w/h/b), and insert a foundation group for each combo that doesn't
exist yet. All other fields are copied verbatim from the source wire
level.

## Path parameters

- `family_uuid` string, required

## Response `200`

Successful Response

- GenerateFoundationGroupsResultView: Response body for the generate-from-templates endpoint.
  - `created` FamilyFoundationGroupView[]
    - `uuid` string, required
    - `name` string, required
    - `createdBy` string, nullable, required
    - `guyCrossSection` '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
    - `guyMaterialId` string, required
    - `guyInitialTension` integer, required
    - `guyTerminationType` '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).
    - `foundationElevation` number, required
    - `foundationAzimuthsDeg` number[], required
    - `foundationFootingDepth` number, required
    - `foundationWaterLevel` number, required
    - `foundationIsDrained` boolean, required
    - `soilAngleOfFriction` number, required
    - `soilCohesion` number, required
    - `soilDensity` number, required
    - `backfillAngleOfFriction` number, required
    - `backfillCohesion` number, required
    - `backfillDensity` number, required
    - `blockWidthMm` number, required
    - `blockHeightMm` number, required
    - `blockBreadthMm` number, required
  - `skippedExisting` integer

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