powerpointengine-io API

powerpointengine-io API as documented publicly: 12 operations. Contract generated from the documentation by API Evangelist (2026-10-31); not the provider's own document.

Operations 12

POST /api/mcp/mcp POST /api/mcp/mcp #
GET /api/powerpoint/edit GET /api/powerpoint/edit #
POST /api/powerpoint/edit Duplicate / delete / move slides (1-based, sequential) #
GET /api/powerpoint/generate GET /api/powerpoint/generate #
POST /api/powerpoint/generate POST /api/powerpoint/generate #
GET /api/powerpoint/merge GET /api/powerpoint/merge #
POST /api/powerpoint/merge Merge 2–5 presentations with each deck keeping its own design. #
GET /api/powerpoint/pdf GET /api/powerpoint/pdf #
POST /api/powerpoint/pdf Convert your .pptx to PDF. #
GET /api/powerpoint/replace GET /api/powerpoint/replace #
POST /api/powerpoint/replace Replace text in your own .pptx while preserving structure. #
POST /api/powerpoint/translate Translate an existing deck to a target language while preserving layout. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/powerpointengine-io:powerpointengine-io-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

powerpointengine-io-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: powerpointengine-io API
  version: '2026-10-31'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-31: 12 operation(s) read from 5 public documentation page(s) (each operation
    names its page in x-source). This is not the provider''s published contract; powerpointengine-io has published no machine-readable contract
    that the pipeline could find. Engine: anthropic.'
  x-evidence-tiers:
    code-example: 7
    documentation: 5
    pages-with-code: 4
    pages-read: 5
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-10-31'
  x-generator: generate-contract-from-docs.py
  x-engine: anthropic
  x-sources:
  - https://powerpointengine.io
  - https://powerpointengine.io/docs
  - https://powerpointengine.io/examples
  - https://powerpointengine.io/llms.txt
  - https://powerpointengine.io/skill/SKILL.md
paths:
  /api/mcp/mcp:
    post:
      operationId: post_api_mcp_mcp
      tags:
      - Api
      summary: POST /api/mcp/mcp
      x-source: https://powerpointengine.io
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiMcpMcpRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: curl -X POST powerpointengine.io/api/powerpoint/generate \ -d '{"markup":"# Q3 Review","theme":"corporate"}' 200 · presentation.pptx
          ready No signup to try the live demo. From markup to .pptx in one call 1 Send markup or a template POST simple markup, or upload your
          own .pptx for us to fill in. 2 The API renders it Text, images, charts and tables placed into a real presentation. 3 Download the .pp
  /api/powerpoint/edit:
    get:
      operationId: get_api_powerpoint_edit
      tags:
      - Api
      summary: GET /api/powerpoint/edit
      x-source: https://powerpointengine.io/skill/SKILL.md
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -s https://powerpointengine.io/api/powerpoint/edit  -F ''file=@deck.pptx''  -F ''operations=[{"op":"duplicate","slide":2},{"op":"delete","slide":5},{"op":"move","slide":3,"to":1}]''

          ```'
    post:
      operationId: post_api_powerpoint_edit
      tags:
      - Api
      summary: Duplicate / delete / move slides (1-based, sequential)
      x-source: https://powerpointengine.io/docs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPowerpointEditRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPowerpointEditResponse'
      x-evidence:
        kind: documentation
  /api/powerpoint/generate:
    get:
      operationId: get_api_powerpoint_generate
      tags:
      - Api
      summary: GET /api/powerpoint/generate
      x-source: https://powerpointengine.io/examples
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl Basic presentation generation Generate a simple presentation from a template with text placeholders. import requests\n\
          url = \"https://powerpointengine.io/api/powerpoint/generate\"\ndata = {\n \"markup\": \"# Q3 Review\\n## Revenue\\n- Up 24%\\n- Churn\
          \ down\",\n \"theme\": \"corporate\",\n}\nr = requests.post(url, json=data)\nprint(r.json()[\"result\"][\"downloadUrl\"]) Beginner Advanced\
          \ multi-slide presentation Crea"
    post:
      operationId: post_api_powerpoint_generate
      tags:
      - Api
      summary: POST /api/powerpoint/generate
      x-source: https://powerpointengine.io/docs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPowerpointGenerateRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -s https://powerpointengine.io/api/powerpoint/generate  -H "Content-Type: application/json"  -d ''{"markup":"# Q3 Review\n##
          Revenue\n- Up 24%\n- Churn down\n## Outlook\n- Expand EU","theme":"corporate"}''  | jq -r ''.result.downloadUrl'' The response contains
          a signed result.downloadUrl , valid for 24 hours. Anonymous calls work and return a watermarked file — pass your account id (see below)
          to'
  /api/powerpoint/merge:
    get:
      operationId: get_api_powerpoint_merge
      tags:
      - Api
      summary: GET /api/powerpoint/merge
      x-source: https://powerpointengine.io/skill/SKILL.md
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -s https://powerpointengine.io/api/powerpoint/merge  -F ''files=@intro.pptx''  -F ''files=@results.pptx''  -F ''files=@outro.pptx''

          ```'
    post:
      operationId: post_api_powerpoint_merge
      tags:
      - Api
      summary: Merge 2–5 presentations with each deck keeping its own design.
      x-source: https://powerpointengine.io/llms.txt
      parameters:
      - name: files
        in: query
        required: true
        schema:
          type: array
        description: Repeated file fields (2-5 .pptx files)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPowerpointMergeRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPowerpointMergeResponse'
      x-evidence:
        kind: documentation
  /api/powerpoint/pdf:
    get:
      operationId: get_api_powerpoint_pdf
      tags:
      - Api
      summary: GET /api/powerpoint/pdf
      x-source: https://powerpointengine.io/skill/SKILL.md
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -s https://powerpointengine.io/api/powerpoint/pdf  -F ''file=@deck.pptx''

          ```'
    post:
      operationId: post_api_powerpoint_pdf
      tags:
      - Api
      summary: Convert your .pptx to PDF.
      x-source: https://powerpointengine.io/llms.txt
      parameters:
      - name: file
        in: query
        required: true
        schema:
          type: string
        description: Your .pptx file (multipart)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPowerpointPdfRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPowerpointPdfResponse'
      x-evidence:
        kind: documentation
  /api/powerpoint/replace:
    get:
      operationId: get_api_powerpoint_replace
      tags:
      - Api
      summary: GET /api/powerpoint/replace
      x-source: https://powerpointengine.io/skill/SKILL.md
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -s https://powerpointengine.io/api/powerpoint/replace  -F ''file=@template.pptx''  -F ''replacements={"client":"ACME Corp","revenue":"€1.2M"}''  -F
          ''replaceMode=placeholders''

          ```'
    post:
      operationId: post_api_powerpoint_replace
      tags:
      - Api
      summary: Replace text in your own .pptx while preserving structure.
      x-source: https://powerpointengine.io/llms.txt
      parameters:
      - name: file
        in: query
        required: true
        schema:
          type: string
        description: Your .pptx file (multipart)
      - name: replacements
        in: query
        required: true
        schema:
          type: object
        description: JSON map of placeholder keys to replacement values
      - name: replaceMode
        in: query
        required: true
        schema:
          type: string
        description: 'Replace mode: placeholders or objects'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPowerpointReplaceRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPowerpointReplaceResponse'
      x-evidence:
        kind: documentation
  /api/powerpoint/translate:
    post:
      operationId: post_api_powerpoint_translate
      tags:
      - Api
      summary: Translate an existing deck to a target language while preserving layout.
      x-source: https://powerpointengine.io/llms.txt
      parameters:
      - name: file
        in: query
        required: true
        schema:
          type: string
        description: Your .pptx file (multipart)
      - name: targetLang
        in: query
        required: true
        schema:
          type: string
        description: Target language, e.g. Spanish
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPowerpointTranslateRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPowerpointTranslateResponse'
      x-evidence:
        kind: documentation
