Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@satoshi-baba-0823

Bitrise APIを使ってみよう!

More than 1 year has passed since last update.

やりたいこと

iOS/Androidのアプリを全てBitriseでCI/CDしているが、アプリケーションの数が30を超え管理するのが面倒になってきた。
この手のサービスはだいたいAPIがあるので、それを使って解決しちゃおうぜ!

Bitrise API

APIの概要については以下のページで確認できる。
https://devcenter.bitrise.io/jp/api/api-index/

で、APIの一覧はここにある。
https://api-docs.bitrise.io/

パッとみた感じだと、一通りの機能が揃っていて使い勝手良さそう。
ドキュメントがSwaggerで作られていることも、個人的にポイント高め!

認証

当然だけど認証しないとAPIは使用できない。
リクエストヘッダーのAuthorizationに、アクセストークンを設定すれば良い。

アクセストークンはアカウント設定画面のSecurityから作成できる。
スクリーンショット 2019-10-11 11.39.36.png

適当にアクセストークンの名前と期限を設定する。(画像では無期限にしている)
スクリーンショット 2019-10-11 11.40.10.png

こんな感じでアクセストークンが生成される。
アクセストークンは再表示ができないため、メモし忘れると作り直しになるので注意が必要!
スクリーンショット 2019-10-11 11.43.56.png

実際に使ってみる

使用する準備ができたので、実際に使ってみる。
一番オーソドックスなアプリケーションの一覧を取得するAPIを使用してみる。

インターフェースはこんな感じ。
スクリーンショット 2019-10-11 11.54.55.png

Base URLはhttps://api.bitrise.io/v0.1/と記載が上の方にあったので、https://api.bitrise.io/v0.1/appsにクエリパラメーターつけてGET送信すれば良さそう。

作成日順に取ってみたかったので、curlだとこんな感じ。

$ curl -X GET "https://api.bitrise.io/v0.1/apps?sort_by=created_at" -H "accept: application/json" -H "Authorization: {アクセストークン}"

Json形式でアプリの一覧を取得することができた!

{
    "data": [
        {
            "slug": "xxxx",
            "title": "バイトル iOS (開発)",
            "project_type": "ios",
            "provider": "custom",
            "repo_owner": "dip",
            "repo_url": "git@xxx",
            "repo_slug": "baitoru_app_ios",
            "is_disabled": false,
            "status": 1,
            "is_public": false,
            "owner": {
                "account_type": "organization",
                "name": "DIP",
                "slug": "xxxx"
            },
            "avatar_url": "https://concrete-userfiles-production.s3.us-west-2.amazonaws.com/repositories/xxxx/avatar/avatar.png"
        },
        {
            "slug": "xxxx",
            "title": "バイトル Android (開発)",
            "project_type": "android",
            "provider": "custom",
            "repo_owner": "dip",
            "repo_url": "git@xxx",
            "repo_slug": "baitoru_app_androidstudio",
            "is_disabled": false,
            "status": 1,
            "is_public": false,
            "owner": {
                "account_type": "organization",
                "name": "DIP",
                "slug": "xxxx"
            },
            "avatar_url": "https://concrete-userfiles-production.s3.us-west-2.amazonaws.com/repositories/xxxx/avatar/avatar.png"
        },

        {省略}

    ],
    "paging": {
        "total_item_count": 33,
        "page_item_limit": 50
    }
}

ここまでやればあとはBitrise APIでやりたい放題できる!
Bitrise最高!

0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
satoshi-baba-0823
しがない何でもやる系エンジニア iOS,Androidアプリ開発から、Pythonとかも言われたらとりあえずやります。
dip-net
ディップ株式会社は「バイトル」「はたらこねっと」などの求人情報サービスをはじめ、人工知能専門メディア「AINOW」、スタートアップ専門メディア「スタートアップタイムズ」、アニメなどの舞台を紹介するサイト「聖地巡礼マップ」といった新しい分野のサービスを自社で開発・運営しています。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?