API

ETSO は、カタログ内の作品と著者を照会し、識別子、タイトル、著者帰属、文体計量分析の結果、リンクを再利用できる公開 API を提供しています。

情報は JSON 形式で返され、ETSO のデータをカタログ、可視化、検索システム、研究ツールに統合できます。

エンドポイント

GET /api/obras

公開メタデータ付きの作品カタログ全体を返します。

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

識別子または公開 slug を使って単一の作品を返します。

GET /api/autores

メタデータと関連作品の五つのカテゴリを含む著者一覧全体を返します。

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

数値 ID またはテキストキーで、単一の著者のメタデータと五つの作品カテゴリを返します。

レスポンスのフィールドを選択

4 つのエンドポイントはいずれも、公開された最上位フィールド名をカンマで区切る任意の fields パラメーターを受け付けます。以下の表に各リソースのフィールドを示します。resources などのオブジェクトを選択すると、その公開オブジェクト全体を返します。

fields を省略するとすべての公開フィールドを返します。選択後も authors、author、works、work のラッパーと該当する meta 情報は保持されます。空の選択、不明または非公開のフィールド、resources.work のような入れ子のパスは 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"
  }
}

作品のメタデータ

フィールド説明
id作品の安定した識別子。
publicId作品の安定した数値公開識別子。
slug公開 URL で使用される読みやすい識別子。
titleデータベース内のタイトル。末尾の冠詞がある場合はそれも含みます。
displayTitleETSO のウェブサイトと同じ処理で変換されたタイトル。
titleVariantsデータベース内の作品の別タイトル。
displayTitleVariantsウェブサイトと同じ処理で変換された別タイトル。
genre作品のジャンル。
originETSO が使用するテキストの出典または由来。
textStateカタログ内でのテキストの状態。
addedOn記録がある場合のカタログ追加日。
bitesoPublishedOnBITESO での公開日。不明な場合は null。
summaryPublishedOn要約の公開日。不明な場合は null。
resultado1作品の文体計量結果を文として示したもの。
flags報告書、要約、作者帰属調査、テキストアクセスに関する真偽値。
traditionalAttributionText表示用の伝統的帰属。
traditionalAttributionPhraseテキスト、Markdown、HTML、リンク可能な部分を含む伝統的帰属文。
stylometryAttributionText表示用の文体計量帰属。
traditionalAttribution正規化された伝統的帰属。
stylometryAttribution正規化された文体計量帰属。
resourcesETSO 内の関連する公開リンク。

帰属オブジェクト内の authorId は著者の公開数値識別子、authorKey は ETSO の URL に使用されるテキストキーです。これらは帰属オブジェクトのプロパティであり、最上位フィールドではありません。

完全なレスポンスの例

特定の作品のクエリと完全なレスポンス:

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"
        }
      ]
    }
  }
}

著者と関連作品

著者の数値 id は ETSO の識別子で、作品の帰属情報にある authorId と一致します。テキストキー key は ETSO の著者 URL に使われます。

フィールド説明
id著者の公開数値識別子。作品の帰属情報の authorId と一致します。
key著者の URL に使用されるテキストキー。
name著者名。
nameVariants著者名の異表記。
resources著者の公開ページへのリンク。author はパス、url は絶対 URL です。

著者ごとの作品

各著者には作品の数値 publicId の配列(number[])が五つ含まれ、著者帰属の検討にある著者ページの五つのカテゴリに対応します。この検討に属する作品のみを対象とし、ウェブサイトと同じ基準で、蓋然性や可能性のある帰属および共同執筆を含めます。未解決の伝統的帰属または文体計量分析による帰属は、それぞれの側から除外します。掲載は確実な帰属や単独執筆を意味しません。

作品がないカテゴリは [] を返します。各カテゴリは照会した著者ごとに計算します。 各作品の publicId は /api/obras/{publicId} の照会や https://etso.es/obras/{publicId} へのリンクに使用できます。このリンクは正規の作品ページへリダイレクトします。

フィールド説明
relatedWorkPublicIds著者に関連する作品:伝統的帰属または文体計量分析による帰属。
traditionalWorkPublicIds伝統的帰属で支持される作品。
stylometryWorkPublicIds文体計量分析で支持される作品。
traditionalOnlyWorkPublicIds伝統的帰属のみで支持される作品:この著者への文体計量分析による支持がない作品。
newStylometrySupportedWorkPublicIds文体計量分析で支持される新たな帰属:この著者への伝統的帰属がない作品。

すべての著者と各著者の五つの作品リスト

https://etso.es/api/autores

単一の著者と五つの作品リスト

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

単一の著者に関連する作品のみ

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

推奨される使い方

レスポンスは公開キャッシュ付きで配信されます: public, max-age=3600, s-maxage=86400, stale-while-revalidate=604800. 外部連携ではレスポンスをローカルにキャッシュし、レンダリングごとに API を呼び出さないことを推奨します。

フィールドの選択はレスポンスサイズとデータ転送量を減らします。それ自体でリクエスト数を減らしたり、データベース照会をすべてなくしたりするものではありません。