API

O ETSO oferece uma API pública para consultar as obras e os autores do catálogo e reutilizar os seus identificadores, títulos, atribuições, resultados estilométricos e ligações.

As informações são entregues em formato JSON e podem ser usadas para integrar os dados do ETSO em catálogos, visualizações, mecanismos de busca ou ferramentas de pesquisa.

Endpoints

GET /api/obras

Devolve o catálogo completo de obras com seus metadados públicos.

GET /api/obras/{id-publicId-o-slug}

Devolve uma única obra usando seu identificador ou slug público.

GET /api/autores

Devolve a lista completa de autores com os seus metadados e as cinco categorias de obras relacionadas.

GET /api/autores/{id-o-key}

Devolve os metadados e as cinco categorias de obras de um autor usando o seu id numérico ou a sua chave textual.

Selecionar campos da resposta

Os quatro endpoints aceitam o parâmetro opcional fields com os nomes dos campos públicos de primeiro nível separados por vírgulas. As tabelas seguintes descrevem os campos de cada recurso. Selecionar um objeto, como resources, devolve esse objeto público completo.

Sem fields, todos os campos públicos são devolvidos. A seleção preserva os objetos envolventes authors, author, works ou work e as informações meta aplicáveis. Seleções vazias, campos desconhecidos ou privados e caminhos aninhados como resources.work devolvem HTTP 400.

https://etso.es/api/obras/690677?fields=publicId,displayTitle
{
  "meta": {
    "contentPolicy": {
      "includesFullText": false,
      "includesSummaries": false,
      "excludedFields": [
        "fullText",
        "text",
        "shortSummary",
        "summaryText",
        "resumen_breve",
        "resumen_largo"
      ]
    }
  },
  "work": {
    "publicId": 690677,
    "displayTitle": "La francesa Laura"
  }
}

Metadados das obras

CampoDescrição
idIdentificador estável da obra.
publicIdIdentificador público numérico estável da obra.
slugIdentificador legível usado nas URLs públicas.
titleTítulo como aparece na base de dados, incluindo o artigo final quando existir.
displayTitleTítulo transformado com o mesmo processo usado pelo site do ETSO.
titleVariantsOutros títulos da obra como aparecem na base de dados.
displayTitleVariantsOutros títulos transformados com o mesmo processo usado pelo site.
genreGênero da obra.
originProcedência ou fonte do texto usado pelo ETSO.
textStateEstado do texto dentro do catálogo.
addedOnData de incorporação ao catálogo, quando consta.
bitesoPublishedOnData de publicação no BITESO; null quando desconhecida.
summaryPublishedOnData de publicação do resumo; null quando desconhecida.
resultado1Resultado estilométrico da obra em forma de frase.
flagsIndicadores booleanos sobre relatório, resumo, exame de autorias e acesso textual.
traditionalAttributionTextAtribuição tradicional pronta para exibição.
traditionalAttributionPhraseFrase de atribuição tradicional com texto, Markdown, HTML e partes linkáveis.
stylometryAttributionTextAtribuição estilométrica pronta para exibição.
traditionalAttributionAtribuição tradicional normalizada.
stylometryAttributionAtribuição estilométrica normalizada.
resourcesLinks públicos relacionados dentro do ETSO.

Nos objetos de atribuição, authorId é o identificador público numérico do autor e authorKey é a chave textual usada nas URLs do ETSO. São propriedades das atribuições, não campos de primeiro nível.

Exemplo de resposta completa

Consulta de uma obra específica e resposta completa:

