# PA04-04 - Spec/Quota Addition (スペック・クォータ追加) ## Overview Adds account spec to the specified service account. - "Spec" meaning varies by service type - Available for **MVNO service** only - Works for **regular SIM** and **share groups** - NOT available for SIMs belonging to a share group --- ## Request ### Method `POST` (JSON format) ### JSON Parameters | No | Parameter | Name | Level | Type | Min | Max | Required | Description | | --- | --------- | ------------------ | ----- | --------------------------------- | --- | --- | -------- | ---------------------------------------------------------------------------- | | 1 | authKey | Authentication Key | 1 | Alphanumeric | - | - | ◎ | Obtained from OEM authentication | | 2 | kind | Service Type | 1 | Alphanumeric + symbols | - | - | ○ | Target service. Only MVNO allowed | | 3 | account | Account | 1 | Alphanumeric + symbols | - | - | ◎ | Target account. For MVNO: phone number (regular SIM) or share group code | | 4 | quota | Quota | 1 | Half-width numeric | 1 | 6 | ◎ | Capacity to add in **MB** (1 - 512000 MB) | | 5 | quotaCode | Quota Code | 1 | Half-width alphanumeric + symbols | 1 | 512 | △ | Optional identifier. Returned in PA05-02 quota history | | 6 | expire | Expiration Date | 1 | Half-width numeric | 8 | 8 | △ | Expiration date for quota (YYYYMMDD). Ignored if expiration not configurable | **Legend:** ◎ Required | ○ Required within level | △ Optional --- ## Request Examples ### Add 100MB to Regular SIM ```json { "authKey": "XXXXXXXXXX", "kind": "MVNO", "account": "09012345678", "quota": "100" } ``` ### Add 10000MB to Share Group (with code and expiration) ```json { "authKey": "XXXXXXXXXX", "kind": "MVNO", "account": "QUMB_00000000001", "quota": "10000", "quotaCode": "campaign-100", "expire": "20131231" } ``` --- ## Response ### Format JSON ### Parameters | No | Parameter | Name | Level | Type | Description | | --- | ----------------- | ----------- | ----- | ---------------------- | ------------------- | | 1 | resultCode | Result Code | 1 | Numeric | Overall result code | | 2 | status | Status | 1 | Object | - | | 3 | status.message | Message | 2 | Alphanumeric + symbols | Result message | | 4 | status.statusCode | Status Code | 2 | Numeric | Result code | --- ## Response Codes | Status | Status Code | Detail Code | Message | Description | | ------ | ----------- | ----------- | ----------- | ------------------------------------------- | | ○ | 200 | 100 | OK | Success | | × | 400 | 200 | Bad Request | Parameter error - kind issue | | × | 400 | 201 | Bad Request | Parameter error - account issue | | × | 400 | 204 | Bad Request | Parameter error - other parameter issue | | × | 400 | 221 | Bad Request | Parameter error - quota issue | | × | 400 | 237 | Bad Request | Parameter error - quotaCode issue | | × | 403 | 205 | Auth Error | Authentication key problem | | × | 404 | 323 | Not Found | Share group not found | | × | 500 | 210 | NG | Account not found | | × | 500 | 211 | NG | Account status does not allow request | | × | 500 | 230 | NG | Account is waiting for async processing | | × | 500 | 233 | NG | Specified service is not provided | | × | 500 | 234 | NG | Addition to specified spec not allowed | | × | 500 | 322 | NG | Share group status does not allow request | | × | 500 | 325 | NG | Share group is waiting for async processing | | × | 500 | 900 | NG | Unexpected error occurred | --- ## Response Example ```json { "resultCode": "100", "status": { "message": "OK", "statusCode": "200" } } ``` --- ## Related APIs - **PA05-02**: MVNO Quota Addition History - retrieves quota addition history including quotaCode