# Assignment Rule API’s

These calls can be used to create, update, get all, get details, delete assignment rules.  The URL’s and call types are listed in the table below.

&#x20;

<table data-header-hidden><thead><tr><th valign="top"></th><th valign="top"></th><th valign="top"></th></tr></thead><tbody><tr><td valign="top">HTTP Method</td><td valign="top">URL</td><td valign="top">Action</td></tr><tr><td valign="top">POST</td><td valign="top">/core/1.0/API/assignmentRule</td><td valign="top">Create</td></tr><tr><td valign="top">PATCH</td><td valign="top">/core/1.0/API/assignmentRule</td><td valign="top">Update</td></tr><tr><td valign="top">DELETE</td><td valign="top">/core/1.0/API/assignmentRule/:id</td><td valign="top">Delete</td></tr><tr><td valign="top">POST</td><td valign="top">/core/1.0/API/ assignmentRules</td><td valign="top">Get all rules in work set</td></tr><tr><td valign="top">POST</td><td valign="top">/core/1.0/API/assignmentRule/:id</td><td valign="top">Get rule details</td></tr></tbody></table>

&#x20;

For the create and update API’s, the body fields are needed to provide the necessary context.  A list of these fields and which call they are required for is provided below.

&#x20;

<table data-header-hidden><thead><tr><th valign="top"></th><th valign="top"></th><th valign="top"></th><th valign="top"></th><th valign="top"></th></tr></thead><tbody><tr><td valign="top">Field</td><td valign="top">Type</td><td valign="top">Values</td><td valign="top">Description</td><td valign="top">Mandatory</td></tr><tr><td valign="top">entity.id</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Rule Id</td><td valign="top">Yes [update]</td></tr><tr><td valign="top">entity.step</td><td valign="top">Object</td><td valign="top">-</td><td valign="top">Step target</td><td valign="top">Yes [create]</td></tr><tr><td valign="top">entity.step.name</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step name</td><td valign="top">Yes [create]</td></tr><tr><td valign="top">entity.step.version</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step version</td><td valign="top">Yes [create]</td></tr><tr><td valign="top">entity.attribute</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Attribute name</td><td valign="top">Yes [create]</td></tr><tr><td valign="top">entity.operands</td><td valign="top">Array</td><td valign="top">-</td><td valign="top">Operands array</td><td valign="top">Yes [create]</td></tr><tr><td valign="top">entity.operands[].operator</td><td valign="top">String</td><td valign="top"><p>ASSIGN, ADD, SUBTRACT, MULTIPLY,</p><p>DIVIDE,</p><p>POWER,</p><p>SQUARE,</p><p>PERCENTAGE, ROUND</p></td><td valign="top">Operator</td><td valign="top">No [ASSIGN by default]</td></tr><tr><td valign="top">entity.operands[].function</td><td valign="top">String</td><td valign="top"><p>ASSIGN,</p><p>FORMAT</p></td><td valign="top">Function</td><td valign="top">No [ASSIGN by default]</td></tr><tr><td valign="top">entity.operands[].value</td><td valign="top">String or Object</td><td valign="top">-</td><td valign="top">Can be string or reference to step target/data view</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.operands[].value.name</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step target/data view name</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.operands[].value.version</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step target/data view version</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.operands[].value.attribute</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step target/data view attribute name</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.conditions</td><td valign="top">Array</td><td valign="top">-</td><td valign="top">Conditions array for the rule</td><td valign="top">No</td></tr><tr><td valign="top">entity.conditions[].operator</td><td valign="top">String</td><td valign="top"><p>EQUAL,</p><p>NOT_EQL,</p><p>GREATER,</p><p>LESSER,</p><p>GREAT_EQL,</p><p>LESS_EQL</p></td><td valign="top">Operator</td><td valign="top">No [EQUAL by default]</td></tr><tr><td valign="top">entity.conditions[].value</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Comparison element</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.conditions[].operand</td><td valign="top">Object</td><td valign="top">-</td><td valign="top">Reference element</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.conditions[].operand.name</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step target/data view name</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.conditions [].operand.version</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step target/data view version</td><td valign="top">Yes</td></tr><tr><td valign="top">entity.conditions [].operand.attribute</td><td valign="top">String</td><td valign="top">Any</td><td valign="top">Step target/data view attribute name</td><td valign="top">Yes</td></tr></tbody></table>

&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.apica.io/platform-docs/test-data-orchestrator-tdo/user-documentation/api-guide/assignment-rule-apis.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
