Skip to content

Delete Generated Code

Method

REST method is adopted.

HTTP Method

DELETE: Delete generated code (soft delete)

Naming Convention

To unify the naming of query parameters and nodes and improve readability, snake_case is used for URIs and JSON nodes in requests.

Request and Response

Headers

Meta information is set in HTTP headers, not in the response body.

Request Headers

  • Authorization
  • Content-Type
  • Accept
  • Accept-language

Response Headers

  • Content-Type

Delete Generated Code

URI

DELETE /v1/organizations/{organization_id}/projects/{project_id}/generated_codes/{code_id}

Path Parameters

Name Type Required Description
organization_id string Required Organization UUID
project_id string Required Project UUID
code_id string Required Generated code UUID

Response

The response is JSON.

{
  "id": "generated-code-uuid",
  "projectId": "project-uuid",
  "sourceCode": "const MyComponent = () => { return <div>Hello</div>; }",
  "status": 2,
  "createdAt": 1234567890000,
  "updatedAt": 1234567899999,
  "deletedAt": 1234567899999,
  "createdBy": "user-id",
  "updatedBy": "updater-id",
  "deletedBy": "deleter-id"
}

Response Fields

Name Type Description
id string Generated code UUID
projectId string Project UUID
sourceCode string Source code
status number Processing status (0-3)
createdAt number Creation timestamp (epoch milliseconds)
updatedAt number Update timestamp (epoch milliseconds)
deletedAt number Deletion timestamp (epoch milliseconds)
deletedBy string Deleter user ID

Authentication

Authentication is performed using JSON Web Tokens (JWT) issued by Amazon Cognito.

Error Handling

The status codes for error handling are as follows.

Description Status Code Status Name
Missing credentials 401 Unauthorized
Insufficient permissions 403 Forbidden
Generated code, project, or organization not found 404 Not Found
Internal server error 500 Internal Server Error

Processing Flow

  1. Extract organization ID, project ID, and code ID from path parameters
  2. Verify the user has access to the project
  3. Verify the generated code belongs to the specified project
  4. Perform soft delete (set deletedAt and deletedBy)
  5. Return deleted generated code information

Detailed Flowchart

flowchart TD
    Start([DELETE Request]) --> Auth[Auth & Parameter Extraction]
    Auth --> Service[Service Layer]
    Service --> AccessCheck[Access Check]
    AccessCheck --> HasAccess{Write permission?}
    HasAccess -->|No| Err404[404 Not Found]
    HasAccess -->|Yes| Transaction[Begin Transaction]
    Transaction --> CheckExist[Check existing<br/>WHERE deletedAt IS NULL]
    CheckExist --> Exists{Exists?}
    Exists -->|No| Err404
    Exists -->|Yes| SoftDelete[UPDATE SET<br/>deletedAt, deletedBy]
    SoftDelete --> Commit[Commit]
    Commit --> Success[200 OK]

Notes

This endpoint performs a soft delete. The record is not physically deleted from the database; the deletedAt and deletedBy fields are set instead.