Skip to content

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, requireAdmin e adminLogger.
  • 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/senses
  • POST /admin/content-bank/lemmas/:id/senses
  • PATCH /admin/content-bank/lemmas/:id/senses/:senseId
  • DELETE /admin/content-bank/lemmas/:id/senses/:senseId

Translations

  • POST /admin/content-bank/lemmas/:id/senses/:senseId/translations
  • PATCH /admin/content-bank/lemmas/:id/senses/:senseId/translations/:translationId
  • DELETE /admin/content-bank/lemmas/:id/senses/:senseId/translations/:translationId

Sentences

  • GET /admin/content-bank/lemmas/:id/sentences
  • POST /admin/content-bank/lemmas/:id/examples
  • DELETE /admin/content-bank/lemmas/:id/examples/:sentenceId

Morphology

  • POST /admin/content-bank/lemmas/:id/morphology/forms
  • PATCH /admin/content-bank/lemmas/:id/morphology/forms/:formId
  • DELETE /admin/content-bank/lemmas/:id/morphology/forms/:formId

Semantic Relations

  • POST /admin/content-bank/lemmas/:id/collocations
  • PATCH /admin/content-bank/lemmas/:id/collocations/:relationId
  • DELETE /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.