components:
  schemas:
    PostApiMcpMcpRequest:
      type: object
      properties:
        markup:
          type: string
        theme:
          type: string
    PostApiPowerpointEditRequest:
      type: object
      properties:
        file:
          type: string
          description: The .pptx file to edit
        operations:
          type: string
          description: JSON array of operations (duplicate/delete/move slides)
      required:
      - file
      - operations
    PostApiPowerpointEditResponse:
      type: object
      properties:
        result:
          type: string
          description: Contains downloadUrl and other result data
        downloadUrl:
          type: string
          description: Signed download URL valid for 24 hours
    PostApiPowerpointGenerateRequest:
      type: object
      properties:
        markup:
          type: string
        theme:
          type: string
    PostApiPowerpointMergeRequest:
      type: object
      properties:
        files:
          type: string
          description: Multiple .pptx files to merge (2-5 files)
      required:
      - files
    PostApiPowerpointMergeResponse:
      type: object
      properties:
        downloadUrl:
          type: string
          description: URL to download the merged .pptx
    PostApiPowerpointPdfRequest:
      type: object
      properties:
        file:
          type: string
          description: Your .pptx file
      required:
      - file
    PostApiPowerpointPdfResponse:
      type: object
      properties:
        downloadUrl:
          type: string
          description: Signed URL for the PDF (valid 24h)
    PostApiPowerpointReplaceRequest:
      type: object
      properties:
        file:
          type: string
          description: Your .pptx file
        replacements:
          type: object
          description: JSON map of replacements, e.g. {"client":"ACME"}
        replaceMode:
          type: string
          description: 'Mode for replacement: placeholders or objects'
      required:
      - file
      - replacements
      - replaceMode
    PostApiPowerpointReplaceResponse:
      type: object
      properties:
        downloadUrl:
          type: string
          description: URL to download the modified .pptx
    PostApiPowerpointTranslateRequest:
      type: object
      properties:
        file:
          type: string
          description: Your .pptx file
        targetLang:
          type: string
          description: Target language for translation
      required:
      - file
      - targetLang
    PostApiPowerpointTranslateResponse:
      type: object
      properties:
        downloadUrl:
          type: string
          description: URL to download the translated .pptx
tags:
- name: Api