--- title: "Get build history" slug: "devtools-sourcebuild-buildhistorylist" tags: ["SourceBuild"] updated: 2026-09-17T10:05:48Z published: 2026-09-17T10:05:48Z canonical: "api.ncloud-docs.com/devtools-sourcebuild-buildhistorylist" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Get build history Available in Classic and VPC Get the SourceBuild project build history. ## Request This section describes the request format. The method and URI are as follows: | Method | URI | | --- | --- | | GET | /api/v1/project/{projectId}/history | ### Request headers For information about the headers common to all SourceBuild APIs, see [SourceBuild request headers](/docs/en/devtools-sourcebuild#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94). ### Request path parameters You can use the following path parameters with your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `projectId` | String | Required | Project ID - See [Get project list](/docs/en/devtools-sourcebuild-projectlist). | ### Request example The request example is as follows: ``` curl --location --request GET 'https://sourcebuild.apigw.ntruss.com/api/v1/project/20***/history' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' ``` ## Response This section describes the response format. ### Response body The response body includes the following data: | Field | Type | Required | Description | | --- | --- | --- | --- | | `result` | Object | - | Response result | | `result.total` | Number | - | Number of response results | | `result.history` | Array | - | Build history list: [history](/docs/en/devtools-sourcebuild-buildhistorylist#history) - If there is no build history, display an empty value `[]`. | #### `history` The following describes `history`. | Field | Type | Required | Description | | --- | --- | --- | --- | | `projectId` | Number | - | Project ID | | `buildId` | String | - | Build number | | `begin` | Number | - | Build start date and time (millisecond) - Unix timestamp format | | `end` | Number | - | Build end date and time (millisecond) - Unix timestamp format | | `userId` | String | - | Build requester ID | | `status` | String | - | Build status - `prepare` \| `upload` \| `success` \| `fail` \| `canceled` - `prepare`: build provisioning and execution in progress - `upload`: saving build results - `success`: build execution complete (final result saved) - `fail`: build execution failed - `canceled`: build execution canceled - If there is no initial job, display `null`. | | `failedPhase` | String | - | Build failure stage - `prepare` \| `build` \| `pre-build` \| `post-build` \| `upload` \| `canceling` \| `timeout` - `prepare`: failure during provisioning stage - `build`: failure during build stage - `pre-build`: failure in the pre-build command stage - `post-build`: failure in the post-build command stage - `upload`: failure in the build results upload stage - `canceling`: canceling status - `timeout`: failure due to timeout - If `status` is `success`, display `null`. | ### Response status codes For information about the response status codes common to all SourceBuild APIs, see [SourceBuild response status codes](/docs/en/devtools-sourcebuild#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C). ### Response example The response example is as follows: ``` { "result": { "total": 2, "history": [ { "projectId": 20***, "buildId": "92caa8f0-****-****-****-4f02d21ce8cd", "begin": 1747378022000, "end": 1747378032000, "userId": "nb******", "status": "canceled", "failedPhase": "prepare" }, { "projectId": 20***, "buildId": "3f9d2490-****-****-****-4db7e2de2984", "begin": 1747363319000, "end": 1747363321000, "userId": "nb******", "status": "success", "failedPhase": null } ] } } ```