API ReferenceapicommunityPOST /v1/media/uploads

POST /v1/media/uploads

Service: community · operationId: (none)

Create a short-lived S3 upload URL for community post media.

Required scopes

(no scope declared — review service config)

Request body

{
  "type": "object",
  "properties": {
    "content_type": {
      "type": "string",
      "minLength": 1
    },
    "content_length": {
      "type": "integer",
      "minimum": 1,
      "maximum": 26214400
    },
    "file_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255
    }
  },
  "required": [
    "content_type",
    "content_length",
    "file_name"
  ]
}

Responses

201 Signed upload URL created

{
  "type": "object",
  "properties": {
    "upload_url": {
      "type": "string",
      "format": "uri"
    },
    "public_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "required": [
    "upload_url",
    "public_url"
  ]
}

400 Validation error

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "error",
    "message"
  ]
}

503 Media upload unavailable

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  },
  "required": [
    "error",
    "message"
  ]
}

Example

curl -X POST https://community.platform.loop.health/v1/media/uploads \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ ... }'