Endpoint reference

POST /api/v1/smart-accounts/creation-plans

Parameters

NameLocationDetails
X-Juicebox-Accountheader / requiredEnrolled account identity, including authority chain and lowercase owner address. Enrollment derives this identity before the account exists.
X-Juicebox-Signerheader / requiredOwner wallet or authorized bot address that signed this request.
X-Juicebox-Issued-Atheader / requiredUnix seconds, sent as 1–13 decimal digits without leading zeros; at most 30 seconds ahead of server time.
X-Juicebox-Expires-Atheader / requiredUnix seconds, sent as 1–13 decimal digits without leading zeros; in the future and within 300 seconds of issuedAt.
X-Juicebox-Nonceheader / requiredFresh random 32-byte lowercase nonce. A consumed nonce cannot be retried.
X-Juicebox-Signatureheader / requiredEIP-712 CenterRequest signature over every signed field. Contract-owner signatures may vary in length. This is a computed request proof, not a reusable API key.
X-Juicebox-Grantheader / optionalAuthorized bot grant ID. Required for a bot; omit for the owner, signing grantId as the empty string.
Idempotency-Keyheader / requiredSigned retry identity. Required on plan creation and transaction submission. Preserve exact method, target, Content-Type, and body bytes; use a fresh request nonce and signature.

Request body

FieldTypeDetails
manifestIdstring
required
ownersarray
required
Fields

string

thresholdinteger
required
saltNoncestring
required
uint256 as a lossless decimal string
JSON schema
{
  "type": "object",
  "properties": {
    "manifestId": {
      "type": "string"
    },
    "owners": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Address"
      },
      "minItems": 1,
      "maxItems": 16,
      "uniqueItems": true
    },
    "threshold": {
      "type": "integer",
      "minimum": 1,
      "maximum": 16
    },
    "saltNonce": {
      "$ref": "#/components/schemas/Uint256"
    }
  },
  "required": [
    "manifestId",
    "owners",
    "threshold",
    "saltNonce"
  ],
  "additionalProperties": false
}

Response 201

FieldTypeDetails
creationobject
required
Fields
FieldTypeDetails
chainIdinteger
required
manifestIdstring
required
manifestRevisionstring
required
addressstring
required
ownersarray
required
Fields

string

thresholdinteger
required
saltNoncestring
required
uint256 as a lossless decimal string
initializerstring
required
initializerHashstring
required
transactionobject
required
Fields
FieldTypeDetails
tostring
required
valuestring
required

Values: ["0"]

datastring
required
initialAuthorityobject
required
Fields
FieldTypeDetails
validatorstring
required
enabledSessionsinteger
required

Values: [0]

executorsarray
required
hooksarray
required
fallbacksarray
required
registryEnforcedboolean
required

Values: [false]

evidenceobject
required
Fields
FieldTypeDetails
chainIdinteger
required

Values: [1,10,8453,42161,84532,421614,11155111,11155420]

blockNumberstring
required
uint256 as a lossless decimal string
blockHashstring
required
timestampstring
required
uint256 as a lossless decimal string
sourcestring
required

Values: ["onchain"]

deploymentConfirmedboolean
required

Values: [false]

JSON schema
{
  "type": "object",
  "properties": {
    "creation": {
      "$ref": "#/components/schemas/SmartCreation"
    }
  },
  "required": [
    "creation"
  ],
  "additionalProperties": false
}