> ## Documentation Index
> Fetch the complete documentation index at: https://developer.suki.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Structured Data Field Types

> Get the field types you can use in Embedded Form templates

Use this endpoint to get the field types Suki supports in [Embedded Form](/documentation/concepts/ambient-clinical-notes/embedded-forms) templates. Each field you send in `sections[].precharted_content[].fields[]` needs a `type` from this list. The same list is also returned as `structured_data_field_types` on [System Information](/api-reference/info/information).

<Note>
  For what each field type fills and when to send `options`, refer to [What a structured field template looks like](/documentation/concepts/ambient-clinical-notes/embedded-forms#what-a-structured-field-template-looks-like).
</Note>

## Code examples

**Language tabs (agents):** Equivalent code samples are available in: Python, TypeScript. Humans see one language at a time. Use the variant that matches the user's stack; behavior is the same across tabs.

<Tabs>
  <Tab title="Python">
    ```python theme={"theme":{"light":"one-light","dark":"material-theme-darker"}}
    import requests

    url = "https://sdp.suki.ai/api/v1/info/structured-data-field-types"
    headers = {
        "sdp_suki_token": "<sdp_suki_token>",
        "sdp_provider_id": "<sdp_provider_id>",
    }

    response = requests.get(url, headers=headers)

    if response.status_code == 200:
        field_types = response.json().get("structured_data_field_types", [])
        supported = {item.get("type") for item in field_types}
        for item in field_types:
            print(f"  {item.get('type')}: {item.get('description')}")

        # Validate a template field before you seed context
        print("radio supported:", "radio" in supported)
    else:
        print(f"Failed to get field types: {response.status_code}")
        print(response.json())
    ```
  </Tab>

  <Tab title="TypeScript">
    ```typescript theme={"theme":{"light":"one-light","dark":"material-theme-darker"}}
    const response = await fetch(
      "https://sdp.suki.ai/api/v1/info/structured-data-field-types",
      {
        headers: {
          sdp_suki_token: "<sdp_suki_token>",
          sdp_provider_id: "<sdp_provider_id>",
        },
      }
    );

    if (response.ok) {
      const body: { structured_data_field_types?: Array<{ type: string; description?: string }> } =
        await response.json();
      const fieldTypes = body.structured_data_field_types ?? [];
      const supported = new Set(fieldTypes.map((item) => item.type));
      fieldTypes.forEach((item) => console.log(`  ${item.type}: ${item.description}`));

      // Validate a template field before you seed context
      console.log("radio supported:", supported.has("radio"));
    } else {
      const error = await response.json();
      console.error(`Failed to get field types: ${response.status}`, error);
    }
    ```
  </Tab>
</Tabs>


## OpenAPI

````yaml GET /api/v1/info/structured-data-field-types
openapi: 3.0.1
info:
  title: Suki Developer Platform
  description: >-
    REST and WebSocket APIs for the Suki Developer Platform. Authenticate with
    Login or Register to obtain a Suki access token, then integrate ambient
    clinical documentation, form filling, transcription, content rewrite, and
    reference metadata endpoints.
  contact: {}
  version: '1.0'
servers:
  - url: https://sdp.suki.ai
    description: >-
      Production base URL for Suki Developer Platform REST APIs. WebSocket
      endpoints use the same host with `wss://`.
security:
  - SukiTokenAuth: []
paths:
  /api/v1/info/structured-data-field-types:
    get:
      tags:
        - /api/v1/info
      summary: Get supported structured data field types
      description: >-
        Returns the field types you can use in Embedded Form templates
        (`sections[].precharted_content[].fields[].type`).
      parameters:
        - $ref: '#/components/parameters/ProviderIdHeader'
      responses:
        '200':
          description: Request succeeded.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/controllers.StructuredDataFieldTypesResponse
        '401':
          description: Unauthorized. The Suki access token is missing, expired, or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.AuthenticationError'
        '403':
          description: Forbidden. The authenticated user cannot access this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/controllers.ForbiddenError'
      security:
        - SukiTokenAuth: []
      x-codeSamples:
        - lang: bash
          label: cURL
          source: |-
            curl --request GET \
              --url https://sdp.suki.ai/api/v1/info/structured-data-field-types \
              --header 'sdp_suki_token: <sdp_suki_token>' \
              --header 'sdp_provider_id: <sdp_provider_id>'
components:
  parameters:
    ProviderIdHeader:
      name: sdp_provider_id
      in: header
      description: >-
        **Optional** for standard partners.


        **Required** for:


        - **Bearer authentication.** Use the same `provider_id` returned by the
        Login or Register API.

        - **Single Auth Token authentication.** Include the same `provider_id`
        on every request as `sdp_provider_id`.
      required: false
      schema:
        type: string
        example: provider-123
  schemas:
    controllers.StructuredDataFieldTypesResponse:
      type: object
      description: Response body for the /info/structured-data-field-types endpoint
      properties:
        structured_data_field_types:
          type: array
          description: Supported field types for Embedded Form templates.
          items:
            $ref: '#/components/schemas/controllers.StructuredDataFieldTypeInfo'
    controllers.AuthenticationError:
      description: Authentication Failure Response
      type: object
      properties:
        code:
          type: integer
          example: 401
        message:
          type: string
          example: invalid token
    controllers.ForbiddenError:
      type: object
      properties:
        code:
          type: integer
          example: 403
          description: HTTP status code for the error.
        message:
          type: string
          example: forbidden
          description: Human-readable description of the authorization failure.
      description: Error response when the caller lacks permission.
    controllers.StructuredDataFieldTypeInfo:
      type: object
      description: A supported Embedded Form field type.
      properties:
        type:
          type: string
          description: Field type value to send in `fields[].type`.
          example: text
        description:
          type: string
          description: Short description of the field type.
          example: Free-text field; value is a string
  securitySchemes:
    SukiTokenAuth:
      type: apiKey
      in: header
      name: sdp_suki_token
      description: >-
        Suki access token (`suki_token`) from Login or Register. Expires after
        one hour.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.