
目次
Notionにファイルを置くとき、外部のツールから直接アップロードできるのをご存じでしょうか。
これまで、外部と連携するときはファイルの置き場所を別に用意して、そのアドレスをNotionに渡す形が一般的でした。置き場所の管理も、アドレスが切れる心配も、こちら持ちです。
実際に試したところ、Notionの中に直接置けました。手順と、引っかかるところを書きます。
3段階に分かれています
1回で終わりません。3つの手順を踏みます。
作る、送る、貼る
| 手順 | やること |
|---|---|
| 1. 作る | ファイル名を伝えて、受け入れ先を用意してもらう |
| 2. 送る | 返ってきた送り先に、中身を送る |
| 3. 貼る | ページやファイルの列に、そのファイルを指定する |
最初に伝えるのはファイル名だけです。中身はまだ送りません。すると受け入れ先のアドレスと、そのファイルの識別子が返ってきます。
手順1で返ってくるもの
作った段階で返ってきたのは、次の4つです。
| 返るもの | 何に使うか |
|---|---|
| 識別子 | 手順3で貼るときに指定する |
| 送り先のアドレス | 手順2で中身を送る宛先 |
| 状態 | この時点では「待機中」 |
| 期限の時刻 | 作った時刻の1時間後 |
このうち、あとまで持ち回るのは識別子です。送り先のアドレスは手順2で使ったら終わりで、貼るときには使いません。
逆に言えば、手順1の返りから識別子を取り落とすと、貼る手段がなくなります。送るところまで成功していても、貼れないので置き場所に残ったままになります。作ってすぐ識別子を控える、という順番で組んでください。
送ると、状態が変わります
作った直後、そのファイルは「待機中」という状態です。中身を送ると「アップロード済み」に変わります。サイズも記録されました。
この状態を見れば、ちゃんと届いたかどうかが分かります。送った気になっていて実は届いていない、ということを防げます。
返ってきたサイズは、送った側で数えたサイズとぴたりと合っていました。ここが合っていれば、途中で切れていないことまで確認できます。状態だけを見て終わりにせず、サイズも突き合わせるのが確実です。
貼る先は2種類あります
ページの中にファイルとして置くこともできますし、データベースのファイルの列に入れることもできました。どちらも識別子を指定するだけです。
ページに置く場合は、ページの中身を追加するときの指定にファイルとして入れます。データベースの場合は、ファイルの列に対して同じ識別子を入れるだけです。どちらも書き方はほとんど同じで、貼り先が違うだけでした。
貼ったあとに読み返すと、Notionの置き場所を指すアドレスが返ってきます。外部の置き場所を用意する必要がありません。
ここまでで、外部に置き場所を持たずにファイルを扱う筋が通りました。ただし、この先の3つで引っかかります。順に見ていきます。
作ってから1時間で期限が切れます
ここが最初の落とし穴です。
受け入れ先には期限があります
手順1で受け入れ先を作ると、その1時間後の時刻が一緒に返ってきます。期限です。
つまり、作ってから1時間以内に中身を送る必要があります。
この時刻は、こちらで計算しなくても返ってきます。作った時刻を覚えておく必要はありません。返ってきた時刻をそのまま見ればいいです。
まとめて作って、あとで送るのは危険です
100件のファイルを扱うとき、先に受け入れ先を100個作って、それから順番に送る。こういう作り方をしたくなります。
ただ、書き込みは1件ずつで時間がかかります。100件を送るのに何分もかかると、最初に作ったものから期限が近づきます。
怖いのは、早いうちに作ったものから切れていくことです。100件のうち失敗するのが後ろの数件なら、途中まで成功して途中で止まった、と分かりやすいです。ところが期限切れは逆で、先に作ったものが先に切れます。見た目には、順番の頭のほうだけが抜けるという落ち方になります。
1件ずつ、作って送る。この形にしておくのが安全です。1件あたりの時間は「作る」と「送る」を足しただけなので、1時間に近づくことはありません。
途中で止まったときのやり直し方
件数の多い処理は、途中で止まることがあります。そのときに何が残っているかで、やり直し方が変わります。
| どこで止まったか | 残っているもの | やり直し方 |
|---|---|---|
| 作ったが送っていない | 受け入れ先だけ | 作り直す。1時間経っていれば、いずれにせよ使えない |
| 送ったが貼っていない | 中身まで残っている | 識別子が手元にあれば貼るだけ。なければ送り直し |
| 貼り終わっている | すべて | 何もしない。もう一度貼ると2重になる |
表の真ん中が、いちばん損をする形です。送るところまで終わっているのに、識別子を残していないと最初からやり直しになります。識別子は、送る前に記録してください。
拡張子で弾かれます
2つ目の落とし穴です。しかも、手順1の時点で止まります。
通ったものと、通らなかったもの
18種類の拡張子を試しました。
| 結果 | 拡張子 |
|---|---|
| 通った | txt、pdf、csv、json、md、png、jpg、gif、mp4、mp3、zip、xlsx、docx、pptx、html、svg |
| 通らなかった | bin、exe |
業務で使うものは、ひととおり通ります。弾かれたものを増やして調べたところ、パソコンで実行できる形式とインストーラの形式でした。
| 試した拡張子 | 結果 |
|---|---|
| bin、exe、sh、dmg、app | 弾かれた |
| js、py | 通った |
| 拡張子なし(「report」のような名前) | 通った |
意外だったのは最後です。拡張子が付いていない名前は、弾かれずに通ります。種類が分からないから弾く、という仕組みではありませんでした。
大文字でも同じ判定です。a.EXE は弾かれ、a.TXT は通りました。大文字と小文字は区別していません。
通ったものを並べ直すと、こうなります。
| 種類 | 通った拡張子 |
|---|---|
| 文書 | pdf、docx、md、txt、html |
| 表 | xlsx、csv |
| 資料 | pptx |
| 画像 | png、jpg、gif、svg |
| 音と動画 | mp3、mp4 |
| その他 | json、zip |
見積書、契約書、名簿、写真、録画。実務で受け渡しするものは、ほぼ全部が置けます。zipが通るので、まとめて渡す形も取れます。
今回試したのは18種類です。それ以外の拡張子については確かめていません。珍しい形式を扱うなら、本番の前に名前だけ送って試すのが早いです。中身を用意しなくても、手順1だけで判定が返ります。
中身ではなく、名前で判定されます
ここが大事なところです。弾かれたのは手順1の時点でした。まだ中身を送っていません。
つまり、ファイル名の拡張子だけを見て判断しています。中身が何であるかは見ていません。
裏を返すと、拡張子を書き換えれば通ってしまうということでもあります。ただし、受け取る側で開けるとは限りません。
メッセージは分かりやすいです
返ってくるのは「このファイル名の拡張子は対応していない」という内容です。何が悪いかがすぐ分かります。
ただし、拡張子がないと通ってしまうぶん、あとで開けないファイルが混ざります。弾いてもらえないので、名前を作る側で拡張子を必ず付けてください。
5MBを超えると、はっきり断られます
3つ目です。こちらは手順2、中身を送る段階で出ます。
サイズを変えて試しました
| サイズ | 結果 |
|---|---|
| 3MB | 通る |
| 6MB | 「6.001MiBは5MiBの上限を超えています」 |
| 21MB | 「ファイルが大きすぎます」 |
6MBのときは、実際のサイズと上限の両方を数字で教えてくれます。親切なエラーです。上限まであとどれくらいかが分かるので、削って再挑戦する判断ができます。
21MBのときは、短いメッセージだけでした。これは上限が別だからです。公式の説明によると、ここまでに書いた3段階の送り方は20MBまでで、それを超えるファイルは分割して送る別の方法になります。
つまり、21MBはそもそも送り方が違うので断られたということです。
| 断られた理由 | 返ってくる内容 |
|---|---|
| プランの上限(5MB)を超えた | 実サイズと上限の両方を数字で返す |
| 送り方の上限(20MB)を超えた | 短い一文だけ |
同じ「大きすぎる」でも、返ってくる内容が違います。エラーの文言で分岐を書いていると、片方だけ拾って片方を取りこぼします。
送る前に自分で測るほうが速いです
サイズで弾かれるのは手順2です。ということは、その時点で手順1は成功していて、受け入れ先を1つ作り終えています。無駄になります。
ファイルの大きさは、送る前に自分で数えられます。順番を入れ替えて、こうするのが無駄がありません。
| 順番 | やること |
|---|---|
| 0 | 手元でサイズを数えて、超えていたら何も送らない |
| 1 | 受け入れ先を作る |
| 2 | 中身を送る |
| 3 | 貼る |
拡張子も同じです。手元で確かめられることは、送る前に確かめる。件数が増えるほど効いてきます。
5MBという数字は、前に測ったものと同じです
以前、Notionの上限をまとめた記事で、1ファイルの上限が5MBだと書きました。今回、実際にアップロードして同じ数字が確認できました。
これは無料プランの数字です。有料プランなら、もっと大きなファイルを扱えます。録画やスキャンした書類を置きたいなら、そこが分かれ目になります。
ただし、注意が1つあります。有料プランで20MBを超えるファイルを送るなら、ここまでに書いた3段階とは別の、分割して送る方法が必要です。上限が上がったからといって、同じ手順のまま大きなファイルを送れるわけではありません。
自分の上限は、外から読めます
自分のワークスペースの上限は、確認する手段があります。つないだ側の情報を読むと、1ファイルの上限がバイト数で入っていました。
今回は 5242880 が返ってきました。これが5MiBです。プランを上げたあとに、ちゃんと上限が変わっているかもここで確かめられます。
送る前にサイズを比べるなら、数字を書き込んでおくのではなくここから読むほうが確実です。プランが変わっても直す必要がありません。
1回のアップロードを、何か所にも貼れます
これは試してみて分かったことです。
同じ識別子を、もう一度使えました
1回アップロードしたファイルを、ページのブロックとして貼り、そのあと別のページにも貼ってみました。両方とも通ります。
データベースのファイルの列にも、同じ識別子で入れられました。1回送れば、何か所にでも貼れるということです。
実際に試したのは、1回のアップロードに対して次の3か所です。
| 貼った先 | 結果 |
|---|---|
| ページの中のファイル | 貼れた |
| 別のページの中のファイル | 同じ識別子で貼れた |
| データベースのファイルの列 | 同じ識別子で貼れた |
3か所とも、貼ったあとに読み返すとアドレスが返ってきました。1回しか送っていないのに、3か所で開けます。
同じファイルを何度も送らなくて済みます
同じ資料を複数のページに置きたい場面はよくあります。案件ごとのページに共通の規約を添える、部署ごとのページに同じ様式を置く。そのたびに送り直す必要がありません。
送る回数が減るということは、時間も通信量も減るということです。件数が多いときに効いてきます。5MBのファイルを30か所に置くなら、送る量は150MBではなく5MBで済みます。
気をつけるところが1つあります。1か所を消したときに、他の場所が残るかどうかは確かめていません。消す運用まで入れるなら、そこは事前に試してください。
図にすると、こういう流れです
取り出したURLには60分の期限があります
最後に、貼ったあとの話です。
読み返すと、期限つきのアドレスが返ります
貼ったファイルを外から読み返すと、置き場所のアドレスが返ってきます。ただし、そのアドレスには60分の期限が付いていました。
一緒に、いつ切れるかの時刻も返ってきます。
外部のページに貼りっぱなしにはできません
Notionに置いたファイルのアドレスを、自社サイトの画像として使う。こういう使い方はできません。1時間で見えなくなります。
Notionの中で見るぶんには問題ありません。開くたびに新しいアドレスが発行される仕組みだからです。
控えを取るときも同じです
定期的に中身を書き出して保存している場合、アドレスだけを控えても意味がありません。その時点でファイルの中身も一緒に落としておく必要があります。
以前、外から控えを取るときに何が落ちるかを書きました。ファイルについては、アドレスではなく中身を取る、と覚えておいてください。
控えを取る手順は、こうなります。
| 順番 | やること |
|---|---|
| 1 | ページやデータベースを読んで、ファイルのアドレスを取る |
| 2 | その場でアドレスを開いて、中身を落とす |
| 3 | 落とした中身を保存する。アドレスは保存しても意味がない |
1と2のあいだを空けないことが大事です。読むところまで夜中にやって、落とすのは翌朝、という形にするとアドレスが切れています。読んだらすぐ落とす、で組んでください。
よくある質問(FAQ)
外部の置き場所を用意する方法と、どちらがいいですか。
Notionに直接置けば、置き場所の管理が要りません。一方、外部に置けば期限のないアドレスが使えますし、5MBの制限もありません。Notionの中だけで完結するならこちら、外でも使うなら外部に置く、という分け方になります。
1時間の期限を過ぎたらどうなりますか。
今回は期限切れまで待っていないので、実際の挙動は確かめていません。作り直せばいいだけなので、1件ずつ作って送る形にしておけば気にする必要はないと思います。
拡張子を変えれば、どんなファイルでも置けますか。
手順1は名前だけを見ているので、通ってしまいます。ただし、受け取る側が開けるとは限りません。おすすめはしません。
5MBを超えるファイルを置きたいです。
無料プランでは置けません。有料プランなら上限が上がります。ただし20MBを超えるなら、分割して送る別の方法に切り替える必要があります。プランを上げたくない場合は、外部の置き場所に置いてアドレスを貼ることになります。
同じファイルを何か所にも貼れるとのことですが、消すとどうなりますか。
そこまでは試していません。1か所を消したときに他が残るかどうかは、実際に確かめてから運用に入れてください。
アップロードの状態は、どうやって確認しますか。
中身を送った返りに状態が入っています。「待機中」から「アップロード済み」に変わっていれば成功です。サイズも一緒に返るので、送ったサイズと合っているかを見ると確実です。
1件ずつ、作って送ってください
受け入れ先には1時間の期限があります。まとめて作ってあとで送ると、最初のものから切れていきます。1件ずつ作って送る形にしておけば、件数が増えても困りません。