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

# Embed a published composition with its saved values

> Public HTML wrapper with an inner published artifact iframe. No API key or SDK required.
If the composition's owner listed the websites it may appear on, the page is sent with `Content-Security-Policy: frame-ancestors` naming those websites (and Widgetic's own, and the website where the partner the owner administers integrates Widgetic, with its subdomains), so a browser refuses to show it inside any other website whatever `Referer` policy that website uses. Opening the address directly still works. An owner who listed nothing is not restricted.
**Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/frame`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag.




## OpenAPI

````yaml /openapi/widgetic-api-public.json get /embed/compositions/{compositionId}/frame
openapi: 3.0.0
info:
  title: Widgetic API Gateway
  version: 1.0.0
  description: API documentation for the Widgetic API Gateway
  license:
    name: Widgetic Integration License
    url: https://docs.widgetic.com/resources/license
servers:
  - url: https://api.widgetic.com/v1
    description: Production server
    variables:
      env:
        default: production
        description: Environment
      apiUrl:
        default: https://api.widgetic.com
        description: API URL
      apiVersion:
        default: /v1
        description: API Version path prefix
security: []
tags: []
paths:
  /embed/compositions/{compositionId}/frame:
    servers:
      - url: https://api.widgetic.com
        description: >-
          The public embed routes are served at the root of the API host, not
          under /v1.
    get:
      tags:
        - Public Embed
      summary: Embed a published composition with its saved values
      description: >
        Public HTML wrapper with an inner published artifact iframe. No API key
        or SDK required.

        If the composition's owner listed the websites it may appear on, the
        page is sent with `Content-Security-Policy: frame-ancestors` naming
        those websites (and Widgetic's own, and the website where the partner
        the owner administers integrates Widgetic, with its subdomains), so a
        browser refuses to show it inside any other website whatever `Referer`
        policy that website uses. Opening the address directly still works. An
        owner who listed nothing is not restricted.

        **Address.**
        `https://api.widgetic.com/embed/compositions/{compositionId}/frame`: the
        root of the API host, NOT under `/v1`. A client generated from this
        description for `https://api.widgetic.com/v1` must be given the base
        address `https://api.widgetic.com` for the calls of the `Public Embed`
        tag.
      operationId: getPublicCompositionIframe
      parameters:
        - in: path
          name: compositionId
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Composition iframe document
          content:
            text/html:
              schema:
                type: string
        '400':
          description: Invalid composition UUID (standard validation response)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Composition unavailable
          content:
            text/html:
              schema:
                type: string
        '429':
          description: >-
            Embed rate limit exceeded (the same count as the lookup route;
            `Retry-After` says when to ask again)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ErrorResponse:
      type: object
      required:
        - success
        - message
        - error
      additionalProperties: true
      properties:
        success:
          type: boolean
          description: Always `false` on a failure.
          example: false
        message:
          type: string
          description: The same text as `error.message`, for a caller that reads one line.
        error:
          $ref: '#/components/schemas/ErrorDetail'
    ErrorDetail:
      type: object
      required:
        - code
        - message
        - timestamp
      properties:
        code:
          type: string
          description: Machine-readable error code.
          example: RESOURCE_NOT_FOUND
        message:
          type: string
          description: Human-readable explanation.
          example: Composition not found
        param:
          type: string
          description: The field that caused the error, when one did.
          example: name
        docUrl:
          type: string
          description: Where this error is explained.
        suggestedAction:
          type: string
          description: What to do about it.
        retryAfter:
          type: integer
          description: >-
            Seconds to wait before trying again (rate limits). The same number
            is in the `Retry-After` header.
          example: 60
        details:
          type: object
          additionalProperties: true
          description: >-
            More about the error: the fields that failed, a limit that was
            reached.
        correlationId:
          type: string
          description: Quote this when you ask support about the call.
          example: req_123e4567-e89b-12d3-a456-426614174000
        timestamp:
          type: string
          format: date-time
          example: '2026-10-15T10:00:00.000Z'

````

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