Skip to main content
POST
Create repository change request

Authorizations

Authorization
string
header
required

workspace API token (sk_akua_...) or OAuth2 JWT. Create tokens at https://akua.dev/developers/api-tokens

Headers

akua-context
string

Optional workspace/scope context for the request. Carries a single workspace wire id (ws_…) today. Only needed for broad tokens — a workspace-owned token implies its workspace.

Required string length: 1 - 53
Example:

"ws_j572abc123def456"

idempotency-key
string
required

Required caller-supplied idempotency key. Any non-empty key up to 64 characters is accepted. Endpoint-specific documentation describes how the key is used.

Required string length: 1 - 64
Example:

"create-prod-2026-05-07"

Body

application/json
parent_repository_id
string
required

Repository that will receive the accepted change request.

Required string length: 1 - 55
kind
enum<string>
required
Available options:
user
expires_at_seconds
integer

Seconds until the repository change request expires.

Response

Repository change request created

id
string
required
Required string length: 1 - 54
html_url
string<uri>
required

Absolute dashboard URL for this resource. OUTPUT_ONLY.

Maximum string length: 2048
Example:

"https://akua.dev/repository-change-requests/rcr_j572abc123def456"

workspace_id
string
required
Required string length: 1 - 53
parent_repository_id
string
required
Required string length: 1 - 55
fork_repository_id
string
required
Required string length: 1 - 55
state
enum<string>
required

Repository change request lifecycle state

Available options:
AWAITING_CHANGES,
VALIDATING,
READY,
ACCEPTING,
ACCEPTED,
REJECTED,
WITHDRAWN,
EXPIRED,
FAILED
change_type
enum<string>
required
Available options:
manifest_patch,
inputs_change,
package_change,
unknown
created_by_type
enum<string>
required
Available options:
user,
wizard,
agent
created_by_id
string
required
remediation_evidence
object | null
required
created_at
integer
required

Unix timestamp (seconds)

Required range: x >= 0
updated_at
integer
required

Unix timestamp (seconds)

Required range: x >= 0
expires_at
integer
required

Unix timestamp (seconds)

Required range: x >= 0
rejection_reason
string | null
required
etag
string
required