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

# Accept a trained model version as production

> Record acceptance of a model version for production deployment. Writes an acceptance report and registers it under the model artifacts.

Use this endpoint to formally accept a trained model into production. The system writes an acceptance report JSON next to the model artifacts and registers the path under `artifact_paths.acceptance`. You may include additional fields in the report, such as SKU and KV cache settings.

## Method + Path

```http theme={null}
POST /v1/models/:id/accept
```

## Authentication

Include your PIN API token or JWT in the `Authorization` header as a Bearer token.

```http theme={null}
Authorization: Bearer <token>
```

## Path parameters

<ParamField path="id" type="string" required>
  The model identifier (e.g., `md_abc123def456`).
</ParamField>

## Request body

<ParamField body="sku" type="string" optional>
  Model SKU identifier. Defaults to the base model name if omitted.
</ParamField>

<ParamField body="kv_cache" type="string" optional>
  KV cache quantization mode. Defaults to `int8` if omitted.
</ParamField>

<ParamField body="..." type="any" optional>
  Additional report fields are persisted as-is.
</ParamField>

### Request body example

```json theme={null}
{
  "sku": "custom-llama-8b-v3",
  "kv_cache": "int8",
  "eval_passed": true,
  "notes": "Approved after human review"
}
```

## Request example

<CodeGroup>
  ```bash curl theme={null}
  curl -s -X POST "https://api.ariacompute.com/v1/models/md_abc123def456/accept" \
    -H "Authorization: Bearer $PIN_API_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{
      "sku": "custom-llama-8b-v3",
      "kv_cache": "int8",
      "eval_passed": true
    }'
  ```
</CodeGroup>

## Response

Returns a standard PIN success envelope with the acceptance result.

<ResponseField name="code" type="integer" required>
  `0` on success, nonzero on error.
</ResponseField>

<ResponseField name="data" type="object" required>
  <Expandable title="properties">
    <ResponseField name="acceptance_path" type="string">
      Filesystem path to the written acceptance report.
    </ResponseField>

    <ResponseField name="status" type="string">
      Always `recorded` on success.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="message" type="string">
  Human-readable message (empty on success).
</ResponseField>

### Example response

```json theme={null}
{
  "code": 0,
  "data": {
    "acceptance_path": "/storage/md_abc123def456/acceptance.json",
    "status": "recorded"
  },
  "message": ""
}
```

## Errors

| Code | HTTP | Meaning                                    |
| ---- | ---- | ------------------------------------------ |
| 401  | 401  | Missing or invalid Bearer token.           |
| 404  | 404  | Model not found or does not belong to you. |
| 500  | 500  | Internal server error.                     |


## Related topics

- [Export a trained model to GGUF, MLX, MNN, or QNN](/api-reference/pin/models/export.md)
- [Authenticate with Aria Compute ROUTER](/api-reference/router/authentication.md)
- [Aria model bundles and quantization](/concepts/models.md)
- [Merge LoRA adapter into a base model](/api-reference/pin/models/merge.md)
- [API keys for gateway and model access](/concepts/api-keys.md)
