クイックスタート
現像液ごとのフィルムの公表時間を取得できます。すべて https://35mm.org/api/public/v1 以下にあり、応答は snake_case のキーと UTC の ISO 8601 形式の日付を持つ JSON です。
curl "https://35mm.org/api/public/v1/development-times?film=ilford-hp5-plus&developer=ilford-id-11"
各時間には出典(その種類、タイトル、保存されたアドレス)が付きます。記録がない場合、そのフィールドは null になり、何も補完されません。提供するのは公表されたデータのみで、下書き、提案、人物に関する情報は提供しません。
キー
匿名のリクエストには何も必要ありません。上限を引き上げるには API キーを依頼し、ベアラートークンとして送信してください。
curl -H "Authorization: Bearer 35mm_…" "https://35mm.org/api/public/v1/films"
誤っているキーや失効したキーには 401 を返します。静かに匿名として扱うことはありません。キーはサーバーやツール用です。誰でも読めるウェブページには記載しないでください。
キーは、ご依頼に応じて手動で発行します。
レート制限
- キーなしの場合:アドレスごとに1分あたり 60 リクエスト。
- キーありの場合:キーごとの上限で、別途合意がなければ1分あたり 600 です。
- 上限を超えると、Retry-After ヘッダー(待機する秒数)付きの 429 を返します。すべての応答に X-RateLimit-Limit と X-RateLimit-Remaining が付きます。
アドレスはキャッシュ内でカウントされ、保存はされません。キーの利用は1日単位で、数値としてのみカウントされます。
帰属表示
すべての応答に attribution オブジェクトが含まれます。当社のデータを表示する場所では 35mm.org へリンクし(フィルム、現像液、時間の url はそのページを指します)、各時間の出典もあわせて表示してください。出典のない現像時間は、ただの数字です。
このデータにはまだライセンスが明記されていません。リンクを張り、各時間の出典を併記し、不明な点はお問い合わせください。
エンドポイント
すべて GET です。以下の例は、小規模なテスト用カタログの実際の応答であり、本番データではありません。
GET/films
フィルムをアルファベット順に。メーカー、フォーマット、公表された時間の数付き。
curl "https://35mm.org/api/public/v1/films?manufacturer=ilford"
| パラメーター | 意味 |
|---|---|
| q | 名前またはメーカー名を、句読点を無視して検索します:hp5、ilford hp5。 |
| manufacturer | メーカーのスラッグ(例:ilford)。 |
| format | フォーマットのスラッグ(例:135 または 120)。 |
| process | 処理方式:bw、c41、e6、ecn2 … |
| type | フィルムの種類:bw_negative、color_negative、color_reversal … |
| still_made | 現行品のフィルムは 1、それ以外は 0。 |
| has_times | 公表された時間があるフィルムは 1、ないものは 0。 |
| page, per_page | 下記のページ分割をご覧ください。 |
応答例
{
"data": [
{
"id": 101,
"slug": "ilford-hp5-plus",
"name": "HP5 Plus",
"full_name": "Ilford HP5 Plus",
"manufacturer": {
"slug": "ilford",
"name": "Ilford"
},
"iso": 400,
"type": "bw_negative",
"process": "bw",
"is_chromogenic_bw": false,
"status": "in_production",
"still_made": true,
"formats": [
{
"slug": "135",
"name": "35mm (135)"
}
],
"respool_of": null,
"published_times_count": 2,
"url": "https://35mm.org/film/ilford-hp5-plus",
"api_url": "https://35mm.org/api/public/v1/films/ilford-hp5-plus",
"updated_at": "2026-10-01T12:00:00Z"
}
],
"links": {
"first": "https://35mm.org/api/public/v1/films?manufacturer=ilford&page=1",
"last": "https://35mm.org/api/public/v1/films?manufacturer=ilford&page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 50,
"from": 1,
"to": 1,
"total": 1
},
"attribution": {
"text": "Data from 35mm.org — each time with its source. Please link back to 35mm.org.",
"url": "https://35mm.org"
}
}
GET/films/{slug}
1つのフィルムの仕様と、公表されたすべての現像時間。
curl "https://35mm.org/api/public/v1/films/ilford-hp5-plus"
応答例
{
"data": {
"id": 101,
"slug": "ilford-hp5-plus",
"name": "HP5 Plus",
"full_name": "Ilford HP5 Plus",
"manufacturer": {
"slug": "ilford",
"name": "Ilford"
},
"iso": 400,
"type": "bw_negative",
"process": "bw",
"is_chromogenic_bw": false,
"status": "in_production",
"still_made": true,
"formats": [
{
"slug": "135",
"name": "35mm (135)"
}
],
"respool_of": null,
"published_times_count": 2,
"url": "https://35mm.org/film/ilford-hp5-plus",
"api_url": "https://35mm.org/api/public/v1/films/ilford-hp5-plus",
"updated_at": "2026-10-01T12:00:00Z",
"base": null,
"emulsion_type": null,
"spectral_sensitivity": null,
"has_remjet": false,
"first_released_year": 1989,
"discontinued_year": null,
"grain_rms": 14.0,
"resolving_power_lpmm": null,
"dmax": null,
"latitude_stops_under": null,
"latitude_stops_over": null,
"datasheet_url": null,
"image_url": null,
"development_times": [
{
"id": 501,
"film": {
"slug": "ilford-hp5-plus",
"name": "HP5 Plus",
"url": "https://35mm.org/film/ilford-hp5-plus"
},
"developer": {
"slug": "ilford-id-11",
"name": "ID-11",
"url": "https://35mm.org/developer/ilford-id-11"
},
"dilution": {
"label": "Stock",
"is_stock": true
},
"format": "any",
"ei": 400,
"temperature_c": 20.0,
"time_seconds": 450,
"time": "7:30",
"agitation": "10 s at the start, then 10 s every minute",
"process_type": "tank",
"confidence": "verified",
"notes": "Tank, 10 s initial agitation.",
"source": {
"type": "manufacturer_datasheet",
"title": "ILFORD HP5 PLUS technical information, 2023",
"url": "https://example.com/ilford-hp5-plus-datasheet.pdf"
},
"inherited_from": null,
"url": "https://35mm.org/film/ilford-hp5-plus/developed-in/ilford-id-11",
"updated_at": "2026-10-01T12:00:00Z"
},
{
"id": 502,
"film": {
"slug": "ilford-hp5-plus",
"name": "HP5 Plus",
"url": "https://35mm.org/film/ilford-hp5-plus"
},
"developer": {
"slug": "ilford-id-11",
"name": "ID-11",
"url": "https://35mm.org/developer/ilford-id-11"
},
"dilution": {
"label": "1+1",
"is_stock": false
},
"format": "any",
"ei": 800,
"temperature_c": 20.0,
"time_seconds": 600,
"time": "10:00",
"agitation": null,
"process_type": "tank",
"confidence": "community",
"notes": null,
"source": {
"type": "community",
"title": null,
"url": null
},
"inherited_from": null,
"url": "https://35mm.org/film/ilford-hp5-plus/developed-in/ilford-id-11",
"updated_at": "2026-10-01T12:00:00Z"
}
]
},
"attribution": {
"text": "Data from 35mm.org — each time with its source. Please link back to 35mm.org.",
"url": "https://35mm.org"
}
}
GET/developers
現像液とその他の薬品。
curl "https://35mm.org/api/public/v1/developers?manufacturer=ilford"
| パラメーター | 意味 |
|---|---|
| q | 名前またはメーカー名で検索します。 |
| manufacturer | メーカーのスラッグ。 |
| type | 薬品の種類:bw_developer、c41_kit、fixer … |
| still_made | 現行品は 1、それ以外は 0。 |
| page, per_page | 下記のページ分割をご覧ください。 |
応答例
{
"data": [
{
"id": 201,
"slug": "ilford-id-11",
"name": "ID-11",
"full_name": "Ilford ID-11",
"manufacturer": {
"slug": "ilford",
"name": "Ilford"
},
"type": "bw_developer",
"form": "powder",
"status": "in_production",
"still_made": true,
"reuse": "depends",
"is_one_shot": false,
"is_replenishable": null,
"reuse_source": {
"title": "ILFORD PERCEPTOL, ID-11 AND MICROPHEN FILM DEVELOPERS",
"url": "https://www.ilfordphoto.com/wp/wp-content/uploads/2024/09/ILFORD-POWDER-CHEM-190824.pdf"
},
"published_times_count": 2,
"url": "https://35mm.org/developer/ilford-id-11",
"api_url": "https://35mm.org/api/public/v1/developers/ilford-id-11",
"updated_at": "2026-10-01T12:00:00Z"
}
],
"links": {
"first": "https://35mm.org/api/public/v1/developers?manufacturer=ilford&page=1",
"last": "https://35mm.org/api/public/v1/developers?manufacturer=ilford&page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 50,
"from": 1,
"to": 1,
"total": 1
},
"attribution": {
"text": "Data from 35mm.org — each time with its source. Please link back to 35mm.org.",
"url": "https://35mm.org"
}
}
GET/developers/{slug}
1つの現像液と、その希釈、および時間が公表されているフィルム。
curl "https://35mm.org/api/public/v1/developers/ilford-id-11"
応答例
{
"data": {
"id": 201,
"slug": "ilford-id-11",
"name": "ID-11",
"full_name": "Ilford ID-11",
"manufacturer": {
"slug": "ilford",
"name": "Ilford"
},
"type": "bw_developer",
"form": "powder",
"status": "in_production",
"still_made": true,
"reuse": "depends",
"is_one_shot": false,
"is_replenishable": null,
"reuse_source": {
"title": "ILFORD PERCEPTOL, ID-11 AND MICROPHEN FILM DEVELOPERS",
"url": "https://www.ilfordphoto.com/wp/wp-content/uploads/2024/09/ILFORD-POWDER-CHEM-190824.pdf"
},
"published_times_count": 2,
"url": "https://35mm.org/developer/ilford-id-11",
"api_url": "https://35mm.org/api/public/v1/developers/ilford-id-11",
"updated_at": "2026-10-01T12:00:00Z",
"shelf_life_unopened_months": 24,
"shelf_life_opened_months": 3,
"capacity_rolls_per_litre": 10.0,
"datasheet_url": null,
"dilutions": [
{
"label": "Stock",
"is_stock": true,
"parts_developer": 1.0,
"parts_water": 0.0
},
{
"label": "1+1",
"is_stock": false,
"parts_developer": 1.0,
"parts_water": 1.0
}
],
"films": [
{
"slug": "ilford-hp5-plus",
"name": "HP5 Plus",
"published_times_count": 2,
"times_url": "https://35mm.org/api/public/v1/development-times?film=ilford-hp5-plus&developer=ilford-id-11"
}
]
},
"attribution": {
"text": "Data from 35mm.org — each time with its source. Please link back to 35mm.org.",
"url": "https://35mm.org"
}
}
GET/development-times
公表された時間を検索します。独自の時間を持たない巻き直し品には、元の銘柄の時間が返され、inherited_from が付きます。
curl "https://35mm.org/api/public/v1/development-times?film=ilford-hp5-plus&developer=ilford-id-11&ei=400"
| パラメーター | 意味 |
|---|---|
| film | フィルムのスラッグ。 |
| developer | 現像液のスラッグ。 |
| dilution | 公表されている希釈のラベル:Stock、1+1 … |
| ei | フィルムを設定した露出指数。 |
| temperature | 温度(°C)。 |
| format | その時間の対象フォーマット:135、120、sheet、any。 |
| page, per_page | 下記のページ分割をご覧ください。 |
応答例
{
"data": [
{
"id": 501,
"film": {
"slug": "ilford-hp5-plus",
"name": "HP5 Plus",
"url": "https://35mm.org/film/ilford-hp5-plus"
},
"developer": {
"slug": "ilford-id-11",
"name": "ID-11",
"url": "https://35mm.org/developer/ilford-id-11"
},
"dilution": {
"label": "Stock",
"is_stock": true
},
"format": "any",
"ei": 400,
"temperature_c": 20.0,
"time_seconds": 450,
"time": "7:30",
"agitation": "10 s at the start, then 10 s every minute",
"process_type": "tank",
"confidence": "verified",
"notes": "Tank, 10 s initial agitation.",
"source": {
"type": "manufacturer_datasheet",
"title": "ILFORD HP5 PLUS technical information, 2023",
"url": "https://example.com/ilford-hp5-plus-datasheet.pdf"
},
"inherited_from": null,
"url": "https://35mm.org/film/ilford-hp5-plus/developed-in/ilford-id-11",
"updated_at": "2026-10-01T12:00:00Z"
}
],
"links": {
"first": "https://35mm.org/api/public/v1/development-times?film=ilford-hp5-plus&developer=ilford-id-11&ei=400&page=1",
"last": "https://35mm.org/api/public/v1/development-times?film=ilford-hp5-plus&developer=ilford-id-11&ei=400&page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 50,
"from": 1,
"to": 1,
"total": 1
},
"attribution": {
"text": "Data from 35mm.org — each time with its source. Please link back to 35mm.org.",
"url": "https://35mm.org"
}
}
現像時間
| フィールド | 意味 |
|---|---|
| time_seconds, time | 時間(整数の秒数と m:ss 形式)。 |
| ei, temperature_c | その時間の対象となる露出指数と温度(°C)。 |
| source | 常に存在:type(manufacturer_datasheet、own_test、third_party、community)、title、url(保存された値。記録がない場合は null)。 |
| confidence | verified、community、unverified、disputed:その時間が出典とどの程度照合されたか。 |
| inherited_from | 巻き直し品が時間を引き継ぐ場合は元の銘柄のスラッグ、それ以外は null。 |
ページ分割
一覧は page と per_page でページ分割されます(既定は 50、最大 100)。links には first、last、prev、next のアドレス(ない場合は null)、meta には current_page、last_page、per_page、from、to、total が含まれます。links.next が null になるまでたどってください。
キャッシュ
応答には ETag、Last-Modified、Cache-Control: public, max-age=300 が付きます。ETag を If-None-Match で送り返すと、変更がなければ本文なしの 304 が返ります。これもリクエストとして数えられます。そちら側でもキャッシュしてください。カタログは分単位では変わりません。
どのサイトのブラウザーからもこれらのルートを読み取れます(CORS:任意のオリジンからの GET)。
エラー
エラーは共通の形式で、拒否されたパラメーターには details が付きます。
{
"error": {
"code": "invalid_parameter",
"message": "One or more parameters are not valid.",
"details": { "per_page": ["The per page field must not be greater than 100."] }
}
}
| HTTP | code | 意味 |
|---|---|---|
| 401 | invalid_api_key | キーが誤っているか、失効しています。 |
| 404 | not_found | そのスラッグのフィルムまたは現像液はありません。 |
| 405 | method_not_allowed | この API は読み取り専用です。GET を使用してください。 |
| 422 | invalid_parameter | パラメーターが有効な値ではありません。 |
| 429 | rate_limited | リクエストが多すぎます。Retry-After の秒数だけ待つか、キーを依頼してください。 |
OpenAPI
API 全体は OpenAPI 3.1 ファイルに記述されています:/api/public/v1/openapi.json。Postman、Insomnia、コードジェネレーターにインポートできます。
時間カードの埋め込み
ブログやフォーラムでは、1つの現像時間を小さなカードとして表示できます。フィルム、現像液、希釈、感度、温度、時間、出典を表示し、35mm.org へのリンクが付きます。Cookie もスクリプトも他サイトからの読み込みもない単純なページで、フレームに埋め込むためのものです。
<iframe src="https://35mm.org/embed/time?film=ilford-hp5-plus&developer=ilford-id-11&dilution=Stock&ei=400&temp=20" width="100%" height="214" style="border:0;max-width:440px" loading="lazy" title="HP5 Plus in ID-11 — 35mm.org"></iframe>
| パラメーター | 意味 |
|---|---|
| film, developer | フィルムと現像液のスラッグ。 |
| dilution, ei, temp | 1つの時間に絞り込みます。省略すると、公称感度での時間が表示されます。 |
| id | または、API の id で1つの時間を指定します。 |
| theme | light または dark。省略すると、カードは閲覧者のカラースキームに従います。 |
| lang | en、pl、uk。 |
一致する公表時間がない場合、カードはその旨を表示してフィルムにリンクします。近いものを表示することはありません。フィルム × 現像液の各ページの「埋め込み」ボタンで、プレビュー付きでコードを作成できます。
カードが表示された回数を、日ごと、サイトごと(掲載ページのホスト名のみ)、組み合わせごとに集計します。Cookie も、アドレスの保存もありません。