PyCon JP 2021 発表資料です。
「実践!フロントエンド分離戦略」はREADYFOR 株式会社主催のエンジニア向けLT勉強会です。ここで、菅原氏が「OpenAPI GeneratorとTypeScriptによる型安全なスキーマ駆動開発」のタイトルで登壇。スキーマ駆動開発とそのメリット、活用しているツールについて話します。 READYFORのフロントエンジニア 菅原弘太郎氏(以下、菅原):それでは「OpenAPI GeneratorとTypeScriptによる型安全なスキーマ駆動開発」と題して、発表します。自己紹介します。2020年11月に、フロントエンドエンジニアとしてREADYFORに入社しました。岩手県在住で、フルリモートで勤務しています。ReactとTypeScriptが好きで、React Hook Formのメンバーなので、もしフォローしてくれる方がいれば、フォローしてください。 フロントエンドとバックエンドの分離
Twitterは新しいAPIを発表します。Twitter APIの新機能を迅速に提供できるよう、抜本的に設計を見直した新しいバージョンは、これまでにはなかった新たなエンドポイントや機能も導入し、開発者がTwitter上のる公共の会話と世界規模で開発を行うために役立つようになっています。 Twitterが今後何を構築しようとしていて、Twitter APIバージョン2では何が新しくなるのか、何が提供されるのか、次に何が追加されるのかを以下ご覧ください。 オープンな開発を通じて分かったこと 新しいTwitter APIのためのビジョンやロードマップを明確に定めていく上で、皆さんからのフィードバックは欠かせませんでした。ツイートからフォーカスグループまで、この数年間、Twitter APIに何が必要で、どうすればもっと良くなるのか、皆さんは膨大な量のフィードバックをくれました。同時に、私たちはT
※この投稿は米国時間 2020 年 4 月 11 日に、Google Cloud blog に投稿されたものの抄訳です。 ほとんどのソフトウェア デベロッパーがご存じだと思いますが、API 設計には RPC と REST の 2 つの主要なモデルがあります。モデルに関係なく、ほとんどのモダン API は、なんらかの方法で同じ HTTP プロトコルにマッピングすることによって実装されます。また、RPC API 設計では、RPC モデルの範囲から外れずに HTTP から 1 つまたは 2 つのアイデアを採用することが一般的になっています。これにより、API 設計者に提示されるオプションの範囲が広がりました。この投稿ではこれらのオプションについて説明し、どれを選ぶか決める際に役立つガイダンスを提供します。 gRPC は RPC API を実装するためのテクノロジーで、HTTP 2.0 をその基盤
某アプリを Slack 対応する経緯で Slack API の中の、特に認証/認可を司る OAuth API を使う機会があったので自己まとめです。 もともとやりたかったのはウェブアプリに Slack アカウントでログインして、そのログインした人の権限でチャネル一覧を取得し(※)、ウェブアプリから指定したチャネルにメッセージを書き込む、ということでした。この中の※部分までを Node.js + Express + EJS で実現したコードを Github に公開しています(後述)。 実際に試してみるにはまず Slack に対象アプリケーションを登録する必要があります。 https://api.slack.com/apps を開いてログインし、"Create New App" ボタンをクリックしてウェブアプリを登録します: 登録するアプリの名前と、対象ワークスペースを指定します(つまり同じア
In the spring, we laid out a vision for our API platform and published a public roadmap. We made a commitment to give you, our developer community, a unified platform with scalable access to Twitter data. We also promised more predictability so that you can confidently build businesses with Twitter. Today we’re excited to deliver the next big piece of these commitments with Twitter premium APIs. B
注:単純なデータモデルでさえ、今後の維持や説明が必要になる6つものエンドポイントが含まれています。 あなたがクライアント側の開発者で、movies APIを使い、HTMLとjQueryで単純なWebページを作るとします。そのためには、映画と出演俳優・女優の情報が必要です。APIに必要な機能は揃っているので、データを取得します。 新しくターミナルを開いて以下を実行します。 curl localhost:3000/movies 以下の応答が返ってきます。 [ { "href": "http://localhost:3000/movie/1" }, { "href": "http://localhost:3000/movie/2" }, { "href": "http://localhost:3000/movie/3" }, { "href": "http://localhost:3000/mo
HTMLスクレイピングやファイルでのバッチ連携を不要に、「API管理ツール」でWebへRESTful APIを公開。ドキュメントもSwagger記述も自動生成[PR] WebサイトやWebサービス上の情報を取得し加工したい、あるいは、別の情報と組み合わせるために情報を取得して再利用したい、というとき、そのWebサイトにデータを取得できるAPIが用意されていれば便利ですが、現在のところ、現実にそういうAPIが整備されているケースは滅多にありません。 そのため、WebサイトからHTMLを取得して解析することでデータを取得する、いわゆる「HTMLスクレイピング」を用いるケースも増えてきています。しかしIDとパスワードを第三者に渡してのスクレイピングは、Webサイトやサービス提供者として、セキュリティやサーバへの負担からも避けたいところでしょう。 社内の業務アプリケーションでも同様です。 自社のカ
RESTの規約。URLはリソースであり、CRUDはHTTP動詞にマップされる。 RESTの規約に1つ問題があるとすれば、規約が十分でないということでしょう。上記で”通常”、”多くの場合”、”時に”という表現を使ったのは、これらのやり方は仕様で推奨されているものの守られるとは限らないためです。実世界では、大抵のAPIはRESTishがせいぜいです。例えばStripeでは、リソース更新に PUT ではなく PATCH を使うべきですが、歴史的理由でそうはなっておらず、おそらく現時点では変更に値しないでしょう。いずれにしても開発者はドキュメントを読む必要があり、その時、 POST メソッドのユビキタスな使い方があることに気づくのです。 RESTには他の問題もあります。必要なものだけでなく全てが返ってくるため、リソースのペイロードが非常に大きくなることがあるのです。そして多くの場合、クライアントが
この記事は、Python Advent Calendar 2016の14日目の記事です。 概要 NewsDigestでは、配信するニュース記事のカテゴリを機械学習アルゴリズムによって分類しています。具体的には、1日約1000件の記事を「エンタメ」「政治」「スポーツ」といった10種類のカテゴリに分類しています。 NewsDigestでは、そのようなカテゴリ分類をサーバーモジュールに密結合で行うのではなく、社内に分類のための汎用APIを設けています。 この汎用 API を実現するにあたって、よりスケーラブルにするために、サーバーレス(AWS Lambda)な機械学習 API を検討したので、その紹介というか、サーバーレス API を作るためのチュートリアルになります。 実際に動く API は https://3lxb3g0cx5.execute-api.us-east-1.amazonaws.
はじめに Cloud Vision APIとNatural Language APIを組み合わせて、名刺から情報抽出してみましょう。APIを使うためにPythonを用いて作ることにします。 前回記事はこちら: kintoneで名刺管理アプリを作ってみよう これから作るアプリ 名刺画像を与えると名前、会社名、住所を抽出するアプリを作成します。イメージとしては以下のようになります: アプリ作成の流れ Step 0:アプリ作成の準備をする ↓ Step 1:Vision APIを使ってテキスト検知をする ↓ Step 2:Natural Language APIを使って名前や会社名を抽出する ↓ Step 3:2つのAPIを統合して名刺から情報抽出する Step0(3min) アプリ作成の準備をする アプリを作るために、必要なライブラリのインストール、リポジトリのダウンロード、APIキーの設定を
やわなべです。 グーグルの写真共有サービスであるPicasa(ピカサ)が、2016/5/1でサービス終了しました。写真ストレージとして便利に使っていた人も、とっくに後継サービスである、 Googleフォトに移行済みだったかと思います。 このブログは以前書いたように、すべての写真をGoogleフォトから配信するようにしていて、レンタルサーバーの容量や、アップする際の画像サイズなんかを気にしなくていいようにしています。 WordPressのブログの全画像をGoogleフォトから配信させるようにした ただ、Googleフォトにはひとつ懸念があって「GoogleフォトAPIってのが存在しない」という点。正確には「PicasaのAPIを代用しないといけない」んですよね。 もしPicasaの終了に伴って、このPicasaAPIも終了または仕様変更なんて事態になると、その瞬間、このブログの全画像が表示さ
(編注:2016/7/29、頂いたフィードバックを元に記事を修正いたしました。) APIをデザインするということは、科学であり技術でもあります。多くの頭の良い人たちが失敗を重ねてきました。成功している人たちは、APIの主な目的を念頭においてデザインしているのです。その目的とは、「開発者たちをウンザリさせる」ということです。 親愛なる仲間たち、その崇高っぽい追求を称えるべく、「APIデザインにおける七つの大厄介」を共に数え上げようではありませんか(私がしたことを見てください)。 リスティクル(箇条書き形式の記事) を書くつもりはないのですが、少なくともタイトルは 教養ある宗教的文献が参照元 です。 まず、ルールを決めましょう。ここでは、成功し、きちんと機能しているAPIを取り上げます。ですから、「動かない」とか、「大量のセキュリティホールがある」といったことは厄介ごとに数えません。「致命的」
APIとAPIを組み合わせてマッシュアップサービスを作ろうと思った場合、まず自分が欲しいデータを提供しているAPIを探す必要があります。今回はそんなAPIのディレクトリを提供しているサービスをまとめて紹介します。 PublicAPIs 執筆時点で5,330のAPIから検索ができるAPIインデックスサービスになっています。名前やAPI名などを入れることで、新しいAPIの登録申請もできるようになっています。 PublicAPIs | Directory of public APIs for web and mobile API For That 検索、ソーシャル、ファイナンスなど約20のカテゴリに分かれて登録されています。約300種類くらいのAPIが登録されています。 API For That | An API Directory Zapier IFTTTのビジネス版と言った雰囲気のサービスに
2017-01-05 追記 2016年3月にエラーの標準形式RFC7807「Problem Details for HTTP APIs」が提案され、今日現在proposed standard(標準化への提唱)となっています。こちらも是非ご覧ください。 RFC 7807 - Problem Details for HTTP APIs HTTP APIの詳細なエラー情報をレスポンスに持たせるための仕様 最近はREST APIを提供しているサービスが増えてきていますね!また公開されるAPIだけでなく、Microservicesなアーキテクチャを採用して、バックエンドがWeb APIで通信するケースも増えてきているように思います。 APIを使うときはあまり気にしたこともなかったですが、いざAPIを設計してみるとどんなインターフェイスがいいのか、どんな形式がいいのかといった疑問が次々と出てきます。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く