---
title: "Update an assignment"
method: PATCH
path: "/v25-10-beta/agentic-logic/assignments/{assignmentId}"
tags: ["Agentic Logic"]
---

# Update an assignment

`PATCH /v25-10-beta/agentic-logic/assignments/{assignmentId}`

## Request

- Base URL: `https://api.intelligems.io`
- URL: `https://api.intelligems.io/v25-10-beta/agentic-logic/assignments/{assignmentId}`
- Auth: API key in header `intelligems-access-token`
- TypeScript: <https://skmtc.dev/intelligems/apis/intelligems-external-api-v25-10-beta/docs/v25-10-beta/agentic-logic/assignments/:assignmentId/patch.ts> (a function with typed inputs; its response is checked against the schema)

```http
PATCH /v25-10-beta/agentic-logic/assignments/{assignmentId}
```

Updates an assignment (rule, enable/disable, budget).

Use the `intelligems-access-token` header. The token selects the organization; do not send `orgId`. The organization must have Agentic Logic enabled.

**Rate Limit:** 50 requests per 30s window, refilling 25 tokens every 30s.

## Path parameters

- `assignmentId` string, uuid, required

## Request body

- object: Update the rule or serving config for one (placement, variation) assignment cell.
  - `ruleId` string, uuid: Rule the existing assignment cell should serve. Repointing keeps the placement, variation, and serving settings intact.
  - `budgetMs` integer, nullable: New per-assignment budget in ms, up to 10000ms, or null to return to the placement surface's cap.
  - `enabled` boolean: Per-assignment pause flag.

## Response `200`

OK

- object
  - `assignment` object, required: One rule ↔ placement assignment — a cell of the (variation × placement) matrix. Carries which rule fills the cell; the evaluation budget belongs to the assignment and the empty-result policy to the rule. One rule can be assigned to many placements.
    - `id` string, required: Assignment id (uuid).
    - `placementId` string, required: Placement being filled (uuid).
    - `ruleId` string, required: Rule that fills it (uuid).
    - `variationId` string, nullable, required: Experiment variation this assignment belongs to, or null for the org's global default. The global cell applies to EVERY variation unless that variation has an enabled cell of its own, which overrides it. Only the experience save writes a variation cell; the assignment verbs write global rows only.
    - `experience` object, nullable, required: The experience whose variation this assignment belongs to, resolved for display. Null on a global assignment, and also null when the variation no longer resolves — variationId is deliberately not a foreign key.
      - `id` string, required
      - `name` string, required
      - `variationName` string, required
      - `category` 'experiment' | 'personalization', required
      - `status` 'pending' | 'started' | 'ended' | 'paused', required
      - `isDeleted` boolean, required
    - `budgetMs` integer, nullable, required: Per-assignment evaluation budget in milliseconds (maximum 10000ms), or null to use the runtime default. Publish gates check rules against the tightest budget across their enabled assignments.
    - `enabled` boolean, required: Per-assignment pause. False = the cell is skipped at serve time without touching the rule's lifecycle state — a disabled variation cell therefore falls back to the placement's global cell, and only serves nothing when the global cell is missing or disabled too.
    - `createdAtTs` number, required: Creation time, Unix epoch-ms.
    - `lastUpdateTs` number, required: Last update time, Unix epoch-ms.

## Other responses

- `429`: Too Many Requests

## Changes

- **2026-11-06** `7b769b2f90b1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/intelligems/apis/intelligems-external-api-v25-10-beta/changes/v25-10-beta/agentic-logic/assignments/:assignmentId/patch.md)

---

[API](https://skmtc.dev/intelligems/apis/intelligems-external-api-v25-10-beta.md) - [All operations](https://skmtc.dev/intelligems/apis/intelligems-external-api-v25-10-beta/llms.txt) - [OpenAPI document](https://skmtc.dev/intelligems/apis/intelligems-external-api-v25-10-beta/revisions/7b769b2f90b1?raw)
