PUT /presentations/{id}/slides

Upsert the complete set of slides for a presentation (replace existing slides with the provided list).

Headers

  • idempotency-key string

    A unique key to ensure idempotent requests.

Path parameters

  • id string Required
application/json

Body

  • slides array[object]
    Hide slides attributes Show slides attributes object
    • id string
    • elements array[object]
      Hide elements attributes Show elements attributes object
      • type string
      • id string
      • left number
      • top number
      • width number
      • height number
      • viewBox array[integer]
      • path string
      • fill string
      • fixedRatio boolean
      • opacity number
      • rotate integer
      • flipV boolean
      • lineHeight number
      • content string
      • defaultFontName string
      • defaultColor string
      • start array[integer]
      • end array[integer]
      • points array[string]
      • color string
      • style string
      • wordSpace integer
    • background object
      Hide background attributes Show background attributes object
      • type string
      • color string

Responses

  • 204

    No Content

  • 400 application/json

    Bad Request

    Hide response attributes Show response attributes object
    • success boolean
    • code integer
    • errorCode string
    • message string
    • timestamp string(date-time)
  • 404 application/json

    Not Found

    Hide response attributes Show response attributes object
    • success boolean
    • code integer
    • errorCode string
    • message string
    • timestamp string(date-time)
  • 500 application/json

    Internal Server Error

    Hide response attributes Show response attributes object
    • success boolean
    • code integer
    • errorCode string
    • message string
    • timestamp string(date-time)
PUT /presentations/{id}/slides
curl \
 --request PUT 'https://api.huy-devops.site/api/presentations/{id}/slides' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --header "idempotency-key: string" \
 --data '{"slides":[{"id":"string","elements":[{"type":"string","id":"string","left":42.0,"top":42.0,"width":42.0,"height":42.0,"viewBox":[42],"path":"string","fill":"string","fixedRatio":true,"opacity":42.0,"rotate":42,"flipV":true,"lineHeight":42.0,"content":"string","defaultFontName":"string","defaultColor":"string","start":[42],"end":[42],"points":["string"],"color":"string","style":"string","wordSpace":42}],"background":{"type":"string","color":"string"}}]}'
Request examples
# Headers
idempotency-key: string

# Payload
{
  "slides": [
    {
      "id": "string",
      "elements": [
        {
          "type": "string",
          "id": "string",
          "left": 42.0,
          "top": 42.0,
          "width": 42.0,
          "height": 42.0,
          "viewBox": [
            42
          ],
          "path": "string",
          "fill": "string",
          "fixedRatio": true,
          "opacity": 42.0,
          "rotate": 42,
          "flipV": true,
          "lineHeight": 42.0,
          "content": "string",
          "defaultFontName": "string",
          "defaultColor": "string",
          "start": [
            42
          ],
          "end": [
            42
          ],
          "points": [
            "string"
          ],
          "color": "string",
          "style": "string",
          "wordSpace": 42
        }
      ],
      "background": {
        "type": "string",
        "color": "string"
      }
    }
  ]
}
Response examples (400)
{
  "success": false,
  "code": 400,
  "errorCode": "INVALID_PRESENTATION_DATA",
  "message": "Invalid presentation data",
  "timestamp": "2025-05-04T09:42:00Z"
}
Response examples (404)
{
  "success": false,
  "code": 42,
  "errorCode": "string",
  "message": "string",
  "timestamp": "2025-05-04T09:42:00Z"
}
Response examples (500)
{
  "success": false,
  "code": 500,
  "errorCode": "INTERNAL_SERVER_ERROR",
  "message": "Failed to update presentation",
  "timestamp": "2025-05-04T09:42:00Z"
}