タグ

apiに関するakishin999のブックマーク (493)

  • プロンプトからREST APIを作るサービス『Hanabi.REST』の技術構成

    Hanabi.REST AIにHonoJSのバックエンドを書かせて遊ぶ、Hanabi.RESTというサービスを一般公開します。それに際して、この記事では、Hanabiの紹介と簡単に技術スタックを解説していきます。 皆さんは、AIがプロンプトからUIを生成する、V0というサービスをご存じですか?僕はあれを見たときに、ある妄想が膨らみました。 「V0のAPI版があれば、プロンプトからWebアプリケーションを作れるやん!!」と。 当初はハッカソン用の小プロジェクトとして始めましたが、想定以上に面白い結果が得られたため、開発を継続することにしました。技術的な制約、様々な黒魔術による不安定な挙動、LLMの劣化など、数多くの壁を乗り越えながら、約半年をかけてようやくリリースに至りました!! 次のリンクから実際にAIが生成したTwitter風のAPIを試すことが出来ます! また、会員登録すれば誰でもAP

    プロンプトからREST APIを作るサービス『Hanabi.REST』の技術構成
  • 無料で商用にも使える日本の郵便番号APIをリリースしました

    jp-postal-code-api https://github.com/ttskch/jp-postal-code-api郵便番号から住所のデータを取得できるWeb APIです。 GitHub Pagesを使用して静的なJSONファイルとして配信している ため、可用性が高いのが特徴です。また、オープンソースなのでクライアントワークでも安心してご使用いただけます。もしリポジトリの永続性や GitHub Pagesの利用制限 が心配な場合は、ご自由にフォークしてご利用ください。 日郵便によって公開されているデータ を元に住所データのJSONファイルを生成して配信しています。JSONファイルには日語表記・カナ表記・英語表記の住所データが含まれています。ただし、以下の注意事項があります。 大口事業所個別番号の住所データは以下のように出力されます(元データ の内容がそうであるため)

    無料で商用にも使える日本の郵便番号APIをリリースしました
  • ZOZOTOWNアプリのレガシーAPIリプレイスの道のり 〜チームでの挑戦〜 - ZOZO TECH BLOG

    はじめに こんにちは、ZOZOTOWN開発部アプリバックエンドブロックの髙井です。 私達のチームでは、レガシーとなっているZOZOTOWNアプリ用API(以下、レガシーAPIと呼ぶ)のリプレイスに2023年から着手しています。リプレイス対象となるレガシーAPIは規模が大きいので、フェーズで区切り、段階的にリプレイスを進めています。区切られた各フェーズは、フェーズ1、フェーズ2といった形で呼び分けており、フェーズごとにリプレイス対象とするエンドポイントを設定しています。一方で、事業案件や他マイクロサービスのリプレイスが並行して行われるため、フェーズごとにリプレイス計画を柔軟に調整してきました。 記事ではレガシーAPIのリプレイスについて、フェーズ3までを担当者が背景と課題を踏まえつつ紹介していきます。 目次 はじめに 目次 背景 フェーズ1 課題 1. リプレイス先APIの開発が初めて

    ZOZOTOWNアプリのレガシーAPIリプレイスの道のり 〜チームでの挑戦〜 - ZOZO TECH BLOG
  • 令和時代の API 実装のベースプラクティスと CSRF 対策 | blog.jxck.io

    Intro CSRF という古の攻撃がある。この攻撃を「古(いにしえ)」のものにすることができたプラットフォームの進化の背景を、「Cookie が SameSite Lax by Default になったからだ」という解説を見ることがある。 確かに、現実的にそれによって攻撃の成立は難しくなり、救われているサービスもある。しかし、それはプラットフォームが用意した対策の質から言うと、解釈が少しずれていると言えるだろう。 今回は、「CSRF がどうして成立していたのか」を振り返ることで、当にプラットフォームに足りていなかったものと、それを補っていった経緯、当にすべき対策は何であるかを解説していく。 結果として見えてくるのは、今サービスを実装する上での「ベース」(not ベスト)となるプラクティスだと筆者は考えている。 CSRF 成立の条件 例えば、攻撃者が用意した attack.examp

    令和時代の API 実装のベースプラクティスと CSRF 対策 | blog.jxck.io
  • Postmanを使い始めた時に知っておきたかった地味に便利な機能10選 - Qiita

    普段何気に使っているPostman。最近まで「手軽にGUIで疎通を試せて、設定を共有できてべんり〜」くらいで使っていました。 けどふと「実はもっと便利な機能があるのでは?」と思って調べてみたところ、色々出てきたのでせっかくなのでシェアしたいと思います。 たまたまですがちょうど10選! 地味に便利な機能10選 VSCode拡張 PostmanにはVSCode拡張機能があります。 インストールするだけで、VSCodeのサイドバーから利用可能です。 日語設定 日人なので日語で使いたい。 右上の歯車→Settingsから以下の通り選択することで日語化が可能です。 変数の定義 複数のAPIで同じ値を使いたい場合があるとします。例えばテスト用のユーザーIDなどです。 Postmanではそんな値をAPIファイルに逐一ハードコードする必要はなく、変数に保存することが可能です。 Postman Ec

    Postmanを使い始めた時に知っておきたかった地味に便利な機能10選 - Qiita
  • OpenAIのBatch APIを使ってお得にプロンプトを一括処理してみる - Taste of Tech Topics

    はじめに こんにちは。データサイエンスチームYAMALEXのSsk1029Takashiです。 最近はOpenAIに日支社が出来て、日語対応が加速するというニュースにわくわくしています。 今回はそんなOpenAIから発表されたBatch APIという機能が便利、かつお得な機能だったのでどのように使えるのか試してみます。 Introducing the Batch API: save costs and get higher rate limits on async tasks (such as summarization, translation, and image classification). Just upload a file of bulk requests, receive results within 24 hours, and get 50% off API pri

    OpenAIのBatch APIを使ってお得にプロンプトを一括処理してみる - Taste of Tech Topics
  • C# Win32API完全入門 - Qiita

    はじめに 対象とする読者について 記事の対象者としては以下のような人を想定しています。 C#でこれからWin32APIを使ってみたい。 C言語のことがあまりよく分かっていない。 今までは適当に使っていたので一度きちんと理解したい。 自分が同じような状況であったため、一から調べて整理してみました。自分が理解した順番や内容で記載することで、また、具体的な使用例によってできることの広さや動作を感じ取ってもらうことで、理解の助けになればと思っています。 但し、分かっている人からすると冗長な説明になっている部分や好ましくない内容、正確性に欠ける内容などもあると思います。実際に使用する場合はその点にご留意願います。 Win32APIについて Windows API - Wikipedia Microsoft Windowsのシステムコール用APIのこと。特に32ビットプロセッサで動作するWindow

    C# Win32API完全入門 - Qiita
  • RustとDDDでAPIサーバーを構築する

    はじめに Rust と フレームワーク axum を使って、API サーバーを実装してみました。 対象読者 RustAPI サーバーを実装したい人 Rust で DDD を実装したい人 説明しないこと Rust の基的な文法 DDD の基的な考え方 使用クレートの使い方 依存の方向 今回の作成する、アーキテクチャの依存関係は、上記のようになります。 上記の依存関係を頭の片隅に置いて、記事を読み進めていただけると、理解が深まると思います。 インフラストラクチャレイヤーは、アプリケーションレイヤーと依存しないことが重要です。 いざ、実装 仕様を決める 今回は、大学が、サークルを管理するシステムを作ることにしました。 メンバーを追加できる 4 年生は、追加できない メンバーを削除できる オーナーは削除できない 4 年生は、卒業する サークルは最低 3 人以上でないと、活動できない サー

    RustとDDDでAPIサーバーを構築する
  • 25000行超えのAPIドキュメントを分割した話

    はじめに COUNTERWORKSバックエンドエンジニアの伊藤です。 この記事ではAPIドキュメント分割の知見を紹介します。 弊社では OpenAPI を使用したスキーマ駆動開発を採用しています。 1ファイルで管理していたところ、25000行を超える行数となり管理コストが高くなっていました。 そこで分割作業を実施したのですが、どのような方針でどう対応したかを紹介します。 1ファイルで運用するデメリット そもそもどんなデメリットが発生していたのかを記載します。 全体の構造が把握しづらく、新規参画者への認知負荷が高い 行数が多すぎるため、RubyMine など IDE やエディタのパフォーマンスが落ちる 1ファイルの内部で複数の箇所を参照しているが、それぞれCommand fで該当部分を探す必要がある。そのため、見ているコードの箇所が頻繁に飛んで情報が追いづらい 実際にやったこと 方針 チーム

    25000行超えのAPIドキュメントを分割した話
  • RustでWeb APIを作る際のエラーハンドリング - CADDi Tech Blog

    TL;DR エラーハンドリングを行う目的 エラーハンドリングが適切に行われているとどう嬉しいか 1. エラーの発生原因が分かる 2. レスポンスステータスを型安全に出し分けることが可能になる どうエラーハンドリングを行うのか 実装方法 エラー型の定義で気を付けるべきポイント なぜanyhowを利用しないのか エラーハンドリングを行う上で持っている課題感 Drawer Growth グループ バックエンドエンジニアの中野です。今回は、私が所属するチームで gRPC API を開発する際に実践している Rust でのエラーハンドリングについて紹介していきます。 TL;DR エラーの発生原因がわかるようにエラー型を定義することが大切。 anyhow は使わずに自前のエラー型を定義して利用する。 エラーハンドリングを行う目的 そもそもなぜエラーハンドリングを行う必要があるのでしょうか。私が所属する

    RustでWeb APIを作る際のエラーハンドリング - CADDi Tech Blog
  • スーパーマリオメーカー2の通信は解析済みで全データを取得するためのAPIが構築済み、任意のコースをウェブ上で閲覧可能

    スーパーマリオメーカー2は2019年6月28日にNintendo Switch向けに発売されたゲームで、全世界で842万を売り上げるほどの大ヒットを記録しました。Nintendo Switch Onlineを利用することで世界中のユーザーに向けてコースを投稿したり、投稿されたコースを遊んだりすることが可能ですが、そうした通信に用いられるAPIは全て解析済みであることが明らかになっています。 Mario Maker 2 API https://tgrcode.com/posts/mario_maker_2_api Mario Maker 2 Datasets https://tgrcode.com/posts/mario_maker_2_datasets 任天堂はマリオカート8やスプラトゥーン2などWii U以降のゲームの多くでゲームとサーバーとの通信にNEXと呼ばれるプロトコルを使用して

    スーパーマリオメーカー2の通信は解析済みで全データを取得するためのAPIが構築済み、任意のコースをウェブ上で閲覧可能
  • 「APIエコノミー」に迫る“検知できない脆弱性攻撃”の脅威

    コンテンツデリバリーネットワーク(CDN)サービスを基盤に、各種のクラウド型セキュリティサービスを手掛けるアカマイ・テクノロジーズでWebセキュリティの動向を追う中西一博氏が、非常に発見が難しくなっているWeb攻撃の実態と手口を暴き、その対策について解説する。 以前の連載:迷惑bot事件簿 アプリのマイクロサービス化とAPIの関係 世界中のWeb通信を中継しているAkamai Technologies (以下 Akamai)が取り扱う通信の8割以上は、すでにAPIの通信が占めている。 APIを利用するスマートフォンやブラウザアプリが普及の後押しをしているのは間違いないが、近年ではサーバ側のマイクロサービス化(あるシステムを小規模なシステムを組み合わせて開発する手法)の影響も大きい。 日も同様だ。商用のWebアプリケーション開発者に話を聞くと「いま開発中のWebアプリやスマホアプリのサーバ

    「APIエコノミー」に迫る“検知できない脆弱性攻撃”の脅威
  • フィーチャーフラグAPIの標準化を目指す「OpenFeature」がCloud Native Computing Foundationのインキュベーティングプロジェクトに昇格

    フィーチャーフラグAPIの標準化を目指す「OpenFeature」がCloud Native Computing Foundationのインキュベーティングプロジェクトに昇格 KubernetesやContainerdなどクラウドネイティブ関連ソフトウェアの開発をホストするなど、クラウドネイティブの普及や推進のための団体「Cloud Native Computing Foundation」(CNCF)は、フィーチャーフラグAPIの標準化を目指す「OpenFeature」がこれまでのサンドボックスプロジェクトから、新たにインキュベーティングプロジェクトに昇格したことを発表しました。 The CNCF TOC has voted to accept OpenFeature as a CNCF incubating project! Congratulations @OpenFeature ht

    フィーチャーフラグAPIの標準化を目指す「OpenFeature」がCloud Native Computing Foundationのインキュベーティングプロジェクトに昇格
  • zod-to-openapiで、既存のAPI実装にOpenAPIドキュメントを後付けする | Memory ice cubes

    昔々あるところに、既存のWeb APIの実装がありました。 それなりに実装を進めた後に、天の声が言いました。「OpenAPIのドキュメントを公開したい」と。 さて、あなたならどうする?っていうニッチな問いに対する一つの答えとして。 ルーターごと乗り換える? たとえば今回でいうと、元のAPICloudflare Workersにデプロイされてた。 ので、たとえばhonoとかitty-routerとか、OpenAPIのドキュメント生成ができるエコシステムが整ってるルーターに乗り換えてしまうという手がある。 https://github.com/honojs/middleware/tree/main/packages/zod-openapi hono好きなあなたに https://github.com/cloudflare/itty-router-openapi/ itty-router好きな

    zod-to-openapiで、既存のAPI実装にOpenAPIドキュメントを後付けする | Memory ice cubes
  • (終了)法令APIプロトタイプ公開テスト(第1回)|デジタル庁

    法律や政省令等のデータを提供する法令API の高度化の一環で、法令APIの機能拡張のプロトタイプ(法令APIプロトタイプ)を開発しました。 開発した法令APIプロトタイプについて、法令データを利用される方のご意見を募り、また新規サービスの創出を促進すべく、2023年10月24日(火)から2023年11月30日(木)までの期間で法令APIプロトタイプ公開テストを実施しました。当期間内で、法令APIプロトタイプの環境・具体的な仕様・サンプルコードを公開しました。 今回の取組を通して、法令APIプロトタイプの使い勝手やニーズ等、貴重なご意見を頂きました。ご意見については改善への参考にさせていただくとともに、今後も、法令API機能拡張等の検討を継続していきます。 公開テスト期間2023年10月24日(火)から2023年11月30日(木)まで ※終了しました 法令APIプロトタイプの概要公開テスト期

    (終了)法令APIプロトタイプ公開テスト(第1回)|デジタル庁
  • APIでマイクロサービスを構築する実践的な手法を解説 『実践マイクロサービスAPI』発売

    アプリケーション開発でマイクロサービスが用いられる際、APIで接続・統合する場合がほとんどですが、APIだけで成り立つようなマイクロサービスにおけるAPI設計の方法はあまり深掘りされてきませんでした。 書では堅牢で運用・保守に適したマイクロサービスAPIを設計・実装するためのテクニックを解説しており、REST APIGraphQL APIの両方を取り上げてどのように設計すればよいのかを説明しています。 例はPythonが使われていますが、どの言語でも機能する原則とパターンに従っているので、Python以外の言語を利用している方でも心配ありません。マイクロサービスAPIの構築手法に自信がない方や、どうすればよりよい構築ができるのかを知りたい方におすすめです。 目次 Part 1 マイクロサービスAPIの概要 第1章:マイクロサービスAPIとは何か 第2章:基的なAPIの実装 第3章:マ

    APIでマイクロサービスを構築する実践的な手法を解説 『実践マイクロサービスAPI』発売
  • 銀行情報APIをリリースしました - ケンオールブログ

    ECサイトなど、振込先の銀行口座を登録する際、銀行情報を入力しやすくするための銀行情報APIをリリースしました。 スタンダードプラン以上で利用可能なため、すでに郵便番号API等をご利用のお客様は追加料金なしでご利用いただけます。 kenall.jp 銀行一覧APIと銀行支店一覧APIがあり、全銀コードや銀行名、支店名などの情報を以下のようなJSONで取得できます。 { "version": "2023-07-27", "data": { "bank": { "code": "0001", "name": "みずほ", "katakana": "ミズホ", "hiragana": "みずほ", "romaji": "mizuho" }, "branches": { "186": { "code": "186", "name": "品川駅前", "katakana": "シナガワエキマエ",

    銀行情報APIをリリースしました - ケンオールブログ
  • HTTPie for Web — API testing client

    Start testing REST, GraphQL, and HTTP APIs from the browser in 1s. Free, no account needed.

    HTTPie for Web — API testing client
  • 現場で必要になるswaggerの知識 - Qiita

    前回は「今日から始めるswagger入門」という最低限書けるようになっておいた方が良い物をこちらの記事で解説させてもらいました 今回は、筆者が4〜5年ほど現場で見てきたswaggerを元に、現場で必要になるswaggerの知識をまとめましたので、ぜひご覧になっていただけると嬉しいです! タグ付け pathsに書かれている各APIendpointをタグ付けしてグルーピングする目的で使用されます 現場では大量のAPIendpointを設計していくこととなるので、多くなってくると大変見辛くなってきます それをグルーピングすることにより見やすくしようということです openapi: 3.0.3 info: title: test-api version: 0.0.1 # ここから tags: - name: user description: ユーザー情報 # ここまで paths: /users

    現場で必要になるswaggerの知識 - Qiita
  • 今日から始めるswagger入門(最低限書けるようになる) - Qiita

    swaggerとは 古の時代、API仕様書はwordやexcelで表現され、各所に共有されるというのが一般的でした。 ですが近年、API仕様を表現する際にはswaggerを利用するのが最も効率的で、保守性が高く、世間一般で仕様化され、見やすいというのもあり、一般化されてきたのではないのでしょうか 今回はそんなswaggerの書き方について、まずは書くために覚えておきたいポイントを解説していこうかと思います! どう書いてくか swagger editorで書く 公式がWeb上に提供しているツールを利用し、すぐにでもswaggerの執筆が可能となっています! なにをインストールする必要もなく開始1秒で利用できるので、私も重宝してます なお、ページを開くとサンプルAPI仕様がすでにある状態でのスタートとなり、記法の参考などにもなります vscodeで書く 必要なプラグインをインストールし、vsc

    今日から始めるswagger入門(最低限書けるようになる) - Qiita