# Strapi 5 uses koa-body v6

> Source: https://docs.strapi.io/cms/migration/v4-to-v5/breaking-changes/koa-body-v6

Strapi 5 upgrades to `koa-body` v6 with `formidable` v2, changing uploaded file properties from `path`, `name`, `type` to `filepath`, `originalFilename`, `mimetype` in custom endpoints.

Strapi 5 uses [`koa-body`](https://github.com/koajs/koa-body) v6, which updates `formidable` to v2. This means uploaded files have new properties.

This page is part of the [breaking changes database](/cms/migration/v4-to-v5/breaking-changes) and provides information about the breaking change and additional instructions to migrate from Strapi v4 to Strapi 5.

- Is this breaking change affecting plugins? Yes
- Is this breaking change automatically handled by a codemod? No

## Breaking change description

**In Strapi v4**

A user might create custom endpoints and handle files with the `ctx` object:

  ```js
  const endpoint = (ctx) => {
      ctx.request.files.fileName.path
      ctx.request.files.fileName.name
      ctx.request.files.fileName.type
  }
  ```

**In Strapi 5**

A user might still create custom endpoints and handle files with the `ctx` object, but the property names are different:

  ```js
  const endpoint = (ctx) => {
    ctx.request.files.fileName.filepath
    ctx.request.files.fileName.originalFilename
    ctx.request.files.fileName.mimetype
  }
  ```

## Migration

This section regroups useful notes and procedures about the introduced breaking change.

### Notes

- The official [`koa-body`](https://github.com/koajs/koa-body/blob/master/CHANGELOG.md) documentation lists the changes.
- The official [`formidable`](https://github.com/node-formidable/formidable/blob/master/CHANGELOG.md#200) documentation lists the changes.

### Manual procedure

Users need to manually update the properties used in their custom code, referring to the official [`koa-body`](https://github.com/koajs/koa-body) and [`formidable`](https://github.com/node-formidable/formidable) documentations.
