Budget
Overview
SCP에서 제공하는 Budget 서비스를 프로그램적으로 이용할 수 있도록 지원하는 응용 프로그램 인터페이스(Application Programming Interface, API)를 제공합니다.
본 가이드는 Budget 서비스에 대한 간략한 설명 및 API를 호출하는 방법을 제공합니다.
API는 RESTful API 방식으로 제공되며, JSON 형식으로 응답합니다.
Version
| Version | Status | Supported Until |
|---|
OpenAPI URL
https://budget.{environment}.samsungsdscloud.com
Environment and Region List
| environment | region |
|---|
| s | kr-west1 |
| s | kr-east1 |
| g | kr-south1 |
| g | kr-south2 |
| g | kr-south3 |
| e | kr-west1 |
| e | kr-east1 |
1.1.1 - 1.0
post /v1/budgets/account
Description
어카운트 예산 생성
상태
ACTIVE (CURRENT)
Parameters
Responses
| HTTP Code | Description | Schema |
|---|
| 201 | Created | BudgetAccountShowResponse |
| 400 | Bad Request | None |
| 401 | Unauthorized | None |
| 403 | Forbidden | None |
| 409 | Conflict | None |
Example HTTP request
Request path
/v1/budgets/account
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = budget 1.0"
Request body
{
"amount": 1000000,
"name": "test_budget",
"notifications": {
"is_use_notification": true,
"notification_send_period": "FIRST",
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"thresholds": [
80
]
},
"prevention": {
"is_use_prevention": true,
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"threshold": 80
},
"start_month": "2026-01",
"unit": "MONTHLY"
}
Example HTTP response
Response 201
{
"budget": {
"amount": 1000000,
"created_at": "2025-11-01T00:00:00",
"created_by": "TEST",
"id": "240200fd2b02490ca63bb3965048b493",
"modified_at": "2025-11-01T00:00:00",
"modified_by": "TEST",
"name": "my_budget_ex",
"start_month": "2025-11",
"type": "COST",
"unit": "MONTHLY"
},
"notifications": {
"is_use_notification": true,
"notification_send_period": "FIRST",
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"thresholds": [
80
]
},
"prevention": {
"is_use_prevention": true,
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"threshold": 80
}
}
1.2.1 - 1.0
delete /v1/budgets/account/{budget_id}
Description
어커운트 예산 삭제
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | budget_id required | Budget id Example : 240200fd2b02490ca63bb3965048b493
| string | None |
Responses
| HTTP Code | Description | Schema |
|---|
| 204 | No Content | None |
| 401 | Unauthorized | None |
| 403 | Forbidden | None |
| 404 | Not Found | None |
Example HTTP request
Request path
/v1/budgets/account/{budget_id}
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = budget 1.0"
Example HTTP response
Response 204
1.3.1 - 1.0
get /v1/budgets/account
Description
어카운트 예산 목록 조회
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| query | size optional | size Example : 20
| any of [integer, null] | 20 |
| query | page optional | page Example : 0
| any of [integer, null] | 0 |
| query | sort optional | sort Example : created_at:desc
| any of [string, null] | None |
| query | search_name optional | Budget name Example : my_budget_ex
| any of [string, null] | None |
| query | budget_name optional | Budget name Example : my_budget_ex
| any of [string, null] | None |
Responses
Example HTTP request
Request path
/v1/budgets/account
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = budget 1.0"
Example HTTP response
Response 200
{
"budgets": [
{
"amount": 1000000,
"created_at": "2025-11-01T00:00:00",
"created_by": "TEST",
"id": "240200fd2b02490ca63bb3965048b493",
"modified_at": "2025-11-01T00:00:00",
"modified_by": "TEST",
"name": "my_budget_ex",
"start_month": "2025-11",
"type": "COST",
"unit": "MONTHLY"
}
],
"count": 20,
"page": 0,
"size": 20,
"sort": [
"created_at:asc"
]
}
1.4.1 - 1.0
put /v1/budgets/account/{budget_id}
Description
어카운트 예산 수정
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | budget_id required | Budget id Example : 240200fd2b02490ca63bb3965048b493
| string | None |
| body | body required |
| BudgetSetRequest | |
Responses
| HTTP Code | Description | Schema |
|---|
| 200 | OK | BudgetAccountShowResponse |
| 400 | Bad Request | None |
| 401 | Unauthorized | None |
| 403 | Forbidden | None |
| 404 | Not Found | None |
| 409 | Conflict | None |
Example HTTP request
Request path
/v1/budgets/account/{budget_id}
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = budget 1.0"
Request body
{
"amount": 1000000,
"name": "test_budget",
"notifications": {
"is_use_notification": true,
"notification_send_period": "FIRST",
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"thresholds": [
80
]
},
"prevention": {
"is_use_prevention": true,
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"threshold": 80
},
"start_month": "2026-01",
"unit": "MONTHLY"
}
Example HTTP response
Response 200
{
"budget": {
"amount": 1000000,
"created_at": "2025-11-01T00:00:00",
"created_by": "TEST",
"id": "240200fd2b02490ca63bb3965048b493",
"modified_at": "2025-11-01T00:00:00",
"modified_by": "TEST",
"name": "my_budget_ex",
"start_month": "2025-11",
"type": "COST",
"unit": "MONTHLY"
},
"notifications": {
"is_use_notification": true,
"notification_send_period": "FIRST",
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"thresholds": [
80
]
},
"prevention": {
"is_use_prevention": true,
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"threshold": 80
}
}
1.5.1 - 1.0
get /v1/budgets/account/{budget_id}
Description
어카운트 예산 상세 조회
상태
ACTIVE (CURRENT)
Parameters
| Type | Name | Description | Schema | Default |
|---|
| path | budget_id required | Budget id Example : 240200fd2b02490ca63bb3965048b493
| string | None |
Responses
Example HTTP request
Request path
/v1/budgets/account/{budget_id}
"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = budget 1.0"
Example HTTP response
Response 201
{
"budget": {
"amount": 1000000,
"created_at": "2025-11-01T00:00:00",
"created_by": "TEST",
"id": "240200fd2b02490ca63bb3965048b493",
"modified_at": "2025-11-01T00:00:00",
"modified_by": "TEST",
"name": "my_budget_ex",
"start_month": "2025-11",
"type": "COST",
"unit": "MONTHLY"
},
"notifications": {
"is_use_notification": true,
"notification_send_period": "FIRST",
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"thresholds": [
80
]
},
"prevention": {
"is_use_prevention": true,
"receivers": [
"test_user1@test.com",
"test_user2@test.com"
],
"threshold": 80
}
}