---
title: "Refresh Opposition Model"
method: POST
path: "/v1/cron/refresh-opposition-model"
tags: ["cron", "cron"]
---

# Refresh Opposition Model

`POST /v1/cron/refresh-opposition-model`

## Request

- Base URL: `https://api.etymolt.com`
- URL: `https://api.etymolt.com/v1/cron/refresh-opposition-model`
- Auth: none declared

WO-6 (Sprint 1+2, 2026-07-01) — weekly TTAB opposition-model refresh alias.

Thin wrapper on /v1/cron/run-pipeline. The scheduled task
(etymolt-ttab-weekly-refresh, Sundays 08:00 UTC) hits this endpoint
so the ops surface uses a semantic name; the underlying work is
the produce -> enrich -> train pipeline that lands a fresh
opposition_model_v2.pkl on the persistent volume.

Returns the same shape as /v1/cron/run-pipeline.

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/etymolt/apis/etymolt-verify-ai-generated-brand-names.md) · [All operations](https://skmtc.dev/etymolt/apis/etymolt-verify-ai-generated-brand-names/llms.txt) · [OpenAPI document](https://skmtc.dev/etymolt/apis/etymolt-verify-ai-generated-brand-names/revisions/7228ffa1efa7?raw)
