--- title: "Cloud Functions overview" slug: "compute-cloudfunctions" tags: ["Cloud Functions"] updated: 2026-09-17T10:05:57Z published: 2026-09-17T10:05:57Z canonical: "api.ncloud-docs.com/compute-cloudfunctions" --- > ## 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. # Cloud Functions overview Available in Classic and VPC Cloud Functions is a service that allows easy execution of code by creating code and registering it as an action. You can easily activate the business logic you want without the burden of managing servers. See the following guide for how to use Cloud Functions API. ## Common Cloud Functions settings The following describes commonly used request and response formats in Cloud Functions APIs. ### Request The following describes the common request format. #### API URL The request API URL is as follows: | Region | Version | API URL | Platform | | --- | --- | --- | --- | | Korea | v2.1 | https://cloudfunctions.apigw.ntruss.com | Classic, VPC | | Korea | v2.0 | https://cloudfunctions.apigw.ntruss.com | Classic, VPC | | Singapore | v2.1 | https://sg-cloudfunctions.apigw.ntruss.com | VPC | | Singapore | v2.0 | https://sg-cloudfunctions.apigw.ntruss.com | VPC | | Japan | v2.1 | https://jp-cloudfunctions.apigw.ntruss.com | VPC | | Japan | v2.0 | https://jp-cloudfunctions.apigw.ntruss.com | VPC | #### Request headers The following describes the request headers. | Field | Required | Description | | --- | --- | --- | | `x-ncp-apigw-timestamp` | Required | This is the number of milliseconds that have elapsed since January 1, 1970 00:00:00 UTC. - Request is considered invalid if the timestamp differs from the current time by more than 5 minutes. - Unix timestamp format. | | `x-ncp-iam-access-key` | Required | Access key issued on NAVER Cloud Platform - Issue and check access key: See [Create authentication key](/docs/en/common-ncpapi). - Issue and check access key for sub account: See [Create sub account](https://guide.ncloud-docs.com/docs/en/subaccount-use#%EC%84%9C%EB%B8%8C-%EA%B3%84%EC%A0%95-%EC%83%9D%EC%84%B1). | | `x-ncp-apigw-signature-v2` | Required | Base64-encoded signature that encrypts the request information with a secret key that maps to the access key issued on NAVER Cloud Platform, using the HMAC encryption algorithm (HmacSHA256) - Issue and check secret key: See [Create authentication key](/docs/en/common-ncpapi). - Create signature: See [Create signature](/docs/en/common-ncpapi). | | `Content-type` | Required | Request data format - `application/json` | ### Response The following describes the common response format. #### Response body The response body includes the following data: **ErrorResponse** ErrorResponse defines API call failure information. The following describes ErrorResponse. | Field | Type | Required | Description | | --- | --- | --- | --- | | `error` | Object | - | Error code and message | | `error.errorCode` | String | Required | Error code | | `error.message` | String | Required | Error message | | `error.details` | String | Required | Error message detailed description | #### Response status codes The following describes the response status codes. | HTTP status code | Code | Message | Description | | --- | --- | --- | --- | | 400 | 80000 | INTERNAL_EXCEPTION | Request parameter error | | 400 | 80100 | PACKAGE_INVALID_NAME | Invalid name format | | 400 | 80102 | PACKAGE_PLATFORM_MISMATCH | Invalid platform parameter | | 400 | 80102 | PACKAGE_PLATFORM_MISMATCH | The platform of the action's parent package can't be changed. | | 400 | 80103 | PACKAGE_BODY_INVALID_TYPE | Invalid request body field type | | 400 | 80104 | PACKAGE_BODY_MISSING_FIELD | Missing required fields in the request body | | 400 | 80105 | PACKAGE_BODY_INVALID_VALUE | Invalid request body field value | | 400 | 80300 | ACTION_INVALID_NAME | Invalid action name | | 400 | 80302 | ACTION_PLATFORM_MISMATCH | Invalid platform parameter | | 400 | 80302 | ACTION_PLATFORM_MISMATCH | Action platform parameter error | | 400 | 80302 | ACTION_PLATFORM_MISMATCH | Action's platform can't be changed. | | 400 | 80303 | ACTION_INVALID_TYPE | Invalid action type | | 400 | 80304 | ACTION_TYPE_MISMATCH | Action's type can't be changed. | | 400 | 80305 | ACTION_BODY_INVALID_TYPE | Invalid request body field type | | 400 | 80306 | ACTION_BODY_MISSING_FIELD | Missing required fields in the request body | | 400 | 80307 | ACTION_BODY_INVALID_VALUE | Invalid request body field value | | 400 | 80316 | ACTION_INVALID_RUNTIME_PARAMS | Invalid request body format | | 400 | 80324 | ACTION_RULE_EXCEED | Target action's trigger connection limit exceeded | | 400 | 80500 | TRIGGER_INVALID_NAME | Invalid trigger name | | 400 | 80502 | TRIGGER_PLATFORM_MISMATCH | Invalid platform parameter | | 400 | 80502 | TRIGGER_PLATFORM_MISMATCH | Trigger's platform can't be changed. | | 400 | 80502 | TRIGGER_PLATFORM_MISMATCH | Trigger platform parameter error | | 400 | 80503 | TRIGGER_INVALID_TYPE | Invalid trigger type | | 400 | 80504 | TRIGGER_TYPE_MISMATCH | Trigger type can't be changed. | | 400 | 80505 | TRIGGER_BODY_INVALID_TYPE | Invalid request body field type | | 400 | 80506 | TRIGGER_BODY_MISSING_FIELD | Missing required fields in the request body | | 400 | 80507 | TRIGGER_BODY_INVALID_VALUE | Invalid request body field value | | 400 | 80519 | TRIGGER_RULE_EXCEED | Target trigger's action connection limit exceeded | | 400 | 80520 | RULE_BODY_INVALID_TYPE | Invalid request body field type | | 400 | 80521 | RULE_BODY_MISSING_FIELD | Missing required fields in the request body | | 400 | 80511 | TRIGGER_INVALID_RUNTIME_PARAMS | Request body error | | 400 | 80512 | TRIGGER_INVOKE_FAIL | Unable to execute because there are no actions associated with the trigger | | 400 | 80700 | NO_APIGW_SUBSCRIPTION | Need to subscribe to API Gateway. | | 400 | 80710 | NO_INSIGHT_SUBSCRIPTION | Need to subscribe to Cloud Insight. | | 400 | 80711 | INSIGHT_INVALID_EVENT_RULE | Invalid Cloud Insight event rule information | | 400 | 80730 | NO_OBJECT_STORAGE_SUBSCRIPTION | Need to subscribe to Object Storage. | | 400 | 80731 | OBJECT_STORAGE_INVALID_EVENT_RULE | Invalid Object Storage event rule information | | 400 | 80740 | SOURCE_COMMIT_INVALID_WEBHOOK | Invalid SourceCommit webhook information | | 400 | 80750 | NO_SECRET_MANGER_SUBSCRIPTION | Need to subscribe to Secret Manager. | | 400 | 80751 | SECRET_MANAGER_INVALID_SECRET | Invalid Secret Manager secret information | | 400 | 80752 | SECRET_MANAGER_SECRET_ROTATING | Secret Manager secret being replaced | | 400 | 80901 | DUPLICATED_RULE | Duplicated connection request | | 403 | 80002 | SUB_ACC_NO_PERMISSION | Resource query permission error | | 403 | 80002 | SUB_ACC_NO_PERMISSION | Detailed permission error | | 404 | 80101 | PACKAGE_NOT_FOUND | Package not found | | 404 | 80301 | ACTION_NOT_FOUND | Action not found | | 404 | 80322 | ACTION_ACTIVATION_NOT_FOUND | Execution history not found | | 404 | 80501 | TRIGGER_NOT_FOUND | Trigger not found | | 404 | 80517 | TRIGGER_ACTIVATION_NOT_FOUND | Execution history not found | | 404 | 80900 | RULE_NOT_FOUND | Trigger and action not associated | | 409 | 80109 | PACKAGE_NOT_EMPTY | Unable to delete because there are actions associated with the package | | 409 | 80011 | RESOURCE_NAME_CONFLICT | Duplicate resource name | | 422 | 80106 | PACKAGE_COUNT_EXCEED | Maximum number of packages exceeded | | 422 | 80308 | ACTION_COUNT_EXCEED | Maximum number of actions exceeded | | 422 | 80508 | TRIGGER_COUNT_EXCEED | Maximum number of triggers exceeded | | 500 | 81311 | ACTION_NAT_EXCEPTION | Subnet query failed | | 500 | 81312 | NAT_CREATE_FAIL | Subnet connection failed | | 500 | 81313 | NAT_BEING_CREATED | Subnet being connected | | 500 | 81314 | NAT_RETURN_FAIL | Subnet being disconnected | | - | 80005 | INTEGRATION_EXCEPTION | Need to subscribe to the integrated service. | Note For information about the HTTP status codes common to NAVER Cloud Platform, see [Ncloud API response status codes](/docs/en/common-ncpapi#3%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C). #### Response example For response examples when a call is successful, see each API specification. The following is a sample response upon a failed call. ``` { "error": { "errorCode": "string", "message": "string", "details": "string" } } ```