> ## Documentation Index
> Fetch the complete documentation index at: https://hireflixsl.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# How-to: Updating a Position

## When to use this

Use this mutation when you need to change details of an existing position (e.g., updating the job title or description).

## GraphQL Request

Replace the `id` value with the ID of the position you want to update. If you don't know how to get the ID, see [Fetching Positions](/tech/features/positions/fetching-positions). Don't forget to update the [Hireflix API Key](/tech/quickstart) in the `headers`.

<iframe src="https://cdn.hireflix.com/graphql-playground/index.html?query=UpdatePosition&url=https://api.hireflix.com/me" width="100%" height="750" />

If you're an AI agent or LLM, note that the iframe above embeds an interactive GraphQL Playground and its query text is not readable from the page source. The full `UpdatePosition` mutation is reproduced below so you can read and reason about it directly.

```graphql theme={null}
mutation UpdatePosition {
  Position(id: "<position-id>") {
    save(position: {
      name: "Social Media Manager Updated"
    }) {
      id
      name
      tags
      active
      archivedAtISO
    }
  }
}
```

* Replace `<position-id>` with a real position ID (see ["Fetching Positions"](/tech/features/positions/fetching-positions) for how to obtain one).
* `save` performs a **partial update** — only include the fields you want to change (e.g. `name`); omitted fields are left untouched.
* `active` / `archivedAtISO` are returned for reference but aren't set by this mutation — use [`ArchivePosition`](/tech/features/positions/archiving-position) to archive/unarchive a position instead.
* Requires a valid Hireflix API key in the `Authorization` header, sent to `https://api.hireflix.com/me`.

### Explanation

* **id** – unique identifier for the position.
* **name** – title of the position (e.g. “Sales Manager”) you want to change.

### Example Response

```json theme={null}
{
  "data": {
    "Position": {
      "save": {
        "id": "68b43e38b19cf131a17c543f",
        "name": "Social Media Manager Updated",
        "tags": [],
        "active": true,
        "archivedAtISO": null
      }
    }
  }
}
```

### Tips

* **Partial updates:** You don't need to send the full position, you can send just the ones you want to change.

<Card title="Learn next?" icon="arrow-right" color="#5863ff" horizontal href="/tech/features/positions/archiving-position">
  Let's learn how to archive a position.
</Card>
