canonical: https://jentic.com/apis/vtex.local/policies-system-api

# Vtex Policies System API

This API will create promotion alarms when selling products with undesired prices and promotions. It will create conditions that will check if the prices and the promotions are correct. If not, the system will alarm the store with information about the product sold at unexpected prices. Index - `GET` [Get Policy List](https://developers.vtex.com/docs/api-reference/policies-system-api#get-/api/poli. The API exposes 6 endpoints secured with apiKey authentication.

## For AI agents

Programmatically get policy list, evaluate policies. Covers 6 operations with apiKey authentication.

## Scope

Does not handle payments, communications, or crm - use for e-commerce only.

## Capabilities

- Get policy list
- Evaluate policies
- Create policy
- Update policy
- Delete policy by ID

## Use cases

### E-Commerce Operations

Use the Policies System API to perform e commerce operations programmatically. The API provides 6 endpoints covering core functionality including get policy list, evaluate policies, create policy.

Example prompt: Call GET `/api/policy-engine/policies` to get policy list

### Automated Policy Management

Automate policy operations by combining multiple Policies System API endpoints. Agents can evaluate policies and then create policy in a single workflow.

Example prompt: Call POST `/api/policy-engine/evaluate` to evaluate policies, then verify the result

### AI Agent Integration via Jentic

AI agents discover and call Policies System API endpoints through Jentic without managing credentials directly. An agent searches for the required operation by intent, receives the matching endpoint schema, and executes the call with Jentic-managed authentication. This eliminates the need to read API documentation or handle apiKey tokens manually.

Example prompt: Search Jentic for 'get policy list', load the operation schema, and execute with Jentic-managed credentials

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/api/policy-engine/policies` | Get policy list |
| POST | `/api/policy-engine/evaluate` | Evaluate policies |
| POST | `/api/policy-engine/policies/{id}` | Create policy |
| GET | `/api/policy-engine/policies/{id}` | Get policy by ID |
| PUT | `/api/policy-engine/policies/{id}` | Update policy |
| DELETE | `/api/policy-engine/policies/{id}` | Delete policy by ID |

## Key resources

- **Policy** — Operations related to Policy

## Why Jentic

- **Setup:** Wiring the VTEX Policies System API by hand means pairing an App Key with an App Token in the X-VTEX-API-AppKey and X-VTEX-API-AppToken headers, and templating the {accountName} and {environment} host into every call. Through Jentic you install once, import the Policies System API from the API Directory, store the App Key and App Token once, and your agent calls it.
- **Permission scoping:** The Policies System API puts the policy id in the URL path (`/api/policy-engine/policies/{id}`), so a rule can pin your agent to one policy. You choose the operations it may call, so destructive ones like deleting or replacing a policy are not included unless you add them.
- **Credential handling:** Your VTEX App Key and App Token are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list policies' or 'evaluate a policy', and Jentic returns the matching Policies System API operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Shopify** — Alternative e commerce API
- **Stripe** — Alternative e commerce API

## FAQ

### What authentication does the Policies System API use?

The Policies System API uses an API key passed in the `X-VTEX-API-AppKey` header. Through Jentic, these credentials are stored encrypted in your Jentic One instance and injected at execution time, so raw secrets never enter the agent context.

### Can I get policy list with the Policies System API?

Yes. Use the GET `/api/policy-engine/policies` endpoint. The API returns structured JSON responses that agents can parse and act on directly.

### What are the rate limits for the Policies System API?

Rate limits are not specified in the OpenAPI spec. Check the vendor documentation for current limits. Through Jentic, rate limiting is handled automatically with retry logic built into the execution layer.

### How do I get policy list through Jentic?

Install the Jentic SDK with pip install jentic, authenticate through Jentic One, the self-hosted execution layer, then search for 'get policy list'. Jentic returns the matching Policies System API operation with its input schema. Load the schema and execute the call - credentials are injected automatically.

### How many endpoints does the Policies System API have?

The Policies System API exposes 6 endpoints covering policy operations.

### Can I limit what my agent is allowed to do with the VTEX Policies System API?

Yes. Jentic One is self-hosted by you, so your own rules decide which Policies System API operations and credentials the agent may use. You pick the exact operations it can call, so read-only actions like GET `/api/policy-engine/policies` and POST `/api/policy-engine/evaluate` are available while destructive ones such as deleting or replacing a policy stay off unless you add them. Because the policy id sits in the URL path at `/api/policy-engine/policies/{id}`, you can also pin the agent to a single policy.
