api-docs.bluecedar.com
Open in
urlscan Pro
54.225.205.215
Public Scan
URL:
https://api-docs.bluecedar.com/
Submission: On April 13 via api from US — Scanned from DE
Submission: On April 13 via api from US — Scanned from DE
Form analysis
0 forms found in the DOMText Content
* Body * Headers (1) Public Documentation Settings ENVIRONMENT No Environment LAYOUT Double Column LANGUAGE cURL - cURL Blue Cedar API Documentation Introduction Getting started Apps v0.1 Authentication BLUE CEDAR API DOCUMENTATION Incorporate Blue Cedar deployment services into your CI/CD pipelines using these APIs. GETTING STARTED All requests using the Blue Cedar APIs are authorized with a Bear token. AUTHENTICATION An access token must be retrieved first and passed into the Authorization header. For more information obtaining an access token, see the Authorization documentation. AUTHENTICATION ERROR RESPONSE If a Bearer token or Authorization header is missing, malformed, or invalid, you will receive an HTTP 401 Unauthorized response code. AUTHORIZATIONBearer Token Token {{accessToken}} APPS V0.1 The following APIs describe how to use apps in the Blue Cedar Platform. These Platform APIs are used for app folders, apps, and files associated with apps. All requests are authorized with a Bearer token. An access token must be retrieved first and passed into the Authorization header. For more information obtaining an access token, see the Authorization documentation. REQUEST IDS Each request will have an associated requestId in the JSON response. Use this requestId with Blue Cedar Support if more information is needed about an error response. See the documentation of a specific request to get more details, but the generic format of a response will contain the requestId: json { "requestId": "7bfb6c93-781b-42af-bbd3-86790ae0f139" ... } PAGING For requests that support paging, add query params to the GET request. The following query params for paging can be used: Query param Description page The page number of the resource to GET. 1-index based. Default: 1 size The number of items to return in the response for a page. Default: 20 For example, to get page #3 of app folders with a page size of 2 entries, the request would be: GET /v0.1/app_folders?page=3&size=2 SORTING For requests that support sorting, add query params to the GET request. See detailed API description for any other attributes specific to the API that are allowed for sorting. The following query params for sorting can be used: Query param Description createdDate Sort response by attribute creation date modifiedDate Sort response by attribute modification date asc Sort ascending. Used in combinatation with createdDate or modifiedDate. (default) desc Sort descending. Used in combinatation with createdDate or modifiedDate. For example, to sort all apps ascending by created date, use the following request: GET /v0.1/apps?sort=createdDate,asc If no sort params are provided, the default response is sorted descending by createdDate FILTERING For requests that support filtering, a query param can be used to filter the returned results. Each filter param is distinct to the request. See detailed API description for allowed filters. For example, to get all the app folders that contain an app with id b37fdc9b-7fc8-44fc-ba33-ab9b045e0a58, the request would be: GET /v0.1/app_folders?appId=b37fdc9b-7fc8-44fc-ba33-ab9b045e0a58 FILE PROCESSING The APIs that accept files as part of the request body will accept only a single file. If more than 1 file is sent in the request, only the first file will be processed, and the rest will be ignored. For example, if more than 1 app is sent to the POST /v0.1/apps api, only the first app will be uploaded, and the rest will be ignored. Use multiple requests to upload more than 1 app. SCHEMA A request JSON schema is provided via a /v0.1/schema/{resource} URL. The schema conforms to JSON schema draft-04 (https://json-schema.org/draft-04/draft-zyp-json-schema-04). See detailed API descriptions for examples. GENERAL ERROR RESPONSES If a request fails to adhere to proper HTTP, a response status of 400 will be returned with a detailed error message, if known. For example, any request that missing a required Content-Type header receive the following response: json { "message": "Missing Content-Type", "code": 20000, "requestId": "7bfb6c93-781b-42af-bbd3-86790ae0f139" } Any request with an unknown body parameter will respond with: json { "message": "Unknown request parameter", "requestId": "7bfb6c93-781b-42af-bbd3-86790ae0f139" } For a more generic HTTP error, the client will receive the following response: json { "message": "Something went wrong!", "requestId": "7bfb6c93-781b-42af-bbd3-86790ae0f139" } Please check the HTTP status code of the response along with the JSON to find the cause of the error. Some example response codes are: HTTP Status Code Description 400 Bad Request. Please check your request. 401 Invalid credentials. 403 Valid credentials were successfully authenticated, but the user is not authorized for the action. 404 Resource not found. Please check your url and optional resource ID in the url. 500 Internal Server Error. Please check your request and contact support if needed. Save the requestId from the response to provide to support. AUTHORIZATIONBearer Token Token {{accessToken}} APPS This API is used to upload apps or app bundles and manipulate attributes of those apps. The Platform supports the following app types for upload: * Android APKs * iOS IPAs FILTERING & SORTING See top level API description for more info on filtering & sorting. The Apps API supports the following filter and sort keys: Filter key Value Description appInternalVersion version string to filter Returns all apps with the specified version platform ANDROID or IOS Return all apps with specified platform state state string to filter Returns all apps in the specified state. See below for possible state values android.packageName package name of the Android app to filter Returns all Android apps with the specified package name ios.bundleId bundle ID of the iOS app to filter Returns all iOS apps with the specified bundle ID appFolderId app folder resource ID Returns all apps associated to the specified app folder (filtering only) APP STATES During an import, an app will go through multiple asyncrounous operations. The state field describes the current stage of the import process. The table below describes the possible states: State Description PENDING_UPLOAD An app entry has been created and the file upload is in progress UPLOAD_FAILED An app entry has been created and the file upload attempted. The file upload failed UPLOADED The app entry has been created along with a successful file upload SCAN_IN_PROGRESS A scan of the app is in progress SCAN_FAILED A scan of the app failed COMPLETE The app has been successfully created and scanned AUTHORIZATIONBearer Token This folder is using Bearer Token from folderApps v0.1 SCAN DATA Read-only API to get all information about an app that was retrived from a Blue Cedar scan. AUTHORIZATIONBearer Token This folder is using Bearer Token from folderApps v0.1 GETGET ALL SCAN DATA FOR THIS APP {{baseUrl}}/v0.1/apps/{{appId}}/scan_data Retrieve all data collected about this app. AUTHORIZATIONBearer Token This request is using Bearer Token from folderApps v0.1 Example Request Get all scan data for an Android app View More curl curl --location -g '{{baseUrl}}/v0.1/apps/d02a3a88-2d0d-4ce5-8ccb-c6f1d141adc0/scan_data' 200 OK Example Response * Body * Headers (1) View More json { "id": "4fd219d7-d298-4bf5-b2e1-bcf52ef56869", "audit": { "createdBy": "04eaca09-2348-4cb9-b272-291a88cb356f", "createdDate": "2023-11-21T18:37:46.162574", "modifiedBy": "04eaca09-2348-4cb9-b272-291a88cb356f", "modifiedDate": "2023-11-21T18:37:46.162574" }, "scanData": { "ANDROID_BASIC": { "metaInfo": { "appName": "Compass", "appVersion": "4.16.0-beta-373-a30cf9f", "sdkVersion": "31", "packageName": "com.bluecedar.compass", "appVersionCode": "4016000", "targetSdkVersion": "31", "platformBuildVersionName": "12" }, "appIconInfo": { "appIcon": "df8ec6f8-d966-4181-8928-b82819909c55" }, "signingInfo": { "signers": [ { "data": [ { "pathInApp": "META-INF/CERT.RSA", "certificates": [ { "issuer": "CN=TestIssuer,OU=Eng,O=Org,L=City,ST=ST,C=US", "endDate": "2038-10-23T04:41:46.000+00:00", "subject": "CN=TestCN,OU=Eng,O=Org,L=City,ST=ST,C=US", "startDate": "2011-06-07T04:41:46.000+00:00", "signingAlgorithm": "SHA1WITHRSA" } ] } ], "schemeVersion": "1" } ] } } }, "_links": { "self": { "href": "{{baseUrl}}/v0.1/apps/d02a3a88-2d0d-4ce5-8ccb-c6f1d141adc0/scan_data" }, "scanData": { "href": "{{baseUrl}}/v0.1/apps/d02a3a88-2d0d-4ce5-8ccb-c6f1d141adc0/scan_data" } } } Content-Type application/json