---
updatedAt: 2026-08-06T09:23:36.000Z
agentTools:
  projectIndex: https://developers.alcmeon.com/llms.txt
---

# Upload

Upload media first with this endpoint, then, send it via the [Send message](./post_page-id-conversation) endpoint. This method is deprecated, use file upload instead.


# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "servers": [
    {
      "url": "https://inmessage.alcmeon.com/prod/api"
    }
  ],
  "info": {
    "title": "InMessage",
    "version": "1.0"
  },
  "x-readme": {
    "explorer-enabled": false
  },
  "components": {
    "parameters": {
      "page_id": {
        "in": "path",
        "name": "page_id",
        "schema": {
          "type": "string"
        },
        "required": true,
        "description": "ID of the page. This is not an integer."
      }
    },
    "schemas": {
      "RateLimitResponseError": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string",
            "description": "Rate limit reached"
          },
          "details": {
            "type": "string",
            "description": "A string showing the time when the rate limit will be reset. Example: {'rate_limited_until': '2024-01-22T13:05:41Z'}\n"
          }
        }
      }
    },
    "securitySchemes": {
      "inmessage_authentication": {
        "description": "This is the authentication mecanism to authenticate most calls to the [InMessage API]() endpoints.\n",
        "type": "http",
        "scheme": "bearer"
      }
    }
  },
  "security": [
    {
      "inmessage_authentication": []
    }
  ],
  "paths": {
    "/{page_id}/media": {
      "post": {
        "deprecated": true,
        "parameters": [
          {
            "$ref": "#/components/parameters/page_id"
          }
        ],
        "tags": [
          "Media"
        ],
        "summary": "Upload",
        "description": "Upload media first with this endpoint, then, send it via the [Send message](./post_page-id-conversation) endpoint. This method is deprecated, use file upload instead.\n",
        "requestBody": {
          "description": "The media bytes",
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "media_name": {
                    "type": "string"
                  },
                  "file_content": {
                    "description": "The file bytes",
                    "type": "string",
                    "format": "binary"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "returned upon success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "media_uuid": {
                      "description": "a unique id which identifies the media uploaded",
                      "type": "integer"
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "Rate limit reached. Default limit is set to 15 requests per minute.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitResponseError"
                }
              }
            }
          }
        }
      }
    }
  }
}
```