https://etso.es/api/obras/690677
{
  "meta": {
    "contentPolicy": {
      "includesFullText": false,
      "includesSummaries": false,
      "excludedFields": [
        "fullText",
        "text",
        "shortSummary",
        "summaryText",
        "resumen_breve",
        "resumen_largo"
      ]
    }
  },
  "work": {
    "id": "DESCONOCIDO_FrancesaLaura",
    "publicId": 690677,
    "slug": "la-francesa-laura",
    "title": "Francesa Laura, La",
    "displayTitle": "La francesa Laura",
    "titleVariants": [],
    "displayTitleVariants": [],
    "genre": "Comedia",
    "origin": "El texto procede de la edición crítica de Álvaro Cuéllar y Germán Vega García-Luengos (Gredos, 2023).",
    "textState": "Bueno",
    "addedOn": "2021/03",
    "bitesoPublishedOn": "2026-06-18",
    "summaryPublishedOn": "2026-06-18",
    "resultado1": "Los analisis de estilometria permiten asociar esta obra de forma clara con el perfil autorial de Lope de Vega Carpio.",
    "flags": {
      "inAuthorshipExam": true,
      "hasSummary": true,
      "hasReport": true,
      "hasTextAccess": true
    },
    "traditionalAttributionText": "Lope de Vega Carpio",
    "traditionalAttributionPhrase": {
      "text": "Obra atribuida a Lope de Vega Carpio.",
      "markdown": "Obra atribuida a [Lope de Vega Carpio](https://etso.es/autores/vega_carpio_lope_de).",
      "html": "Obra atribuida a <a href=\"/autores/vega_carpio_lope_de\">Lope de Vega Carpio</a>.",
      "parts": [
        {
          "kind": "text",
          "value": "Obra atribuida a "
        },
        {
          "kind": "author",
          "value": "Lope de Vega Carpio",
          "authorId": 364,
          "authorKey": "vega_carpio_lope_de",
          "href": "/autores/vega_carpio_lope_de",
          "url": "https://etso.es/autores/vega_carpio_lope_de"
        },
        {
          "kind": "text",
          "value": "."
        }
      ]
    },
    "stylometryAttributionText": "Lope de Vega Carpio [Segura]",
    "traditionalAttribution": {
      "groups": [
        {
          "members": [
            {
              "authorId": 364,
              "authorKey": "vega_carpio_lope_de",
              "authorName": "Lope de Vega Carpio"
            }
          ]
        }
      ],
      "connector": "and",
      "rawExpression": "vega_carpio_lope_de"
    },
    "stylometryAttribution": {
      "groups": [
        {
          "members": [
            {
              "authorId": 364,
              "authorKey": "vega_carpio_lope_de",
              "authorName": "Lope de Vega Carpio",
              "confidence": "segura"
            }
          ]
        }
      ],
      "connector": "and",
      "rawExpression": "vega_carpio_lope_de[segura]"
    },
    "resources": {
      "work": "/obras/la-francesa-laura",
      "summary": "/obras/la-francesa-laura/resumen",
      "report": "/informes/analisis-estilometrico-la-francesa-laura",
      "textAccess": [
        {
          "label": "Texto BITESO",
          "href": "/biteso/la-francesa-laura",
          "kind": "biteso"
        }
      ]
    }
  }
}

Autores e obras relacionadas

O id numérico do autor é o identificador do ETSO e corresponde a authorId nas atribuições das obras. A chave textual key identifica o autor nas URLs do ETSO.

CampoDescrição
idIdentificador público numérico do autor; corresponde a authorId nas atribuições das obras.
keyChave textual usada nas URLs do autor.
nameNome do autor.
nameVariantsVariantes do nome do autor.
resourcesLigações para a ficha pública do autor: author é o caminho e url é a URL absoluta.

Obras por autor

Cada autor inclui cinco arrays de publicId numéricos de obras (number[]), correspondentes às cinco categorias da sua ficha no exame de autorias. Só são incluídas obras desse exame, com os mesmos critérios do site: admitem-se atribuições prováveis ou possíveis e colaborações; as atribuições tradicionais ou estilométricas não resolvidas são excluídas do respetivo lado. A inclusão não implica autoria certa ou exclusiva.

Cada categoria sem obras devolve []. As categorias são calculadas para o autor consultado. Cada publicId de obra permite consultar /api/obras/{publicId} ou criar um link para https://etso.es/obras/{publicId}, que redireciona para a ficha canônica.

CampoDescrição
relatedWorkPublicIdsObras relacionadas com o autor: atribuição tradicional ou estilométrica.
traditionalWorkPublicIdsObras respaldadas pela tradição.
stylometryWorkPublicIdsObras respaldadas pela estilometria.
traditionalOnlyWorkPublicIdsObras respaldadas apenas pela tradição: sem respaldo estilométrico para este autor.
newStylometrySupportedWorkPublicIdsNovidades respaldadas pela estilometria: sem atribuição tradicional a este autor.

Todos os autores e as suas cinco listas de obras

https://etso.es/api/autores

Um autor e as suas cinco listas de obras

https://etso.es/api/autores/374

Apenas as obras relacionadas com um autor

https://etso.es/api/autores/374?fields=id,relatedWorkPublicIds

Uso recomendado

As respostas são servidas com cache público: public, max-age=3600, s-maxage=86400, stale-while-revalidate=604800. Para integrações externas, recomenda-se armazenar a resposta em cache localmente e não chamar a API a cada renderização.

Selecionar campos reduz o tamanho da resposta e a transferência de dados. Por si só, não reduz o número de requisições nem elimina todas as consultas à base de dados.