Integração nativa

Integração com Firebase

Conecte o Akendor ao seu projeto Firebase: os artigos são salvos como documentos na sua coleção do Firestore e as imagens no seu Cloud Storage. Ideal para sites e apps headless.

Configurações de conexão

Coleção do Firestore

Informe o nome da coleção (por exemplo, articles) em que o Akendor vai salvar os artigos.

Pasta do Firebase Storage

Indique a pasta do seu bucket do Firebase Storage em que as imagens dos artigos serão enviadas. O bucket é opcional: se não for informado, será usado o bucket padrão do projeto.

Conta de serviço

Para que o Akendor possa gravar no seu projeto, é necessário o arquivo JSON da sua conta de serviço.

Conta de serviço configurada e protegida

As credenciais ficam ocultas por segurança.

Importação do JSON

O Akendor aceita o arquivo JSON completo da conta de serviço: não é preciso extrair as chaves uma a uma.

  1. No console do Firebase, abra Configurações do projeto > Contas de serviço.
  2. Gere e baixe uma nova chave privada (arquivo JSON).
  3. No Akendor, vá em Configurações > Integração com Firebase, clique em "Mostrar JSON" e cole o conteúdo do arquivo.

Cosa scrive Akendor nel tuo Firestore

Quando pubblichi, Akendor scrive nella tua collezione un documento per ogni articolo, con i nomi dei campi in inglese. Qui sotto un esempio reale con tutti i campi. Usa i campi di testo e l'array paragraphs per costruire la pagina e ignora quelli che non ti servono.

firestore_article.json
Documento Firestore
{
  "slug": "managing-generalized-anxiety",
  "title": "How to manage generalized anxiety",
  "subtitle": "Practical strategies and clinical insights",
  "summary": "Generalized anxiety calls for a multifactorial approach...",
  "category": "Mental health",
  "language": "en",
  "status": "pubblicato",
  "articleDate": "Timestamp(2026-06-19T10:14:00Z)",
  "lastUpdate": "Timestamp(2026-06-21T08:02:11Z)",
  "image": "https://cdn.example.com/img/anxiety-cover.webp",
  "readingTime": 7,
  "wordCount": "1450",
  "seoTitle": "How to manage generalized anxiety in 2026",
  "metaDescription": "A complete guide to managing generalized anxiety...",
  "keyword": "generalized anxiety",
  "seoScore": 82,
  "seoAudit": {
    "analyzedAt": "2026-06-19T10:14:30.000Z",
    "scores": { "onPage": 84, "readability": 78, "links": 70, "transitionWords": 80, "sentenceLength": 85, "readingTime": 90, "activeVoice": 75, "tone": 88 },
    "strengths": ["Clear focus on one search intent"],
    "weaknesses": ["Few links to other articles of the site"],
    "suggestions": ["Add two internal links in the second section"],
    "tips": ["Shorten the meta description to 155 characters"]
  },
  "embeddingVector": "Vector(768)",
  "tableOfContents": ["What anxiety is", "Physical symptoms"],
  "keyPoints": ["Anxiety is a natural mechanism", "Breathing helps reduce tension"],
  "takeaways": ["Recognize the physical signals before they grow"],
  "paragraphs": [
    {
      "id": "5074accf-3949-4945-8ae0-525e20c99de6",
      "heading": "What anxiety is",
      "content": "<p>Generalized anxiety disorder...</p>",
      "image": "",
      "practicalInsight": {
        "type": "attenzione",
        "boxTitle": "Watch for physical signals",
        "points": ["Sudden racing heart", "Muscle tension"]
      }
    }
  ],
  "faq": [
    { "question": "How long does an anxiety attack last?", "answer": "Usually between 10 and 30 minutes..." }
  ],
  "externalReferences": [
    { "title": "pubmed.ncbi.nlm.nih.gov", "url": "https://pubmed.ncbi.nlm.nih.gov/..." }
  ],
  "remoteDocId": "7Hq2xYb0n5LwEJc9TfRa"
}

Da sapere

articleDate e lastUpdate sono Timestamp di Firestore. seoScore è il punteggio SEO da 0 a 100, calcolato alla pubblicazione, e seoAudit ne contiene il dettaglio (punti di forza e aree da migliorare). embeddingVector è il vettore che Akendor usa per trovare articoli simili: se non ti serve, ignoralo. I valori di status e practicalInsight.type sono codici fissi (pubblicato; consiglio, mito, esempio, attenzione). remoteDocId è l'identificativo del documento nella tua collezione.

Credenciais protegidas

O JSON é criptografado (AES-GCM) antes de ser enviado aos nossos servidores. O Akendor o usa apenas para gravar na coleção e na pasta que você indicou.

Observação sobre a visibilidade

Esta configuração só aparece se você escolheu "Firebase" como plataforma do site na aba Geração das configurações.

Quer conectar o Akendor ao seu projeto Firebase?

Criar conta