Content Bank Ops Automation (Admin)¶
Guia operacional atualizado para automações idempotentes do Content Bank com taxonomias unificadas.
Segurança e middleware¶
- Todos os endpoints administrativos passam por
adminRateLimit,requireAdmineadminLogger. - O backend usa Supabase service role apenas no servidor.
- Padrão de resposta:
- sucesso:
{ ok: true, data } - erro:
{ ok: false, error: { code, message } }
Modelo de classificação atual¶
O Content Bank usa exclusivamente taxonomias unificadas. A classificação de lemmas acontece por:
- taxonomy_categories
- taxonomy_values
- content_item_taxonomies
Cada lemma pode ter múltiplos valores taxonômicos por categoria (por exemplo: part_of_speech, grammar_topics, semantic_domains, register, frequency_band, difficulty).
Operações principais de Lemma¶
1) Listar lemmas¶
GET /admin/content-bank/lemmas
2) Criar lemma¶
POST /admin/content-bank/lemmas
3) Buscar lemma¶
GET /admin/content-bank/lemmas/:id
4) Atualizar core do lemma¶
PATCH /admin/content-bank/lemmas/:id
Campos comuns de edição no core:
- lemma
- pos
- language
- status
- cefr_level
- frequency_rank
5) Substituir taxonomias do lemma¶
PUT /admin/content-bank/lemmas/:id/taxonomies
Payload esperado:
{
"taxonomy_value_ids": [
"9f8d2d49-304c-4d9f-91b8-6ff1e1d7bde2",
"d6f0e7f0-ec50-4f6a-9bcb-c0a88f8b9780"
]
}
Operações por seção do Lemma Editor¶
Senses¶
GET /admin/content-bank/lemmas/:id/sensesPOST /admin/content-bank/lemmas/:id/sensesPATCH /admin/content-bank/lemmas/:id/senses/:senseIdDELETE /admin/content-bank/lemmas/:id/senses/:senseId
Translations¶
POST /admin/content-bank/lemmas/:id/senses/:senseId/translationsPATCH /admin/content-bank/lemmas/:id/senses/:senseId/translations/:translationIdDELETE /admin/content-bank/lemmas/:id/senses/:senseId/translations/:translationId
Sentences¶
GET /admin/content-bank/lemmas/:id/sentencesPOST /admin/content-bank/lemmas/:id/examplesDELETE /admin/content-bank/lemmas/:id/examples/:sentenceId
Morphology¶
POST /admin/content-bank/lemmas/:id/morphology/formsPATCH /admin/content-bank/lemmas/:id/morphology/forms/:formIdDELETE /admin/content-bank/lemmas/:id/morphology/forms/:formId
Semantic Relations¶
POST /admin/content-bank/lemmas/:id/collocationsPATCH /admin/content-bank/lemmas/:id/collocations/:relationIdDELETE /admin/content-bank/lemmas/:id/collocations/:relationId
Pronunciation¶
GET /admin/content-bank/lemmas/:id/audio
Tabela de assets associada:
- lemma_assets (asset_type, asset_url)
Auditoria¶
Todas as mutações seguem trilha de auditoria em sql_audit_log.