Project Archives

Create a portable project archive export

Create an operation-backed export of the supported Run402 Core runtime slice of a Cloud project. Requires project.archives.export via SIWX wallet, control-plane session, or scoped grant key. Uses cloud_write_pause_v1 consistency, excludes secret values/auth credentials/logs/billing/allowance/fleet/provider operations, and returns a ProjectArchive status resource. This is a vendor-lock-in portability artifact, not an entire Cloud project export and not a backup/SLA surface.

post/projects/v1/{project_id}/archives

Request

  • Base URL: https://api.run402.com
  • URL: https://api.run402.com/projects/v1/{project_id}/archives
  • Auth: one of:
    • API key in header SIGN-IN-WITH-X
    • HTTP bearer
    • HTTP bearer

Path parameters

project_idstring required

Run402 project ID. Public IDs are not UUIDs.

Example:prj_1741340000_0042

Headers

Idempotency-Keystring

Retry-safe key. Reusing it with the same request returns the existing archive operation; reusing it with a different request returns 409.

Request body

scope'portable-runtime-v1'
auth'stubs' | 'none'

Auth subject export mode. stubs preserves disabled subject ids; credentials are never exported.

consistency'pause-writes' | 'cloud_write_pause_v1'
idempotency_keystring

Optional body idempotency key. The Idempotency-Key header wins when both are supplied.

Response

Existing archive export returned for an idempotency-key replay.

archive_idstring required
operation_idstring required

Same value as archive_id in v1; archive generation is always operation-backed.

project_idstring required

Run402 project ID. Public IDs are not UUIDs.

status'running' | 'ready' | 'failed' | 'expired' required
format_version'run402-project-archive.v1' required
scope'portable-runtime-v1' required
auth_export'none' | 'stubs' required
consistency_mode'cloud_write_pause_v1' required
active_release_idstring nullable required
consistencyobject required
errorobject nullable required
byte_countinteger nullable required
sha256string nullable required

Hex SHA-256 digest of the downloadable archive tar bytes.

content_typestring nullable required
download_urlstring nullable required
download_authorized_untilstring date-time nullable required

Short-lived download authorization timestamp. GET status refreshes it for ready archives.

expires_atstring date-time required

Archive retention expiration timestamp, 24 hours after creation in v1.

started_atstring date-time required
completed_atstring date-time nullable required
created_atstring date-time required
updated_atstring date-time required

Example response

{
  "archive_id": "archive_1782450000000_ab12cd34",
  "project_id": "prj_1741340000_0042",
  "export_report": {
    "schema_version": "run402.project_archive.export_report.v1",
    "export_scope": "portable-runtime-v1",
    "consistency": "cloud_write_pause_v1"
  },
  "portability_report": {
    "schema_version": "run402.project_archive.portability_report.v1",
    "entries": [
      {
        "code": "SECRET_VALUES_REQUIRED",
        "resource_type": "secret"
      }
    ]
  },
  "content_type": "application/x-tar",
  "download_url": "/projects/v1/prj_.../archives/archive_.../download"
}

Changes

No recorded changes to this operation across all 1 revision of this API.