タグ

apiに関するkshibata101のブックマーク (16)

  • SendGrid API v3 - SendGrid Documentation | SendGrid

  • 認証機能付きAPIが簡単に作れるCloud Endpoints入門 | apps-gcp.com

    稿では、Cloud Endpointsとは何か、どんな場合に活用できるのか、それを使うとどんなメリットがあるのかについて解説します。また実際のソースコードを使って認証機能を持ったAPIを構築する例をご紹介します。稿を読むことで、Cloud Endpointsを使ったAPI構築から活用までの流れを把握することができます。 稿ではOpenAPIを使用したCloud Endpointsについての記事です。Cloud EndpointsはgRPCや AppEngine/Java, Pythonにも対応していますが、稿ではそれらについては言及しません。予めご承知おき下さい。 Cloud Endpointsとは Cloud EndpointsはGoogle Cloud Platform(GCP)のサービスの1つで、API管理のための機能を提供します。Cloud Endpointsの主な機能は3

    認証機能付きAPIが簡単に作れるCloud Endpoints入門 | apps-gcp.com
  • リソースの一部更新におけるURL設計 - Qiita

    概要 Webアプリケーションにて、リソースの一部更新を行う際、どのようにURL設計を行うとシンプルで美しいか(当はそこまで考えていなかったけど)悩んでいたところ、 @t_wada さんから素敵な設計指針をご教示いただきました。 記事はその内容に加えて、実際に自分で行ったこと、調べたこと、思った事など、まとめております。 あらすじ 数週間前にSIピラミッドからヒモなしバンジーを決めてWebの世界に飛び込んだ私は、小さな小さなWebアプリケーションをrails newから手探りで作っていました。 そんなとき、簡単なリソースの一部更新機能をどう実装したもんかなーと悩んでました。以下、当時(といっても先週)の超雑なぼやき。 リンクをクリックしてモデルの一部を変更するのはどうしたらいいんだろう。 例)不参加をクリック -> 某カラムをtrueからfalseへ リクエストオブジェクトに対象カラムの

    リソースの一部更新におけるURL設計 - Qiita
  • Rails5 + APIモードで後からdeviseを使おうとした時のエラー対応 - Qiita

    APIモードでRails構築した後からdeviseでログイン画面作ろうとしてドハマリしたので、備忘録も兼ねて記述 ハマるまでの経緯 Rails + JSフレームワークでSPAを作ろうと考える APIサーバー構築のため、Rails5のAPIモードを使用 一般公開用ページとは他に、管理者用の管理ページ作成に着手 ログイン処理周りも全部SPAの枠組みで作ろうとすると認証とか大変だったので、管理ページはRailsに組み込むことにした deviseインストール + 初期設定をGithubのReadme見ながら実施 管理ページを開こうとするとエラーになって動かない! 実施した対応 エラーその1 undefined method 'flash' for#<ActionDispatch::Request> なんかflashメソッドが見つかんないって怒られてる 経緯5.まで実施して一番最初に発生 原因 Ra

    Rails5 + APIモードで後からdeviseを使おうとした時のエラー対応 - Qiita
  • WebAPI でファイルをアップロードする方法アレコレ - Qiita

    WebAPI を開発していると、ファイルを扱いたい場面に出くわすこともあると思います。 ただ、いざ WebAPI にファイルアップロードの仕組みを入れようとすると、いまいちしっくり来る方法がわからず、悩んだりするのではないでしょうか。 今回は実サービスの例を踏まえつつ、どのような方法が使われていて、何がベストプラクティスなのかを検討しようと思います。 ファイルの送信方法 モダンな RESTful WebAPI では、だいたい JSON でデータがやりとりされていると思いますが、この中にファイルの概念を入れようとすると、特に Input(ファイル送信)のやり方に悩むのではないかと思います。 世の中の WebAPI をざっと見てみると、ファイル送信については主に「multipart/form-data」と「Base64 エンコード」のどちらかが使われていることがわかります。 では、それぞれの特

    WebAPI でファイルをアップロードする方法アレコレ - Qiita
  • ApivoreでAPIの実装とOpenAPIドキュメントの乖離を防ぐ - Qiita

    記事ではApivore 1.6.2を使います。 スペックの記述 準備 swagger.json の配信 テストで使うために、OpenAPIに則って書いた swagger.json をローカル環境でAPIから取得できるようにしておきます(public ディレクトリ配下にJSONを置く、swagger-blocksを使って動的に作成する、など)。つまり、次のように動作する状態にします。 $ curl https://localhost:3000/v1/swagger.json | jq . { "swagger": "2.0", "info": { "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://

    ApivoreでAPIの実装とOpenAPIドキュメントの乖離を防ぐ - Qiita
  • SwaggerでRESTful APIの管理を楽にする - Qiita

    背景 最近は変化し続ける要件に対応するために、システムも柔軟であることが求められています。 そのため、部分的に変更やスケールの可能なシステムを構築し、API経由で連携するマイクロサービス的アーキテクチャが増えてきています。 そういった設計の中で問題になっていくのが、従来のモノリシックなアプリケーションではIDEやコンパイラなどで行っていた、機能間のインターフェイスをどう管理するかという部分です。 Swaggerとは? SwaggerとはRESTful APIのドキュメントや、サーバ、クライアントコード、エディタ、またそれらを扱うための仕様などを提供するフレームワークです。 公式サイトでは、The World's Most Popular Framework for APIsと謳っています。 その理由は、マイクロソフト、Google、IBM、SmartBearなどを大手の企業を含む「Open

    SwaggerでRESTful APIの管理を楽にする - Qiita
  • 開発効率を上げる!Swaggerで作るWEB APIモック - Qiita

    みなさんは、開発初期の段階でWeb API(以下API)の実装が追いつかずクライアント側が開発できないという経験をしたことはありますか? クライアント側はAPIがないと開発が滞ってしまうことがありますが、かといってAPIの開発も始まったばかりではすぐに必要なAPIを提供することができません。その問題を解決し、両者でスムーズに開発をすすめるために有効な方法の1つに、APIモックの作成があります。 弊社では、開発初期の段階でSwaggerとその周辺ツールを使ってWeb APIのモックを作成し、スムーズに開発できるようにしています。 Swaggerを使ったAPIモックの作成方法と手順、また気をつけるべき点などを紹介します。 目次 Swaggerとは? Swagger記法の一例 Swaggerのエディター選択 SwaggerAPIモックの動かし方 結論 まとめ Swaggerとは? Swagger

    開発効率を上げる!Swaggerで作るWEB APIモック - Qiita
  • Swagger+JSON SchemaでAPIの型をテストして開発サイクルをスピードアップさせた話 - pixiv inside

    CTO兼福岡オフィス立ち上げ担当として新アプリを作っている@edvakfです。 JSON APIを開発しているとこういう問題がありがちですよね。 仕様どおりにAPIの形式を作ったはずだけどなんか自信が持てない テストでいくつかのキーが存在するかの簡単なチェックはしてるつもりだけど、全部チェックするのは大変すぎる APIのControllerやViewをリファクタリングしたらレスポンスの形が変わってアプリがめっちゃクラッシュし始めた というのが怖くて誰もリファクタリングできなくなった APIドキュメントがメンテされない 知らない間にレスポンスのフィールドが増えてたけどドキュメントに書いてない これらを解決したい!と思って試行錯誤したら、スマートに解決することができました。この記事ではRailsのことについて書きますが、考え方は他の言語・フレームワークでも同じです。 なお、今回使ったgemのバ

    Swagger+JSON SchemaでAPIの型をテストして開発サイクルをスピードアップさせた話 - pixiv inside
  • Rails APIモードのdiff - Qiita

    既に似たような記事は存在するものの、 initializer や middleware の差分までは触れられていなかったので、捕捉するような記事です。 主な差分 アセットパイプライン関連の設定やディレクトリがなくなった。 Cookie 等 Web ブラウザでしか使われない設定やミドルウェアがなくなった。 $ diff -qr rails-sample rails-api-sample Files rails-sample/Gemfile and rails-api-sample/Gemfile differ Files rails-sample/Gemfile.lock and rails-api-sample/Gemfile.lock differ Only in rails-sample/app: assets Files rails-sample/app/controllers/ap

    Rails APIモードのdiff - Qiita
  • RailsAPI + Grape + Swaggerでドキュメントの自動生成可能なWebAPIをつくる - Qiita

    要約 RailsAPI + GrapeでAPIを作ったあとにSwaggerを導入するだけで実行可能なドキュメントが生成されて便利。 https://rails-api-swagger.herokuapp.com/docs/ エンドポイントの一覧、操作したときにどういうデータが返却されるかをWebページから確認できます。 手順 準備

    RailsAPI + Grape + Swaggerでドキュメントの自動生成可能なWebAPIをつくる - Qiita
  • APIのバージョニングは限局分岐でやるのが良い - Hidden in Plain Sight

    ちょっと前にTwitterAPIのバージョニングをどうやるかみたいな話をしていたのですが、そのへんもやもやしているので少し整理しておきたいなと。 APIのURLを/api/v1/*とかってやるの、やめたほうがいいとおもうんだけどなぁ。いざv2を作るとなったときに、大量のコピペが発生して後悔するよ、って伝えたい。— Kenn Ejima (@kenn) February 28, 2014 さて、これについて色々と異論・反論も含めた意見が出たのですが、まずは、大昔にURL方式(=コントローラ分割)でやってきて後悔したぼくが、(5年ぐらい前から)現在はどうやってAPIのバージョンを管理しているか?について紹介します。 基原理としては、コピペが多発する根っこで分岐(=コントローラ分割)じゃなくて、必要最小限のところで限局的に分岐するのがいい、という考え方に基づきます。 一言でいうと、「パラメー

    APIのバージョニングは限局分岐でやるのが良い - Hidden in Plain Sight
  • 綺麗なAPI速習会 - Qiita

    Wantedly Engineer blogに速習会資料を閲覧向けに再編しました! ぜひご覧いただけると幸いです! 記事は、綺麗なAPI速習会@Wantedlyの資料として作成されたものです。 同時にこちらのコードも参照してください。 マイクロサービス 流行りのマイクロサービス、何がいいのか 各々自由な言語やArchitectureでサービスを立てられる 障害の影響が部分的 変化に強い 個別デプロイ etc... マイクロサービス化をすすめるにあたり、やりとりは全てAPIで行う 内部のAPIであっても外部に公開できるようなクオリティのAPIを作成し、それを元にサービスを作っていくことが重要 APIGatewayとBFF API Gateway Pattern 公式サイトより 「見た目はモノリシック、実装はマイクロサービス」 一箇所見に行けば全てのAPIを見つけられる 細かい権限管理も可

    綺麗なAPI速習会 - Qiita
  • Auto-Labeling Pull Requests

    Photo by Sanwal DeenAs our engineering team continues to grow it’s becoming difficult to keep track of all the changes that we’re introducing to our codebase every day. We’d like to find an automated way to categorize the changes in each pull request based on the files that they touch. Let’s try auto-labeling pull requests that match the following criteria: Dependencies have changed e.g. gems or n

    Auto-Labeling Pull Requests
  • Google Sites: Sign-in

    Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode

    Google Sites: Sign-in
  • Semantic Versioning 2.0.0

    english セマンティック バージョニング 2.0.0 概要 バージョン番号 MAJOR.MINOR.PATCH を前提として、 あなたが互換性のない API の変更を行うときに MAJOR バージョンを、 後方互換性のある方法で機能性を追加したときに MINOR バージョンを、 そして、後方互換性のあるバグ フィックスをしたときに PATCH バージョンを、 インクリメントします。 追加のラベルとして、プレリリースとビルド メタデータが MAJOR.MINOR.PATCH フォーマットへの拡張として利用することができます。 序論 ソフトウェア マネジメントの世界には「依存関係地獄」と呼ばれる非常に恐ろしい場所が存在します。 あなたのシステムがより大きくなるほど、あなたのソフトウェアの中へより多くのパッケージを溶け込ませるほど、いつかこの絶望の底にいるあなた自身に気づく、そんな可能性が

  • 1