---
title: "Create fitting"
method: POST
path: "/characters/{character_id}/fittings"
tags: ["Fittings"]
---

# Create fitting

`POST /characters/{character_id}/fittings`

## Request

- Base URL: `https://esi.evetech.net`
- URL: `https://esi.evetech.net/characters/{character_id}/fittings`
- Auth: OAuth 2
  - Authorization code: `https://login.eveonline.com/v2/oauth/authorize`
  - Token URL: `https://login.eveonline.com/v2/oauth/token` scopes: `esi-fittings.write_fittings.v1`
- TypeScript: <https://skmtc.dev/evetech/apis/eve-spring-inebriation-esi-tranquility/docs/characters/:character_id/fittings/post.ts> (a function with typed inputs; its response is checked against the schema)

Save a new fitting for a character

## Path parameters

- `character_id` integer, required

## Headers

- `Accept-Language` 'en' | 'de' | 'fr' | 'ja' | 'ru' | 'zh' | 'ko' | 'es'
- `If-None-Match` string
- `X-Compatibility-Date` '2025-12-16', date, required
- `X-Tenant` string
- `If-Modified-Since` string

## Request body

- object
  - `description` string, required
  - `items` object[], required
    - `flag` 'Cargo' | 'DroneBay' | 'FighterBay' | 'HiSlot0' | 'HiSlot1' | 'HiSlot2' | 'HiSlot3' | 'HiSlot4' | 'HiSlot5' | 'HiSlot6' | 'HiSlot7' | 'Invalid' | 'LoSlot0' | 'LoSlot1' | 'LoSlot2' | 'LoSlot3' | 'LoSlot4' | 'LoSlot5' | 'LoSlot6' | 'LoSlot7' | 'MedSlot0' | 'MedSlot1' | 'MedSlot2' | 'MedSlot3' | 'MedSlot4' | 'MedSlot5' | 'MedSlot6' | 'MedSlot7' | 'RigSlot0' | 'RigSlot1' | 'RigSlot2' | 'ServiceSlot0' | 'ServiceSlot1' | 'ServiceSlot2' | 'ServiceSlot3' | 'ServiceSlot4' | 'ServiceSlot5' | 'ServiceSlot6' | 'ServiceSlot7' | 'SubSystemSlot0' | 'SubSystemSlot1' | 'SubSystemSlot2' | 'SubSystemSlot3', required: Fitting location for the item. Entries placed in 'Invalid' will be discarded. If this leaves the fitting with nothing, it will cause an error.
    - `quantity` integer, required
    - `type_id` integer, required
  - `name` string, required
  - `ship_type_id` integer, required

## Response `201`

Created

- CharactersCharacterIdFittingsPost: 201 created object
  - `fitting_id` integer, required

## Other responses

- `default`: Error

## Changes

- **2026-07-27** `0b913165e49c`: 1 info
  - added the optional property `status` to the response with the `default` status

[Operation history](https://skmtc.dev/evetech/apis/eve-spring-inebriation-esi-tranquility/changes/characters/:character_id/fittings/post.md)

---

[API](https://skmtc.dev/evetech/apis/eve-spring-inebriation-esi-tranquility.md) - [All operations](https://skmtc.dev/evetech/apis/eve-spring-inebriation-esi-tranquility/llms.txt) - [OpenAPI document](https://skmtc.dev/evetech/apis/eve-spring-inebriation-esi-tranquility/revisions/110d1a0b1dfc?raw)
