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

# Upload fonts and generate slide previews

> Upload a reference PPTX and any replacement fonts, then return slide previews and assets used to create a Smart Design.

[Read the Smart Generation guide](/api-guides/smart-generation).



## OpenAPI

````yaml /openapi/cloud.json post /api/v2/ppt/fonts/upload-and-preview
openapi: 3.1.0
info:
  title: Presenton Cloud API
  version: v0.9.3-beta
  description: Supported public API for managed Presenton Cloud integrations.
servers:
  - url: https://api.presenton.ai
    description: Presenton Cloud
security: []
tags:
  - name: Presentations
    description: Generate and manage presentations.
  - name: Files and media
    description: Upload source files and images.
  - name: Templates and design
    description: Select reusable presentation designs.
  - name: Async and webhooks
    description: Monitor background work and receive events.
paths:
  /api/v2/ppt/fonts/upload-and-preview:
    post:
      tags:
        - V2 Fonts
      summary: Upload fonts and generate slide previews
      description: >-
        Upload a reference PPTX and any replacement fonts, then return slide
        previews and assets used to create a Smart Design.


        [Read the Smart Generation guide](/api-guides/smart-generation).
      operationId: upload_fonts_and_slides_preview_api_v2_ppt_fonts_upload_and_preview_post
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: >-
                #/components/schemas/Body_upload_fonts_and_slides_preview_api_v2_ppt_fonts_upload_and_preview_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FontsUploadAndSlidesPreviewResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '500':
          $ref: '#/components/responses/ServerError'
      security:
        - BearerAuth: []
      externalDocs:
        description: Read the Smart Generation guide
        url: /api-guides/smart-generation
components:
  schemas:
    Body_upload_fonts_and_slides_preview_api_v2_ppt_fonts_upload_and_preview_post:
      properties:
        pptx_file:
          type: string
          contentMediaType: application/octet-stream
          title: Pptx File
          description: PPTX file to modify
        font_files:
          anyOf:
            - items:
                type: string
                contentMediaType: application/octet-stream
              type: array
            - type: 'null'
          title: Font Files
          description: Font files to upload
        original_font_names:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Original Font Names
          description: Original font names to replace, in the same order as font_files
      type: object
      required:
        - pptx_file
      title: >-
        Body_upload_fonts_and_slides_preview_api_v2_ppt_fonts_upload_and_preview_post
    FontsUploadAndSlidesPreviewResponse:
      properties:
        slide_image_urls:
          items:
            type: string
          type: array
          title: Slide Image Urls
        pptx_url:
          type: string
          title: Pptx Url
        modified_pptx_url:
          type: string
          title: Modified Pptx Url
        fonts:
          additionalProperties: true
          type: object
          title: Fonts
      type: object
      required:
        - slide_image_urls
        - pptx_url
        - modified_pptx_url
        - fonts
      title: FontsUploadAndSlidesPreviewResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  responses:
    Unauthorized:
      description: Authentication is missing or invalid.
    ServerError:
      description: Presenton or one of its configured dependencies failed.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Presenton API token

````