---
title: "Queue an optimizer step"
method: POST
path: "/v1/training/jobs/{job_id}/optim-step"
tags: ["training"]
---

# Queue an optimizer step

`POST /v1/training/jobs/{job_id}/optim-step`

## Request

- Base URL: `https://api.fastino.ai`
- URL: `https://api.fastino.ai/v1/training/jobs/{job_id}/optim-step`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

Apply the gradients accumulated since the last step with AdamW (Tinker's `optim_step`). Read the result at GET /v1/training/jobs/{job_id}/futures/{future_id}.

## Path parameters

- `job_id` string, required

## Headers

- `Idempotency-Key` string, nullable: Client-generated key (a UUID is ideal; it must be URL-safe to look it up) that makes the call safe to send again after a lost response. A repeat with the same key and body from the same caller returns the first call's answer (the same job and future) without running or billing it again, or a 409 while the first call still runs; the same key with another route, job, body or caller is a 422. Look a key up with GET /v1/training/operations/{idempotency_key}.

## Request body

- OptimStepBody: ``POST .../optim-step``: Adam parameters (Tinker's defaults when omitted).
  - `adam_params` AdamParams: AdamW step parameters (Tinker defaults); finite and in range, or the step is refused.
    - `beta1` number
    - `beta2` number
    - `eps` number
    - `grad_clip_norm` number
    - `learning_rate` number
    - `weight_decay` number

## Response `200`

Successful Response

- FutureAccepted: A queued call: read its result at ``GET /v1/training/jobs/{job_id}/futures/{future_id}``.
  - `future_id` string, required
  - `job_id` string, required
  - `type` string, required: The call: create, load, forward, forward_backward, optim_step, save, sample.

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-17** `81465e18c1d2`: 1 info
  - added the new optional `header` request parameter `Idempotency-Key`
- **2026-10-15** `eef86c1497c1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/fastino-ai/apis/pioneer-inference-api/changes/v1/training/jobs/:job_id/optim-step/post.md)

---

[API](https://skmtc.dev/fastino-ai/apis/pioneer-inference-api.md) - [All operations](https://skmtc.dev/fastino-ai/apis/pioneer-inference-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fastino-ai/apis/pioneer-inference-api/revisions/81465e18c1d2?raw)
