---
updatedAt: 2026-05-11T06:52:42.000Z
agentTools:
  projectIndex: https://platform.simpplr.com/llms.txt
---

# Get a presigned URL to upload a file to Simpplr

This API allows us to get a presigned URL for uploading files to Simpplr.
Few points to note:
* The upload_url(presigned URL) in the response should be used with PUT method to upload the file.
* The presigned URL should be invoked with same Bearer token as this API.
* The file_id should be saved for linking with entities via other APIs.


# OpenAPI definition

```json
{
  "openapi": "3.0.2",
  "info": {
    "version": "1.0.0",
    "title": "Simpplr User API Documentation",
    "description": ""
  },
  "x-proxy-enabled": true,
  "tags": [
    {
      "name": "Files",
      "description": "Everything about Files"
    }
  ],
  "servers": [
    {
      "url": "https://{endpoint}/v1",
      "variables": {
        "env": {
          "default": "app"
        },
        "endpoint": {
          "default": "platform.app.simpplr.com"
        }
      }
    }
  ],
  "paths": {
    "/content/static/signedurl/upload": {
      "post": {
        "summary": "Get a presigned URL to upload a file to Simpplr",
        "operationId": "getUploadSignedUrlUser",
        "tags": [
          "Files"
        ],
        "description": "This API allows us to get a presigned URL for uploading files to Simpplr.\nFew points to note:\n* The upload_url(presigned URL) in the response should be used with PUT method to upload the file.\n* The presigned URL should be invoked with same Bearer token as this API.\n* The file_id should be saved for linking with entities via other APIs.\n",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "file_name": {
                    "type": "string",
                    "description": "Name of the file to be uploaded",
                    "minLength": 1,
                    "maxLength": 500,
                    "example": "photo.png"
                  },
                  "size": {
                    "type": "integer",
                    "description": "Size of the file in bytes",
                    "minimum": 1,
                    "example": "1024"
                  },
                  "alt_text": {
                    "type": "string",
                    "description": "Alt text for the file",
                    "minLength": 0,
                    "maxLength": 500,
                    "example": "This is a photo of a sunset"
                  },
                  "mime_type": {
                    "type": "string",
                    "description": "MIME type of the file",
                    "minLength": 0,
                    "maxLength": 100,
                    "example": "image/png"
                  },
                  "type": {
                    "type": "string",
                    "nullable": true,
                    "description": "Type of file being uploaded",
                    "example": "bulk-ops",
                    "enum": [
                      "bulk-ops",
                      "content"
                    ]
                  },
                  "uploadContext": {
                    "type": "string",
                    "nullable": true,
                    "description": "Context in which the file is being uploaded",
                    "enum": [
                      "site-feed",
                      "content-attachment",
                      "site-files",
                      "home-feed",
                      "tiles"
                    ],
                    "example": "content-attachment",
                    "default": null
                  },
                  "siteId": {
                    "type": "string",
                    "format": "uuid",
                    "description": "UUID of the site where the file is being uploaded",
                    "example": "02369949-cfc1-49a7-a2a7-d03afa9af84a"
                  }
                },
                "required": [
                  "file_name",
                  "size"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "example": "success",
                      "description": "Response status",
                      "enum": [
                        "success",
                        "error"
                      ]
                    },
                    "result": {
                      "type": "object",
                      "description": "Contains the details of the file URL",
                      "properties": {
                        "file_id": {
                          "type": "string",
                          "format": "uuid",
                          "example": "644893bf-66dd-4b67-9771-76b21d91ce5c",
                          "description": "Id of the file to be uploaded"
                        },
                        "upload_url": {
                          "type": "string",
                          "example": "https://tenant.app.simpplr.com/u/o/277b3c02-c912-4c45-8512-867d92e47b84?Content-Type=image%2Fpng&X-Amz-Algorithm=.........",
                          "description": "Presigned URL to be used for uploading the file"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "errors": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "seq_id": {
                            "type": "integer",
                            "example": 0
                          },
                          "field_name": {
                            "type": "string",
                            "example": "filter"
                          },
                          "error_code": {
                            "type": "integer",
                            "example": 1012
                          },
                          "message": {
                            "type": "string",
                            "example": "should be equal to one of the allowed values"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/Unauthorized"
          },
          "403": {
            "$ref": "#/components/responses/Forbidden"
          }
        }
      }
    }
  },
  "components": {
    "responses": {
      "Unauthorized": {
        "description": "Authorize error",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string",
                  "example": "Missing/Invalid authentication token"
                }
              }
            }
          }
        }
      },
      "Forbidden": {
        "description": "Forbidden error",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "error_code": {
                  "type": "integer",
                  "example": 2001
                },
                "message": {
                  "type": "string",
                  "example": "Something went wrong, please try again"
                }
              }
            }
          }
        }
      }
    },
    "securitySchemes": {
      "apiAuthSecurity": {
        "type": "oauth2",
        "description": "This API uses OAuth 2 with the implicit grant flow.",
        "flows": {
          "implicit": {
            "authorizationUrl": "https://platform.test.simpplr.xyz/v1",
            "scopes": {
              "read": "read data",
              "write": "create/update data",
              "everything": "allow full access"
            }
          }
        }
      }
    }
  },
  "security": [
    {
      "apiAuthSecurity": []
    }
  ]
}
```