Skip to main content
POST
/
offers
/
{id}
:unarchive
Unarchive offer
curl --request POST \
  --url https://api.akua.dev/v1/offers/{id}:unarchive \
  --header 'Authorization: Bearer <token>' \
  --header 'if-match: <if-match>'
{
  "id": "<string>",
  "short_hash": "aB3xK9pQ",
  "package_id": "<string>",
  "package_version_id": "<string>",
  "created_at": 1,
  "workspace_id": "<string>",
  "target_workspace_id": "<string>",
  "created_by": "<string>",
  "product_id": "<string>",
  "input_schema": "<unknown>",
  "allowed_emails": [
    "<string>"
  ],
  "field_values": {},
  "tier": "<string>",
  "region_id": "<string>",
  "cluster_id": "<string>",
  "offer_channel_id": "<string>",
  "requested_policy_snapshot": {
    "offer_channel_id": "<string>",
    "channel_policy_id": "<string>",
    "channel_policy_version": 123,
    "approval_required": true,
    "checkout_required": true,
    "support_scope": {
      "visibility": []
    },
    "pricing_summary": {
      "unit_amount": 1
    },
    "blocking_reasons": []
  },
  "approved_policy_snapshot": {
    "offer_channel_id": "<string>",
    "channel_policy_id": "<string>",
    "channel_policy_version": 123,
    "approval_required": true,
    "checkout_required": true,
    "support_scope": {
      "visibility": []
    },
    "pricing_summary": {
      "unit_amount": 1
    },
    "blocking_reasons": []
  },
  "notes": "<string>",
  "expires_at": 1,
  "max_uses": 123,
  "used_count": 1,
  "archived_at": 1,
  "updated_at": 1,
  "etag": "<string>",
  "product_name": "<string>",
  "image_url": "<string>",
  "seller_name": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://akua-1dce587a.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

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

Caller-supplied idempotency key. Repeated requests with the same key return the existing resource instead of creating a duplicate. Safe to retry after a timed-out or interrupted request.

Required string length: 1 - 64
Example:

"create-prod-2026-05-07"

if-match
string
required

The etag of the resource version the client last read. Required on writes when the resource exposes an etag field. Mismatch returns 409 ABORTED with the current etag in the error metadata.

Required string length: 1 - 256
Example:

"42"

Path Parameters

id
string
required

Offer ID

Required string length: 1 - 56
Example:

"offer_j572abc..."

Response

Offer unarchived

id
string
required

Offer ID

Required string length: 1 - 56
short_hash
string
required

8-char base62 code that appears in the customer-clicked URL /i/<short_hash>

Example:

"aB3xK9pQ"

package_id
string
required

Package ID

Required string length: 1 - 54
package_version_id
string
required

Package version ID — pinned at create time

Required string length: 1 - 55
status
enum<string>
required

Computed lifecycle status — never set directly; derived from row state.

Available options:
active,
archived,
expired,
redeemed
created_at
integer
required

Unix timestamp (seconds)

Required range: x >= 0
workspace_id
string

Workspace ID

Required string length: 1 - 53
target_workspace_id
string

Optional workspace that receives the offer outcome when visible to the caller

Required string length: 1 - 53
created_by
string

User ID of the seller who issued the offer

product_id
string

Product ID

Required string length: 1 - 55
input_schema
any

JSON Schema 2020-12 with x-ui extensions for the pinned package version. Present on customer resolve responses so the install wizard can render the configure step.

allowed_emails
string[]

Empty / omitted = anyone authed can claim. Non-empty = the customer's verified email must match. Only returned to authed callers.

field_values
object

Seller pre-fills keyed by package input-schema property name. Only returned to authed callers whose email matches the allowlist.

tier
string

Suggested billing tier

region_id
string

Region pin

Required string length: 1 - 54
cluster_id
string

Cluster pin

Required string length: 1 - 54
offer_channel_id
string

Offer Channel that resolved private-offer policy for this offer

Required string length: 1 - 54
commercial_mode
enum<string>
Available options:
paid,
non_billable_test
approval_state
enum<string>
Available options:
not_required,
pending,
approved,
rejected
requested_policy_snapshot
object
approved_policy_snapshot
object
notes
string
expires_at
integer

Unix timestamp (seconds)

Required range: x >= 0
max_uses
integer
used_count
integer
Required range: x >= 0
archived_at
integer

Unix timestamp (seconds)

Required range: x >= 0
updated_at
integer

Unix timestamp (seconds)

Required range: x >= 0
etag
string
product_name
string

Display name of the offered product

image_url
string

Logo or icon URL for the customer landing page

seller_name
string

Display name of the seller who issued this offer